Dela via


T-grindar och T-fabriker

Den här artikeln beskriver T-portarnas och T-fabrikernas roll vid feltolerant kvantberäkning. Om du ger en kvantalgoritm blir uppskattningen av de resurser som krävs för att köra T-grindarna och T-fabrikerna avgörande.

Universell uppsättning kvantgrindar

Enligt DiVincenzos kriterier måste en skalbar kvantdator kunna implementera en universell uppsättning kvantgrindar. En universell uppsättning innehåller alla portar som behövs för att utföra alla kvantberäkningar, det vill ex. alla beräkningar måste delas upp i en begränsad sekvens av universella portar. En kvantdator måste minst kunna flytta enskilda kvantbitar till valfri position på Bloch Sphere (med enstaka qubit-portar), samt införa sammanflätning i systemet, vilket kräver en grind med flera kvantbitar.

Det finns bara fyra funktioner som mappar en bit till en bit på en klassisk dator. Det finns däremot ett oändligt antal enhetliga transformeringar på en enda kvantbit på en kvantdator. Därför kan ingen begränsad uppsättning primitiva kvantåtgärder eller grindar exakt replikera den oändliga uppsättningen enhetstransformeringar som tillåts i kvantberäkning. Det innebär, till skillnad från klassisk databehandling, att det är omöjligt för en kvantdator att implementera alla möjliga kvantprogram exakt med ett begränsat antal grindar. Kvantdatorer kan därför inte vara universella i samma mening som klassiska datorer. När vi säger att en uppsättning portar är universella för kvantberäkning menar vi därför något något svagare än vad vi menar med klassisk databehandling.

För universalitet krävs det att en kvantdator endast ungefärliger varje enhetsmatris inom ett ändligt fel med hjälp av en begränsad längd på grindsekvensen.

Med andra ord är en uppsättning grindar en universell grinduppsättning om någon enhetlig omvandling kan skrivas ungefär som en produkt av grindar från denna uppsättning. Det krävs att det finns portar $G_{1}, G_{2}, \ldots, G_N$ från grinduppsättningen så att

$${G_N G_N-1}\cdots G_2 G_1 \ca U.$$

Eftersom konventionen för matris multiplikation är att multiplicera från höger till vänster är den första grindåtgärden i den här sekvensen, $G_N$, faktiskt den sista som tillämpas på kvanttillståndsvektorn. Mer formellt sägs en sådan grinduppsättning vara universell om det för varje feltolerans $\epsilon>0$ finns $G_1, \ldots, G_N$ så att avståndet mellan $G_N\ldots G_1$ och $U$ högst är $\epsilon$. Helst bör värdet för $N som behövs för att nå detta avstånd av $\epsilon$ skala poly-logaritmiskt med $1/\epsilon$$.

Till exempel är uppsättningen som bildas av Hadamard-, CNOT- och T-portarna en universell uppsättning, från vilken alla kvantberäkningar (på valfritt antal kvantbitar) kan genereras. Hadamard- och T-grinduppsättningen genererar en enda qubit-grind:

