AQASM
Aller à la navigation
Aller à la recherche
Le langage AQASM (Atos Quantum Assembler) est un langage informatique sous environnement python développé pour l'informatique quantique par la société Atos qui s'exécute sur le framework quantique myQLM.
Framework myQLM

myQLM est la plate-forme incluant les outils de programmation quantique[1]Modèle:,[2] sur laquelle s'exécute les programmes en langage AQASM.
Par exemple, le programme suivant permet l'intrication de deux qubits selon l'état de Bell .
from qat.lang.AQASM import Program, H, CNOT
qprog = Program()
nbqbits = 2
qbits = qprog.qalloc(nbqbits)
# Porte de Hadamard
qprog.apply(H, qbits[0])
# Porte CNOT
qprog.apply(CNOT, qbits[0], qbits[1])
circuit = qprog.to_circ()
# Affichage du circuit
display(circuit) # En ligne de commande
#%qatdisplay circuit --svg # Avec Jupyter
job = circuit.to_job(nbshots=1000)
result = pylinalgqpu.submit(job)
for sample in result:
print("état quantique %s -> probabilité : %s" % (sample.state, sample.probability))
Il existe une interopérabilité avec d'autres solutions quantiques, dont Qiskit[3].
Ainsi le programme suivant permet de convertir le circuit quantique ci-dessous en un format Qiskit et de lancer la simulation sur le simulateur quantique ibmq_qasm_simulator d'IBM.
from qat.interop.qiskit import qlm_to_qiskit
from qat.interop.qiskit import BackendToQPU
job = circuit.to_job(nbshots=1000)
qiskit_circuit = qlm_to_qiskit(circuit)
IBM_TOKEN = "*********"
qpu = BackendToQPU(token=IBM_TOKEN, ibmq_backend="ibmq_qasm_simulator")
result = qpu.submit(job)
for sample in result:
print("état quantique %s -> probabilité : %s" % (sample.state, sample.probability))