La determinación de si existe una longitud-$k$ prueba de una declaración es un problema de la complejidad de la clase $NP$. Así que si hay una constructivo prueba de que $P=NP$, que también proporcionaría un polinomio de tiempo del algoritmo para la demostración de teoremas.
En primer lugar tratar de encontrar una prueba de la longitud de la $1$ en el polinomio de tiempo, a continuación, tratar de encontrar una prueba de la longitud de la $2$ en el polinomio de tiempo, entonces la longitud de la $3$, y así sucesivamente. Si hay un número finito de prueba, entonces usted va a encontrar en el polinomio de tiempo.
En caso de que la declaración es falsa, uno debe también utilizar el algoritmo para tratar de probar que la declaración falsa simultáneamente.
Un par de problemas con esta son
- La mayoría de los matemáticos piensan $P \neq NP$,
- Una prueba de futuro que $P=NP$ podría ser indirecta basada en la contradicción, y no proporcionan una verdadera algoritmo,
- Incluso el polinomio de algoritmos en tiempo puede ser prohibitivamente caro - por ejemplo,., un algoritmo con tiempo de ejecución $O(k^{100000})$ sería "polinomio de tiempo", pero todavía completamente intractible desde una perspectiva práctica.
- Hay una dependencia implícita en la longitud de la menor prueba de que, a pesar de fijo para cualquier teorema, es todavía ilimitado para teoremas en general.
- En el extremo, si se intenta demostrar una afirmación (o negación) que es indecidible su algoritmo seguirá funcionando para siempre,
- Incluso si los algoritmos pueden probar o refutar las declaraciones, que no ayuda en decidir qué afirmaciones son "interesantes". Los seres humanos serán necesarios para decidir cuáles de las declaraciones para ejecutar el algoritmo.