Coconote
AI notes
AI voice & video notes
Try for free
🖥️
Introducción a la Programación Cuántica
Jul 2, 2024
Programación de Computadoras Cuánticas - Parte 1
Descripción General
Introducción a la programación de computadoras cuánticas.
Comparación con la programación de computadoras clásicas.
Explicación de compiladores, código máquina y puertas lógicas en computación clásica y cuántica.
Discusión detallada sobre los principios de la mecánica cuántica: superposición y entrelazamiento.
Introducción a las puertas lógicas cuánticas y algoritmos de Computación Cuántica.
Computadoras Clásicas
Cómo Funciona la Programación
Los lenguajes de programación (Python, C++, Java, etc.) permiten interactuar con las computadoras usando comandos casi en lenguaje humano.
Ejemplo: Código para contar hasta 10 escrito por ChatGPT.
Compiladores
Programas especiales que convierten el lenguaje de programación de alto nivel en lenguaje máquina.
Diferentes lenguajes tienen compiladores específicos que actúan como traductores.
Compiladores como cajas negras: toman el código escrito por humanos (entrada) → salida el código máquina (secuencia de 1s y 0s).
Código Máquina
Conjunto de instrucciones que le dicen a la computadora sobre bits específicos en los que operar.
Contiene 1s y 0s interpretados como instrucciones directas para el flujo de señal eléctrica.
Puertas Lógicas
Bloques de construcción fundamentales de las computadoras clásicas (por ejemplo, puertas AND, OR).
Circuitos físicos compuestos por bits.
Realizan operaciones matemáticas y transfieren información entre bits.
Computadoras Cuánticas
Programación de Alto Nivel
Las computadoras cuánticas se programan utilizando lenguajes de programación de alto nivel como Qiskit de IBM.
Estos lenguajes se ejecutan en computadoras clásicas, se compilan y luego se ejecutan en el Hardware Cuántico.
Principios de la Mecánica Cuántica
Superposición
Un sistema cuántico puede estar en múltiples estados al mismo tiempo.
El estado del sistema solo colapsa a un estado definido al ser medido.
La probabilidad de colapso está dada por el cuadrado del coeficiente del estado.
Entrelnzamiento
La medición del estado de una partícula entrelazada informa inmediatamente el estado de la otra.
Ejemplo: Estado de Bell.
Probabilidades de estado entrelazado (por ejemplo, 50% de probabilidad de 00 y 50% de 11).
Puertas Lógicas Cuánticas
Operaciones que cambian el estado de un qubit de una manera conocida y repetible.
Puertas de uno y varios qubits (análogas a las puertas clásicas NOT y AND).
Implementadas de manera diferente en cada hardware cuántico (por ejemplo, átomos neutros, qubits superconductores).
Implementación de Algoritmos
Puertas cuánticas conectadas para formar algoritmos (circuitos cuánticos).
Abstracciones de programación clásica aplicadas (por ejemplo, programación en Qiskit).
Uso de computadoras clásicas para escribir/compilar código cuántico.
Ejemplo de Algoritmo: Deutsch-Jozsa
Problema
: Determinar si una función es constante o balanceada.
Solución Clásica
: Requiere 3 evaluaciones.
Solución Cuántica
: Requiere solo 1 evaluación.
Pasos
:
Preparar los qubits (0 y 1 respectivamente) y aplicar la puerta Hadamard.
Evaluar la función en los qubits.
Medir los resultados y analizar si es constante o balanceada.
Resumen
Los algoritmos clásicos y cuánticos difieren pero siguen algunos principios subyacentes.
La Computación Cuántica ofrece ventajas significativas para ciertos tipos de problemas.
Próxima parte: Implementación del algoritmo Deutsch-Jozsa usando Qiskit en una computadora cuántica real.
📄
Full transcript