Skip to content

Commit 3d57c7a

Browse files
update README.md
1 parent e20ea97 commit 3d57c7a

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

qualtran/rotation_synthesis/README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ SU2CliffordT(matrix=array([[ZW(coords=(1509861905169903736208, 11747542590833689
4343

4444
>>> rs.to_sequence(diagonal.to_matrix()) # Print gate names
4545
('S', 'H', 'Tz', 'Tx', 'Ty', 'Tz', 'Tx', 'Tz', 'Tx', 'Tz', 'Ty', 'Tz', 'Ty', 'Tx', 'Tz', 'Tx', 'Ty', 'Tx', 'Ty', 'Tx', 'Tz', 'Ty', 'Tz', 'Ty', 'Tz', 'Ty', 'Tz', 'Ty', 'Tx', 'Tz', 'Ty', 'Tz', 'Ty', 'Tz', 'Tx', 'Tz', 'Ty', 'Tz', 'Ty', 'Tx', 'Ty', 'Tz', 'Tx', 'Tz', 'Ty', 'Tx', 'Ty', 'Tx', 'Tz', 'Tx', 'Ty', 'Tz', 'Ty', 'Tx', 'Ty', 'Tx', 'Ty', 'Tz', 'Tx', 'Tz', 'Ty', 'Tz', 'Ty', 'Tz', 'Tx', 'Ty', 'Tz', 'Tx', 'Tz', 'Ty', 'Tx', 'Ty', 'Tz', 'Tx', 'Ty', 'Tx', 'Ty', 'Tx', 'Ty', 'Tz', 'Ty', 'Tz')
46+
47+
>>> print(diagonal.to_cirq()) # Export to Cirq
48+
0: ───S───Rx(0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───
49+
50+
>>> print(diagonal.to_quirk(fmt='xz')) # Export to quirk
51+
https://algassert.com/quirk#circuit={"cols":[["Z^½"],["X^¼"],["Z^-¼"],["X^¼"],["Z^¼"],["X^¼"],["Z^-¼"],["X^¼"],["Z^¼"],["X^¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^¼"],["Z^¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^¼"],["Z^¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^¼"],["Z^¼"],["X^¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^¼"],["Z^¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^¼"],["Z^¼"],["X^¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^¼"],["X^-¼"],["Z^-¼"],["X^-¼"],["Z^-¼"],["X^¼"],["Z^¼"],["X^-¼"],["Z^-¼"]]}
4652
```
4753

4854

@@ -60,7 +66,25 @@ expected number of T gates is 32.335 divided into
6066

6167
>>> 'actual diamond distance: %e'%fallback.diamond_norm_distance_to_rz(theta, config)
6268
'actual diamond distance: 8.358389e-09'
69+
70+
>>> print(fallback.to_quirk(fmt='xz')) # Export to Quirk
71+
https://algassert.com/quirk#circuit={"cols":[["•","X"],["Z^½",1],["Z^½",1],["Z^½",1],["H",1],["Z^½",1],["H",1],["X^¼",1],["Z^¼",1],["X^¼",1],["Z^-¼",1],["X^¼",1],["Z^-¼",1],["X^-¼",1],["Z^¼",1],["X^¼",1],["Z^¼",1],["X^¼",1],["Z^¼",1],["X^¼",1],["Z^¼",1],["X^-¼",1],["Z^-¼",1],["X^-¼",1],["Z^-¼",1],["X^¼",1],["Z^-¼",1],["X^-¼",1],["Z^¼",1],["X^-¼",1],["Z^-¼",1],["X^¼",1],["Z^-¼",1],["X^-¼",1],["Z^-¼",1],["X^-¼",1],["Z^-¼",1],["X^-¼",1],["Z^-¼",1],["•","X"],[1,"Measure"],["H","•"],["Z^½","•"],["H","•"],["X^-¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^¼","•"],["Z^¼","•"],["X^¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^¼","•"],["Z^¼","•"],["X^¼","•"],["Z^¼","•"],["X^¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^¼","•"],["Z^¼","•"],["X^¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^-¼","•"],["Z^-¼","•"],["X^¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^¼","•"],["Z^¼","•"],["X^¼","•"],["Z^-¼","•"],["X^¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^-¼","•"],["Z^¼","•"],["X^-¼","•"],["H","•"]]}
72+
73+
>>> print(fallback.to_cirq()) # Export to Cirq.
74+
```
75+
76+
<details>
77+
<summary> Cirq circuit </summary>
78+
79+
```sh
80+
81+
0: ───@───[ 0: ───S───S───S───H───S───H───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)─── ]───@───────[ 0: ───H───S───H───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(-0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(0.25π)───Rz(-0.25π)───Rx(0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───Rz(0.25π)───Rx(-0.25π)───H─── ].with_classical_controls(m)───
82+
│ │ ║
83+
1: ───X──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────X───M───╫───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
84+
║ ║
85+
m: ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════@═══╩═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
6386
```
87+
</details>
6488

6589

6690
### Mixed Diagonal Protocol

0 commit comments

Comments
 (0)