El rigor que conduce a la comprensión

41

En MathOverflow, Timothy Gowers hizo una pregunta titulada " Demostrar que el rigor es importante ". La mayor parte de la discusión allí fue sobre casos que muestran la importancia de la prueba, de los cuales las personas en CSTheory probablemente no necesitan estar convencidos. En mi experiencia, las pruebas deben ser más rigurosas en informática teórica que en muchas partes de las matemáticas continuas, porque nuestra intuición a menudo resulta incorrecta para estructuras discretas, y porque el impulso para crear implementaciones fomenta argumentos más detallados. Un matemático puede estar contento con una prueba de existencia, pero un informático teórico generalmente tratará de encontrar una prueba constructiva. El Lema local de Lovász es un buen ejemplo [1].

Por lo tanto, me gustaría saber

¿Existen ejemplos específicos en informática teórica en los que una prueba rigurosa de una afirmación que se cree verdadera ha conducido a una nueva comprensión de la naturaleza del problema subyacente?

Un ejemplo reciente que no proviene directamente de los algoritmos y la teoría de la complejidad es la síntesis teórica de prueba , la derivación automática de algoritmos correctos y eficientes a partir de condiciones previas y posteriores [2].


Editar:El tipo de respuesta que tenía en mente es como la de Scott y Matus. Como sugirió Kaveh, esto es un triple de algo que la gente quería probar (pero que no fue necesariamente inesperado por "física", "agitación de la mano" o argumentos "intuitivos"), una prueba y las consecuencias del "problema subyacente" que seguido de esa prueba que no se anticipó (tal vez crear una prueba requirió nuevas ideas inesperadas, o naturalmente conduce a un algoritmo, o cambió la forma en que pensamos sobre el área). Las técnicas desarrolladas mientras se desarrollan las pruebas son los bloques de construcción de la informática teórica, por lo que para retener el valor de esta pregunta algo subjetiva, valdría la pena centrarse en la experiencia personal, como la proporcionada por Scott, o un argumento respaldado por referencias, como matus hizo. Por otra parte, yo ' Estoy tratando de evitar discusiones sobre si algo califica o no; desafortunadamente, la naturaleza de la pregunta puede ser intrínsecamente problemática.

Ya tenemos una pregunta sobre resultados "sorprendentes" en la complejidad: resultados sorprendentes en la complejidad (no en la lista de blogs de complejidad), por lo que idealmente estoy buscando respuestas que se centren en el valor de la prueba rigurosa , no necesariamente en el tamaño del avance.

András Salamon
fuente
2
¿No vemos / hacemos esto todos los días?
Dave Clarke
¿Qué se entiende exactamente por "problema subyacente"? ¿Quiere sugerir solo problemas donde hay un problema más profundo que una declaración en particular? Había estado pensando en cualquier problema que implique la prueba constructiva de la existencia de un algoritmo (por ejemplo, la prueba de primalidad AKS para establecer que PRIMES está en P) conduciría a una "nueva visión" a través de una prueba rigurosa, pero si solo está hablando sobre declaraciones más pequeñas dentro de un problema, eso no tendría sentido.
Philip White
Solo para asegurarse de que entendí su pregunta, ¿está solicitando un triple (declaración S, prueba P, idea I), donde la declaración S se sabe / se cree que es cierta, pero obtenemos una nueva idea (I) cuando alguien viene con la nueva prueba P para S?
Kaveh
[continuación] Por ejemplo, en el caso de LLL, teníamos pruebas no constructivas para LLL (S), pero la nueva prueba constructiva arXive (P) nos da una nueva visión (I).
Kaveh
Hmm ... ¿Qué hay de comenzar con algoritmos específicos y luego usarlos como puntos de datos para generalizar? Por ejemplo, las personas diseñan algunos algoritmos codiciosos y, finalmente, el campo desarrolla una noción de un problema con una subestructura óptima.
Aaron Sterling

Respuestas:

34

András, como probablemente sabes, ¡hay tantos ejemplos de lo que estás hablando que es casi imposible saber por dónde empezar! Sin embargo, creo que esta pregunta puede ser realmente buena, si las personas dan ejemplos de su propia experiencia donde la prueba de una conjetura ampliamente creída en su subárea condujo a nuevas ideas.

