monoprop

PauliPropagator

Classical simulator for qubit (Pauli) operators.

Accepts a :class:~monoprop.pauli.PauliOperator observable and a :class:~monoprop.circuit.Circuit of qubit (Pauli) :class:~monoprop.circuit.ExpGate gates. See :class:~monoprop.monomial_propagator.MonomialPropagator for the shared building, evaluation, and introspection surface.

The cutoff is measured as qubit Pauli weight (the number of qubits a retained term touches); cutoff_type is fixed and read-only on this class.

Attributes

attributenum_qubitsint

Number of qubits the propagator acts on.

Functions

func__init__(self, initial_operator, initial_state, *, cutoff, schrodinger_cutoff=None, lower_atol=None, upper_atol=None, comm=None) -> None

Initialize the qubit propagator.

See :class:~monoprop.monomial_propagator.MonomialPropagator for the shared arguments. The cutoff is always measured as Pauli weight, so cutoff bounds the number of qubits a retained term touches.

paramself
paraminitial_operatorPauliOperator

Initial qubit operator as a :class:~monoprop.pauli.PauliOperator.

paraminitial_statelist[int] | np.ndarray

Computational-basis reference (indices of qubits set to 1).

paramcutoffint

Maximum Pauli weight (number of qubits touched) retained during evolution. The fully-paired exception described in :class:~monoprop.monomial_propagator.MonomialPropagator still applies.

paramschrodinger_cutoffint | None
= None

Optional Schrodinger-picture cutoff (enables that picture).

paramlower_atolNone | float
= None

Optional lower coefficient-truncation tolerance.

paramupper_atolNone | float
= None

Optional upper coefficient-retention tolerance.

paramcommMPI.Comm | None
= None

Optional MPI communicator (must outlive the propagator).

Returns

None

On this page