Caratteristiche dei computer quantistici

La potenza di un computer quantistico si misura in qubit, l’unità di misura base in un computer quantistico. Fonte.

Faccio il facepalm ogni volta che leggo una frase come questa. Ciò non portò a nulla di buono, la mia vista cominciò ad affievolirsi; Presto dovrò rivolgermi a Meklon.

Penso che sia ora di sistematizzare in qualche modo i parametri di base di un computer quantistico. Ce ne sono diversi:

  1. Numero di qubit
  2. Tempo di mantenimento della coerenza (tempo di decoerenza)
  3. Livello di errore
  4. Architettura del processore
  5. Prezzo, disponibilità, condizioni di manutenzione, tempo di ammortamento, strumenti di programmazione, ecc.

Numero di qubit

Qui tutto è ovvio, più sono, meglio è. In realtà, devi pagare per i qubit e idealmente dovresti acquistare esattamente tanti qubit quanti sono necessari per completare l'attività. Per uno sviluppatore di slot machine esclusive è sufficiente un qubit per macchina (per generare casualità). Per "forza bruta" RSA-2048 - almeno 2048 qubit.

Gli algoritmi quantistici più pubblicizzati prendono il nome da Grover e Shor. Grover ti consente di "hackerare" gli hash. Per mandare in crash Bitcoin, hai bisogno di computer con almeno 256 qubit a bordo (puoi giocare con la complessità di Bitcoin, ma restiamo con questo numero tondo). Shor ti permette di fattorizzare i numeri. Per fattorizzare un numero di lunghezza n cifre binarie, sono necessari almeno n qubit.

Massimo attuale: 50 qubit (già 72?). E infatti il ​​limite è di 50 qubit. Il limite della simulazione computerizzata quantistica. In teoria, possiamo simulare un numero qualsiasi di qubit sui computer classici. In pratica, aggiungere un qubit a una simulazione richiede il doppio dei computer classici. Aggiungete a ciò le voci secondo cui i qubit raddoppiano ogni anno e ponetevi la domanda: come eseguire il debug degli algoritmi per 25651210242048 qubit? Non esiste un simulatore; non è possibile impostare un punto di interruzione su un processore quantistico.

Tempo di mantenimento della coerenza (tempo di decoerenza)

Coerenza e coerenza non sono la stessa cosa. Mi piace paragonare la coerenza alla rigenerazione della memoria di lavoro. Ci sono miliardi di celle sulla striscia di RAM, ciascuna con una carica, zero o una. Questa carica ha una proprietà molto interessante: si scarica. La cella "unità" iniziale diventa la cella 0.99, poi la cella 0.98 e così via. Di conseguenza, 0.01, 0.02, 0.03 si accumulano a zero... Questa carica deve essere rinnovata, “rigenerata”. Tutto ciò che è inferiore alla metà viene ripristinato a zero, tutto il resto viene spostato a uno.

I processori quantistici non possono essere rigenerati. Di conseguenza, esiste un ciclo per tutti i calcoli, fino al primo qubit “trapelato”. Il tempo che precede il primo “gocciolamento” è chiamato tempo di decoerenza. La coerenza è uno stato in cui i qubit non sono ancora “trapelati”. Qui Puoi dare un'occhiata a spiegazioni un po 'più adulte.

La decoerenza è legata al numero di qubit: maggiore è il numero di qubit, più difficile sarà mantenere la coerenza. D’altra parte, se disponi di un gran numero di qubit, puoi utilizzarne alcuni per correggere gli errori associati alla decoerenza. Da qui segueche il numero di qubit di per sé non risolve nulla. Puoi raddoppiare il numero di qubit e spenderne il 90% per correggere la decoerenza.

È qui che entra in gioco il concetto di qubit logico. In parole povere, se hai un processore con 100 qubit, ma 40 di essi hanno lo scopo di correggere la decoerenza, ti rimangono 60 qubit logici. Quelli su cui esegui il tuo algoritmo. Il concetto di qubit logici è ormai piuttosto teorico; personalmente non ho sentito parlare di implementazioni pratiche.

Errori e loro correzione

Un'altra piaga dei processori quantistici. Se inverti un qubit, c'è una probabilità del 2% che l'operazione fallisca. Se si intrecciano 2 qubit, il tasso di errore arriva fino all'8%. Prendi un numero a 256 bit, convertilo in SHA-256, conta il numero di operazioni, calcola la probabilità di eseguire TUTTE queste operazioni senza errori.

I matematici forniscono una soluzione: la correzione degli errori. Ci sono algoritmi. L'implementazione di un entanglement di 2 qubit logici richiede 100.000 qubit fisici. Non passerà molto tempo prima che arrivi la fine.

Architettura del processore

A rigor di termini, non esistono computer quantistici. Esistono solo processori quantistici. Perché hai bisogno della RAM quando il tempo di lavoro è limitato a millisecondi? Programma in Q#, ma è un linguaggio di alto livello. Assegnati 15 qubit e fai quello che vuoi con loro. Voleva, intrecciare il primo qubit con il decimo. Desiderato: confuso i primi sei.

Su un vero processore non esiste tale libertà. Ho chiesto di intrecciare il primo qubit con 15: il compilatore genererà 26 operazioni aggiuntive. Se sei fortunato. Se sei sfortunato, ne genererà un centinaio. Il fatto è che un qubit può solo intrecciarsi con i suoi vicini. Non ho visto più di 6 vicini per qubit. In linea di principio esistono compilatori che ottimizzano i programmi quantistici, ma sono ancora piuttosto teorici.

Ogni processore ha un diverso set di istruzioni e le connessioni tra i qubit sono diverse. In un mondo ideale, abbiamo Rx, Ry, Rz arbitrari e le loro combinazioni, oltre a un entanglement libero basato su una dozzina di caratteristiche, oltre a Swap: guarda gli operatori in stranezza. In realtà, abbiamo diverse coppie di qubit e l'entanglement di CNOT (q[0], q[1]) costa un'operazione e CNOT(q[1], q[0]) ne richiede 7. E la coerenza si scioglie. .

Prezzo, disponibilità, condizioni di manutenzione, tempo di ammortamento, strumenti di programmazione...

I prezzi non sono pubblicizzati, la disponibilità per il cittadino medio è prossima allo zero, il tempo di ammortamento non è stato calcolato nella pratica, gli strumenti di programmazione sono solo agli inizi. Documentazione su arxiv.org.

Quindi quali informazioni richiedi agli esperti quando rilasci un nuovo computer quantistico?

Oltre all'elenco sopra, mi piacciono le opzioni di PerlPower и Alter2:

Se solo ogni articolo sul nuovo computer quantistico iniziasse con due caratteristiche: la quantità simultaneo qubit entangled e tempo di ritenzione dei qubit.

O meglio ancora, dal tempo necessario per eseguire un semplice benchmark, ad esempio, per trovare i fattori primi del numero 91.

Fonte: habr.com

Aggiungi un commento