Skip to content

cirq.X**1 should be _PauliX instead of XPowGate #4328

Closed
@balopat

Description

@balopat

Description of the issue

As @ybc1991 pointed out - the type of cirq.X**1 should be _PauliX instead of XPowGate. Context: https://github.com/quantumlib/Cirq/pull/4165/files#r646844399.

Discussed on Cirq Cynque on June 9th 2021:

  • We should just fix this
  • That would make the output type value-dependent. -- that is true, but it should be fine this direction, because _PauliX is a subclass of the XPowGate

How to reproduce the issue

print(type(cirq.X), type(cirq.X**1))
# Prints:
# <class 'cirq.ops.pauli_gates._PauliX'> <class 'cirq.ops.common_gates.XPowGate'>

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions