-
Check the catalogue
Search for your parameters, for example
[[49, 1, 5]], or for your gate, such asCCZ012. A factory that is already here still counts if yours needs fewer wires. If in doubt, send it. -
Gather what you have
Any format works. For example:
- a paper or arXiv link;
- generator, parity-check or triorthogonal matrices, as text, CSV, LaTeX or an image;
- circuits in any notation;
- code or a notebook that builds the factories;
- a construction described in words, precisely enough to write the circuit down.
The catalogue holds factories whose output is a diagonal gate built from T, CS and CCZ, with distance at least 2, written as an explicit circuit. A family is fine. We list the members we can write down.
-
Say who to credit
- Names and affiliations, and the paper if the work is published.
- Whether we may include and redistribute the factories, for example under a licence.
- What you believe they are: n, k, d and the gate. We measure all of it, so a rough guess is fine.
- A way to reach you with questions.
Send what you have. We will ask about the rest.
-
Send it
The submission form is the easiest. Type a description below. It can be parameters, a gate, matrices, a construction in words or a link. The next page is a form on GitHub with your text already filled in, where you can also attach files. When you submit it, your text and files are saved in the repository's contributions folder automatically. You need a free GitHub account.
Pull request. Add one folder to the repository, named
community_contributions/submissions/YYYY-MM-DD_surname_short-title/, holding your files as they are.No GitHub account? Email it instead.
-
What happens next
We convert your files into the catalogue's input format and re-derive every number from the circuit. Valid factories are integrated into the catalogue with appropriate citations.
Classes are compared up to relabelling and a change of output basis by CNOT and S gates, at the same n, k and d.
-
Format it yourself, if you like
This step is optional. A factory has N wires. Wires 0 to k-1 are outputs and the rest are checks. Each column lists the wires one \pi/4 rotation acts on. The 15-to-1 factory of Bravyi and Kitaev reads:
{"k": 1, "N": 5, "d": 3, "gate": "T0", "columns": [[0,1], [0,2], [0,1,2], [0,3], [0,1,3], [0,2,3], [0,1,2,3], [4], [1,4], [2,4], [1,2,4], [3,4], [1,3,4], [2,3,4], [1,2,3,4]]}A generator matrix works too. Start from
TEMPLATE.json, then check the file against the catalogue. The check writes nothing.python community_contributions/check_submission.py path/to/catalogue_input.json
The full guide lists every field.
-
Or just email
If none of this suits you, email your factories to shubhamj810@gmail.com.