La mayoría de los algoritmos útiles / relativamente eficientes 1 para computadoras cuánticas pertenecen a la clase de complejidad 'tiempo polinomial cuántico de error acotado' (BQP) . Según esta definición, desea que la 'tasa de falla' de cualquier algoritmo cuántico sea , o , aunque el resultado aún puede estar dentro de algún pequeño error. Un algoritmo no probabilístico (que puede ejecutarse en tiempo polinómico) seguirá estando en esta clase de complejidad, con la única diferencia de que siempre devuelve el resultado correcto 2 . P(éxito)≥2≤ 13P ( éxito ) ≥ 23
Sin embargo, como puede ejecutar un algoritmo un número arbitrario de veces, esto es equivalente a tener una probabilidad de éxito de al menos para una entrada de longitud cualquier constante positiva .nc12+ n- cnortedo
Entonces, el resultado 'correcto' es el que aparece al menos dos tercios de las veces, a menos que desee un cálculo de 'una sola vez', como si desea generar números aleatorios, o si desea hacer algo como punto de referencia el chip cuántico, donde las estadísticas importan y son parte del 'resultado'.
Aparte de estos (u otros algoritmos que no tienen un solo 'resultado correcto'), si encuentra un algoritmo con una tasa de éxito inferior a la mitad, ya no es un 'error acotado' y puede que no sea posible para el usuario para conocer el resultado correcto: puede que simplemente haya una respuesta incorrecta con una probabilidad mayor de ocurrir que la correcta.
Sí, puede ver un resultado diferente cada vez que ejecuta un cálculo. La confianza en el resultado es proporcionada por:
- El algoritmo cuántico en sí mismo asegura que el resultado correcto ocurra con alta probabilidad y;
- Repetir el algoritmo varias veces para encontrar el resultado más probable.
1 Aquí, los algoritmos que se pueden calcular en tiempo polinómico para dar una solución con 'alta probabilidad', aunque a los efectos de esta respuesta, la complejidad del tiempo es de menor importancia
2 Bueno, idealista, al menos
Elaborando un poco
Mithrandir24601
la respuesta de -La característica que le preocupa, que una computadora cuántica podría producir una respuesta diferente en la próxima ejecución del cálculo, también es una característica del cálculo aleatorio. De alguna manera, es bueno poder obtener una respuesta única repetidamente, pero al final es suficiente para poder obtener una respuesta correcta con la suficiente confianza. Al igual que con un algoritmo aleatorio, lo importante es que puede estar seguro de las posibilidades de obtener la respuesta correcta en cualquier ejecución del cálculo.
Por ejemplo, su computadora cuántica podría darle la respuesta correcta a una pregunta SÍ / NO dos veces de cada tres. Esto puede parecer un rendimiento deficiente, pero lo que esto significa es que si lo ejecuta muchas veces, simplemente puede tomar la respuesta de la mayoría y estar muy seguro de que la regla de la mayoría le da la respuesta correcta. (Lo mismo es cierto para el cálculo aleatorio normal también.) La forma en que la confianza aumenta con el número de runas, significa que siempre que una sola carrera dé una respuesta que tenga significativamente más que solo un 50% de posibilidades de ser correcta, puede hacer que su confianza sea tan alta como quiera simplemente haciendo un número modesto de ejecuciones repetidas (aunque se requieren más ejecuciones, las posibilidades de una respuesta correcta en cada ejecución son más cercanas al 50%).
Para los problemas que tienen respuestas más elaboradas que las preguntas SÍ / NO, no podemos suponer necesariamente que la misma respuesta se producirá más de una vez para que podamos tener un voto mayoritario. (Si está utilizando una computadora cuántica para tomar muestras de un número exponencial de resultados, es posible que haya algunas cantidades de respuestas más pequeñas pero exponencialmente correctas y útiles). Suponga que está tratando de resolver un problema de optimización: Puede que no sea fácil verificar que ha encontrado la solución óptima, o una solución casi óptima, o que la respuesta que ha obtenido es incluso la mejor que puede hacer la computadora cuántica (¿qué pasa si la próxima ejecución le da una mejor respuesta por casualidad? En este caso, lo importante es determinar qué sabe sobre el problema,NP , lo que significa que, en principio, puede verificar eficientemente cualquier respuesta que se le dé) y con qué calidad de solución estaría contento.
Una vez más, esto también es cierto para los algoritmos aleatorios: la diferencia es que esperamos que las computadoras cuánticas puedan resolver problemas que una computadora aleatorizada por sí sola no podría resolver fácilmente.
fuente
Es una buena línea, especialmente con el ritmo oportuno de Aaronson, y la audiencia siempre parecía reírse al menos un poco, pero, por supuesto, todos sabemos que eso es una pequeña simplificación de la naturaleza probabilística del algoritmo de Shor.
(Sé que ya hay dos grandes respuestas; sin embargo, la pregunta permite la exposición / aclaración sobre la cita / anécdota de Aaronson).
fuente