Skip to content

ppvm.mixins.TruncatingCliffordExtensionMixin

← Module overview

classTruncatingCliffordExtensionMixinsource

ppvm.mixins.TruncatingCliffordExtensionMixin

Bases: CliffordExtensionMixin

Additional Clifford gates with a per-gate ``truncate`` kwarg.

class TruncatingCliffordExtensionMixin

Attributes

NameTypeDefaultDescription
zcy—cy

methods_dagsource

ppvm.mixins.TruncatingCliffordExtensionMixin.s_dag

Signature
def s_dag(*targets: int | Iterable[int] = (), truncate: bool = True) -> None

Apply an S adjoint gate (sqrt(Z) dagger) to each target qubit.

Parameters

NameTypeDefaultDescription
*targetsint | Iterable[int]()
truncateboolTrueSee `TruncatingCliffordMixin.x`.
source

methodsqrt_xsource

ppvm.mixins.TruncatingCliffordExtensionMixin.sqrt_x

Signature
def sqrt_x(*targets: int | Iterable[int] = (), truncate: bool = True) -> None

Apply a sqrt(X) gate to each target qubit.

Parameters

NameTypeDefaultDescription
*targetsint | Iterable[int]()
truncateboolTrueSee `TruncatingCliffordMixin.x`.
source

methodsqrt_ysource

ppvm.mixins.TruncatingCliffordExtensionMixin.sqrt_y

Signature
def sqrt_y(*targets: int | Iterable[int] = (), truncate: bool = True) -> None

Apply a sqrt(Y) gate to each target qubit.

Parameters

NameTypeDefaultDescription
*targetsint | Iterable[int]()
truncateboolTrueSee `TruncatingCliffordMixin.x`.
source

methodsqrt_x_dagsource

ppvm.mixins.TruncatingCliffordExtensionMixin.sqrt_x_dag

Signature
def sqrt_x_dag(*targets: int | Iterable[int] = (), truncate: bool = True) -> None

Apply a sqrt(X) adjoint gate to each target qubit.

Parameters

NameTypeDefaultDescription
*targetsint | Iterable[int]()
truncateboolTrueSee `TruncatingCliffordMixin.x`.
source

methodsqrt_y_dagsource

ppvm.mixins.TruncatingCliffordExtensionMixin.sqrt_y_dag

Signature
def sqrt_y_dag(*targets: int | Iterable[int] = (), truncate: bool = True) -> None

Apply a sqrt(Y) adjoint gate to each target qubit.

Parameters

NameTypeDefaultDescription
*targetsint | Iterable[int]()
truncateboolTrueSee `TruncatingCliffordMixin.x`.
source

methodcysource

ppvm.mixins.TruncatingCliffordExtensionMixin.cy

Signature
def cy(*targets: int | Iterable[int] = (), truncate: bool = True) -> None

Apply controlled-Y gates over consecutive control/target pairs.

Parameters

NameTypeDefaultDescription
*targetsint | Iterable[int]()
truncateboolTrueSee `TruncatingCliffordMixin.x`.
source