|View source on GitHub|
Splits the circuit into a matching prefix and non-matching suffix.
cirq.sim.simulator.split_into_matching_protocol_then_general( circuit: "cirq.AbstractCircuit", predicate:
cirq.optimizers.stratify.Classifier) -> Tuple['cirq.AbstractCircuit', 'cirq.AbstractCircuit']
The splitting happens in a per-qubit fashion. A non-matching operation on qubit A will cause later operations on A to be part of the non-matching suffix, but later operations on other qubits will continue to be put into the matching part (as long as those qubits have had no non-matching operation up to that point).