SlideShare ist ein Scribd-Unternehmen logo
1 von 33
1
Programación Cuántica
Breve introducción a los lenguajes de
programación cuánticos
Francisco J, Gálvez Ramírez
fjgramirez@es.ibm.com
IBM Technical Staff
Agenda
• Conceptos Básicos
• Algoritmos Cuánticos
• Lenguajes de Programación
• IBM Quantum Experience
3
Conceptos Cuánticos
Que es un Computador Cuántico
 Un Computador Cuántico hace uso de las leyes naturales
de la mecánica cuántica para llevar a cabo un cálculo.
 ¿Porque queremos un Computador Cuántico?
 Resolución de ciertos problemas  Hay problemas que no pueden
ejecutarse con total fidelidad en un sistema clásico.
 Rendimiento  Resolución de problemas de forma más rápida de lo
que lo puede hacer un ordenador clásico.
5
Conceptos Básicos de Mecánica Cuántica
 El Principio de Incertidumbre
Es imposible realizar una medida sobre un sistema sin que este sufra una
perturbación
 La Superposición de Estados
Un estado existe en todas sus posibles configuraciones del espacio de
estados posible.
 El Entrelazado Cuántico
Paradoja EPR – Las propiedades de las particulas entrelazadas están
relacionadas
 La Decoherencia de Estados
En un estado coherente se mantienen todas las propiedades cuánticas del
conjunto. La decoherencia devuelve el caracter indivdual a cada componente.
6
Características de un Computador Cuántico
1. Utiliza Bits Cuánticos (Quantum Bits o Qubits)
2. Hace uso del Paralelismo Cuantico
3. Entrelazamiento
4. Mantiene la coherencia
7
Que es un Bit Cuántico o Qubit?
• Qubit es el concepto cuántico del bit.
• No es un elemento ni un dispositivo.
Un Qubit es un concepto lógico que
puede implementarse sobre un gran
número de sistemas con
comportamiento cuántico.
• Al igual que un bit, un Qubit puede
respresentar dos estados: 0 y 1
Sin embargo, un Qubit es capaz de trabajar con todas las posibles combinaciones
que pueden darse entre estos estados base 0 y 1.
8
Operaciones Cuánticas
 Es un circuito básico que actúa sobre un o varios qubits
 Equivalente a las puertas lógicas de los circuitos digitales
1. Son Reversibles
2. Matemáticamente se representan por matrices unitarias
3. Los qubits sobre los que actuan debe conservar sus características
cuánticas.
1 1 1
2 1 -1
=
1 0 0 0
0 1 0 0
0 0 0 1
0 0 1 0
=
Puerta Hadamard Puerta NO – Controlado
Puertas Cuánticas
9
Principales Algoritmos Cuánticos
Principales Algortimos Cuánticos
 Algoritmo de Deusch – Determina si una función es o no
balanceada.
 Algoritmo de Shor – Factorización de grandes números
 Algoritmo de Grover – Busquedas en espacios no
