The circuit
The 15\times2295 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 510 520 530 540 550 560 570 580 590 600 610 620 630 640 650 660 670 680 690 700 710 720 730 740 750 760 770 780 790 800 810 820 830 840 850 860 870 880 890 900 910 920 930 940 950 960 970 980 990 1000 1010 1020 1030 1040 1050 1060 1070 1080 1090 1100 1110 1120 1130 1140 1150 1160 1170 1180 1190 1200 1210 1220 1230 1240 1250 1260 1270 1280 1290 1300 1310 1320 1330 1340 1350 1360 1370 1380 1390 1400 1410 1420 1430 1440 1450 1460 1470 1480 1490 1500 1510 1520 1530 1540 1550 1560 1570 1580 1590 1600 1610 1620 1630 1640 1650 1660 1670 1680 1690 1700 1710 1720 1730 1740 1750 1760 1770 1780 1790 1800 1810 1820 1830 1840 1850 1860 1870 1880 1890 1900 1910 1920 1930 1940 1950 1960 1970 1980 1990 2000 2010 2020 2030 2040 2050 2060 2070 2080 2090 2100 2110 2120 2130 2140 2150 2160 2170 2180 2190 2200 2210 2220 2230 2240 2250 2260 2270 2280 2290 |
|---|---|
| out 0 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································· |
| out 1 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································································································································································111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································· |
| out 2 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111······························································································································································································································································································································································································································································································································111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111··························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································· |
| out 3 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·····························································································································································································································································································································································································································································································································································································································································································································································································111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111···························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································· |
| out 4 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111····························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111····························································································································································································································································································································································································································································································································································································································································································································································································· |
| out 5 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111···························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111······························································································································································································································································································································································································································································································································ |
| out 6 (510) | 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111··························································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111······························································································································································································································································· |
| check 7 (1152) | 11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111·······························································································································11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111······························································································································· |
| check 8 (1152) | ·1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111································································1111111111111111111111111111111111111111111111111111111111111111·······························································1111111111111111111111111111111111111111111111111111111111111111······························································· |
| check 9 (1152) | ··11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111·································11111111111111111111111111111111·······························11111111111111111111111111111111································11111111111111111111111111111111·······························11111111111111111111111111111111······························· |
| check 10 (1152) | ···1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111·················1111111111111111···············1111111111111111················1111111111111111···············1111111111111111··············· |
| check 11 (1152) | ····11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111···········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111··········11111111·······11111111········11111111·······11111111·········11111111·······11111111········11111111·······11111111······· |
| check 12 (1152) | ·····1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111········1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111·······1111···1111····1111···1111·····1111···1111····1111···1111······1111···1111····1111···1111·····1111···1111····1111···1111··· |
| check 13 (1152) | ······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11· |
| check 14 (1152) | ·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11······11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11·····11·11··11·11···11·11··11·11····11·11··11·11···11·11··11·11 |
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{CS}_{01}\cdot \mathrm{CS}_{02}\cdot \mathrm{CS}_{03}\cdot \mathrm{CS}_{04}\cdot \mathrm{CS}_{05}\cdot \mathrm{CS}_{06}\cdot \mathrm{CS}_{12}\cdot \mathrm{CS}_{13}\cdot \mathrm{CS}_{14}\cdot \mathrm{CS}_{15}\cdot \mathrm{CS}_{16}\cdot \mathrm{CS}_{23}\cdot \mathrm{CS}_{24}\cdot \mathrm{CS}_{25}\cdot \mathrm{CS}_{26}\cdot \mathrm{CS}_{34}\cdot \mathrm{CS}_{35}\cdot \mathrm{CS}_{36}\cdot \mathrm{CS}_{45}\cdot \mathrm{CS}_{46}\cdot \mathrm{CS}_{56}\cdot \mathrm{CCZ}_{012}\cdot \mathrm{CCZ}_{013}\cdot \mathrm{CCZ}_{014}\cdot \mathrm{CCZ}_{015}\cdot \mathrm{CCZ}_{016}\cdot \mathrm{CCZ}_{023}\cdot \mathrm{CCZ}_{024}\cdot \mathrm{CCZ}_{025}\cdot \mathrm{CCZ}_{026}\cdot \mathrm{CCZ}_{034}\cdot \mathrm{CCZ}_{035}\cdot \mathrm{CCZ}_{036}\cdot \mathrm{CCZ}_{045}\cdot \mathrm{CCZ}_{046}\cdot \mathrm{CCZ}_{056}\cdot \mathrm{CCZ}_{123}\cdot \mathrm{CCZ}_{124}\cdot \mathrm{CCZ}_{125}\cdot \mathrm{CCZ}_{126}\cdot \mathrm{CCZ}_{134}\cdot \mathrm{CCZ}_{135}\cdot \mathrm{CCZ}_{136}\cdot \mathrm{CCZ}_{145}\cdot \mathrm{CCZ}_{146}\cdot \mathrm{CCZ}_{156}\cdot \mathrm{CCZ}_{234}\cdot \mathrm{CCZ}_{235}\cdot \mathrm{CCZ}_{236}\cdot \mathrm{CCZ}_{245}\cdot \mathrm{CCZ}_{246}\cdot \mathrm{CCZ}_{256}\cdot \mathrm{CCZ}_{345}\cdot \mathrm{CCZ}_{346}\cdot \mathrm{CCZ}_{356}\cdot \mathrm{CCZ}_{456}
As monomials: 01+02+03+04+05+06+12+13+14+15+16+23+24+25+26+34+35+36+45+46+56+012+013+014+015+016+023+024+025+026+034+035+036+045+046+056+123+124+125+126+134+135+136+145+146+156+234+235+236+245+246+256+345+346+356+456 (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 7 single-wire gates: \mathrm{S} 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. The circuit's action is then exactly the gate above, and an error-free run passes every check with certainty.
Or no Clifford gate at all: run \mathrm{T}^3 on rotations 1, 128, 1912, 2037, 2038, 2104, 2165, 2166, 2167, 2231; \mathrm{T}^5 on rotations 6, 7; \mathrm{T}^\dagger on rotations 255, 510, 765, 1020, 1275, 1530, and \mathrm{T} on the rest. A power of \mathrm{T} costs one magic state, like \mathrm{T} itself. For a code this is a transversal \mathrm{T} gate, \mathrm{T}^j on each qubit.
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/2295.7.2.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-2295.7.2.a.txt", "w") as out:
out.write("\n".join(lines) + "\n")
Distance
d=2, exact. No fault of weight below 2 is both undetectable and damaging. One of weight 2 is.
Exactly 9,180 faults of weight 2 are undetectable and damaging, so A_{2}=9{,}180. If each rotation fails independently with probability p, an accepted run has a damaged output with probability A_{2}\,p^{2}+O(p^{3}).
A damaging fault of weight 2 sits on columns [0,255].
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. Singh, C. Gidney, and C. Jones, "Borrowed Identities: Malleable Distillation Factories and a Unified Numerical Search," arXiv:2606.28518 (2026). arxiv.org/abs/2606.28518
Provenance
found by the two-group borrowed-identity search of Singh, Gidney and Jones (arXiv:2606.28518; borrowed_identities/): an identity circuit symmetric within its output and check blocks, with its output-only gates removed; a verified witness, not a maximum
Found by: borrowed-identity search: two-group
Discovery: pre-existing
1 recorded source
[
{
"regime": "borrowed-identity search: two-group",
"file": "borrowed_identities/circuits/unified_l3.json",
"label": "ls-0952",
"N": 15,
"d": 2,
"d_is_exact": true,
"origin": "https://github.com/shraggy/Magic_state_factory_search at 4627014, outputs/large_sweep.csv line 952",
"provenance": "unified search l=3, two-group s_total=1,s_O=6"
}
]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/2295.7.2.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[1439].