Skip to content

Add the ability to represent a clifford+T operation in Matsumoto-Amano normal form #1762

@NoureldinYosri

Description

@NoureldinYosri

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

  1. as a string of Tx/Ty/Tz gates followed by a clifford
  2. 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

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions