¿Qué es exactamente un oráculo?


18

¿Qué es exactamente un " oráculo "? Wikipedia dice que un oráculo es una " caja negra ", pero no estoy seguro de lo que eso significa.

Por ejemplo, en el algoritmo Deutsch – Jozsa ,
, ¿
es el oráculo solo la casilla con la etiqueta ''UF", o es todo entre la medición y las entradas (incluidas las puertas Hadamard)?

Y para dar el oráculo, ¿necesito escribir UF en forma matricial o en forma condensada: UF da yyF(X) y XX es suficiente con respecto a la definición de un oráculo?


Microsoft tiene buena documentación sobre oráculos cuánticos .
Sanchayan Dutta

Respuestas:


22

Un oráculo (al menos en este contexto) es simplemente una operación que tiene alguna propiedad que no conoce y está tratando de descubrir. El término "recuadro negro" se usa de manera equivalente, para transmitir la idea de que es solo un recuadro que no se puede ver dentro y, por lo tanto, no se sabe lo que está haciendo. Todo lo que sabe es que puede suministrar entradas y recibir salidas. En el diagrama de circuito que representa, es solo el cuadro . Todo lo demás son cosas que está agregando para ayudar a interrogar al oráculo y descubrir sus propiedades.UF

Para dar el oráculo, puede escribirlo en cualquier forma válida que defina un mapa de todas las posibles entradas a salidas. Esto podría ser una matriz (presumiblemente con un parámetro desconocido), o podría ser el mapaU:(X,y)(X,yF(X)) (estrictamente, X,y{0 0,1} ), dado que dada cualquiera de las descripciones, puede resolver la otra.


¿Podría aclarar a qué se refería estrictamente en la última oración?
Aritra Das

@tparker no realmente: el propósito de tales formas de oráculo es a menudo que permite una descripción no solo del algoritmo, sino también de la optimización del algoritmo. Eso se mide simplemente como un recuento del número de usos del oráculo. No importa cuánto tiempo tarda el oráculo en ejecutarse. Entonces, para Grover, eso requiere una raíz cuadrada de la cantidad de llamadas de oráculo que hace la clásica.
DaftWullie

Tienes razón; mi comentario fue mal redactado. Lo que quise decir es que si desea un resultado de oráculo para dar una idea de un tiempo de ejecución del "mundo real", debe asumir (además de la suposición de recuadro negro) que cualquier subrutina que esté ejecutando para implementar realmente la llamada al oráculo domina el tiempo de ejecución del algoritmo, por lo que el número de llamadas al oráculo es de hecho proporcional al tiempo de ejecución real. Pero esa es una suposición adicional para la relevancia del "mundo real", no una parte necesaria de la definición de un oráculo.
tparker
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.