estructurados.
Algoritmo de Deustch
f1:
0 0
1 0
f2:
0 1
1 1
f3:
0 0
1 1
f4:
0 1
1 0
Algoritmo de Deustch-Josza  Extensión del
algoritmo de Deustch para registros de n valores
Algoritmo de Shor
• ¿Número de pasos que un computador clasico debe ejecutar para encontrar
los factores primos de un numero N formado por x dígitos?
Crece exponencialmente con x
• El algortimo de Shor consta de dos partes:
1. Una parte clásica - Que se centra en buscar el periodo de una
función
2. Una parte cuántica basada en tecnicas de QFT
En 2001, IBM y la Universidad de Stanford, consiguen ejecutar por primera vez
el algoritmo de Shor en el primer computador cuántico de 7 qubits
desarrollado en Los Álamos.
https://www-03.ibm.com/press/us/en/pressrelease/965.wss
Algoritmo de Grover
• ¿Cuantos intentos necesita una búsqueda de datos en
una base de datos no ordenada de N elementos para
localizar un elemento concreto?
Necesita un promedio de N/2 intentos,)
Una computadora cuántica utilizando el algoritmo de
Grover el promedio de intentos seria SQRT(N)
http://www.dma.eui.upm.es/MatDis/Seminario4/AlgoritmoGrover.pdf
14
Lenguajes de Programación
Pseudocódigo Cuántico
• El psudocódigo cuántico propuesto en E. Knill es el primer
lenguaje formal para la descripción de algoritmos
cuánticos.
• Se relaciona con un modelo de máquina cuántica
denominado QRAM (Quantum Random Access Machine)
• Source : https://www.researchgate.net/publication/51394884_Quantum_Random_Access_Memory
Propuesta de Arquitectura en cuatro capas
• Arquitectura de capas
Lenguaje de Alto Nivel
Lenguaje Ensamblador QASM
Lenguaje de Operaciones Físicas QPOL
Módulos de acceso al dispositivo Físico
Quipper – Una libreria Haskel
• Publicado en 2013.
• Es un lenguaje embebido basado en Haskel, desarrollado como parte
del proyecto QCS del IARPA
• Los programas cuánticos en Quipper se escriben en Haskel añadiendo
las librerias adecuadas.
• Quipper es un lenguaje de descripción de circuitos
• Ejemplo:
import Quipper
spos :: Bool -> Circ Qubit
spos b = do
q <- qinit b
r <- hadamard q
return r
Quipper – Una libreria Haskel
Ejemplos de codigo para generacion de circuitos en Quipper
circ :: Qubit -> Circ Qubit
circ x = do
hadamard_at x
with_ancilla $ y -> do
qnot_at y
qnot x `controlled` y
qnot_at y
hadamard_at x
return x
teleport :: Qubit -> Circ Qubit
teleport q = do
(a,b) <- bell00
(x,y) <- alice q a
b <- bob b (x,y)
return b
Introducción a Quipper: https://arxiv.org/pdf/1304.5485v1.pdf
Quipper – Una libreria Haskel
Algortimos utilizador para el desarrollo de Quipper
• BWT – Binary Welded Tree. Como encontrar un nodod identificado en un
gráfico.
• BF – Boolean Formula. Evaluar una formla de tipo NAND.
• CL – Class Number. Aproximación de una clase de grupo a un número
cuadrático real.
• GSE – Ground State Estimation. Calcular el nivel de energía más bajo de una
molécula en particular
• QLS – Quantum Linear System. Resolución de un sistema lineal de
ecuaciones.
• USV – Unique Shortest Vector. Elegir el vector más corto entre un grupo de
vectores dado.
• TF – Triangle Finding. Dibujar un triangulo dentro de un gráfico denso.
Tecnicas utilizadas:
• Transformada de Fourier Cuántica
• Amplificación de Amplitud
• Caminata Cuántica
• ...
The Python Quantum Toolbox
Authors: Paul Nation and Robert Johansson
Web site: http://qutip.googlecode.com
Discussion: Google group “qutip”
Blog: http://qutip.blogspot.com
Platforms: Linux and Mac
License: GPLv3
Download: http://code.google.com/p/qutip/downloads
Repository: http://github.com/qutip
Publication: Comp. Phys. Comm. 183, 1760 (2012) arXiv:1211.6518 (2012)
The Python Quantum Toolbox
QuTiP – Es un framework open source orientado
a objetos para realizar cálculos de sistemas
cuánticos abiertos.
Visualización
Funciones Core
Evolución TemporalEstados
Operadores
Puertas Lógicas
Documentación de QuTiP: http://qutip.org/downloads/3.1.0/qutip-doc-3.1.0.pdf
The Python Quantum Toolbox
• Correspondencia entre conceptos
cuánticos y su representación en QuTiP
.
Conceptos Cuánticos Representación en QuTiP
Estado cuántico o Función de Onda
Amplitud de probabilidad que describe el estado de un
sistema cuántico.
Vectores y matrices
Elementos complejos
Operadores
El operador hamiltoniano es la función energía total de un
sistema que describe la energía de los posibles estados.
Los operadores representan observables físicos.
Matrices
Los operadores se representan mediante matrices.
Ecuación de movimiento
Describe como evolucionan en el tiempo los estados de un
sistema cuántico.
Ecuanciones Diferenciales
Sistemas de ecuaciones diferenciales acopladas
Observables y valores esperados
Los observables fisicos son cantidades que se
corresponden con operadores
Producto Interno
Los resultados se calculan como producto interno entre
vectores de estado y matrices que representan operadores,
dando como resultado numeros reales para observables
físicos
The Python Quantum Toolbox
Objetos y datatypes
Qobj proporciona la estructura para encapsular de los
operadores cuánticos y los vectores <bra| y |ket>
Data Q.data
Dimensions Q.dims
Shape Q.shape
is Hermitian? Q.ishermIs
Type Q.type
The Python Quantum Toolbox
• Capacidades de Visualización
• Funciones de Distribución de Probabilidad
• Visualización de Operadores
• Tomografía de Procesos Cuánticos
• Histogramas 2D y 3D
• Mapas de Color
• Graficas lineales
• Representación en Esfera de Bloch
Mathematica
Listado de paquetes para Mathematica
• QDENSITY - Simulación de un computador cuántico. Matrices de densidad,
http://www.pitt.edu/~tabakin/QDENSITY/UPDATE14.pdf
• qmatrix – Package para calculos de teoria de información cuántica
http://library.wolfram.com/infocenter/MathSource/1893/
• Quantum Add-On que permite realizar una amplia variedad de calculos y simulaciones en
mecánica cuántica. (Universidad de Monterrey)
http://homepage.cem.itesm.mx/lgomez/quantum/index.htm
• CMU: Quantum Information Pograms in Mathematica – Colección de funciones y
objetos: notación <bra|ket> operadores, etc. (Carnegie-Mellon University )
http://quantum.phys.cmu.edu/QPM/
• Quantum Turing Machine Simulator Orientado a máquinas de Turing Cuánticas
http://www.mathematica-journal.com/issue/v8i3/features/hertel/contents/html/index.html
• QI – Package para cálculos cuánticos, focalizado principalmente en los aspectos
geométicos de la teoría de la información cuántica
https://zksi.iitis.pl/wiki/projects:mathematica-qi
MatLab QLib
Libreria de Matlab para realizar cálculos cuánticos
• Distribuciones de Probabilidad (clasicas)
• Estados Puros
• Matrices de densidad
• Matrices Hermíticas
• Diversos test de entanglement
• Entropia Lineal, de Von Neumann ...
• Medida de Distancias (Traza, fidelidad, Hilbert..)
• Descomposición de Schmidt
• Medidad de Observables (POVM)
The IBM Quantum Experience
En que consiste IBM Quantum Experience
 Un conjunto de tutoriales que ofrecen una guia para
