¿Existen pruebas de separación de clases no basadas en la diagonalización?
Sí, hay, pero no para clases de complejidad uniforme. No tenemos un argumento para descartar tales pruebas, pero hasta ahora todas las separaciones entre clases de complejidad uniformes parecen utilizar la diagonalización en algún lugar.
¿Podemos encontrar un mecanismo de autorreferencia detrás de ellos?
No creo que las separaciones de clase de complejidad no uniforme se puedan convertir en argumentos de "autorreferencia" porque no son clases uniformes y no se pueden enumerar, y para un argumento de autorreferencia necesitamos enumerar los miembros de la clase.
¿Cada separación de clase tiene una prueba "canónica natural" (en un sentido informal)?
Depende de lo que quieras decir con "canónico". AFAIK, no hay consenso sobre las respuestas a la pregunta "¿Cuándo dos pruebas son idénticas en esencia?".
Si es así, deberíamos tratar de encontrar argumentos no relativizantes, en lugar de otros esquemas de prueba para preguntas abiertas. ¿Se pueden reescribir todas las pruebas no diagonales en una diagonal?
Como otros han señalado, la respuesta depende de lo que entiendas por diagonalización. En el sentido más general (documento de Kozen vinculado por Lance), la respuesta es sí para dos "clases de complejidad" diferentes (como se define en el documento de Kozen). Puede convertir el argumento en un argumento de "diagonalización". Pero:
- esto no se aplica a las clases de complejidad que no satisfacen los requisitos establecidos en el documento de Kozen (es decir, no son "clases de complejidad" de Kozen).
- Es un tipo de diagonalización muy general. Kozen muestra en el mismo documento que no hay "diagonalizaciones" que satisfagan algunas condiciones esperadas para separar las clases como y . Hay resultados de Lance Fornow y otros (por ejemplo, resultados de intercambio espacio-tiempo) (incluyendo algunos de los trabajos de Ryan William) donde la diagonalización se usa de manera indirecta. Esto puede convertirse en una "diagonalización" directa, pero no satisfará las buenas propiedades que uno podría esperar (como la independencia del contraejemplo para un conjunto en la clase más pequeña de los códigos de las máquinas para esa clase, y parece que esa es la razón no se relativizan)P S p a c ePPSpace
- lo importante es que cuanto más general es un método, más limitadas son sus aplicaciones (si se usa solo) porque el método debe funcionar para más casos y esto es una restricción en el método, no podemos usar el específico información que tenemos sobre el problema si no se comparte o no se puede reemplazar por algo similar para otros problemas a los que queremos aplicarles el método.
- Podemos convertir los argumentos de separación en argumentos de "diagonalización" (considerando la restricción que mencioné anteriormente), pero el hecho de que "la función de diagonalización realmente separa las clases" en sí misma necesita una prueba. El artículo de Kozen muestra que existe una función de diagonalización si las clases son diferentes, pero ¿cómo podemos saber que una función dada está realmente diagonalizando? ¡Necesitamos una prueba! Y el documento (AFAIU) no nos da ninguna idea sobre cómo presentar esas pruebas. Si tenemos un argumento de separación, podemos convertirlo en una prueba de diagonalización, pero eso es solo después deTener una prueba. La prueba original servirá como parte de la nueva prueba de diagonalización, mostrará que la función realmente está diagonalizando. (Y en cierto sentido, la prueba de diagonalización construida a partir del papel de Kozen no será "canónica" ya que dependerá completamente del argumento original).