Bouw je eigen quantumcircuit

Wie houdt van elektronica kan gemakkelijk met een stukje veroboard, wat transistors, weerstanden en koperdraad een gewoon elektrisch circuit bouwen. Ik heb zelf wel eens een transistorradio gemaakt, en zelfs een keer een simpele synthesizer. Maar hoe bouw je zelf een quantumcircuit? Een echt quantumcircuit bouwen op je zolderkamer kan helaas voorlopig nog niet, maar gelukkig zijn er alternatieven te vinden op het web.

Afbeelding 1. Een screenshot van Quirk. Met Quirk kun je zelf quantumcircuits ontwerpen.

Zo is er Quirk: deze online applicatie laat je direct in je browser je eigen quantumcircuit simuleren. De logische poorten sleep je gemakkelijk in het circuit, en je ziet direct wat de uitkomst is. Zo krijg je meteen een idee van hoe een quantumcircuit werkt, zonder zelf een quantumcomputer in huis te hebben. Een andere intuïtieve online optie is de Quantum Composer van IBM, al moet je daarvoor wel een account aanmaken om het circuit te ‘runnen’.

Wat is een quantumcircuit?

Een quantumcircuit is een algoritme dat een gegeven quantumtoestand, de begintoestand, omzet naar een eindtoestand, door middel van een reeks operaties die je op de begintoestand uitvoert. In onze serie artikelen over quantumcomputers komen deze operaties uitgebreid aan bod.

Wiskundig gezien zijn deze operaties ‘gewoon’ het vermenigvuldigen van een vector met een matrix. Laten we een simpel voorbeeld van twee qubits bekijken. Elk van de qubits heeft de basistoestanden ‘up’ en ‘down’ (het analogon van de klassieke bitwaardes 1 en 0) en elke qubit bevindt zich in een superpositie van up en down. Wat we uit zo’n superpositie weten, is de kans dat de qubit up of down weergeeft nadat we een meting hebben uitgevoerd. Voor ons voorbeeld van twee qubits zijn er dus 2 × 2 mogelijke uitkomsten: allebei down, \( |00\rangle \), allebei up \( |11\rangle \), of één up en de ander down, \( |01\rangle \) of \( |10\rangle \).

Laten we de kansen op die uitkomsten in een kolom onder elkaar zetten. (Preciezer gezegd: de kans is de absolute waarde in het kwadraat van het getal dat in de kolom staat.) Een voorbeeld:

\( \begin{pmatrix} 1 \\ 0 \\ 0 \\ 0 \end{pmatrix} \).

Zo’n kolom heet een vector. De vector specificeert de begintoestand. In het voorbeeld van hierboven is de begintoestand zodanig dat beide qubits met kans 1 (dus met 100% zekerheid) down zijn. Oftewel: de begintoestand is

\( |00\rangle \).

Uit de notatie blijkt dat zowel qubit 1 als 2 down zijn (waarde 0 hebben).

En wat is nu een quantumcircuit? Een quantumcircuit is in dit geval een matrix met 4 rijen en 4 kolommen die je vermenigvuldigt met de kolomvector van de begintoestand. Als je wilt weten hoe zo’n matrixvermenigvuldiging werkt, kun je terecht op de wikipediapagina, of bij deze mooie reeks van het youtube-kanaal 3blue1brown. Een voorbeeld van een matrix die een quantumcircuit voorstelt is de volgende:

\( \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 0 & 1 & 0 \\ 0 & 1 & 0 & 1 \\ 1 & 0 & -1 & 0 \\ 0 & 1 & 0 & -1 \end{pmatrix} \).

Vermenigvuldigen we deze matrix met onze begintoestand, dan krijgen we de nieuwe vector

\( \frac{1}{\sqrt{2}} \begin{pmatrix} 1 \\ 0 \\ 1 \\ 0 \end{pmatrix} \).

Dit is de eindtoestand van dit specifieke circuit. Nemen we het kwadraat van de getallen in de kolom (waarbij we natuurlijk niet de factor \( 1/\sqrt{2} \) die ‘buiten haakjes staat’ moeten vergeten), dan zegt deze vector ons dat de twee qubits met kans ½ allebei down zijn, \( |00\rangle \), en met kans ½ allebei up, \( |11\rangle \).

Dit quantumcircuit kunnen we met Quirk gemakkelijk ‘bouwen’ door de volgende stappen te volgen.

  1. Men neme de Hadamard gate H (te vinden onder het kopje ‘Half turns’). Sleep deze naar de lijn van qubit 1,
  2. Sleep daarna de Pauli X gate (ook onder Half turns, de cirkel met een kruis er in) naar de lijn van qubit 2,
  3. Verbind nu de lijnen van qubit 1 en 2 met de Control gate (de zwarte punt onder het kopje Probes).
  4. Als je dit hebt gedaan, ziet het circuit in Quirk er als volgt uit:
quirk
Afbeelding 2. Een eenvoudig quantumcircuit.Met dit circuit ‘bouw’ je in Quirk een verstrengelde toestand van qubits.

In de groene vierkantjes op de horizontale lijnen van de qubits geeft Quirk aan wat de kans is om up of down te meten na toepassing van het quantumcircuit. In dit voorbeeld zien we dat, hoewel de begintoestand met 100% zekerheid voor allebei de qubits up was, de eindtoestand nu maximaal onzeker is geworden: de kans op up of down is voor beide qubits fifty-fifty! Deze eindtoestand noemen natuurkundigen ook wel een maximaal verstrengelde toestand. Het quantumcircuit dat je hierboven hebt gebouwd produceert dus paren van maximaal verstrengelde qubits. Wil je meer weten over het belang van zulke maximaal verstrengelde toestanden in de quantum-thermodynamica, zie dan ook mijn vorige artikel.

Spelen met quantumcircuits

Het hierboven besproken voorbeeld is een erg eenvoudig quantumcircuit met slechts 2 qubits. Maar met Quirk kun je veel meer: voeg extra qubits toe door meer gates onder je circuit te slepen (dan verschijnt er een nieuwe horizontale lijn), en verbind de lijnen met elkaar om de qubits te verstrengelen. Wil je echt een gaaf circuit? Bestudeer dan dit circuit met 3 qubits:

quirk
Afbeelding 3. Quantumteleportatie. Ook een circuit voor quantumteleportatie kun je zelf in Quirk bouwen.

Dit circuit geeft een protocol voor quantumteleportatie! Wil je daar meer over weten? In dit filmpje wordt quantumteleportatie in simpele bewoordingen uitgelegd. En zoiets simuleer je dus gewoon in je browser! Misschien een leuk onderwerp voor een uitdagend profielwerkstuk?