entender los experimentos cuánticos.
 El quantum Composer, es un interfaz gráfica donde se
puede componer una “partitura” cuántica
 Un simulador que se utiliza para ejecutar las partituras
cuánticas diseñadas.
 Acceso a un Procesador Cuántico real que se
encuentra en funcionamiento en uno de los laboratrios de
Computacíón Cuántica de IBM
 En el futuro: Una Comunidad Cuántica
Presentando IBM Quantum Experience
 Un usuario estándar, tiene acceso total a:
 Procesador cuántico real
 Capacidades de simulación
 Resultados previos que se encuentran en la cache del
dispositivo.
 Existe un único procesador cuántico conectado al Cloud.
 Cuando el usuario consume sus Unidades, puede solicitar
una reposición desde la página “Account”.”
El Quantum Composer
 Interfaz Gráfico de usuario para programar un procesador
cuántico.
 Permite construir circuitos cuántico haciendo uso de la
libreria de puertas lógicas cuánticas y puntos de medida
bien definidos.
La librerias de Operaciones Cuánticas
Bloques amarillos. Representan una operación
vacia sobre un qubit durante un tiempo igual a la
duración que tiene una puerta de un qubit
Bloques verdes. Representan un el grupo
denominado operadores de Pauli.
Bloques azules. Representan operadores de
Clifford. Se trata de las puertas H, S y S† las
cuales pueden generar superposición cuántica
Bloques naranja. Representan puertas que son
necesarias para un control universal.
La libreria (al completo ... hasta la proxima versión )
Trabajando con el Composer
(Demo)

Weitere ähnliche Inhalte

Was ist angesagt? (20)

Qunatum computing
Qunatum computing Qunatum computing
Qunatum computing
 
Quantum Computers new Generation of Computers part 7 by prof lili saghafi Qua...
Quantum Computers new Generation of Computers part 7 by prof lili saghafi Qua...Quantum Computers new Generation of Computers part 7 by prof lili saghafi Qua...
Quantum Computers new Generation of Computers part 7 by prof lili saghafi Qua...
 
Quantum computing
Quantum computingQuantum computing
Quantum computing
 
Quantum computing
Quantum computingQuantum computing
Quantum computing
 
Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7
 
Presentation quantum computers
Presentation quantum computersPresentation quantum computers
Presentation quantum computers
 
Quantum programming
Quantum programmingQuantum programming
Quantum programming
 
QuantumComputersPresentation
QuantumComputersPresentationQuantumComputersPresentation
QuantumComputersPresentation
 
Quantum computers
Quantum computersQuantum computers
Quantum computers
 
Quantum computing
Quantum computingQuantum computing
Quantum computing
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
 
Quantum computing
Quantum computingQuantum computing
Quantum computing
 
Procesamiento lenguaje natural
Procesamiento lenguaje naturalProcesamiento lenguaje natural
Procesamiento lenguaje natural
 
Unidad1 Lenguajes y automatas
Unidad1 Lenguajes y automatasUnidad1 Lenguajes y automatas
Unidad1 Lenguajes y automatas
 
Autómatas de Pila
Autómatas de PilaAutómatas de Pila
Autómatas de Pila
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
 
La I. A. y el procesamiento del lenguaje natural
La I. A. y el procesamiento del lenguaje naturalLa I. A. y el procesamiento del lenguaje natural
La I. A. y el procesamiento del lenguaje natural
 
Quantum computation - Introduction
Quantum computation - IntroductionQuantum computation - Introduction
Quantum computation - Introduction
 
Computación cuántica
Computación cuánticaComputación cuántica
Computación cuántica
 

Ähnlich wie Programación Cuántica: Introducción a lenguajes

