A polynomial time and space heuristic algorithm for T-count
Why this work is in the frame
A frame that forgets how it found something cannot be audited. These are the routes that admitted this work.
Bibliographic record
Abstract
Abstract An important part of reaping computational advantage from a quantum computer is to reduce the quantum resources needed to implement a desired quantum algorithm. Quantum algorithms that are too large to be practical on noisy intermediate scale quantum devices will require fault-tolerant error correction. This work focuses on reducing the physical cost of implementing quantum algorithms when using the state-of-the-art fault-tolerant quantum error correcting codes, in particular, those for which implementing the T gate consumes vastly more resources than the other gates in the gate set. More specifically, in this paper we consider the group of unitaries that can be exactly implemented by a quantum circuit consisting of the Clifford + T gate set. The Clifford + T gate set is a universal gate set and in this group, using state-of-the-art surface codes, the T gate is by far the most expensive component to implement fault-tolerantly. So it is important to minimize the number of T gates necessary for a fault-tolerant implementation. Our primary interest is to compute a circuit for a given n -qubit unitary U , using the minimum possible number of T gates (called the T-count of unitary U ). We consider the problem COUNT-T, the optimization version of which aims to find the T-count of U . In its decision version the goal is to decide if the T-count is at most some positive integer m . Given an oracle for COUNT-T, we can compute a T-count-optimal circuit in time polynomial in the T-count and dimension of U . We give a provable classical algorithm that solves COUNT-T (decision) in time <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mi>O</mml:mi> <mml:mfenced close=")" open="("> <mml:mrow> <mml:msup> <mml:mrow> <mml:mi>N</mml:mi> </mml:mrow> <mml:mrow> <mml:mn>2</mml:mn> <mml:mrow> <mml:mo stretchy="false">(</mml:mo> <mml:mrow> <mml:mi>c</mml:mi> <mml:mo>−</mml:mo> <mml:mn>1</mml:mn> </mml:mrow> <mml:mo stretchy="false">)</mml:mo> </mml:mrow> <mml:mrow> <mml:mo>⌈</mml:mo> <mml:mrow> <mml:mfrac> <mml:mrow> <mml:mi>m</mml:mi> </mml:mrow> <mml:mrow> <mml:mi>c</mml:mi> </mml:mrow> </mml:mfrac> </mml:mrow> <mml:mo>⌉</mml:mo> </mml:mrow> </mml:mrow> </mml:msup> <mml:mspace width="0.17em"/> <mml:mi mathvariant="normal">p</mml:mi> <mml:mi mathvariant="normal">o</mml:mi> <mml:mi mathvariant="normal">l</mml:mi> <mml:mi mathvariant="normal">y</mml:mi> <mml:mrow> <mml:mo stretchy="false">(</mml:mo> <mml:mrow> <mml:mi>m</mml:mi> <mml:mo>,</mml:mo> <mml:mi>N</mml:mi> </mml:mrow> <mml:mo stretchy="false">)</mml:mo> </mml:mrow> </mml:mrow> </mml:mfenced> </mml:math> and space <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" display="inline" overflow="scroll"> <mml:mi>O</mml:mi> <mml:mfenced close=")" open="("> <mml:mrow> <mml:msup> <mml:mrow> <mml:mi>N</mml:mi> </mml:mrow> <mml:mrow> <mml:mn>2</mml:mn> <mml:mrow> <mml:mo>⌈</mml:mo> <mml:mrow> <mml:mfrac> <mml:mrow> <mml:mi>m</mml:mi> </mml:mrow> <mml:mrow> <mml:mi>c</mml:mi> </mml:mrow> </mml:mfrac> </mml:mrow> <mml:mo>⌉</mml:mo> </mml:mrow> </mml:mrow> </mml:msup> <mml:mspace width="0.17em"/> <mml:mi mathvariant="normal">p</mml:mi> <mml:mi mathvariant="normal">o</mml:mi> <mml:mi mathvariant="normal">l</mml:mi> <mml:mi mathvariant="normal">y</mml:mi> <mml:mrow> <mml:mo stretchy="false">(</mml:mo> <mml:mrow> <mml:mi>m</mml:mi> <mml:mo>,</mml:mo> <mml:mi>N</mml:mi> </mml:mrow> <mml:mo stretchy="false">)</mml:mo> </mml:mrow> </mml:mrow> </mml:mfenced> </mml:math> , where N = 2 n and c ⩾ 2. This gives a space-time trade-off for solving this problem with variants of meet-in-the-middle techniques. We also introduce an asymptotically faster multiplication method that shaves a factor of N 0.7457 off of the overall complexity. Lastly, beyond our improvements to the rigorous algorithm, we give a heuristic algorithm that outputs a T-count-optimal circuit and has space and time complexity poly( m , N ), under some assumptions. In our heuristic algorithm we developed a novel way of pruning the search space. While our heuristic method still scales exponentially with the number of qubits (though with a lower exponent), there is a large improvement by going from exponential to polynomial scaling with m . We implemented our heuristic algorithm with up to 4 qubit unitaries and obtained a significant improvement in time. For all benchmark and random unitaries we studied, the T-count returned by our algorithm is at most the T-count of their circuits shown in previous papers.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
Full frame distilled prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. Learned from the 10,348 direct Codex labels and 10,348 direct Gemma labels. Candidate is the union of thresholded teacher heads; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels or direct frontier model labels.
Codex and Gemma teacher scores by category
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.001 | 0.000 |
| Meta-epidemiology (narrow) | 0.000 | 0.000 |
| Meta-epidemiology (broad) | 0.001 | 0.000 |
| Bibliometrics | 0.001 | 0.001 |
| Science and technology studies | 0.001 | 0.002 |
| Scholarly communication | 0.001 | 0.000 |
| Open science | 0.002 | 0.004 |
| Research integrity | 0.000 | 0.001 |
| Insufficient payload (model declined to judge) | 0.000 | 0.000 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from it