I computer quantistici sfidano l'informatica
Teoria e hardware hanno caratterizzato a lungo lo sviluppo dei computer quantistici. Ora le questioni relative alla programmazione, al software e alla sicurezza stanno venendo sempre più alla ribalta.
Per molto tempo i computer quantistici sono stati un'aspirazione della fisica. All'inizio degli anni '80, uno dei loro rappresentanti più noti, Richard Feynman (1918-1988), si chiese se sarebbe mai stato possibile calcolare e simulare in modo efficiente i fenomeni della fisica quantistica con un computer classico. Si rese conto che la velocità di calcolo dei computer digitali non era sufficiente per calcolare e simulare in tempi ragionevoli i tipici effetti quantistici che si verificano all'interno di atomi o molecole o tra particelle elementari.
All'epoca, Feynman fu il primo a proporre la costruzione di un computer quantistico che non si basasse sulla codifica digitale, ma imitasse direttamente i sistemi quantistici. La sua idea chiave, che ancora oggi alimenta lo sviluppo dei computer quantistici, era che alcune proprietà della meccanica quantistica potevano essere utilizzate per i calcoli del computer. Ciò si riferisce in particolare al fatto che gli stati quantistici delle particelle possono sovrapporsi o aggrovigliarsi. Ad esempio, i computer quantistici utilizzano il fenomeno della sovrapposizione: A differenza dei computer digitali, non calcolano con codici binari o bit, che elaborano le informazioni solo come 0 o 1, ma con bit quantistici o qubit. La differenza fondamentale è che i qubit possono realizzare un terzo stato oltre a 0 o 1 per ogni fase di calcolo, in cui i due vengono sovrapposti. Ciò consente di accelerare i calcoli per alcune applicazioni.
I computer quantistici hanno la grande promessa di risolvere in futuro in modo efficiente alcuni problemi che i computer convenzionali non sono in grado di calcolare in tempi ragionevoli. Si parla anche di "superiorità quantistica". La superiorità quantistica non è ancora stata dimostrata in modo definitivo, ma di recente sono stati compiuti importanti progressi tecnici: Nel 2019 Google è riuscita a implementare per la prima volta la supremazia quantistica in un esempio concreto di calcolo. Secondo Google, il suo computer quantistico ha avuto bisogno di soli 200 secondi per eseguire un calcolo che avrebbe richiesto circa 10.000 anni a un computer convenzionale.
Cracking delle chiavi di sicurezza
I computer quantistici sono ancora troppo piccoli e troppo soggetti a errori per rappresentare una seria minaccia per i computer digitali. Anche il computer quantistico di Google ha dimostrato la sua superiorità solo per un problema altamente specializzato. Tuttavia, le tecnologie quantistiche hanno raggiunto una fase in cui non solo la fisica è coinvolta nel loro ulteriore sviluppo. Molti informatici oggi sono "curiosi dei quanti", come afferma ad esempio l'ETH Kenneth Paterson, professore di informatica. Egli conduce ricerche nel campo della crittografia e sviluppa approcci per elaborare, trasmettere e memorizzare le informazioni in modo sicuro. "Nel mio campo di ricerca siamo 'quantistici', perché l'informatica quantistica è un argomento importante nella crittografia da dieci anni", continua Paterson: "Non appena si disporrà di un computer quantistico sufficientemente grande e affidabile, tutta la crittografia attualmente utilizzata su Internet non sarà più sicura, perché l'informatica quantistica potrà essere utilizzata per decifrare i codici di sicurezza".
Le tecniche di crittografia e di sicurezza utilizzate oggi su Internet quando si accede ai social network, si acquista qualcosa nei negozi online, si fa e-banking o si inviano e-mail si basano sui cosiddetti metodi di fattorizzazione dei numeri interi e sui problemi correlati.
La fattorizzazione degli interi è la scomposizione di un grande numero composto in singoli divisori. Questa scomposizione è enormemente complessa dal punto di vista computazionale, motivo per cui non esiste ancora un algoritmo, cioè una regola di calcolo, con cui un computer digitale possa calcolare in modo efficiente una fattorizzazione. Tuttavia, nel 1994 il matematico Peter Shor è riuscito a formulare un algoritmo scritto appositamente per i computer quantistici che trova i divisori di un numero composto molto più velocemente degli algoritmi classici. Le idee di Shor possono essere utilizzate per decifrare le altre forme di crittografia a chiave pubblica oggi in uso.
L'algoritmo di Shor non può ancora essere realizzato sui piccoli computer quantistici odierni, soggetti a errori. In linea di principio, tuttavia, è chiaro che qualsiasi computer quantistico sufficientemente potente e affidabile per eseguire l'algoritmo di Shor può calcolare le fattorizzazioni in un tempo ragionevole. Dal momento in cui ciò avverrà, la crittografia che utilizza la fattorizzazione e metodi comuni simili sarà insicura. Questo non vale per tutta la crittografia. La sicurezza dei metodi che proteggono le informazioni esclusivamente con chiavi segrete non sarà seriamente compromessa. I metodi di crittografia a chiave pubblica, che proteggono le informazioni con una chiave pubblica, sono a rischio. Chi siamo ha protetto in questo modo il 90% del traffico Internet.
Tradurre le idee
Tuttavia, per decifrare le chiavi di sicurezza, dice Paterson, i computer quantistici hanno bisogno di milioni di qubit. All'ETH di Zurigo, i computer quantistici attualmente sono dotati di un massimo di 17 qubit e, in termini puramente evolutivi, la ricerca è in procinto di avviare una fase di computer quantistici di medie dimensioni, ancora soggetti a errori, con 50-100 qubit. "La limitata potenza di calcolo dei computer quantistici di oggi potrebbe essere improvvisamente colmata molto rapidamente. Inoltre, ci vorranno almeno dieci anni per cambiare l'attuale crittografia a chiave pubblica. Ecco perché ci stiamo preparando ora", spiega Paterson, il cui gruppo ha co-progettato un nuovo algoritmo di sicurezza quantistica che viene testato in una competizione globale in corso per selezionare nuovi algoritmi sicuri dal punto di vista quantistico.
A Benjamin Bichsel viene talvolta chiesto se la sua ricerca potrebbe essere stata vana se un giorno si scoprisse che non esisteranno mai computer quantistici grandi e affidabili. Bichsel risponde: "Non è questa la domanda. Piuttosto, mi chiedo cosa faremo se i computer quantistici funzionano davvero bene, ma non sappiamo come programmarli in modo efficiente". Lavora nel gruppo di ricerca di Martin Vechev, che ha sviluppato il primo linguaggio di programmazione intuitivo e di alto livello per i computer quantistici.
Per sfruttare il potenziale dei computer quantistici, abbiamo bisogno di linguaggi di programmazione propri. "I linguaggi di programmazione quantistica svolgono un ruolo cruciale nel tradurre le idee in istruzioni che un computer quantistico può eseguire", hanno scritto i ricercatori di Microsoft nel 2020 sulla rivista scientifica Nature, tra cui Bettina Heim e Matthias Troyer, che in precedenza hanno svolto ricerche all'ETH Institute for Theoretical Physics. Oggi i linguaggi di programmazione quantistica sono strettamente modellati sull'hardware. Questi "linguaggi di descrizione hardware" si concentrano sul comportamento dei circuiti e sulla loro ottimizzazione. Il linguaggio di programmazione Silq sviluppato dal gruppo di Martin Vechev, invece, astrae dai dettagli tecnici.
? passato poco più di un anno dal lancio di Silq. Oltre all'eleganza e alla coerenza interna che caratterizzano Silq come primo linguaggio di programmazione quantistica di alto livello, Martin Vechev e il suo team hanno ricevuto molti riconoscimenti per il loro contributo innovativo alla riduzione degli errori nell'informatica quantistica. In un altro articolo citato Natura Il sito Silq afferma esplicitamente che il cosiddetto "uncomputation" viene eseguito automaticamente in Silq "invece di costringere i programmatori a svolgere questo noioso lavoro manualmente". Ogni computer calcola un compito in diversi passaggi intermedi. Questo produce risultati intermedi, i cosiddetti valori temporanei. Per ridurre il carico sulla memoria di lavoro, nei computer tradizionali questi valori vengono eliminati automaticamente. Nei computer quantistici, questa eliminazione non è così semplice a causa dell'entanglement quantistico: i valori di calcolo precedenti possono interagire con quelli attuali e interferire con il calcolo corretto. La rimozione automatica dei valori temporanei è quindi importante per il calcolo quantistico.
Comprendere i computer in modo olistico
Se Silq possa reggere il confronto con i linguaggi di programmazione quantistica dei giganti tecnologici Microsoft, IBM e Google - Q#, Qiskit e Cirq - è ancora una questione aperta. Tuttavia, il team di Vechev è riuscito a trasferire il non calcolo automatico a Qiskit. "? molto incoraggiante che i concetti centrali di Silq possano essere trasferiti ad altri linguaggi. Soprattutto perché la decomputazione automatica rende più efficiente il calcolo quantistico con Qiskit", afferma Martin Vechev.
A lungo termine, gli informatici non dovranno più scrivere linguaggi e software per l'hardware sviluppato dalla fisica, ma sviluppare linguaggi di programmazione che vadano di pari passo con gli algoritmi quantistici, l'hardware quantistico, il software quantistico, le applicazioni quantistiche e i flussi di lavoro. "Affinché l'informatica quantistica diventi davvero una realtà, dobbiamo integrare questo nuovo approccio di calcolo in interi sistemi informatici in cui molti componenti lavorano insieme per risolvere in modo efficiente problemi specifici", conclude Paterson. Martin Vechev ne è convinto:
Questo testo è stato pubblicato nel numero 21/03 della rivista dell'ETH Il globo pubblicato.
Le persone
Kenneth Paterson è professore di informatica presso l'Istituto per la sicurezza delle informazioni, dove ha sviluppato i mondi quantistici "Globe". Gruppo per la crittografia applicata conduce.
Martin Vechev è professore dell'Istituto per i linguaggi e i sistemi di programmazione e dirige il gruppo di ricerca Il laboratorio Sistemi sicuri, affidabili e intelligenti (SRI). Benjamin Bichsel è dottorando in questo gruppo di ricerca.