monoprop

Truncation and cutoffs

Controlling operator growth with structural cutoffs and coefficient-tolerance thresholds.

monoprop limits the growth of the propagated operator with two independent mechanisms: a structural cutoff on the size of each monomial, and coefficient-tolerance thresholds on the magnitude of each term. Both can be changed at any point during a simulation.

The structural cutoff discards monomials that grow "too large". What counts as large depends on the simulator: MajoranaPropagator offers a choice between two measures of a Majorana monomial, while PauliPropagator always measures a term by its qubit Pauli weight.

The fully-paired rule

Whatever the measure, the structural cutoff shares one exception: a monomial that is fully paired — every Majorana operator it contains comes as a complete pair m2j1m2jm_{2j-1}m_{2j} on some mode, or in qubit space is a product of Pauli-ZZ operators, is always kept, regardless of its size. Fully paired monomials are exactly the terms that can contribute to an expectation value against a computational-basis or Slater-determinant reference, so discarding them would throw away signal (see Propagation Algorithm). The cutoff therefore only ever prunes the remaining, partially paired monomials.

Majorana operators: length or support

MajoranaPropagator measures each monomial as a Majorana operator and offers two structural cutoff strategies, selected with cutoff_type:

length (default). Keeps a monomial when its length — the number of Majorana operators mjm_j it contains — does not exceed the cutoff. Short monomials dominate typical expectation values, so bounding the length retains the dominant contributions; this is the physically motivated choice for quantum chemistry Hamiltonians. For example, Mν=m1m2m5M_\nu = m_1 m_2 m_5 has length 3, so a length cutoff of 2 discards it.

support. Keeps a monomial when the number of distinct modes it touches (its support) does not exceed the cutoff. Because one mode can carry two operators, this is coarser than length, useful when the ordering encodes spatial locality. The same Mν=m1m2m5M_\nu = m_1 m_2 m_5 touches only mode 1 (both m1m_1 and m2m_2) and mode 3 (m5m_5), so its support is 2 and a support cutoff of 2 keeps it.

Qubit operators: Pauli weight

PauliPropagator accepts Pauli operators and gates directly and measures each term by its Pauli weight — the number of qubits it touches. This is the only structural measure: cutoff bounds the Pauli weight.

Coefficient tolerance filtering

Two absolute-tolerance thresholds prune terms by coefficient magnitude, independently of the structural cutoff:

  • lower_atol: discard terms with |coeff| < lower_atol during gate application. Primary tool for suppressing negligible branches in long ADAPT loops.
  • upper_atol: accept terms with |coeff| > upper_atol regardless of the structural cutoff. Useful for keeping a few large terms that would otherwise be discarded by a tight cutoff.
sim.lower_atol = 1e-9
sim.upper_atol = 1e-3

On this page