Closed
Description
Description of the issue
global phase should be multiplied by the exponent and normalized when comparing eigen gates.
How to reproduce the issue
https://github.com/quantumlib/Cirq/blob/main/cirq-core/cirq/ops/common_gates_test.py#L247-L249 has ZPowGate(phase=-0.5)**5
, and https://github.com/quantumlib/Cirq/blob/main/cirq-core/cirq/ops/common_gates_test.py#L252 has a ZPowGate(phase=-0.1)**5
in a different equality group. These are equal gates with the same unitary though, and should be in the same equality group. In the first, the exponentiated phase causes a -5/4 rotation, and in the second it causes a -1/4 rotation, so both end up at the same spot.
Unitaries:
[[0-1j 0+0j]
[0+0j 0+1j]]
[[0-1j 0+0j]
[0+0j 0+1j]]