Quantum Circuit Simulation
Quantum computation is a promising emerging technology which, compared to classical computation, allows for substantial speed-ups for problems such as integer factorization (Shor’s algorithm) or database search (Grover’s search). However, since physical realizations of quantum computers are very expensive, a significant amount of research in this domain still relies on simulations of quantum computations on classical machines. This causes a significant complexity which current state-of-the-art simulators tackle by applying massive hardware power. Here, we present the implementation of an alternative quantum simulator which works differently to the state of the art and is capable of simulating quantum computations with more qubits than before, and in significantly less run-time.
The underlying ideas of decision diagram-based simulation are detailed in the papers entitled “How to Efficiently Handle Complex Values? Implementing Decision Diagrams for Quantum Computation” and “Advanced Simulation of Quantum Computations”. This method of simulation has been awarded with a Google Faculty Research Award and has been integrated into IBM’s SDK Qiskit.
Implementations
The implementation named MQT DDSIM is available and maintained on GitHub. In case of questions/problems, please contact us through quantum.cda@xcit.tum.de or create an issue on GitHub.
As mentioned above, the simulator is based on decision diagrams as the core data structure. In addition to error-free and exact simulation, it additionally supports weak simulation and approximating simulation. Using weak simulation, the simulator provides measurement outcomes instead of the explicit quantum state to enable a more faithful simulation of physical quantum computers. Due to a suitable normalization of the decision diagrams, each measurement is only linear in the number of qubits in constrast to the (initial) exponential overhead on state vectors. Approximating simulation is motivated by the probabilistic nature of physical quantum computers and their inherent resistance to some degree of errors. To achieve a higher performance, nodes in the decision diagrams are removed if their contribution to the quantum state is deemed negligible. This enables a more compact representation and, thus, a faster simulation—while the loss in accuracy can be finely controlled.
To foster an understanding of decision diagrams we provide our visualization tool MQT DDVis that can show step-by-step how the simulation changes the decision diagram with each applied operation.
The legacy implementation of the simulator (65.3 KB, including a README with instructions as well as corresponding test-files) is still available. Please note that we only provide this version for historical reasons and cannot offer support.
References
If you use the quantum simulator for your research, we will be thankful if you refer to it by citing the following publication:
@article{zulehner2019advanced,
title = {Advanced Simulation of Quantum Computations},
author = {Zulehner, Alwin and Wille, Robert},
journal = {Trans. on {CAD} of Integrated Circuits and Systems},
volume = {38},
number = {5},
pages = {848--859},
year = {2019},
doi = {10.1109/TCAD.2018.2834427}
}
MQT DDVis Online Tool
In an effort to make decision diagrams for quantum computing more accessible, we present MQT DDVis—an installation-free web-tool which visualizes quantum decision diagrams and allows to explore their behavior when used in design tasks such as simulation, synthesis, and verification.
MQT Bench Online Tool
To evaluate the correspondingly developed methods, we additionally provide the benchmark suite MQT Bench comprising more than 70,000 benchmark circuits ranging from 2 up to 130 qubits on four abstraction levels.