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?


1 Answer 1


See in the documentation https://github.com/quantumlib/Stim/blob/main/README.md:

Stim's main limitations are:

  1. There is no support for non-Clifford operations, such as T gates and Toffoli gates. Only stabilizer operations are supported.
  2. stim.Circuit only supports Pauli noise channels (eg. no amplitude decay). For more complex noise you must manually drive a stim.TableauSimulator.
  3. 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.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.