Gate based computing
Gate-based quantum emulators can be split in several categories:
Ideal Computation |
Noisy Computation |
|
---|---|---|
Exact Representation |
PyLinalg, CLinalg |
N.A. 1 |
Approximate Representation |
N.A. 1 |
N.A. 1 |
A complete list of these QPUs can be found qat.qpus
.
- 1(1,2,3)
The full Qaptiva appliance contains a variety of QPUs, comprising all of those categories, as for instance QPUs capable of simulating physical noise.
CLinalg: C++ Linear-algebra-based simulator
Proposed as a faster alternative to PyLinalg
, CLinalg
is a
Linear-algebra simulator written in C++, with a python (pybind11) interface.
It is the default simulator of myQLM.
For a general description of linear-algebra-based simulators, please refer to the PyLinalg documentation page.
Miscellanous remarks about the simulator:
it accepts any gate, of any arity.
it works with the entire amplitude vector. Any information is available.
it is memory and run-time exponential in the number of qubits. This implies a hard simulation limit at around 20-30 qubits, depending on your RAM.
PyLinalg: Python Linear-algebra-based simulator
qat.qpus.PyLinalg
was the first simulator delivered with myQLM.
This simulator performs a unitary evolution of the initial quantum state using the operations described in a quantum circuit. It is called “Python Linear-Algebra”.
It is entirely written in Python, and is based in particular on the Numpy library.