Informatica cuántica
Informatica cuánticaInformatica cuántica
Informatica cuánticamoledo86
 
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)CAChemE
 
2017 12 19_campus_madrid_the_age_of_quantumcomputing_final
2017 12 19_campus_madrid_the_age_of_quantumcomputing_final2017 12 19_campus_madrid_the_age_of_quantumcomputing_final
2017 12 19_campus_madrid_the_age_of_quantumcomputing_finalFrancisco J. Gálvez Ramírez
 
0104 arquitectura-del-computador
0104 arquitectura-del-computador0104 arquitectura-del-computador
0104 arquitectura-del-computadorProfesorCorona
 
Historia de la computación cuántica
Historia de la computación cuánticaHistoria de la computación cuántica
Historia de la computación cuánticaNARCISA VELVA
 
Computación cuantica rocio
Computación cuantica rocioComputación cuantica rocio
Computación cuantica rocioROCIO GREFA
 
1. Algoritmos y Programas
1. Algoritmos y Programas1. Algoritmos y Programas
1. Algoritmos y Programas1101
 
Arquitectura del computador rulfix
Arquitectura del computador rulfixArquitectura del computador rulfix
Arquitectura del computador rulfixrulfur
 
Arquitectura del computador
Arquitectura del computadorArquitectura del computador
Arquitectura del computadorNew Horizons
 
Jerecicio 8 de owrd
Jerecicio 8 de owrdJerecicio 8 de owrd
Jerecicio 8 de owrdSkulleD42
 

Ähnlich wie Programación Cuántica: Introducción a lenguajes (20)

2019 03 28_upv_computacion_cuantica_liderat
2019 03 28_upv_computacion_cuantica_liderat2019 03 28_upv_computacion_cuantica_liderat
2019 03 28_upv_computacion_cuantica_liderat
 
Guillermo Cuantico
Guillermo CuanticoGuillermo Cuantico
Guillermo Cuantico
 
2017 09 07_programar_ordenadorcuanticov3
2017 09 07_programar_ordenadorcuanticov32017 09 07_programar_ordenadorcuanticov3
2017 09 07_programar_ordenadorcuanticov3
 
Evento univ30may quantumcomputing_final
Evento univ30may quantumcomputing_finalEvento univ30may quantumcomputing_final
Evento univ30may quantumcomputing_final
 
Informatica cuántica
Informatica cuánticaInformatica cuántica
Informatica cuántica
 
Introduccion algoritmoscuanticos
Introduccion algoritmoscuanticosIntroduccion algoritmoscuanticos
Introduccion algoritmoscuanticos
 
Computacion cuantica
Computacion cuanticaComputacion cuantica
Computacion cuantica
 
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
Iniciación al modelado de reactores químicos com MATLAB - Octave (intro)
 
2017 12 19_campus_madrid_the_age_of_quantumcomputing_final
2017 12 19_campus_madrid_the_age_of_quantumcomputing_final2017 12 19_campus_madrid_the_age_of_quantumcomputing_final
2017 12 19_campus_madrid_the_age_of_quantumcomputing_final
 
Paralelismo Concurrencia.ppt
Paralelismo Concurrencia.pptParalelismo Concurrencia.ppt
Paralelismo Concurrencia.ppt
 
Software libre en la oficina técnica.
Software libre en la oficina técnica.Software libre en la oficina técnica.
Software libre en la oficina técnica.
 
0104 arquitectura-del-computador
0104 arquitectura-del-computador0104 arquitectura-del-computador
0104 arquitectura-del-computador
 
Computacion paralela
Computacion paralelaComputacion paralela
Computacion paralela
 
Ejercicio 8
Ejercicio 8Ejercicio 8
Ejercicio 8
 
Historia de la computación cuántica
Historia de la computación cuánticaHistoria de la computación cuántica
Historia de la computación cuántica
 
Computación cuantica rocio
Computación cuantica rocioComputación cuantica rocio
Computación cuantica rocio
 
1. Algoritmos y Programas
1. Algoritmos y Programas1. Algoritmos y Programas
1. Algoritmos y Programas
 
Arquitectura del computador rulfix
Arquitectura del computador rulfixArquitectura del computador rulfix
Arquitectura del computador rulfix
 
Arquitectura del computador
Arquitectura del computadorArquitectura del computador
Arquitectura del computador
 
Jerecicio 8 de owrd
Jerecicio 8 de owrdJerecicio 8 de owrd
Jerecicio 8 de owrd
 

Mehr von Francisco J. Gálvez Ramírez (8)

2019 03 28_upv_transformacion_digital_liderat
2019 03 28_upv_transformacion_digital_liderat2019 03 28_upv_transformacion_digital_liderat
2019 03 28_upv_transformacion_digital_liderat
 
