Circuito-01: Hola Mundo

El código crea un circuito cuántico básico, lo ejecuta en un simulador, y muestra los resultados obtenidos.



En primer lugar creamos un circuito cuántico de un único qubit al que aplicamos una puerta Hadamard y a continuación realizamos una medición. Recordamos que una puerta Hadamard ("H") lo que hace es poner el qubit en un estado de superposición tal que existen las mismas posibilidades de que colapse a cualquiera de los estados |0⟩ y |1⟩. En el circuito dibujado se aprecia una línea doble titulada con una "c"; representa al bit que recoge la medición.

A continuación utilizamos una máquina de simulación llamada qasm_simulator para ejecutar nuestro experimento 10.000 veces, y comprobar, para cada una de ellas, que valor tiene nuestro qubit.

Finalmente, mostramos estos resultados en forma de un gráfico, como si estuviéramos mirando un montón de lanzamientos de monedas y contando cuántas veces cae cara y cuántas veces cae cruz.

# CIRCUITO-01 : UN QUBIT CON UNA PUERTA H Y SU MEDIDA

# Importar las librerías necesarias
from qiskit import QuantumCircuit  # Importa la clase QuantumCircuit de Qiskit
from qiskit_aer import Aer         # Importa el módulo Aer de Qiskit Aer

qc_a = QuantumCircuit(1, 1)  # Definimos un circuito de 1 qubit y un bit
qc_a.h(0)                    # Añadimos un apuerta Hadamard

qc_a.measure(0,0)            # Medimos el qubit 0 en el bit 0
qc_a.draw("mpl")             # Dibujamos el circuito cuántico

# Configuración del simulador cuántico
Procesando = Aer.get_backend('qasm_simulator')  # Obtiene el backend 'qasm_simulator' de Qiskit Aer

# Ejecución del circuito cuántico en el simulador cuántico
Proceso = Procesando.run(Circuito, shots=10000).result()  # Ejecuta el circuito cuántico 10000 veces y obtiene los resultados

# Obtención de los
# CIRCUITO-01 : LO EJECUTAMOS 10.000 VECES Y VEMOS LOS RESULTADOS

# Configuración del simulador cuántico
Procesando = Aer.get_backend('qasm_simulator')        # Obtiene el backend 'qasm_simulator' de Qiskit Aer

# Ejecución del circuito cuántico en el simulador cuántico
Proceso = Procesando.run(qc_a, shots=10000).result()  # Ejecuta el circuito cuántico 10000 veces y obtiene los resultados

# Obtención de los resultados de la ejecución
Resultados = Proceso.get_counts(qc_a)                 # Obtiene los conteos de los resultados de la ejecución del circuito
print(Resultados)                                     # Imprime los resultados en la consola
{'0': 4950, '1': 5050}
# CIRCUITO-01 : MOSTRAMOS LOS RESULTADOS EN FORMA DE HISTOGRAMA
plot_histogram(Resultados)  # Grafica un histograma con los resultados obtenidos

 

PASOS DADOS EN ESTA PRIMERA ACTIVIDAD

Importar librerías: Importamos las librerías necesarias para ejecutar el código. En este caso, utilizamos módulos de Qiskit, una biblioteca de computación cuántica de código abierto.

Crear el circuito cuántico: Creamos un objeto QuantumCircuit llamado Circuito que representa nuestro circuito cuántico. Este circuito tiene un qubit y un bit clásico, ambos inicializados en el estado 0.

Aplicar una puerta Hadamard: Aplicamos una puerta Hadamard al qubit en el índice 0 del circuito. La puerta Hadamard es una puerta cuántica que crea una superposición igual de los estados |0⟩ y |1⟩.

Incorporar la medición del qubit: Medimos el qubit en el índice 0 y guardamos el resultado en el bit clásico en el índice 0. Esto colapsa la superposición del qubit en un estado definido: |0⟩ y |1⟩.

Dibujor del circuito: Se muestra el diagrama del circuito cuántico creado hasta este punto.

Configurar el simulador cuántico: Se obtiene un backend del simulador cuántico llamado 'qasm_simulator' utilizando Qiskit Aer. Este backend simula el comportamiento de un ordenador cuántico de manera clásica.

Ejecutar el circuito cuántico: Se ejecuta el circuito cuántico en el simulador cuántico, especificando que se ejecute 10000 veces (shots=10.000). Esto produce un conjunto de resultados estadísticos que representan las posibles mediciones que podrían ocurrir en un sistema cuántico real. Los resultados obtenidos se almacenan en la variable Resultados.

Mostrar los resultados: Se muestran los resultados por consola.

Visualizar los resultados en un histograma: Se muestra un histograma que representa visualmente la distribución de los resultados obtenidos.



VOLVER
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram