The circuit
The 117\times502 matrix. Rows are wires and columns are rotations. A 1 means the wire takes part in the rotation, and the number beside each wire is its row weight. Scroll sideways to see every column.
| wire | 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250 260 270 280 290 300 310 320 330 340 350 360 370 380 390 400 410 420 430 440 450 460 470 480 490 500 |
|---|---|
| out 0 (69) | 111111························································································································1·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11·········································································································································································································································································· |
| out 1 (7) | ······1111111········································································································································································································································································································································································································································································································· |
| out 2 (7) | ·············1111111·································································································································································································································································································································································································································································································· |
| out 3 (7) | ····················1111111··························································································································································································································································································································································································································································································· |
| out 4 (7) | ···························1111111···················································································································································································································································································································································································································································································· |
| out 5 (7) | ··································1111111············································································································································································································································································································································································································································································· |
| out 6 (7) | ·········································1111111······································································································································································································································································································································································································································································ |
| out 7 (7) | ················································1111111······························································································································································································································································································································································································································································· |
| out 8 (7) | ·······················································1111111························································································································································································································································································································································································································································ |
| out 9 (7) | ······························································1111111················································································································································································································································································································································································································································· |
| out 10 (7) | ·····································································1111111·········································································································································································································································································································································································································································· |
| out 11 (7) | ············································································1111111··································································································································································································································································································································································································································· |
| out 12 (7) | ···················································································1111111···························································································································································································································································································································································································································· |
| out 13 (7) | ··························································································1111111····················································································································································································································································································································································································································· |
| out 14 (7) | ·································································································1111111·············································································································································································································································································································································································································· |
| out 15 (7) | ········································································································1111111······································································································································································································································································································································································································· |
| out 16 (129) | 111···1111···1111···1111···1111···1111···1111···1111···1111···1111···1111···1111··········1111···1111··········11111111111····1·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11·········································································································································································································································································· |
| out 17 (21) | ·······················································1111··········11··11········1111··········11··11········1111·······1··························································································································································································································································································································································································· |
| out 18 (23) | ······11··11········1111··········11··11········11··11····································1111·····················11······1·························································································································································································································································································································································································· |
| out 19 (19) | ······························································11··11········11··11·11··11········1111··········11···········1························································································································································································································································································································································································· |
| out 20 (125) | 1··11·1·1·1·111··11·11··11·11··11·1·1·1·11111···1111···11··11·1111···1·1·1·111··11·1·1·1·1·······1·1·1·11111·········11······11·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11·········································································································································································································································································· |
| out 21 (61) | ·············1·1·1·111··11·1·1·1·11··1·111111···1·1·1·11·1·1·11·1·1·11·1·1·11·1·1·1·1·11·111··11··1·11·111··11···11··1·1·····1························································································································································································································································································································································································ |
| out 22 (61) | ·······11··1111··11···1111··1·11·1·11··11·······11··11·1··1·111··1·111111···1·1·1·1··1111·1·1·1·11111···1·1·1·1····11·11·····1························································································································································································································································································································································································ |
| out 23 (125) | ·······························································································································1··1·1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11···············1·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11············································································································································· |
| out 24 (7) | ···································································································································1111111············································································································································································································································································································································································ |
| out 25 (7) | ··········································································································································1111111····································································································································································································································································································································································· |
| out 26 (7) | ·················································································································································1111111······························································································································································································································································································································································ |
| out 27 (7) | ························································································································································1111111······················································································································································································································································································································································· |
| out 28 (7) | ·······························································································································································1111111················································································································································································································································································································································ |
| out 29 (7) | ······································································································································································1111111········································································································································································································································································································································· |
| out 30 (7) | ·············································································································································································1111111·································································································································································································································································································································· |
| out 31 (7) | ····················································································································································································1111111··························································································································································································································································································································· |
| out 32 (7) | ···························································································································································································1111111···················································································································································································································································································································· |
| out 33 (7) | ··································································································································································································1111111············································································································································································································································································································· |
| out 34 (7) | ·········································································································································································································1111111······································································································································································································································································································ |
| out 35 (7) | ················································································································································································································1111111······························································································································································································································································································· |
| out 36 (7) | ·······················································································································································································································1111111························································································································································································································································································ |
| out 37 (7) | ······························································································································································································································1111111················································································································································································································································································· |
| out 38 (7) | ·····································································································································································································································1111111·········································································································································································································································································· |
| out 39 (125) | ·······························································································································111·1·1·1·1·········1111·1··1·11·11··11··1111········1··1·11··1111·11··11···1111·11··11·1·1·1·1········11··1111111111111····1·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11············································································································································· |
| out 40 (21) | ····················································································································································································1111··········11··11········1111··········11··11········1111·······1······························································································································································································································································ |
| out 41 (23) | ···································································································································11··11········1111··········11··11········11··11····································1111·····················11······1····························································································································································································································································· |
| out 42 (19) | ···························································································································································································11··11········11··11·11··11········1111··········11···········1···························································································································································································································································· |
| out 43 (51) | ···································································································································1111·····1111········1·1·1·1··1111···1111········1·1·1·1··1111·1··1·11········11··11·1·11·1·1·11·11··1·11······11······1··························································································································································································································································· |
| out 44 (61) | ··········································································································································1·1·1·111··11·1·1·1·11··1·111111···1·1·1·11·1·1·11·1·1·11·1·1·11·1·1·1·1·11·111··11··1·11·111··11···11··1·1·····1··························································································································································································································································· |
| out 45 (61) | ····································································································································11··1111··11···1111··1·11·1·11··11·······11··11·1··1·111··1·111111···1·1·1·1··1111·1·1·1·11111···1·1·1·1····11·11·····1··························································································································································································································································· |
| out 46 (125) | ····························································································································································································································································1··1·1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11···············1··11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11··············· |
| out 47 (7) | ································································································································································································································································1111111··············································································································································································································································· |
| out 48 (7) | ·······································································································································································································································································1111111········································································································································································································································ |
| out 49 (7) | ··············································································································································································································································································1111111································································································································································································································· |
| out 50 (7) | ·····················································································································································································································································································1111111·························································································································································································································· |
| out 51 (7) | ····························································································································································································································································································1111111··················································································································································································································· |
| out 52 (7) | ···································································································································································································································································································1111111············································································································································································································ |
| out 53 (7) | ··········································································································································································································································································································1111111····································································································································································································· |
| out 54 (7) | ·················································································································································································································································································································1111111······························································································································································································ |
| out 55 (7) | ························································································································································································································································································································1111111······················································································································································································· |
| out 56 (7) | ·······························································································································································································································································································································1111111················································································································································································ |
| out 57 (7) | ······································································································································································································································································································································1111111········································································································································································· |
| out 58 (7) | ·············································································································································································································································································································································1111111·································································································································································· |
| out 59 (7) | ····················································································································································································································································································································································1111111··························································································································································· |
| out 60 (7) | ···························································································································································································································································································································································1111111···················································································································································· |
| out 61 (7) | ··································································································································································································································································································································································1111111············································································································································· |
| out 62 (125) | ····························································································································································································································································111·1·1·1·1·········1111·1··1·11·11··11··1111········1··1·11··1111·11··11···1111·11··11·1·1·1·1········11··1111111111111····1··11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11··············· |
| out 63 (21) | ·················································································································································································································································································································1111··········11··11········1111··········11··11········1111·······1································································································································· |
| out 64 (23) | ································································································································································································································································11··11········1111··········11··11········11··11····································1111·····················11······1································································································································ |
| out 65 (19) | ························································································································································································································································································································11··11········11··11·11··11········1111··········11···········1······························································································································· |
| out 66 (51) | ································································································································································································································································1111·····1111········1·1·1·1··1111···1111········1·1·1·1··1111·1··1·11········11··11·1·11·1·1·11·11··1·11······11······1······························································································································ |
| out 67 (61) | ·······································································································································································································································································1·1·1·111··11·1·1·1·11··1·111111···1·1·1·11·1·1·11·1·1·11·1·1·11·1·1·1·1·11·111··11··1·11·111··11···11··1·1·····1······························································································································ |
| out 68 (61) | ·································································································································································································································································11··1111··11···1111··1·11·1·11··11·······11··11·1··1·111··1·111111···1·1·1·1··1111·1·1·1·11111···1·1·1·1····11·11·····1······························································································································ |
| out 69 (63) | ·························································································································································································································································································································································································11··1·1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11··············· |
| out 70 (7) | ······························································································································································································································································································································································································1111111················································································································· |
| out 71 (7) | ·····································································································································································································································································································································································································1111111·········································································································· |
| out 72 (7) | ············································································································································································································································································································································································································1111111··································································································· |
| out 73 (7) | ···················································································································································································································································································································································································································1111111···························································································· |
| out 74 (7) | ··························································································································································································································································································································································································································1111111····················································································· |
| out 75 (7) | ·································································································································································································································································································································································································································1111111·············································································· |
| out 76 (7) | ········································································································································································································································································································································································································································1111111······································································· |
| out 77 (7) | ···············································································································································································································································································································································································································································1111111································································ |
| out 78 (7) | ······················································································································································································································································································································································································································································1111111························································· |
| out 79 (7) | ·····························································································································································································································································································································································································································································1111111·················································· |
| out 80 (7) | ····································································································································································································································································································································································································································································1111111··········································· |
| out 81 (7) | ···········································································································································································································································································································································································································································································1111111···································· |
| out 82 (7) | ··················································································································································································································································································································································································································································································1111111····························· |
| out 83 (7) | ·························································································································································································································································································································································································································································································1111111······················ |
| out 84 (7) | ································································································································································································································································································································································································································································································1111111··············· |
| out 85 (63) | ·························································································································································································································································································································································································1111·1·1·1·1·········1111·1··1·11·11··11··1111········1··1·11··1111·11··11···1111·11··11·1·1·1·1········11··1111111111111···· |
| out 86 (21) | ···············································································································································································································································································································································································································································1111··········11··11········1111··········11··11········1111·······1··· |
| out 87 (23) | ······························································································································································································································································································································································································11··11········1111··········11··11········11··11····································1111·····················11······1·· |
| out 88 (19) | ······················································································································································································································································································································································································································································11··11········11··11·11··11········1111··········11···········1· |
| out 89 (51) | ······························································································································································································································································································································································································1111·····1111········1·1·1·1··1111···1111········1·1·1·1··1111·1··1·11········11··11·1·11·1·1·11·11··1·11······11······1 |
| out 90 (61) | ·····································································································································································································································································································································································································1·1·1·111··11·1·1·1·11··1·111111···1·1·1·11·1·1·11·1·1·11·1·1·11·1·1·1·1·11·111··11··1·11·111··11···11··1·1·····1 |
| out 91 (61) | ·······························································································································································································································································································································································································11··1111··11···1111··1·11·1·11··11·······11··11·1··1·111··1·111111···1·1·1·1··1111·1·1·1·11111···1·1·1·1····11·11·····1 |
| check 92 (126) | 1··11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11···············1·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11·········································································································································································································································································· |
| check 93 (64) | ·1111·1111····1·11·1··1111·11··11··11··111111···1·1·1·11111···1111···11··11·1111···1111····11··1111··11·1··1·11······································································································································································································································································································································································································· |
| check 94 (64) | 1·1·111··1·111··1·111·1·1·1·1·11·11·1·1·11·1·1·111··11·1·1·1·1·1·11·1·1·11·11··1·11·11··111111···1··1·1111··11········································································································································································································································································································································································································ |
| check 95 (64) | ········1111·1··1·111111···11··11···1111··1·11·11111····11··111·1·1·1·11··111111·····1111·1111···1·1·1·1·······1·1·11·1·1···11························································································································································································································································································································································································ |
| check 96 (64) | ·······1·11·11·1·1·1··1111·1··1·11·1·11·1·11··1111··11·1··1·111111··········11··11·1·1·1·11111····1·11·1··1111····1111·11·1··1························································································································································································································································································································································································ |
| check 97 (64) | ······1111···1111···1111···1·1·1·11··1·111111···········1·11·1·1·11·11·1·1·1·1·11·11·1·1·111··11·1··1·11·1·11·1··111··11·1·1·1························································································································································································································································································································································································ |
| check 98 (64) | ······1··1·11·1·11·11··1·11·11··11··1111···1111·1··1·111··1·11·11··11··1111··1·11·11111···1··1·11·······11··11·11··11111·1···························································································································································································································································································································································································· |
| check 99 (126) | ·······························································································································111·1111····1·11·1··1111·11··11··11··111111···1·1·1·11111···1111···11··11·1111···1111····11··1111··11·1··1·11···············1·11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11············································································································································· |
| check 100 (64) | ······························································································································11·111··1·111··1·111·1·1·1·1·11·11·1·1·11·1·1·111··11·1·1·1·1·1·11·1·1·11·11··1·11·11··111111···1··1·1111··11··········································································································································································································································································· |
| check 101 (64) | ·····································································································································1111·1··1·111111···11··11···1111··1·11·11111····11··111·1·1·1·11··111111·····1111·1111···1·1·1·1·······1·1·11·1·1···11··························································································································································································································································· |
| check 102 (64) | ····································································································································1·11·11·1·1·1··1111·1··1·11·1·11·1·11··1111··11·1··1·111111··········11··11·1·1·1·11111····1·11·1··1111····1111·11·1··1··························································································································································································································································· |
| check 103 (64) | ···································································································································1111···1111···1111···1·1·1·11··1·111111···········1·11·1·1·11·11·1·1·1·1·11·11·1·1·111··11·1··1·11·1·11·1··111··11·1·1·1··························································································································································································································································· |
| check 104 (64) | ···································································································································1··1·11·1·11·11··1·11·11··11··1111···1111·1··1·111··1·11·11··11··1111··1·11·11111···1··1·11·······11··11·11··11111·1······························································································································································································································································· |
| check 105 (126) | ····························································································································································································································································111·1111····1·11·1··1111·11··11··11··111111···1·1·1·11111···1111···11··11·1111···1111····11··1111··11·1··1·11···············1··11··1·11·11111···11··11··11··111··1·1111··11·1111····11··1111··11···1111·11··11·11··11··1·11·11111····11··11··············· |
| check 106 (64) | ···························································································································································································································································11·111··1·111··1·111·1·1·1·1·11·11·1·1·11·1·1·111··11·1·1·1·1·1·11·1·1·11·11··1·11·11··111111···1··1·1111··11·············································································································································· |
| check 107 (64) | ··································································································································································································································································1111·1··1·111111···11··11···1111··1·11·11111····11··111·1·1·1·11··111111·····1111·1111···1·1·1·1·······1·1·11·1·1···11······························································································································ |
| check 108 (64) | ·································································································································································································································································1·11·11·1·1·1··1111·1··1·11·1·11·1·11··1111··11·1··1·111111··········11··11·1·1·1·11111····1·11·1··1111····1111·11·1··1······························································································································ |
| check 109 (64) | ································································································································································································································································1111···1111···1111···1·1·1·11··1·111111···········1·11·1·1·11·11·1·1·1·1·11·11·1·1·111··11·1··1·11·1·11·1··111··11·1·1·1······························································································································ |
| check 110 (64) | ································································································································································································································································1··1·11·1·11·11··1·11·11··11··1111···1111·1··1·111··1·11·11··11··1111··1·11·11111···1··1·11·······11··11·11··11111·1·································································································································· |
| check 111 (64) | ·························································································································································································································································································································································································1111·1111····1·11·1··1111·11··11··11··111111···1·1·1·11111···1111···11··11·1111···1111····11··1111··11·1··1·11··············· |
| check 112 (64) | ························································································································································································································································································································································································1·1·111··1·111··1·111·1·1·1·1·11·11·1·1·11·1·1·111··11·1·1·1·1·1·11·1·1·11·11··1·11·11··111111···1··1·1111··11················ |
| check 113 (64) | ································································································································································································································································································································································································1111·1··1·111111···11··11···1111··1·11·11111····11··111·1·1·1·11··111111·····1111·1111···1·1·1·1·······1·1·11·1·1···11 |
| check 114 (64) | ·······························································································································································································································································································································································································1·11·11·1·1·1··1111·1··1·11·1·11·1·11··1111··11·1··1·111111··········11··11·1·1·1·11111····1·11·1··1111····1111·11·1··1 |
| check 115 (64) | ······························································································································································································································································································································································································1111···1111···1111···1·1·1·11··1·111111···········1·11·1·1·11·11·1·1·1·1·11·11·1·1·111··11·1··1·11·1·11·1··111··11·1·1·1 |
| check 116 (64) | ······························································································································································································································································································································································································1··1·11·1·11·11··1·11·11··11··1111···1111·1··1·111··1·11·11··11··1111··1·11·11111···1··1·11·······11··11·11··11111·1···· |
The gate is read off the output rows. An output row of odd weight gives a T, a pair of output rows with odd overlap gives a CS, and an odd triple overlap gives a CCZ. The circuit is a valid factory because every such parity that touches a check row is even.
Figures of merit
Output gate
As gates: \mathrm{T}_{0}\cdot \mathrm{T}_{1}\cdot \mathrm{T}_{2}\cdot \mathrm{T}_{3}\cdot \mathrm{T}_{4}\cdot \mathrm{T}_{5}\cdot \mathrm{T}_{6}\cdot \mathrm{T}_{7}\cdot \mathrm{T}_{8}\cdot \mathrm{T}_{9}\cdot \mathrm{T}_{10}\cdot \mathrm{T}_{11}\cdot \mathrm{T}_{12}\cdot \mathrm{T}_{13}\cdot \mathrm{T}_{14}\cdot \mathrm{T}_{15}\cdot \mathrm{T}_{16}\cdot \mathrm{T}_{17}\cdot \mathrm{T}_{18}\cdot \mathrm{T}_{19}\cdot \mathrm{T}_{20}\cdot \mathrm{T}_{21}\cdot \mathrm{T}_{22}\cdot \mathrm{T}_{23}\cdot \mathrm{T}_{24}\cdot \mathrm{T}_{25}\cdot \mathrm{T}_{26}\cdot \mathrm{T}_{27}\cdot \mathrm{T}_{28}\cdot \mathrm{T}_{29}\cdot \mathrm{T}_{30}\cdot \mathrm{T}_{31}\cdot \mathrm{T}_{32}\cdot \mathrm{T}_{33}\cdot \mathrm{T}_{34}\cdot \mathrm{T}_{35}\cdot \mathrm{T}_{36}\cdot \mathrm{T}_{37}\cdot \mathrm{T}_{38}\cdot \mathrm{T}_{39}\cdot \mathrm{T}_{40}\cdot \mathrm{T}_{41}\cdot \mathrm{T}_{42}\cdot \mathrm{T}_{43}\cdot \mathrm{T}_{44}\cdot \mathrm{T}_{45}\cdot \mathrm{T}_{46}\cdot \mathrm{T}_{47}\cdot \mathrm{T}_{48}\cdot \mathrm{T}_{49}\cdot \mathrm{T}_{50}\cdot \mathrm{T}_{51}\cdot \mathrm{T}_{52}\cdot \mathrm{T}_{53}\cdot \mathrm{T}_{54}\cdot \mathrm{T}_{55}\cdot \mathrm{T}_{56}\cdot \mathrm{T}_{57}\cdot \mathrm{T}_{58}\cdot \mathrm{T}_{59}\cdot \mathrm{T}_{60}\cdot \mathrm{T}_{61}\cdot \mathrm{T}_{62}\cdot \mathrm{T}_{63}\cdot \mathrm{T}_{64}\cdot \mathrm{T}_{65}\cdot \mathrm{T}_{66}\cdot \mathrm{T}_{67}\cdot \mathrm{T}_{68}\cdot \mathrm{T}_{69}\cdot \mathrm{T}_{70}\cdot \mathrm{T}_{71}\cdot \mathrm{T}_{72}\cdot \mathrm{T}_{73}\cdot \mathrm{T}_{74}\cdot \mathrm{T}_{75}\cdot \mathrm{T}_{76}\cdot \mathrm{T}_{77}\cdot \mathrm{T}_{78}\cdot \mathrm{T}_{79}\cdot \mathrm{T}_{80}\cdot \mathrm{T}_{81}\cdot \mathrm{T}_{82}\cdot \mathrm{T}_{83}\cdot \mathrm{T}_{84}\cdot \mathrm{T}_{85}\cdot \mathrm{T}_{86}\cdot \mathrm{T}_{87}\cdot \mathrm{T}_{88}\cdot \mathrm{T}_{89}\cdot \mathrm{T}_{90}\cdot \mathrm{T}_{91}
As monomials: 0+1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91 (output wires per term, separated by +)
This row stands for every gate that a CNOT circuit and S, Z and CZ gates on the outputs can reach from this one. They all prepare the same magic state. The wires are shown in the S_k-canonical frame.
Clifford correction
With every rotation a \mathrm{T}=\mathrm{diag}(1,e^{i\pi/4}), the rotations deposit the gate above times a diagonal Clifford. Undo it after the rotations and before the checks are measured, with 94 single-wire gates and 176 \mathrm{CZ} gates: \mathrm{Z} on output 0, \mathrm{S} on output 1, \mathrm{S} on output 2, \mathrm{S} on output 3, \mathrm{S} on output 4, \mathrm{S} on output 5, \mathrm{S} on output 6, \mathrm{S} on output 7, \mathrm{S} on output 8, \mathrm{S} on output 9, \mathrm{S} on output 10, \mathrm{S} on output 11, \mathrm{S} on output 12, \mathrm{S} on output 13, \mathrm{S} on output 14, \mathrm{S} on output 15, \mathrm{Z} on output 17, \mathrm{S} on output 18, \mathrm{S}^\dagger on output 19, \mathrm{Z} on output 20, \mathrm{Z} on output 21, \mathrm{Z} on output 22, \mathrm{Z} on output 23, \mathrm{S} on output 24 and 246 more (listed below). The circuit's action is then exactly the gate above, and an error-free run passes every check with certainty.
All 270 correction gates
\mathrm{Z} on output 0, \mathrm{S} on output 1, \mathrm{S} on output 2, \mathrm{S} on output 3, \mathrm{S} on output 4, \mathrm{S} on output 5, \mathrm{S} on output 6, \mathrm{S} on output 7, \mathrm{S} on output 8, \mathrm{S} on output 9, \mathrm{S} on output 10, \mathrm{S} on output 11, \mathrm{S} on output 12, \mathrm{S} on output 13, \mathrm{S} on output 14, \mathrm{S} on output 15, \mathrm{Z} on output 17, \mathrm{S} on output 18, \mathrm{S}^\dagger on output 19, \mathrm{Z} on output 20, \mathrm{Z} on output 21, \mathrm{Z} on output 22, \mathrm{Z} on output 23, \mathrm{S} on output 24, \mathrm{S} on output 25, \mathrm{S} on output 26, \mathrm{S} on output 27, \mathrm{S} on output 28, \mathrm{S} on output 29, \mathrm{S} on output 30, \mathrm{S} on output 31, \mathrm{S} on output 32, \mathrm{S} on output 33, \mathrm{S} on output 34, \mathrm{S} on output 35, \mathrm{S} on output 36, \mathrm{S} on output 37, \mathrm{S} on output 38, \mathrm{Z} on output 39, \mathrm{Z} on output 40, \mathrm{S} on output 41, \mathrm{S}^\dagger on output 42, \mathrm{S}^\dagger on output 43, \mathrm{Z} on output 44, \mathrm{Z} on output 45, \mathrm{Z} on output 46, \mathrm{S} on output 47, \mathrm{S} on output 48, \mathrm{S} on output 49, \mathrm{S} on output 50, \mathrm{S} on output 51, \mathrm{S} on output 52, \mathrm{S} on output 53, \mathrm{S} on output 54, \mathrm{S} on output 55, \mathrm{S} on output 56, \mathrm{S} on output 57, \mathrm{S} on output 58, \mathrm{S} on output 59, \mathrm{S} on output 60, \mathrm{S} on output 61, \mathrm{Z} on output 62, \mathrm{Z} on output 63, \mathrm{S} on output 64, \mathrm{S}^\dagger on output 65, \mathrm{S}^\dagger on output 66, \mathrm{Z} on output 67, \mathrm{Z} on output 68, \mathrm{S} on output 69, \mathrm{S} on output 70, \mathrm{S} on output 71, \mathrm{S} on output 72, \mathrm{S} on output 73, \mathrm{S} on output 74, \mathrm{S} on output 75, \mathrm{S} on output 76, \mathrm{S} on output 77, \mathrm{S} on output 78, \mathrm{S} on output 79, \mathrm{S} on output 80, \mathrm{S} on output 81, \mathrm{S} on output 82, \mathrm{S} on output 83, \mathrm{S} on output 84, \mathrm{S} on output 85, \mathrm{Z} on output 86, \mathrm{S} on output 87, \mathrm{S}^\dagger on output 88, \mathrm{S}^\dagger on output 89, \mathrm{Z} on output 90, \mathrm{Z} on output 91, \mathrm{S} on check 92, \mathrm{S} on check 99, \mathrm{S} on check 105, \mathrm{CZ} on output 0, output 16, \mathrm{CZ} on output 0, output 20, \mathrm{CZ} on output 0, output 39, \mathrm{CZ} on output 0, output 41, \mathrm{CZ} on output 0, output 43, \mathrm{CZ} on output 0, output 45, \mathrm{CZ} on output 0, check 92, \mathrm{CZ} on output 16, output 19, \mathrm{CZ} on output 16, output 21, \mathrm{CZ} on output 16, output 39, \mathrm{CZ} on output 16, output 41, \mathrm{CZ} on output 16, output 43, \mathrm{CZ} on output 16, output 45, \mathrm{CZ} on output 16, check 93, \mathrm{CZ} on output 16, check 94, \mathrm{CZ} on output 16, check 96, \mathrm{CZ} on output 16, check 97, \mathrm{CZ} on output 17, output 19, \mathrm{CZ} on output 17, output 21, \mathrm{CZ} on output 17, check 95, \mathrm{CZ} on output 17, check 97, \mathrm{CZ} on output 17, check 98, \mathrm{CZ} on output 18, output 22, \mathrm{CZ} on output 18, check 92, \mathrm{CZ} on output 18, check 93, \mathrm{CZ} on output 18, check 94, \mathrm{CZ} on output 19, output 20, \mathrm{CZ} on output 19, output 22, \mathrm{CZ} on output 19, check 95, \mathrm{CZ} on output 19, check 96, \mathrm{CZ} on output 20, output 21, \mathrm{CZ} on output 20, output 22, \mathrm{CZ} on output 20, output 39, \mathrm{CZ} on output 20, output 41, \mathrm{CZ} on output 20, output 43, \mathrm{CZ} on output 20, output 45, \mathrm{CZ} on output 20, check 95, \mathrm{CZ} on output 20, check 96, \mathrm{CZ} on output 20, check 97, \mathrm{CZ} on output 21, output 22, \mathrm{CZ} on output 21, check 95, \mathrm{CZ} on output 21, check 96, \mathrm{CZ} on output 21, check 98, \mathrm{CZ} on output 22, check 92, \mathrm{CZ} on output 22, check 97, \mathrm{CZ} on output 23, output 41, \mathrm{CZ} on output 23, output 43, \mathrm{CZ} on output 23, output 45, \mathrm{CZ} on output 23, output 62, \mathrm{CZ} on output 23, output 64, \mathrm{CZ} on output 23, output 66, \mathrm{CZ} on output 23, output 68, \mathrm{CZ} on output 23, check 99, \mathrm{CZ} on output 39, output 41, \mathrm{CZ} on output 39, output 42, \mathrm{CZ} on output 39, output 43, \mathrm{CZ} on output 39, output 44, \mathrm{CZ} on output 39, output 45, \mathrm{CZ} on output 39, output 62, \mathrm{CZ} on output 39, output 64, \mathrm{CZ} on output 39, output 66, \mathrm{CZ} on output 39, output 68, \mathrm{CZ} on output 39, check 92, \mathrm{CZ} on output 39, check 100, \mathrm{CZ} on output 39, check 102, \mathrm{CZ} on output 39, check 103, \mathrm{CZ} on output 40, output 42, \mathrm{CZ} on output 40, output 44, \mathrm{CZ} on output 40, check 101, \mathrm{CZ} on output 40, check 103, \mathrm{CZ} on output 40, check 104, \mathrm{CZ} on output 41, output 43, \mathrm{CZ} on output 41, output 45, \mathrm{CZ} on output 41, check 92, \mathrm{CZ} on output 41, check 99, \mathrm{CZ} on output 41, check 100, \mathrm{CZ} on output 42, output 43, \mathrm{CZ} on output 42, output 45, \mathrm{CZ} on output 42, check 101, \mathrm{CZ} on output 42, check 102, \mathrm{CZ} on output 43, output 44, \mathrm{CZ} on output 43, check 92, \mathrm{CZ} on output 43, check 101, \mathrm{CZ} on output 43, check 102, \mathrm{CZ} on output 43, check 103, \mathrm{CZ} on output 44, output 45, \mathrm{CZ} on output 44, check 101, \mathrm{CZ} on output 44, check 102, \mathrm{CZ} on output 44, check 104, \mathrm{CZ} on output 45, check 92, \mathrm{CZ} on output 45, check 103, \mathrm{CZ} on output 46, output 64, \mathrm{CZ} on output 46, output 66, \mathrm{CZ} on output 46, output 68, \mathrm{CZ} on output 46, output 85, \mathrm{CZ} on output 46, output 87, \mathrm{CZ} on output 46, output 89, \mathrm{CZ} on output 46, output 91, \mathrm{CZ} on output 46, check 105, \mathrm{CZ} on output 62, output 64, \mathrm{CZ} on output 62, output 65, \mathrm{CZ} on output 62, output 66, \mathrm{CZ} on output 62, output 67, \mathrm{CZ} on output 62, output 68, \mathrm{CZ} on output 62, output 85, \mathrm{CZ} on output 62, output 87, \mathrm{CZ} on output 62, output 89, \mathrm{CZ} on output 62, output 91, \mathrm{CZ} on output 62, check 99, \mathrm{CZ} on output 62, check 106, \mathrm{CZ} on output 62, check 108, \mathrm{CZ} on output 62, check 109, \mathrm{CZ} on output 63, output 65, \mathrm{CZ} on output 63, output 67, \mathrm{CZ} on output 63, check 107, \mathrm{CZ} on output 63, check 109, \mathrm{CZ} on output 63, check 110, \mathrm{CZ} on output 64, output 66, \mathrm{CZ} on output 64, output 68, \mathrm{CZ} on output 64, check 99, \mathrm{CZ} on output 64, check 105, \mathrm{CZ} on output 64, check 106, \mathrm{CZ} on output 65, output 66, \mathrm{CZ} on output 65, output 68, \mathrm{CZ} on output 65, check 107, \mathrm{CZ} on output 65, check 108, \mathrm{CZ} on output 66, output 67, \mathrm{CZ} on output 66, check 99, \mathrm{CZ} on output 66, check 107, \mathrm{CZ} on output 66, check 108, \mathrm{CZ} on output 66, check 109, \mathrm{CZ} on output 67, output 68, \mathrm{CZ} on output 67, check 107, \mathrm{CZ} on output 67, check 108, \mathrm{CZ} on output 67, check 110, \mathrm{CZ} on output 68, check 99, \mathrm{CZ} on output 68, check 109, \mathrm{CZ} on output 69, output 85, \mathrm{CZ} on output 69, output 87, \mathrm{CZ} on output 69, output 89, \mathrm{CZ} on output 69, output 91, \mathrm{CZ} on output 85, output 87, \mathrm{CZ} on output 85, output 88, \mathrm{CZ} on output 85, output 89, \mathrm{CZ} on output 85, output 90, \mathrm{CZ} on output 85, output 91, \mathrm{CZ} on output 85, check 105, \mathrm{CZ} on output 85, check 111, \mathrm{CZ} on output 85, check 112, \mathrm{CZ} on output 85, check 114, \mathrm{CZ} on output 85, check 115, \mathrm{CZ} on output 86, output 88, \mathrm{CZ} on output 86, output 90, \mathrm{CZ} on output 86, check 113, \mathrm{CZ} on output 86, check 115, \mathrm{CZ} on output 86, check 116, \mathrm{CZ} on output 87, output 89, \mathrm{CZ} on output 87, output 91, \mathrm{CZ} on output 87, check 105, \mathrm{CZ} on output 87, check 111, \mathrm{CZ} on output 87, check 112, \mathrm{CZ} on output 88, output 89, \mathrm{CZ} on output 88, output 91, \mathrm{CZ} on output 88, check 113, \mathrm{CZ} on output 88, check 114, \mathrm{CZ} on output 89, output 90, \mathrm{CZ} on output 89, check 105, \mathrm{CZ} on output 89, check 113, \mathrm{CZ} on output 89, check 114, \mathrm{CZ} on output 89, check 115, \mathrm{CZ} on output 90, output 91, \mathrm{CZ} on output 90, check 113, \mathrm{CZ} on output 90, check 114, \mathrm{CZ} on output 90, check 116, \mathrm{CZ} on output 91, check 105, \mathrm{CZ} on output 91, check 115
These Clifford gates cannot be avoided. No choice of \mathrm{T}, \mathrm{T}^3, \mathrm{T}^5 or \mathrm{T}^\dagger for each rotation removes them; the catalogue proves this by showing that the linear system over \mathbb{Z}_4 the powers would have to solve has no solution.
Rotations are numbered by matrix column, from 0. The correction comes from the columns by the weight expansion of Bravyi and Haah (2012). verify_catalog.py re-derives it, checks the corrected circuit's phase input by input against the gate, and on small circuits simulates it gate by gate.
Convert the output with CNOT and S
A CNOT circuit on the outputs, followed by S, Z and CZ gates, turns this factory's gate into other gates that prepare the same magic state. Type a target gate to check whether it is reachable. If it is, you get the circuit, checked on every basis state.
Or list every gate it reaches. The list is built in your browser and saved as a text file, one gate per line.
Python code that writes the same list
import json, urllib.request
NAMES = {1: "T", 2: "CS", 3: "CCZ"}
def equivalent_gates(k, terms, limit=1_000_000):
"""Every gate a CNOT circuit and S, Z, CZ gates reach from this one.
A gate is its set of terms mod Clifford: {a} is T, {a,b} is CS and
{a,b,c} is CCZ on those outputs. CNOT c->t sends x_t to
x_c + x_t - 2 x_c x_t, so a term on t but not c adds the term with t
replaced by c, and, below CCZ, the term with c added.
"""
start = frozenset(frozenset(m) for m in terms)
seen, queue = {start}, [start]
for gate in queue:
for c in range(k):
for t in range(k):
if c == t:
continue
new = set(gate)
for m in gate:
if t in m and c not in m:
new ^= {(m - {t}) | {c}}
if len(m) < 3:
new ^= {m | {c}}
new = frozenset(new)
if new not in seen:
seen.add(new)
queue.append(new)
if len(seen) > limit:
raise RuntimeError(f"more than {limit} equivalent gates")
return seen
def name(gate, k):
sep = "," if k > 10 else ""
terms = sorted((sorted(m) for m in gate), key=lambda m: (len(m), m))
return "·".join(NAMES[len(m)] + sep.join(map(str, m)) for m in terms) or "I"
url = "https://shubhamj810.github.io/magic-state-factory-repo/data/factories/502.92.3.a.json"
record = json.load(urllib.request.urlopen(url))
k = record["parameters"]["k"]
gates = equivalent_gates(k, record["gate"]["monomials"])
lines = sorted(name(g, k) for g in gates)
print(len(lines), "equivalent gates")
with open("equivalent-gates-502.92.3.a.txt", "w") as out:
out.write("\n".join(lines) + "\n")
Distance
d=3, exact. No fault of weight below 3 is both undetectable and damaging. One of weight 3 is.
Exactly 10,292 faults of weight 3 are undetectable and damaging, so A_{3}=10{,}292. If each rotation fails independently with probability p, an accepted run has a damaged output with probability A_{3}\,p^{3}+O(p^{4}).
A damaging fault of weight 3 sits on columns [0,1,4].
A fault is a set of faulty columns. It is undetectable when their check parts cancel, and damaging when their output parts do not.
Original source
S. P. Jain, A. Wills, and S. Singh, "Symmetry and AI-assisted discovery of magic-state factories," arXiv:2610.06535 (2026). arxiv.org/abs/2610.06535
Provenance
found by an AI search that glues catalogued small factories along a graph of paired-column contractions; exact distance verified from columns; a verified witness, not a maximum
Found by: AI search: graph gluing
Discovery: AI search
1 recorded source
[
{
"regime": "AI search: graph gluing",
"file": "master_catalog/imports/2026-09-18_graph_gluing_d3/factories.json",
"label": "graph gluing [[502,92,3]]",
"N": 117,
"d": 3,
"d_is_exact": true,
"origin": null,
"provenance": "AI search: graph gluing -- four [[127,23,3]] glued along a path of four factories by 3 paired-column contraction(s) (independent ports); construction and witness in master_catalog/imports/2026-09-18_graph_gluing_d3/witnesses/graph_path_n502_k92_d3.json",
"notes": "Exact A3=10292 independently counted; details in master_catalog/imports/2026-09-18_graph_gluing_d3/README.md. General gluing has prior art; publication novelty is not asserted."
}
]Use it in code
Load this factory and re-derive every number from its circuit with the catalogue's own verifier.
# git clone https://github.com/shubhamj810/magic-state-factory-repo
# cd magic-state-factory-repo/master_catalog
import json, urllib.request
import verify_catalog as VC
url = "https://shubhamj810.github.io/magic-state-factory-repo/data/factories/502.92.3.a.json"
record = json.load(urllib.request.urlopen(url))
columns = record["circuit"]["columns"]
k, N = record["parameters"]["k"], record["parameters"]["N"]
facts, problems = VC.derive(columns, k, N) # gate, T-count, degree, ...
distance = VC.measure_distance(columns, k, N) # exhaustive fault search
print(facts["gate_human"], distance["d_exact"] or distance["d_at_least"],
problems or "verified")
Raw record
Show the JSON this page is built from
Source: master_catalog.json, factories[1074].