Quantum Roles in Quantum Computing
Quantum Roles in Quantum ComputingQuantum Roles in Quantum Computing
Quantum Roles in Quantum Computing
 
Perfiles en Tecnologias Cuanticas
Perfiles en Tecnologias CuanticasPerfiles en Tecnologias Cuanticas
Perfiles en Tecnologias Cuanticas
 
2017 10 17_quantum_program_v2
2017 10 17_quantum_program_v22017 10 17_quantum_program_v2
2017 10 17_quantum_program_v2
 
2017 07 04_cmmse_quantum_programming_v1
2017 07 04_cmmse_quantum_programming_v12017 07 04_cmmse_quantum_programming_v1
2017 07 04_cmmse_quantum_programming_v1
 
Des2017 quantum computing_final
Des2017 quantum computing_finalDes2017 quantum computing_final
Des2017 quantum computing_final
 
Ibm quantum computing
Ibm quantum computingIbm quantum computing
Ibm quantum computing
 
Breve historia de_la_computacion_cuantica
Breve historia de_la_computacion_cuanticaBreve historia de_la_computacion_cuantica
Breve historia de_la_computacion_cuantica
 

Kürzlich hochgeladen

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 

Kürzlich hochgeladen (20)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 

Programación Cuántica: Introducción a lenguajes

  • 1. 1 Programación Cuántica Breve introducción a los lenguajes de programación cuánticos Francisco J, Gálvez Ramírez fjgramirez@es.ibm.com IBM Technical Staff
  • 2. Agenda • Conceptos Básicos • Algoritmos Cuánticos • Lenguajes de Programación • IBM Quantum Experience
  • 4. Que es un Computador Cuántico  Un Computador Cuántico hace uso de las leyes naturales de la mecánica cuántica para llevar a cabo un cálculo.  ¿Porque queremos un Computador Cuántico?  Resolución de ciertos problemas  Hay problemas que no pueden ejecutarse con total fidelidad en un sistema clásico.  Rendimiento  Resolución de problemas de forma más rápida de lo que lo puede hacer un ordenador clásico.
  • 5. 5 Conceptos Básicos de Mecánica Cuántica  El Principio de Incertidumbre Es imposible realizar una medida sobre un sistema sin que este sufra una perturbación  La Superposición de Estados Un estado existe en todas sus posibles configuraciones del espacio de estados posible.  El Entrelazado Cuántico Paradoja EPR – Las propiedades de las particulas entrelazadas están relacionadas  La Decoherencia de Estados En un estado coherente se mantienen todas las propiedades cuánticas del conjunto. La decoherencia devuelve el caracter indivdual a cada componente.
  • 6. 6 Características de un Computador Cuántico 1. Utiliza Bits Cuánticos (Quantum Bits o Qubits) 2. Hace uso del Paralelismo Cuantico 3. Entrelazamiento 4. Mantiene la coherencia
  • 7. 7 Que es un Bit Cuántico o Qubit? • Qubit es el concepto cuántico del bit. • No es un elemento ni un dispositivo. Un Qubit es un concepto lógico que puede implementarse sobre un gran número de sistemas con comportamiento cuántico. • Al igual que un bit, un Qubit puede respresentar dos estados: 0 y 1 Sin embargo, un Qubit es capaz de trabajar con todas las posibles combinaciones que pueden darse entre estos estados base 0 y 1.
  • 8. 8 Operaciones Cuánticas  Es un circuito básico que actúa sobre un o varios qubits  Equivalente a las puertas lógicas de los circuitos digitales 1. Son Reversibles 2. Matemáticamente se representan por matrices unitarias 3. Los qubits sobre los que actuan debe conservar sus características cuánticas. 1 1 1 2 1 -1 = 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 = Puerta Hadamard Puerta NO – Controlado Puertas Cuánticas
  • 10. Principales Algortimos Cuánticos  Algoritmo de Deusch – Determina si una función es o no balanceada.  Algoritmo de Shor – Factorización de grandes números  Algoritmo de Grover – Busquedas en espacios no estructurados.
  • 11. Algoritmo de Deustch f1: 0 0 1 0 f2: 0 1 1 1 f3: 0 0 1 1 f4: 0 1 1 0 Algoritmo de Deustch-Josza  Extensión del algoritmo de Deustch para registros de n valores
  • 12. Algoritmo de Shor • ¿Número de pasos que un computador clasico debe ejecutar para encontrar los factores primos de un numero N formado por x dígitos? Crece exponencialmente con x • El algortimo de Shor consta de dos partes: 1. Una parte clásica - Que se centra en buscar el periodo de una función 2. Una parte cuántica basada en tecnicas de QFT En 2001, IBM y la Universidad de Stanford, consiguen ejecutar por primera vez el algoritmo de Shor en el primer computador cuántico de 7 qubits desarrollado en Los Álamos. https://www-03.ibm.com/press/us/en/pressrelease/965.wss
  • 13. Algoritmo de Grover • ¿Cuantos intentos necesita una búsqueda de datos en una base de datos no ordenada de N elementos para localizar un elemento concreto? Necesita un promedio de N/2 intentos,) Una computadora cuántica utilizando el algoritmo de Grover el promedio de intentos seria SQRT(N) http://www.dma.eui.upm.es/MatDis/Seminario4/AlgoritmoGrover.pdf
  • 15. Pseudocódigo Cuántico • El psudocódigo cuántico propuesto en E. Knill es el primer lenguaje formal para la descripción de algoritmos cuánticos. • Se relaciona con un modelo de máquina cuántica denominado QRAM (Quantum Random Access Machine) • Source : https://www.researchgate.net/publication/51394884_Quantum_Random_Access_Memory
  • 16. Propuesta de Arquitectura en cuatro capas • Arquitectura de capas Lenguaje de Alto Nivel Lenguaje Ensamblador QASM Lenguaje de Operaciones Físicas QPOL Módulos de acceso al dispositivo Físico
  • 17. Quipper – Una libreria Haskel • Publicado en 2013. • Es un lenguaje embebido basado en Haskel, desarrollado como parte del proyecto QCS del IARPA • Los programas cuánticos en Quipper se escriben en Haskel añadiendo las librerias adecuadas. • Quipper es un lenguaje de descripción de circuitos • Ejemplo: import Quipper spos :: Bool -> Circ Qubit spos b = do q <- qinit b r <- hadamard q return r
  • 18. Quipper – Una libreria Haskel Ejemplos de codigo para generacion de circuitos en Quipper circ :: Qubit -> Circ Qubit circ x = do hadamard_at x with_ancilla $ y -> do qnot_at y qnot x `controlled` y qnot_at y hadamard_at x return x teleport :: Qubit -> Circ Qubit teleport q = do (a,b) <- bell00 (x,y) <- alice q a b <- bob b (x,y) return b Introducción a Quipper: https://arxiv.org/pdf/1304.5485v1.pdf
  • 19. Quipper – Una libreria Haskel Algortimos utilizador para el desarrollo de Quipper • BWT – Binary Welded Tree. Como encontrar un nodod identificado en un gráfico. • BF – Boolean Formula. Evaluar una formla de tipo NAND. • CL – Class Number. Aproximación de una clase de grupo a un número cuadrático real. • GSE – Ground State Estimation. Calcular el nivel de energía más bajo de una molécula en particular • QLS – Quantum Linear System. Resolución de un sistema lineal de ecuaciones. • USV – Unique Shortest Vector. Elegir el vector más corto entre un grupo de vectores dado. • TF – Triangle Finding. Dibujar un triangulo dentro de un gráfico denso. Tecnicas utilizadas: • Transformada de Fourier Cuántica • Amplificación de Amplitud • Caminata Cuántica • ...
  • 20. The Python Quantum Toolbox Authors: Paul Nation and Robert Johansson Web site: http://qutip.googlecode.com Discussion: Google group “qutip” Blog: http://qutip.blogspot.com Platforms: Linux and Mac License: GPLv3 Download: http://code.google.com/p/qutip/downloads Repository: http://github.com/qutip Publication: Comp. Phys. Comm. 183, 1760 (2012) arXiv:1211.6518 (2012)
  • 21. The Python Quantum Toolbox QuTiP – Es un framework open source orientado a objetos para realizar cálculos de sistemas cuánticos abiertos. Visualización Funciones Core Evolución TemporalEstados Operadores Puertas Lógicas Documentación de QuTiP: http://qutip.org/downloads/3.1.0/qutip-doc-3.1.0.pdf
  • 22. The Python Quantum Toolbox • Correspondencia entre conceptos cuánticos y su representación en QuTiP . Conceptos Cuánticos Representación en QuTiP Estado cuántico o Función de Onda Amplitud de probabilidad que describe el estado de un sistema cuántico. Vectores y matrices Elementos complejos Operadores El operador hamiltoniano es la función energía total de un sistema que describe la energía de los posibles estados. Los operadores representan observables físicos. Matrices Los operadores se representan mediante matrices. Ecuación de movimiento Describe como evolucionan en el tiempo los estados de un sistema cuántico. Ecuanciones Diferenciales Sistemas de ecuaciones diferenciales acopladas Observables y valores esperados Los observables fisicos son cantidades que se corresponden con operadores Producto Interno Los resultados se calculan como producto interno entre vectores de estado y matrices que representan operadores, dando como resultado numeros reales para observables físicos
  • 23. The Python Quantum Toolbox Objetos y datatypes Qobj proporciona la estructura para encapsular de los operadores cuánticos y los vectores <bra| y |ket> Data Q.data Dimensions Q.dims Shape Q.shape is Hermitian? Q.ishermIs Type Q.type
  • 24. The Python Quantum Toolbox • Capacidades de Visualización • Funciones de Distribución de Probabilidad • Visualización de Operadores • Tomografía de Procesos Cuánticos • Histogramas 2D y 3D • Mapas de Color • Graficas lineales • Representación en Esfera de Bloch
  • 25. Mathematica Listado de paquetes para Mathematica • QDENSITY - Simulación de un computador cuántico. Matrices de densidad, http://www.pitt.edu/~tabakin/QDENSITY/UPDATE14.pdf • qmatrix – Package para calculos de teoria de información cuántica http://library.wolfram.com/infocenter/MathSource/1893/ • Quantum Add-On que permite realizar una amplia variedad de calculos y simulaciones en mecánica cuántica. (Universidad de Monterrey) http://homepage.cem.itesm.mx/lgomez/quantum/index.htm • CMU: Quantum Information Pograms in Mathematica – Colección de funciones y objetos: notación <bra|ket> operadores, etc. (Carnegie-Mellon University ) http://quantum.phys.cmu.edu/QPM/ • Quantum Turing Machine Simulator Orientado a máquinas de Turing Cuánticas http://www.mathematica-journal.com/issue/v8i3/features/hertel/contents/html/index.html • QI – Package para cálculos cuánticos, focalizado principalmente en los aspectos geométicos de la teoría de la información cuántica https://zksi.iitis.pl/wiki/projects:mathematica-qi
  • 26. MatLab QLib Libreria de Matlab para realizar cálculos cuánticos • Distribuciones de Probabilidad (clasicas) • Estados Puros • Matrices de densidad • Matrices Hermíticas • Diversos test de entanglement • Entropia Lineal, de Von Neumann ... • Medida de Distancias (Traza, fidelidad, Hilbert..) • Descomposición de Schmidt • Medidad de Observables (POVM)
  • 27. The IBM Quantum Experience
  • 28. En que consiste IBM Quantum Experience  Un conjunto de tutoriales que ofrecen una guia para entender los experimentos cuánticos.  El quantum Composer, es un interfaz gráfica donde se puede componer una “partitura” cuántica  Un simulador que se utiliza para ejecutar las partituras cuánticas diseñadas.  Acceso a un Procesador Cuántico real que se encuentra en funcionamiento en uno de los laboratrios de Computacíón Cuántica de IBM  En el futuro: Una Comunidad Cuántica
  • 29. Presentando IBM Quantum Experience  Un usuario estándar, tiene acceso total a:  Procesador cuántico real  Capacidades de simulación  Resultados previos que se encuentran en la cache del dispositivo.  Existe un único procesador cuántico conectado al Cloud.  Cuando el usuario consume sus Unidades, puede solicitar una reposición desde la página “Account”.”
  • 30. El Quantum Composer  Interfaz Gráfico de usuario para programar un procesador cuántico.  Permite construir circuitos cuántico haciendo uso de la libreria de puertas lógicas cuánticas y puntos de medida bien definidos.
  • 31. La librerias de Operaciones Cuánticas Bloques amarillos. Representan una operación vacia sobre un qubit durante un tiempo igual a la duración que tiene una puerta de un qubit Bloques verdes. Representan un el grupo denominado operadores de Pauli. Bloques azules. Representan operadores de Clifford. Se trata de las puertas H, S y S† las cuales pueden generar superposición cuántica Bloques naranja. Representan puertas que son necesarias para un control universal.
  • 32. La libreria (al completo ... hasta la proxima versión )
  • 33. Trabajando con el Composer (Demo)

