Welcome to emu-sv
You have found the documentation for emu-sv. The emulator emu-sv is a backend for the Pulser low-level Quantum Programming toolkit that lets you run quantum algorithms on a simulated device, using GPU acceleration if available. More in depth, emu-sv is designed to emulate the dynamics of programmable arrays of neutral atoms, using the state vector representation. Our benchmarks indicate that on the gpu emu-sv is both faster and more accurate than emu-mps wherever a simulation fits in memory. For typical sequences this means up to ~27 qubits.
Supported features
The following features are currently supported:
- All Pulser sequences that use only the rydberg channel
- States and Operators can be constructed using the abstract Pulser format.
- All noise from the pulser
NoiseModelexcept leakage- Effective noise is included using the density matrix formalism
- The following basis states in a sequence:
- The following properties from a Pulser Sequence are also correctly applied:
- Customizable output, with the following inbuilt options:
- The quantum state in state vector format
- Bitstrings
- The fidelity with respect to a given state
- The expectation of a given operator
- The qubit density (magnetization)
- The correlation matrix
- The mean, second moment and variance of the energy
- Specification of
- Initial state
- Various precision parameters
- Whether to run on cpu or gpu
- The \(U_{ij}\) coefficients from here
- In the noiseless case, the emulator is differentiable
Planned features
- Leakage noise
More Info
Please see the API specification for a list of available config options (see here). For notebooks with examples for how to do various things, please see the notebooks page (see here).