NxM-Version Programming for Quantum Software: High-Level Components across Frameworks and Engines
Questo articolo presenta Quanifi, un framework basato su Apache NiFi che consente l'esecuzione di programmi quantistici N×M impacchettando routine di alto livello provenienti da molteplici framework software in componenti intercambiabili, facilitando così la ridondanza cross-framework e cross-engine per rilevare e isolare sistematicamente i difetti nel software e nell'hardware quantistico.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
L'informatica quantistica promette di risolvere problemi che sono attualmente impossibili per i nostri supercomputer più potenti, ma costruire il software per far funzionare queste macchine è un compito fragile e confuso. A differenza dei computer classici, che elaborano le informazioni come semplici interruttori on-off, le macchine quantistiche utilizzano i "qubit" che possono esistere in più stati contemporaneamente. Per farle funzionare, i programmatori devono costruire sequenze intricate di operazioni, scrivendo spesso codice che parla direttamente alla fisica della macchina. Ciò richiede una combinazione rara di competenze: una profonda comprensità della meccanica quantistica, la capacità di scrivere codice complesso e la familiarità con un panorama di diversi strumenti software in rapida evoluzione. Ogni grande azienda tecnologica e gruppo di ricerca ha costruito il proprio modo di comunicare con l'hardware quantistico, utilizzando linguaggi e regole differenti. Questa frammentazione rende difficile sapere se un risultato è corretto, perché l'errore potrebbe risiedere nel codice, nello strumento utilizzato per scriverlo o nella macchina stessa.
Un team di ricercatori brasiliani ha sviluppato un nuovo modo per navigare in questa complessità, trattando il software quantistico come un flusso d'acqua attraverso una serie di tubi piuttosto che come un muro di testo da scrivere. Hanno creato un sistema chiamato Quanifi, che consente agli utenti di costruire programmi quantistici trascinando e rilasciando blocchi pre-assemblati su uno schermo visivo, molto simile all'assemblaggio di un circuito stampato senza mai dover saldare un filo. La genialità del loro approccio risiede nel modo in cui testano questi programmi. Inveia di eseguire una singola versione di un calcolo su una singola macchina, il loro sistema esegue lo stesso problema simultaneamente attraverso tre diversi strumenti software e su tre diversi computer quantistici. Questo crea una griglia di risultati dove ogni possibile combinazione viene testata contemporaneamente. Se le risposte non concordano, il sistema può individuare esattamente dove si è verificato l'errore: se nel tool software, nel computer hardware o nella specifica coppia tra i due.
I ricercatori hanno utilizzato questo metodo per eseguire un classico algoritmo di ricerca, noto come algoritmo di Grover, progettato per trovare un elemento specifico in una grande lista. Hanno costruito la stessa routine di ricerca utilizzando tre diversi framework software — Qiskit, Cirq e PennyLane — e l'hanno inviata a tre diversi computer quantistici situati in parti diverse del mondo: uno di IBM, uno di IQM e uno di Quantum Inspire. Confrontando gli esiti di questi nove diversi percorsi, sono stati in grado di individuare incongruenze che sarebbero state invisibili se avessero guardato un solo risultato. Questo processo, che chiamano esecuzione N×M, agisce come una potente rete di sicurezza, rivelando difetti nascosti nell'intero ecosistema dell'informatica quantistica.
L'indagine ha portato alla luce tre difetti reali negli strumenti e nelle macchine utilizzati dal settore. Il primo problema è stato riscontrato su una macchina di Quantum Inspire. Quando i ricercatori hanno utilizzato il framework software Cirq, la macchina restituiva costantemente la risposta errata, invertendo i bit del risultato. Tuttavia, lo stesso software funzionava perfettamente sugli altri due computer, e gli altri framework software funzionavano bene su quella specifica macchina. Questo fallimento specifico indicava un problema nel modo in cui l'adapter della macchina traduceva le istruzioni di Cirq. Si è scoperto che l'adapter stava utilizzando un tipo specifico di porta di rotazione con la direzione errata, effettuando essenzialmente la rotazione dei qubit nella direzione opposta rispetto a quella prevista. I ricercatori hanno confermato questo errore tramite simulazione e lo hanno segnalato al fornitore.
Un secondo difetto riguardava la stessa macchina Quantum Inspire. L'adapter del software dichiarava che la macchina potesse eseguire determinate operazioni complesse che, in realtà, non poteva eseguire. Quando i ricercatori hanno tentato di utilizzare queste operazioni non supportate, la macchina falliva silenziosamente, producendo risposte errate senza sollevare alcun allarme. Ciò ha evidenziato una discrepanza tra ciò che il software dichiarava la macchina potesse fare e ciò che poteva effettivamente fare. Il terzo, e forse più significativo, scoperto riguardava un servizio cloud chiamato Open Quantum, che funge da intermediario permettendo agli utenti di accedere a diversi computer quantistici attraverso un'unica interfaccia. I ricercatori hanno inviato gli stessi identici file di circuito a una macchina sia attraverso la connessione diretta sia attraverso questo servizio cloud. Mentre la connessione diretta funzionava, il servizio cloud restituiva risultati errati per certi tipi di circuiti. L'errore era sottile: il servizio stava rimuovendo silenziosamente specifici passaggi di rotazione dalle istruzioni, cambiando il calcolo senza avvisare l'utente. Il fornitore ha confermato questo errore di parsing e lo ha corretto poco dopo la segnalazione.
Il valore di questo lavoro non risiede solo nel trovare questi bug, ma nel metodo utilizzato per trovarli. Eseguendo ogni combinazione di software e hardware contemporaneamente, i ricercatori hanno creato una mappa di affidabilità che mostra esattamente dove il sistema si interrompe. Hanno scoperto che alcuni strumenti funzionano bene su alcune macchine ma falliscono su altre, e che alcuni servizi cloud introducono errori che sono impossibili da rilevare se si guarda solo al risultato finale. Questo approccio non richiede all'utente di essere un esperto di fisica quantistica o di scrivere codice complesso; richiede semplicemente di assemblare i blocchi e lasciare che il sistema confronti i risultati. I ricercatori hanno osservato che, mentre le versioni a quattro qubit del loro test erano troppo rumorose su alcune macchine per trarre conclusioni certe, i test a due qubit sono stati chiari e decisivi.
Questo studio dimostra che la strada verso un'informatica quantistica affidabile richiede più di un semplice hardware migliore; richiede un modo per verificare che il software e l'hardware lavorino insieme correttamente. I ricercatori hanno dimostrato che, trattando diversi framework software e diversi computer come versioni indipendenti dello stesso test, potevano isolare i guasti che altrimenti rimarrebbero nascosti. Hanno segnalato tutti e tre i difetti trovati, e il fornitore del servizio cloud ha già confermato e corretto l'errore. Gli altri due problemi riguardanti l'adapter di Quantum Inspire sono ancora in fase di revisione. Il lavoro suggerisce che, mentre l'informatica quantistica si sposta dal laboratorio al mondo reale, questo tipo di controllo incrociato sarà essenziale per garantire che le risposte che otteniamo siano effettivamente corrette.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.