$$H=\frac{1}{\sqrt{ 1 amp; 1 \\ 1 &-1 \end{bmatrix}, \qquad T=\begin{bmatrix} 1 & 0 \\ 0 & e^{i\pi/4}\end{bmatrix}.&{2}}\begin{bmatrix} $$

I en kvantdator kan kvantgrindar klassificeras i två kategorier: Clifford-grindar och icke-Clifford-portar, i det här fallet T-grinden. Kvantprogram gjorda av endast Clifford-portar kan simuleras effektivt med hjälp av en klassisk dator, och därför krävs icke-Clifford-grindar för att få kvantfördel. I många QEC-scheman (quantum error correction) är de så kallade Clifford-portarna enkla att implementera, det villligen kräver mycket få resurser när det gäller åtgärder och kvantbitar för att implementera feltolerant, medan icke-Clifford-portar är ganska kostsamma när feltolerans krävs. I en universell kvantgrindsuppsättning används T-grinden ofta som icke-Clifford-grinden.

Standarduppsättningen med Clifford-portar med enkel qubit, som ingår som standard i Q#, inkluderar

$$ H=\frac{{1}{\sqrt{{2}}\begin{bmatrix} 1 & 1 \\ 1 &-1 \end{bmatrix} , \qquad S =\begin{bmatrix} 1 & 0 \\ 0 & i \end{bmatrix}= T^2, \qquad X=\begin{bmatrix} 0 & 1 \\ 1& 0 \end{bmatrix}= HT^4H, $$

$$ Y =\begin{bmatrix} 0 & -i \\ i & 0 \end{bmatrix}=T^2HT^4 HT^6, \qquad Z=\begin{bmatrix}1& 0\\ 0&-1 \end{bmatrix}=T^4. $$

Tillsammans med icke-Clifford-grinden (T-grinden) kan dessa åtgärder bestå för att approximeras vid en enhetlig omvandling på en enda kvantbit.

T-fabriker i Azure Quantum Resource Estimator

Förberedelsen av icke-Clifford T-grinden är avgörande eftersom de andra kvantgrindarna inte är tillräckliga för universell kvantberäkning. För att implementera icke-Clifford-åtgärder för algoritmer i praktisk skala krävs T-portar med låg felfrekvens (eller T-tillstånd). De kan dock vara svåra att implementera direkt på logiska kvantbitar och kan också vara svåra för vissa fysiska kvantbitar.

I en feltolerant kvantdator produceras de nödvändiga T-tillstånden med låg felfrekvens med hjälp av en fabrik för T-tillståndsdestillering eller T-fabrik för kort. Dessa T-fabriker omfattar vanligtvis en sekvens av destillationsrundor, där varje runda tar in många bullriga T-tillstånd kodade i en mindre avståndskod, bearbetar dem med hjälp av en destillationsenhet och matar ut färre mindre bullriga T-tillstånd kodade i en större avståndskod, med antalet rundor, destillationsenheter och avstånd som alla är parametrar som kan varieras. Den här proceduren itereras, där utdata-T-tillstånden för en runda matas in i nästa runda som indata.

Baserat på T-fabrikens varaktighet avgör Azure Quantum Resource Estimator hur ofta en T-fabrik kan anropas innan den överskrider algoritmens totala körningstid och därmed hur många T-tillstånd som kan skapas under algoritmens körning. Vanligtvis krävs fler T-tillstånd än vad som kan skapas inom anropen för en enda T-fabrik under algoritmkörningen. För att skapa fler T-tillstånd använder Resource Estimator kopior av T-fabrikerna.

Fysisk uppskattning för T-fabrik

Resursberäknaren beräknar det totala antalet T-tillstånd som behövs för att köra algoritmen och antalet fysiska kvantbitar för en enda T-fabrik och dess körning.

Målet är att producera alla T-tillstånd inom algoritmens körning med så få T-fabrikskopior som möjligt. Följande diagram visar ett exempel på körningen av algoritmen och körningen av en T-fabrik. Du kan se att körningen av T-fabriken är kortare än algoritmens körning. I det här exemplet kan en T-fabrik destillera ett T-tillstånd. Två frågor uppstår:

  • Hur ofta kan T-fabriken anropas före slutet av algoritmen?
  • Hur många kopior av T-fabriksdestilleringsrundan krävs för att skapa det antal T-tillstånd som krävs under algoritmens körning?
Diagram som visar körningen av algoritmen (röd) jämfört med körningen av en T-fabrik (blå). Före slutet av algoritmen kan T-fabriken köras 8 gånger. Om vi behöver 30 T-tillstånd och T-fabriken kan köras 8 gånger under körningen behöver vi 4 kopior av T-fabrikerna som körs parallellt för att destillera 30 T-tillstånd.

Före slutet av algoritmen kan T-fabriken anropas åtta gånger, vilket kallas en destillationsrunda. Om du till exempel behöver 30 T-tillstånd anropas en enda T-fabrik åtta gånger under körningen av algoritmen och därmed skapas åtta T-tillstånd. Sedan behöver du fyra kopior av T-fabriksdestillationen som körs parallellt för att destillera de 30 T-tillstånd som behövs.

Anteckning

Observera att T-fabrikskopior och T-fabriksanrop inte är desamma.

Destillationsfabrikerna för T-tillstånd implementeras i en sekvens av rundor, där varje runda består av en uppsättning kopior av destillationsenheter som körs parallellt. Resursberäknaren beräknar hur många fysiska kvantbitar som behövs för att köra en T-fabrik och hur länge T-fabriken körs, bland andra obligatoriska parametrar.

Du kan bara göra fullständiga anrop av en T-fabrik. Det kan därför finnas situationer där den ackumulerade körningen av alla T-fabriksanrop är mindre än algoritmkörningen. Eftersom kvantbitar återanvänds av olika rundor är antalet fysiska kvantbitar för en T-fabrik det maximala antalet fysiska kvantbitar som används för en runda. Körningen av T-fabriken är summan av körningen i alla rundor.

Anteckning

Om felfrekvensen för den fysiska T-grinden är lägre än den nödvändiga logiska T-tillståndsfelfrekvensen kan resursberäknaren inte utföra en bra resursuppskattning. När du skickar ett resursuppskattningsjobb kan det hända att T-fabriken inte kan hittas eftersom felfrekvensen för det logiska T-tillståndet antingen är för låg eller för hög.

Mer information finns i Bilaga C till Bedömningskraven för att skala till praktisk kvantfördel.

Nästa steg