Module: cirq.sim.clifford.clifford_simulator

An efficient simulator for Clifford circuits.

Allowed operations include:

    - X,Y,Z,H,S,CNOT,CZ
    - measurements in the computational basis

The quantum state is specified in two forms:

1. In terms of stabilizer generators. These are a set of n Pauli operators
{S_1,S_2,...,S_n} such that S_i |psi> = |psi>.

This implementation is based on Aaronson and Gottesman,
2004 (arXiv:quant-ph/0406196).

2. In the CH-form defined by Bravyi et al, 2018 (arXiv:1808.00128).
This representation keeps track of overall phase and enables access
to state vector amplitudes.


class CliffordSimulator: An efficient simulator for Clifford circuits.

class CliffordSimulatorStepResult: A StepResult that includes StateVectorMixin methods.

class CliffordState: A state of the Clifford simulation.

class CliffordTrialResult: Results of a simulation by a SimulatesFinalState.