PauliZZ¶
from cascaqit import PauliZZ
Create a Z product on two distinct logical targets and return Observable. Left and right are name strings retained in that order. An omitted name takes a form such as Z(q0)*Z(q1). Repeating a target raises ValueError.
This measures joint parity: 00 and 11 have value +1, while 01 and 10 have value -1. The product of separate Z expectations generally differs from the ZZ expectation.
from cascaqit import PauliZZ
zz = PauliZZ("q0", "q1", name="parity")
assert zz.targets == ("q0", "q1")
assert zz.name == "parity"
Construction does not perform measurement. Both a Bell state and a classical 00/11 mixture can have ZZ=1, so this value alone does not establish coherence. See the Bell observable batch.