Cuando era estudiante universitario, el primer problema real de TCS que resolví fue este: ¿cuál es el algoritmo cuántico más rápido para evaluar un OR de √n ANDs de √n variables booleanas cada uno? Era dolorosamente obvio para mí y para todos los demás con los que hablé que lo mejor que podría hacer sería aplicar el algoritmo de Grover de forma recursiva, tanto al OR como a los AND. Esto dio un límite superior O (√n log (n)). (En realidad, puede eliminar el factor de registro, pero ignoremos eso por ahora).

Sin embargo, para mi enorme frustración, no pude probar ningún límite inferior mejor que el Ω trivial (n 1/4 ). ¡"Ir a físico" y "agitar la respuesta con la mano" nunca fueron más atractivos! :-RE

Pero luego, unos meses después, Andris Ambainis salió con su método de adversario cuántico , cuya aplicación principal al principio fue un límite inferior Ω (√n) para los OR-de-AND. Para probar este resultado, Andris imaginó alimentar un algoritmo cuántico con una superposición de diferentes entradas; Luego estudió cómo el enredo entre las entradas y el algoritmo aumentaba con cada consulta que realizaba el algoritmo. Mostró cómo este enfoque le permite la complejidad de la consulta cuántica de límite inferior incluso para problemas "desordenados" y no simétricos, utilizando solo propiedades combinatorias muy generales de la función f que el algoritmo cuántico estaba tratando de calcular.

Lejos de confirmar que la complejidad de la consulta cuántica de un problema molesto era lo que todos esperaban que fuera, estas técnicas resultaron representar uno de los mayores avances en la teoría de la computación cuántica desde los algoritmos de Shor y Grover. Desde entonces se han utilizado para probar docenas de otros límites inferiores cuánticos, e incluso se reutilizaron para obtener nuevos límites inferiores clásicos .

Por supuesto, este es "solo otro día en el maravilloso mundo de las matemáticas y el TCS". Incluso si todo el mundo "ya sabe" que X es cierto, probar X a menudo requiere inventar nuevas técnicas que luego se apliquen mucho más allá de X, y en particular a problemas para los cuales la respuesta correcta era mucho menos obvia a priori .

Scott Aaronson
fuente
27

La repetición paralela es un buen ejemplo de mi área:

Lxq1q2a1a2a1a2q1,q2xLxLs

s1s=1015kq1(1),,q1(k)q2(1),,q2(k)a1(1),,a1(k)a1(1),,a1(k)k

skksΩ(k/log|Σ|)Σ

Σk

Luego, están las extensiones que se hicieron posibles: Anup Rao pudo adaptar el análisis para mostrar que cuando el sistema de prueba original es un {\ em juego de proyección}, es decir, la respuesta del primer probador determina como máximo una respuesta aceptable de el segundo probador, no hay dependencia del alfabeto en absoluto, y la constante en el exponente se puede mejorar. Esto es importante porque la mayoría de los resultados de dureza de aproximación se basan en juegos de proyección, y los juegos únicos son un caso especial de los juegos de proyección. También hay mejoras cuantitativas en juegos en expansores (por Ricky Rosen y Ran Raz), y más.

Luego, están las consecuencias de largo alcance. Solo algunos ejemplos: se utilizó un lema teórico de información del trabajo de Raz en muchos otros contextos (en criptografía, en equivalencia de muestreo y búsqueda, etc.). La técnica de "muestreo correlacionado" que utilizó Holenstein se aplicó en muchos otros trabajos (en la complejidad de la comunicación, en PCP, etc.).

Dana Moshkovitz
fuente
3
Este es un buen ejemplo!
Suresh Venkat
20

Otro buen ejemplo de rigor (y nuevas técnicas) que se necesita para probar afirmaciones que se creían verdaderas: análisis suavizado. Dos casos en punto:

  • El algoritmo simplex
  • El algoritmo k-means

kO(nckd)n

Suresh Venkat
fuente
13

Creo que el siguiente ejemplo generó muchas investigaciones que tuvieron resultados del tipo que está buscando, al menos si sigo el espíritu de su ejemplo LLL.

Robert E. Schapire. La fuerza de pobre aprendizaje. Machine Learning, 5 (2): 197-227, 1990.

ϵ>0,δ>01δϵϵδδδγ

De todos modos, las cosas se volvieron muy interesantes después del papel de Schapire. Su solución produjo una mayoría de mayoría sobre las hipótesis en la clase original. Entonces vino:

Yoav Freund. Impulsar un algoritmo de aprendizaje débil por mayoría. Information and Computation, 121 (2): 256-285, 1995.

