the to_sequence method in
|
def to_sequence(matrix: su2_ct.SU2CliffordT, fmt: str = 'xyz') -> tuple[str, ...]: |
can represent a clifford+T operation in 2 forms
- as a string of Tx/Ty/Tz gates followed by a clifford
- An optional H followed by a string of alternating $T_x^{b_i}$ and $T_z^{b_i}$ with $b_i \in {-1, 1}$ followed by a clifford
A third form that clifford+T operations can be written in is the Matsumoto-Amano normal form
$$
U = T^{a_0} (\prod H S^{b_i} T) C
$$
for some clifford $C$, it would be nice to have implement this form as well
references https://arxiv.org/abs/0806.3834 and https://arxiv.org/abs/1312.6584