Ein Programm, das einen Quantencomputer in deinem Computer Simuliert!

Quantencomputer und Quanten-Computing sind ein interessantes Thema. Die meisten Menschen wissen fast nichts darüber, nur dass sie sehr leistungsfähig sind. Hier werde ich jedoch nicht über die Funktionalität und Arbeitsweise von Quantencomputern sprechen. Vielleicht wünscht man sich einen Quantencomputer, so wie man sich einen neuen Computer wünscht. Allerdings ist es extrem teuer und aufwendig – zuhause ist es kaum möglich, einen Siliziumchip zu entwerfen und ihn dann mit einer riesigen Anlage bis auf 0 K zu kühlen. (Hat noch niemand zuhause gemacht oder geschafft.)

Deshalb, aus dem Drang heraus, mit solch einer Technologie herumzuspielen, habe ich ein Skript geschrieben, das einen sehr kleinen Quantencomputer real simuliert

Details:


Program Struktur / Architektur Eingabeformat| Qubitanzahl Eingebaute Gates Besondere Features
quantum_sim.py Einfacher Quantum-Register-Simulator
(Ein einzelnes Register)
.qp (Basis) Standard: 3 (anpassbar) H, X, Z, CNOT, MEASURE ASCII Circuit Diagram
Einfacher Parser
quantum_sim2.py Erweiterter Quantum-Register-Simulator
(inkl. Makrodefinition & -aufruf)
.qp Standard: 3 (anpassbar) H, X, Y, Z, S, T, CNOT, CZ, SWAP, MEASURE DEF/CALL Makros
Erweiterte ASCII-Visualisierung
quantum-sim3qcp.py Quantum CPU
(Mehrere Register, parallele Threads, ALU-Einheit)
.qcp (erweiterter Befehlssatz) 4 Register mit je 8 Qubits H, X, Y, Z, S, T, CNOT, CZ, SWAP,
MEASURE, ((READ)), ((LOAD)), WAIT, ((PRINT)),
ALU-Befehle (ADD, SUB, AND, OR, XOR)
Multithreading
Interaktive Eingabe (READ)
Integrierte ALU & modulare CPU-Architektur

quantum_sim  |  quantum_sim2  |  quantum-sim3qcp

Mit quantum-sim3qcp.py ist auch quantum-sim3.2qcp.py dabei. Die Version 3.2 enthält alle doppelt eingeklammerten (()) Befehle, die in Version 3 fehlen. Allerdings ist quantum-sim3.2qcp.py fehlerhaft – ich freue mich, wenn jemand ihn zu Ende entwickelt. Mit diesen Simulatoren kann man gut üben.

Quantum simulator 4 – M/QPU Hybrid!

Die vierte-Version wurde zu einem echten Gamechanger im vergleich zu den anderen. Sie als proffessionelles Programm verkörpert das Ziel des Projekts. Zahlreiche Funktionen…


.qp -steht für quantum-programm, eigemtlich Quantum-as voll: Quantum-Assembler.

So startet man die Versionen 1 und 2:

python quantum_sim.py beispiel_prgrm.qp 4 #4ist die zahl der zu
erzeugenden qbits.

start von Version 3:

python quantum-sim3.py beispiel_prgrm.qcp #qbits stehen schon fest.

Die Programmbeispiele sind mit den Scripts verpackt.