Skip to content

Commit 2ca67ff

Browse files
authored
Revert "Backport cleaner squin gate generation" (#602)
Reverts #598
1 parent a6626eb commit 2ca67ff

File tree

5 files changed

+227
-200
lines changed

5 files changed

+227
-200
lines changed

src/bloqade/squin/rewrite/U3_to_clifford.py

Lines changed: 13 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,6 @@ def sdag() -> list[ir.Statement]:
1414
return [_op := op.stmts.S(), op.stmts.Adjoint(op=_op.result, is_unitary=True)]
1515

1616

17-
def sqrt_x_dag() -> list[ir.Statement]:
18-
return [
19-
_op := op.stmts.SqrtX(),
20-
op.stmts.Adjoint(op=_op.result, is_unitary=True),
21-
]
22-
23-
24-
def sqrt_y_dag() -> list[ir.Statement]:
25-
return [
26-
_op := op.stmts.SqrtY(),
27-
op.stmts.Adjoint(op=_op.result, is_unitary=True),
28-
]
29-
30-
3117
# (theta, phi, lam)
3218
U3_HALF_PI_ANGLE_TO_GATES: dict[
3319
tuple[int, int, int], Callable[[], Tuple[List[ir.Statement], ...]]
@@ -40,21 +26,21 @@ def sqrt_y_dag() -> list[ir.Statement]:
4026
(1, 0, 1): lambda: ([op.stmts.S()], [op.stmts.SqrtY()]),
4127
(1, 0, 2): lambda: ([op.stmts.H()],),
4228
(1, 0, 3): lambda: (sdag(), [op.stmts.SqrtY()]),
43-
(1, 1, 0): lambda: ([op.stmts.S()], sqrt_x_dag()),
44-
(1, 1, 1): lambda: ([op.stmts.Z()], sqrt_x_dag()),
45-
(1, 1, 2): lambda: (sdag(), sqrt_x_dag()),
46-
(1, 1, 3): lambda: (sqrt_x_dag(),),
47-
(1, 2, 0): lambda: ([op.stmts.Z()], sqrt_y_dag()),
48-
(1, 2, 1): lambda: (sdag(), sqrt_y_dag()),
49-
(1, 2, 2): lambda: (sqrt_y_dag(),),
50-
(1, 2, 3): lambda: ([op.stmts.S()], sqrt_y_dag()),
51-
(1, 3, 0): lambda: (sdag(), [op.stmts.SqrtX()]),
52-
(1, 3, 1): lambda: ([op.stmts.SqrtX()],),
53-
(1, 3, 2): lambda: ([op.stmts.S()], [op.stmts.SqrtX()]),
54-
(1, 3, 3): lambda: ([op.stmts.Z()], [op.stmts.SqrtX()]),
29+
(1, 1, 0): lambda: ([op.stmts.SqrtY()], [op.stmts.S()]),
30+
(1, 1, 1): lambda: ([op.stmts.S()], [op.stmts.SqrtY()], [op.stmts.S()]),
31+
(1, 1, 2): lambda: ([op.stmts.Z()], [op.stmts.SqrtY()], [op.stmts.S()]),
32+
(1, 1, 3): lambda: (sdag(), [op.stmts.SqrtY()], [op.stmts.S()]),
33+
(1, 2, 0): lambda: ([op.stmts.SqrtY()], [op.stmts.Z()]),
34+
(1, 2, 1): lambda: ([op.stmts.S()], [op.stmts.SqrtY()], [op.stmts.Z()]),
35+
(1, 2, 2): lambda: ([op.stmts.Z()], [op.stmts.SqrtY()], [op.stmts.Z()]),
36+
(1, 2, 3): lambda: (sdag(), [op.stmts.SqrtY()], [op.stmts.Z()]),
37+
(1, 3, 0): lambda: ([op.stmts.SqrtY()], sdag()),
38+
(1, 3, 1): lambda: ([op.stmts.S()], [op.stmts.SqrtY()], sdag()),
39+
(1, 3, 2): lambda: ([op.stmts.Z()], [op.stmts.SqrtY()], sdag()),
40+
(1, 3, 3): lambda: (sdag(), [op.stmts.SqrtY()], sdag()),
5541
(2, 0, 0): lambda: ([op.stmts.Y()],),
5642
(2, 0, 1): lambda: ([op.stmts.S()], [op.stmts.Y()]),
57-
(2, 0, 2): lambda: ([op.stmts.X()],),
43+
(2, 0, 2): lambda: ([op.stmts.Z()], [op.stmts.Y()]),
5844
(2, 0, 3): lambda: (sdag(), [op.stmts.Y()]),
5945
}
6046

0 commit comments

Comments
 (0)