Hinweis der Redaktion

  1. En el caso clasico, si se desea averiguar con que tipo de funcion estamos tratando, es necesario realizar al menos dos medidas. Lo que permite el algoritmo de Deutsch es determinar si la funcion es constante o variable con una unica medida. En su forma inicial, el algoritmo de Deutsch se aploica a una funcion booleana entre [0,1] y [0,1], pero puede generalizarse y aplicarse a dominios mas extensos.
  2. En los años 1994 y 1995, Peter Shor, científico americano de AT&T Bell Laboratories, definió el algoritmo que lleva su nombre y que permite calcular los factores primos de números a una velocidad mucho mayor que en cualquier computador tradicional. Además su algoritmo permitiría romper muchos de los sistemas de criptografía utilizados actualmente. El sistema de criptografia RSA está basado en la factorización de números grandes para la generación de claves. Esto grandes números, sea N uno de ellos, son el producto de dos números primos. Los algoritmos clásicos no pueden resolver este problema en tiempo polínomico, es decir O(N^k) para ningún k. Sin embargo, el algoritmo de Shor resuelve la factorización de un número N en un tiempo polinómico O(N^k), con lo cual tenemos que un problema de tipo NP-HARD ha pasado a ser de tipo P. El order del algoritmo es: O((logN)^3) En 2001, IBM y la Universidad de Stanford, consiguen ejecutar por primera vez el algoritmo de Shor en el primer computador cuántico de 7 qubits desarrollado en Los Álamos. En el experimento se calcularon los factores primos de 15, dando el resultado correcto de 3 y 5 utilizando para ello 1018 moléculas, cada una de ellas con 7 átomos Actualmente el algoritmo de Shor se ha extendido y adaptado para atacar otras criptografias además de la RSA.
  3. Durante el año 1996, Lov Grover inventó el algoritmo de búsqueda de datos que lleva su nombre. Aunque la aceleración conseguida no es tan drástica como en los cálculos factoriales o en simulaciones físicas, su rango de aplicaciones es mucho mayor. Al igual que el resto de algoritmos cuánticos, se trata de un algoritmo probabilístico con un alto índice de acierto. La búsqueda de datos en una base de datos no ordenada de N elementos, necesita un promedio de N/2 intentos, para una computadora cuántica utilizando el algoritmo de Grover el promedio de intentos seria SQRT(N) Dicho de otra manera: mejora de forma cuadrática la eficiencia de búsqueda de un elemento en una base de datos no estructurada, por poner un ejemplo, seria una base de datos relacional sin índices. La cota superior seria O(SQRT(N))
  4. Emanuel Knill propueso QRAM en 1996 aprox. Una memoria de acceso aleatorio (RAM) utiliza n bits para direccionar aleatoriamente N=2n celdas de memoria. Una memoria cuántica de acceso aleatorio (QRAM) utilizan n qubits para direccionar cualquier superposición de N celdas de memoria.
  5. En la primera capa, se tiene un compilador con un lenguaje de alto nivel con una curva de aprendizaje aceptable para un programador. Con este lenguaje se puede representar un algoritmo cuántico, sin necesidad de conocer los detalles matemáticos que conlleva dicho algoritmo, puesto que ya van encapsulados en la arquitectura que se está definiendo. En la segunda capa, un optimizador independiente de la tecnología enlaza con una representación de circuito lógico equivalente a bajo nivel que contiene puertas CNOT y de un único qubit. Este es un lenguaje ensamblador cuántico QASM – Quantum Assembler. El compilador optimiza el QASM en base a funciones de coste tales como el tamaño del circuito, su profundidad o su precisión. La tercera capa consiste en un serie de optimizaciones que tiene lugar sobre la tecnología de computación cuántica y genera QPOL – Quantum Physical Operations Language, un lenguaje con parametrización especifica de la tecnología cuántica utilizada. QPOL incluye dos subcapas: La primera subcapa relaciona la representación de puertas CNOT y un único qubit con una representación QASM utilizando un conjunto universal de puertas tolerante a fallos. La segunda subcapa relaciona estas puertas con una representación QPOL que contiene las instrucciones físicas para las operaciones tolerante a fallos programadas en paralelo incluyendo los movimientos necesarios de partículas físicas. El conocimiento del esquema físico y las limitaciones de la arquitectura comienza en este punto. La cuarta y última capa utiliza herramientas que dependen estrechamente de la tecnología cuántica utilizada, módulos de esquema, simuladores físicos y de circuitos o interfaces con los dispositivos cuánticos. Si en este punto, no coinciden los objetivos y las restricciones cuánticas, los diseñadores de algoritmos y dispositivos pueden revisar y reparar las capas intermedias.  
  6. IARPA - The Intelligence Advanced Research Projects Activity is an organization within the Office of the Director of National Intelligence responsible for leading research to overcome difficult challenges relevant to the United States Intelligence Community QCS – Quantum Computer Science Program explores questions relating to the computational resources required to run quantum algorithms on realistic quantum computers.
  7. Quipper se basa en un lenguaje clásico de programación llamado Haskell, el cual es particularmente apto para programar aplicaciones físicas. Peter Selinger, de la Universidad Dalhousie en Halifax, Canadá, y su equipo lo han personalizado para tratar con qubits y han generado una librería de código de Quipper para aplicar siete algoritmos cuánticos existentes. Podría parecer extraño el crear un lenguaje para computación cuántica, dado que el hardware aún se encuentra en etapa rudimentaria. Sin embargo, el desarrollo del software –que se prueba en una computadora cuántica simulando una cuántica– podría influencia el diseño de futuras computadoras cuánticas. El equipo de Selinger trabajó con varios tipos de hardware cuántico existente, incluyendo dispositivos que utilizan trampas de iones y fotones. Sin embargo, no incluyeron la única computadora cuántica en el mercado hoy, la D-Wave. La D-Wave utiliza un método novedoso conocido como  computación cuántica adiabática y en este momento no es compatible con Quipper.
  8. Es una libreria de funciones para hacer calculos mecano.cuanticos. Básicamente simulaciones numericas de sistemas cuánticos. Es capaz de representar Estados cuánticos y operadores
  9. information theory