Skip to content

Commit ce51917

Browse files
daxfohlMichaelBroughton
authored andcommitted
Implement PauliStringPhasorGate (quantumlib#4696)
BREAKING CHANGE: PauliStringPhasor no longer inherits from PauliStringGateOperation. Implements PauliStringPhasor in terms of a GateOperation on a new class PauliStringPhasorGate. Mostly involved moving existing functions from the operation to the gate, and then having the operation call those methods under the hood. Closes quantumlib#1561, xref quantumlib#4683 @tanujkhattar
1 parent 60973a3 commit ce51917

10 files changed

+503
-50
lines changed

cirq-core/cirq/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,7 @@
259259
PauliString,
260260
PauliStringGateOperation,
261261
PauliStringPhasor,
262+
PauliStringPhasorGate,
262263
PauliSum,
263264
PauliSumExponential,
264265
PauliSumLike,

cirq-core/cirq/json_resolver_cache.py

+2
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,8 @@ def _parallel_gate_op(gate, qubits):
118118
'ParallelGateFamily': cirq.ParallelGateFamily,
119119
'PauliMeasurementGate': cirq.PauliMeasurementGate,
120120
'PauliString': cirq.PauliString,
121+
'PauliStringPhasor': cirq.PauliStringPhasor,
122+
'PauliStringPhasorGate': cirq.PauliStringPhasorGate,
121123
'_PauliX': cirq.ops.pauli_gates._PauliX,
122124
'_PauliY': cirq.ops.pauli_gates._PauliY,
123125
'_PauliZ': cirq.ops.pauli_gates._PauliZ,

cirq-core/cirq/ops/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,7 @@
233233

234234
from cirq.ops.pauli_string_phasor import (
235235
PauliStringPhasor,
236+
PauliStringPhasorGate,
236237
)
237238

238239
from cirq.ops.pauli_string_raw_types import (

0 commit comments

Comments
 (0)