Stabilizer circuits, i.e. quantum circuit that only use the $H$, $\sqrt{Z}$, and $CNOT$ gates, can only implement a finite subset of all possible unitary operations.

I want to iterate over all these operations for a small number of qubits, or sample from the space for a larger number of qubits.

I could just use the stabilizer circuits themselves as stands ins for the operations: iterate over the possible circuits with up to $n$ operations and $k$ qubits, sample from the possible circuits, etc. But many circuits encode the same operation, so focusing on the circuits would create extra work and bias the sampling. Also there's not a clear length cut-off.

What's a straightforward way to generate all the operations in the group? To sample from the group?

up vote 3 down vote accepted

Since stabilizer circuits are exactly those which map stabilizers to stabilizers, you could characterize them via their action on a basis of stabilizers, see for instance Sec 2.3 of[paper].pdf.

Your Answer


By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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