I know STIM is for clifford gate circuits but I wonder if there is a way around this? Is it possible to use STIM for non clifford circuits? Do we have any example for it?
Asked
Active
Viewed 109 times
1 Answers
3
See in the documentation https://github.com/quantumlib/Stim/blob/main/README.md:
Stim's main limitations are:
- There is no support for non-Clifford operations, such as T gates and Toffoli gates. Only stabilizer operations are supported.
- stim.Circuit only supports Pauli noise channels (eg. no amplitude decay). For more complex noise you must manually drive a stim.TableauSimulator.
- stim.Circuit only supports single-control Pauli feedback. For multi-control feedback, or non-Pauli feedback, you must manually drive a stim.TableauSimulator
However, you can (up to a limited level of accuracy) simulate erasures (which are non-Clifford in a sense) with stim, see: How do I perform an erasure error in stim?, and Circuit-based erasure simulation using stim.
You can also perform measurements, and the combination of measurements and Clifford gates sometimes enables approximating non-Clifford operations (note the 'sometimes', and again, only up to some level of accuracy, and not necessarily in a simple way): https://arxiv.org/abs/1207.0046, although they try to simulate non-Clifford noise, so I don't know if it will help you.

Yaron Jarach
- 714
- 2
- 10