Este documento tenía una 'reprensión' del resultado de Schapire, pero ahora la hipótesis construida usaba solo una mayoría. En este sentido, los dos produjeron otra reprensión, llamada AdaBoost:

Yoav Freund y Robert E. Schapire. Una generalización teórica de la decisión del aprendizaje en línea y una aplicación para impulsar. Journal of Computer and System Sciences, 55 (1): 119-139, 1997.

La pregunta de aprendizaje débil / fuerte comenzó como una preocupación principalmente teórica, pero esta secuencia de 'reproches' resultó en un algoritmo hermoso, uno de los resultados más influyentes en el aprendizaje automático. Podría hacer todo tipo de tangentes aquí, pero me contendré. En el contexto de TCS, estos resultados respiran mucha vida en el contexto de (1) algoritmos de peso multiplicativo y (2) resultados de conjunto duro. Acerca de (1), me gustaría aclarar que AdaBoost puede ser visto como una instancia de los pesos multiplicativos / trabajo de winnow de Warmuth / Littlestone (Freund era un estudiante de Warmuth), pero hay muchas nuevas ideas sobre el impulso resultados. Sobre (2), yo '

Para mayor precisión histórica, también debería decir que las fechas de mis citas quizás no sean lo que algunas personas esperarían, ya que para algunas de ellas hubo versiones anteriores de la conferencia.

De vuelta a la naturaleza de su pregunta. El valor clave de 'rigor' aquí fue proporcionar la clase de hipótesis que uno aprende (mayorías ponderadas sobre la clase de hipótesis original) y algoritmos eficientes para encontrarlos.

matus
fuente
12

Este ejemplo está en la línea de las respuestas de Dana y Scott.

ndd2n1d2n1/(d1)2n1/(d1)1n1/(d1)d12n1/(d1)2n1/(d1)d2O(n1/(d1))

dAC0

Ryan Williams
fuente
11

El artículo "Pruebas naturales" de Rasborov y Rudich ofrece una prueba rigurosa de (una formalización de) la declaración dolorosamente obvia "Es realmente difícil demostrar que P ≠ NP".

Jeffε
fuente
2
"Es realmente difícil demostrar que P ≠ NP" no es equivalente a "las pruebas naturales probablemente no prueben P ≠ NP". Existen otras barreras como la relativización y la algebrización. En realidad, podría haber infinitas barreras más.
Mohammad Al-Turkistany
77
La relativización es simplemente "Es difícil probar P ≠ NP". La algebraización llegó más tarde, pero es una formalización de "Es realmente muy difícil probar P ≠ NP". (Ja ja única seria.)
Jeffε
6

La idea de que algunos problemas algorítmicos requieren un número exponencial de pasos, o una búsqueda exhaustiva de todas las posibilidades, surgió desde los años 50 y tal vez antes. (Por supuesto, la ingenua idea competitiva de que las computadoras pueden hacer todo también era común). El gran avance de Cook y Levin fue poner esta idea sobre bases rigurosas. Esto, por supuesto, cambió todo.

Actualización: Acabo de darme cuenta de que mi respuesta, como la buena respuesta de Turkistany, aborda el título de la pregunta "rigor que conduce a la comprensión", pero tal vez no la redacción específica que trataba sobre "prueba rigurosa de un teorema".

Gil Kalai
fuente
0

Alan Turing formalizó la noción de algoritmo (computabilidad efectiva) utilizando máquinas Turing. Utilizó este nuevo formalismo para demostrar que el problema de detención es indecidible (es decir, ningún problema puede resolver el problema de detención). Esto condujo a un largo programa de investigación que demostró la imposibilidad del décimo problema de Hilbert. Matiyasevich en 1970 demostró que no existe un algoritmo que pueda decidir si una ecuación entera de diofantina tiene una solución entera.

Mohammad Al-Turkistany
fuente
1
@Kaveh, ¿Qué es MRDP?
Mohammad Al-Turkistany
1
Hay conjuntos incontables recursivamente enumerables (RE) (como el problema de detención). Matiyasevich demostró que cualquier conjunto recursivamente enumerable es Diophantine. Esto implica inmediatamente la imposibilidad del décimo problema de Hilbert.
Mohammad Al-Turkistany
1
@Kaveh, ¿por qué no sometiste la primera respuesta a tus pruebas "rigurosas"? Hasta donde sé, la prueba natural no es la única barrera que nos impide probar P vs NP.
Mohammad Al-Turkistany
1
PNPPNP
Creo que es una buena respuesta.
Gil Kalai