Quali sono le difficoltà nel programmare un computer quantistico?

Quali sono le difficoltà nel programmare un computer quantistico?
INFORMAZIONI SCHEDA
di

Per comprendere come programmare un computer quantistico è bene ripercorrere le caratteristiche che lo distinguono dai calcolatori tradizionali, la cui potenza computazionale è andata di pari passo con la miniaturizzazione dei circuiti elettronici, e che trova un limite alle "porte" della meccanica quantistica, rendendo “virtualmente” impossibile incrementare la densità dei transistor e il quantitativo di circuiti integrati nei microprocessori.

Tuttavia la stessa meccanica quantistica può rappresentare un'opportunità per realizzare calcolatori con una potenza di calcolo enormemente superiore ai computer convenzionali: i computer quantistici, i quali si basano su unità di informazione denominate Qubit, al cui interno risiedono particelle o atomi che rappresentano il fenomeno quantistico attraverso il “meccanismo” di sovrapposizione di stati, permettendo una controintuitiva contemporaneità di possibile codifica dell’informazione, diversamente dai tradizionali bit che possono mediare esclusivamente gli stati 0 e 1.

Proprio questa “astrazione” nella rappresentazione dell’informazione è un primo ostacolo della programmazione quantistica, in quanto l'utilizzo del potenziale del calcolo quantistico richiede un linguaggio di programmazione per descrivere gli algoritmi quantistici, che per loro natura generano output probabilistici, razionalizzabili dal programmatore attraverso l’analisi del problema in esame.

Infatti un computer quantistico deve poter risolvere problemi pratici, obiettivo raggiungibile attraverso l’adozione di un'architettura ibrida, in cui un calcolatore tradizionale controlla un calcolatore quantistico. Proprio questo principio ha portato alla nascita di alcuni linguaggi di programmazione, non vincolati alle caratteristiche hardware del calcolatore quantistico e definibili come “user-friendly”, alcuni esempi si possono trovare a opera di “Big” del settore, come Microsoft, IBM e Google che hanno creato rispettivamente i linguaggi: Q#, Qiskit e Cirq, i quali attingono molto dalle fondamenta teoriche del linguaggio di programmazione Python, aiutando l’utenza con un'ampia documentazione; inoltre queste grandi società offrono anche piattaforme di cloud computing, strumento attraverso il quale è possibile utilizzare la computazione quantistica da remoto.

Il settore della programmazione quantistica è in costante ed estremo sviluppo, a livello tale da essere definibile come una “nuova era dell’informatica”; proprio per questo motivo diverse aziende stanno investendo "enormi" somme di denaro sulla ricerca e sviluppo di linguaggi efficiente per la tecnologia quantistica, come per esempio il recente linguaggio sviluppato dalla società Israeliana Quantum Machine, che prende il nome di QUA e si propone come nuovo standard universale per il calcolo quantistico, oppure SILQ a opera dei ricercatori del Politecnico di Zurigo, che viene "pubblicizzato" come un linguaggio quantistico semplice, affidabile e sicuro, paragonabile per complessità e ambiente di sviluppo a quello dei computer tradizionali.

Quanto è interessante?
3