pub fn ZGate(radix: usize) -> UnitaryExpressionExpand description
The one-qudit clock (Z) gate. This is a Weyl-Heisenberg gate.
This gate shifts the state of a qudit up by one level modulo. For example, the clock gate on a qubit is the Pauli-Z gate. The clock gate on a qutrit is the following matrix:
$$ \begin{pmatrix} 1 & 0 & 0 \\ 0 & e^{\frac{2\pi i}{3} & 0 \\ 0 & 0 & e^{\frac{4\pi i}{3} \\ \end{pmatrix} $$
The clock gate is generally given by the following formula:
$$ \begin{equation} X = \sum_a e^{\frac{2a\pi i}{d}|a><a| \end{equation} $$
where d is the number of levels (2 levels is a qubit, 3 levels is a qutrit, etc.)
References: - https://arxiv.org/pdf/2302.07966.pdf