Es bien sabido en la teoría de modelos finitos que sin un orden en la entrada, la expresividad es muy limitada. Por ejemplo, se sabe que es igual a PSPACE , y F O ( PFP ) (sin ningún orden en la entrada) es solo PSPACE -relacional, una noción definida por Abiteboul y Vianu cuando demostraron su teorema : F O ( IFP , < ) = F O ( PFP , < ) iff F O ( IFP . (EquivalentementeP=PSPACEsifP-relacional=PSÄCE-relacional).
Las máquinas relacionales son máquinas de Turing con un número finito de relaciones. Como en una base de datos, una relación es un conjunto de tuplas de elementos de un universo finito. La máquina puede verificar si una relación está vacía (si una tabla está vacía), realizar operaciones booleanas sobre las relaciones (unión, intersección, unión, proyección) y las operaciones habituales de la máquina de Turing. Tenga en cuenta que la entrada de máquinas relacionales se da en las relaciones y no en la cinta. Es bien sabido que PSPACE -relacional ( ) ni siquiera puede calcular la paridad, por lo tanto, es menos expresivo que PSPACE .
Se pueden definir consultas con máquinas relacionales, pero también se pueden definir funciones, siendo la respuesta de una función el contenido de algunas relaciones y de la cinta al final del cálculo. Tal máquina tiene la propiedad de que si hay dos elementos y b de la entrada de tal manera que no es un isomorfismo φ el envío de un a b y b a una , entonces nunca es posible distinguir una de b . En particular en cada relación R de la salida, si R ( a , ¯ x ) es verdadero, entonces R también lo es.
La razón de esto es que las operaciones permitidas (unión, intersección, proyección y unión) respetan el isomorfismo. Por lo tanto, la salida respeta cada isomorfismo respetado por la entrada.
En , un y b son simétricas, y la función φ de conmutación de una y b es claramente un isomorfismo de la entrada. Suponga que existe una función para calcular asignaciones satisfactorias para instancias 3 - S A T , y cuya salida es P (el conjunto de variables asignadas a verdadero en una asignación correcta). Entonces nos gustaría tener P = { a } o P . Sin embargo, el isomorfismo significa que P contiene tanto a como b , o ninguno.
Por lo tanto, hemos demostrado que no existe una función relacional PSPACE que pueda generar una asignación a una instancia de 3-SAT.
Mi pregunta es: ¿cómo demuestra que no hay un PSPACE -relacional (es decir, ) que acepta solo la entrada que tiene una asignación satisfactoria? La cuestión es diferente, ya que no tengo la intención de calcular la asignación y no pido para ver una o B en la salida, sólo quiero ver "aceptar" o "rechazar. Y, contrariamente al mundo habitual de las máquinas de Turing , no es equivalente saber si existe una respuesta y encontrar la respuesta, porque no hay forma de que usemos nuestra máquina relacional para la pregunta "¿hay una respuesta con a = t r u e " porque no podemos diferenciar unade .