Notasbit

Las mejores noticias de tecnología en un sólo lugar

Publicado por: Microsiervos

Publicado en: 18/02/2022 05:25

Escrito por: [email protected] (Alvy)

Un «¡Hola, mundo!» en siete lenguajes de programación cuántica

Un «¡Hola, mundo!» en siete lenguajes de programación cuántica

from qiskit import QuantumCircuit
# Create a basic Bell State.
qc = QuantumCircuit(2, 2) # 2 qubits, 2 bits
qc.h(0)
qc.cx(0, 1)
# Measure and put the result into the two bits.
qc.measure([0, 1], [0, 1])
# Display circuit.
print(qc)

En el artículo «Hello Many Worlds» in Seven Quantum Languages la gente de IonQ explica cómo se puede escribir el más clásico y simple de los programas, en este caso, programas de computación cuántica, en 7 lenguajes de programación cuántica. Este código sería por su simplicidad el equivalente del archifamoso ¡Hola, mundo! de los lenguajes convencionales aunque –como jocosamente dicen– más bien sería un ¡Hola, mundos! dado el entorno en cuestión.

Los lenguajes de programación cuántica en cuestión son:

Qiskit de IBM
Q# de Microsoft (Azure Quantum)
Braket de Amazon/IonQ
Cirq de Google
Pennylane
ProjectQ de ETH Zurich
Pytket de Cambridge Quantum Computing

Hay un par de ellos que son de código abierto y otros que forman parte de los SDK de diversas plataformas, como las de IBM, Microsoft, Google y Amazon.

El programa cuántico más simple sería la creación de dos qubits entrelazados, lo que se conoce como par de Bell. Si se denotan como 0 o 1 sus posibles estados, al medir esos dos qubits –que podría entenderse como «imprimir sus estados»– debería obtenerse 00 ó 11 en igual proporción. Así al ejecutar el programa 1.000 veces deberían salir –idealmente– 500 veces 00 y 500 veces 01… O casi. Un resultado típico sería:

{'00': 513, '01': 6, '10': 4, '11': 477}

donde la suma de todos los casos posibles (00 01 10 …

Top noticias del 18 de Febrero de 2022