Vai al contenuto

Videocorso Q# CGFA

Programmare un computer quantistico: qubit, sovrapposizione, entanglement e i primi algoritmi

  • Partenza: Da zero
  • 12 ore con gli esercizi
  • 10 lezioni in 3 livelli
  • 2 lezioni gratis

A chi serve

Curiosi, studenti, programmatori e tecnici che vogliono capire il calcolo quantistico con il codice, senza bisogno di una laurea in fisica

Cosa serve per iniziare

  • Un computer Windows, Mac o Linux
  • Basi di matematica delle superiori (le frazioni bastano, spieghiamo tutto il resto)
  • Nessuna esperienza di programmazione obbligatoria: partiamo dalle basi

Cosa installare

Visual Studio CodeEditor gratuito da code.visualstudio.com. Esiste anche la versione web su vscode.dev, senza installare nulla
Estensione Quantum Development Kit (QDK)Si installa gratis dal pannello Estensioni di VS Code. Contiene il compilatore Q#, il simulatore locale e i corsi guidati (Quantum Katas)
Simulatore quantistico localeIncluso nel QDK: esegue i tuoi programmi sul tuo computer, senza account e senza costi. Per questo corso non serve nessun hardware quantistico

A cosa ti serve

  • Ricerca e università nel calcolo quantistico
  • Aziende e centri di ricerca che esplorano ottimizzazione, chimica e crittografia post-quantistica
  • Consulenza e formazione sulle tecnologie quantistiche
  • Divulgazione tecnica e sviluppo di strumenti per il quantum computing
  • Preparazione a un ambito in forte crescita, anche in Italia

Programma del corso

10 lezioni in 3 livelli. Ogni lezione: video, spiegazione, codice da copiare o provare, esercizio con soluzione e quiz.

Progetto finale: Il generatore quantistico di numeri casuali e il test di Bell

Costruisci due piccoli programmi Q#: un generatore di numeri casuali da 0 a 7 basato sulla sovrapposizione e un esperimento che verifica le correlazioni di una coppia entangled su mille ripetizioni.

I passi

  1. Crea una cartella progetto-quantum con un file Main.qs.
  2. Scrivi l'operation BitCasuale che usa H e MResetZ e restituisce un Result.
  3. Scrivi NumeroCasuale che chiama BitCasuale tre volte e compone un intero da 0 a 7.
  4. Estrai 800 numeri e conta quante volte esce ciascun valore: ognuno dovrebbe comparire circa 100 volte.
  5. Scrivi un secondo esperimento con la coppia di Bell per 1000 ripetizioni e conta le misure uguali.
  6. Mostra i risultati con Message e prova a descrivere a parole che cosa hai osservato.

Esame e attestato

Alla fine del corso fai l'esame: 15 domande, serve il 75% di risposte giuste. Superato l'esame ottieni l'attestato stampabile con nome, ore, punteggio e un codice di controllo che chiunque può verificare.

Vai all'esame

Glossario di Q#

Qubit
L'unità di informazione quantistica: può essere Zero, One o in sovrapposizione.
Sovrapposizione
Condizione in cui un qubit è una combinazione di Zero e One finché non viene misurato.
Misura
Operazione che legge un qubit e restituisce Zero oppure One, facendo collassare la sovrapposizione.
Entanglement
Legame tra qubit per cui le misure sono correlate anche se ognuna è casuale.
Porta quantistica
Operazione che trasforma lo stato di uno o più qubit, come X, H o CNOT.
Hadamard (H)
Porta che crea una sovrapposizione equilibrata a partire da Zero o One.
CNOT
Porta a due qubit: inverte il bersaglio solo se il controllo vale One.
Sfera di Bloch
Sfera che permette di visualizzare lo stato di un singolo qubit.
Oracolo
Operazione che nasconde una funzione o riconosce una soluzione dentro un algoritmo.
Interferenza
Effetto per cui le possibilità si rinforzano o si annullano, usato dagli algoritmi quantistici.
Simulatore
Programma che imita un computer quantistico su un computer normale.
NISQ
Era attuale dei computer quantistici: pochi qubit, rumorosi e senza correzione completa degli errori.

Le prime 2 lezioni sono gratis

Per il corso completo, scuole e aziende: chiedi le condizioni.