La complejidad descriptiva es una rama de la teoría de la complejidad computacional y de la teoría de modelos finitos que caracteriza las clases de complejidad por el tipo de lógica necesaria para expresar los lenguajes que las componen. Por ejemplo, PH , la unión de todas las clases de complejidad en la jerarquía polinómica, es precisamente la clase de lenguajes expresables por enunciados de lógica de segundo orden . Esta conexión entre la complejidad y la lógica de las estructuras finitas permite transferir fácilmente los resultados de un área a otra, facilitando nuevos métodos de prueba y proporcionando evidencia adicional de que las principales clases de complejidad son de alguna manera "naturales" y no están ligadas a las máquinas abstractas específicas utilizadas para definirlas.
En concreto, cada sistema lógico produce un conjunto de consultas que se pueden expresar en él. Las consultas, cuando se limitan a estructuras finitas, corresponden a los problemas computacionales de la teoría de la complejidad tradicional.
El primer resultado importante de la complejidad descriptiva fue el teorema de Fagin , expuesto por Ronald Fagin en 1974. En él se establecía que NP es precisamente el conjunto de lenguajes expresables por sentencias de lógica existencial de segundo orden ; es decir, lógica de segundo orden que excluye la cuantificación universal sobre relaciones , funciones y subconjuntos . Muchas otras clases fueron caracterizadas posteriormente de esta manera.
Cuando utilizamos el formalismo lógico para describir un problema computacional, la entrada es una estructura finita, y los elementos de esa estructura son el dominio del discurso . Usualmente la entrada es una cadena (de bits o sobre un alfabeto) y los elementos de la estructura lógica representan posiciones de la cadena, o la entrada es un grafo y los elementos de la estructura lógica representan sus vértices. La longitud de la entrada será medida por el tamaño de la respectiva estructura. Cualquiera que sea la estructura, podemos asumir que hay relaciones que pueden ser probadas, por ejemplo " es verdadero si y solo si hay una arista de x a y " (en caso de que la estructura sea un grafo), o " es verdadero si y solo si la n -ésima letra de la cadena es 1". Estas relaciones son los predicados para el sistema lógico de primer orden. También tenemos constantes, que son elementos especiales de la respectiva estructura, por ejemplo si queremos verificar la alcanzabilidad en un grafo, tendremos que elegir dos constantes s (inicio) y t (terminal).
En la teoría de la complejidad descriptiva a menudo asumimos que existe un orden total sobre los elementos y que podemos comprobar la igualdad entre ellos. Esto nos permite considerar los elementos como números: el elemento x representa el número n si y solo si hay elementos y con . Gracias a esto también podemos tener el predicado primitivo "bit", donde es verdadero si solo el k- ésimo bit de la expansión binaria de x es 1. (Podemos reemplazar la adición y la multiplicación por relaciones ternarias tales que es verdadero si y solo si y es verdadero si y solo si ).
Si nos limitamos a estructuras ordenadas con una relación sucesora y predicados aritméticos básicos, entonces obtenemos las siguientes caracterizaciones:
En la complejidad de circuitos , se puede demostrar que la lógica de primer orden con predicados arbitrarios es igual a AC 0 , la primera clase en la jerarquía AC . De hecho, existe una traducción natural de los símbolos de FO a nodos de circuitos, siendo y de tamaño n . La lógica de primer orden en una firma con predicados aritméticos caracteriza la restricción de la familia de circuitos AC 0 a aquellos construibles en tiempo logarítmico alterno . [1] La lógica de primer orden en una firma con solo la relación de orden corresponde al conjunto de lenguajes sin estrellas . [8] [9]
La lógica de primer orden gana sustancialmente en poder expresivo cuando se la complementa con un operador que calcula el cierre transitivo de una relación binaria. Se sabe que la lógica de cierre transitivo resultante caracteriza el espacio logarítmico no determinista (NL) en estructuras ordenadas. Esto fue utilizado por Immerman para demostrar que el NL es cerrado bajo complemento (es decir, que NL = co-NL). [10]
Al restringir el operador de cierre transitivo al cierre transitivo determinista , la lógica resultante caracteriza exactamente el espacio logarítmico en estructuras ordenadas.
En estructuras que tienen una función sucesora, la NL también puede caracterizarse mediante fórmulas de Krom de segundo orden .
SO-Krom es el conjunto de consultas booleanas definibles con fórmulas de segundo orden en forma normal conjuntiva de modo que los cuantificadores de primer orden sean universales y la parte de la fórmula que no tenga cuantificadores esté en forma de Krom, lo que significa que la fórmula de primer orden es una conjunción de disyunciones, y en cada "disyunción" hay como máximo dos variables. Toda fórmula de Krom de segundo orden es equivalente a una fórmula de Krom de segundo orden existencial.
SO-Krom caracteriza la NL en estructuras con una función sucesora. [11]
En estructuras ordenadas, la lógica de punto fijo mínimo de primer orden captura PTIME :
FO[LFP] es la extensión de la lógica de primer orden mediante un operador de punto fijo mínimo, que expresa el punto fijo de una expresión monótona. Esto amplía la lógica de primer orden con la capacidad de expresar recursión. El teorema de Immerman-Vardi, demostrado independientemente por Immerman y Vardi , muestra que FO[LFP] caracteriza a PTIME en estructuras ordenadas. [12] [13]
A partir de 2022, aún no se sabe si existe una lógica natural que caracterice al PTIME en estructuras desordenadas.
El teorema de Abiteboul–Vianu establece que FO[LFP]=FO[PFP] en todas las estructuras si y solo si FO[LFP]=FO[PFP]; por lo tanto, si y solo si P=PSPACE. Este resultado se ha extendido a otros puntos fijos. [14]
En presencia de una función sucesora, PTIME también puede caracterizarse mediante fórmulas de Horn de segundo orden.
SO-Horn es el conjunto de consultas booleanas definibles con fórmulas SO en forma normal disyuntiva de modo que los cuantificadores de primer orden son todos universales y la parte libre de cuantificadores de la fórmula está en forma de Horn , lo que significa que es un gran AND de OR, y en cada "OR" se niegan todas las variables excepto posiblemente una.
Esta clase es igual a P en estructuras con una función sucesora. [15]
Estas fórmulas pueden transformarse en fórmulas prenex en lógica de Horn existencial de segundo orden. [11]
La prueba de Ronald Fagin de 1974 de que la clase de complejidad NP estaba caracterizada exactamente por aquellas clases de estructuras axiomatizables en la lógica existencial de segundo orden fue el punto de partida de la teoría de la complejidad descriptiva. [4] [16]
Dado que el complemento de una fórmula existencial es una fórmula universal, se deduce inmediatamente que el co-NP se caracteriza por una lógica universal de segundo orden. [4]
SO, lógica de segundo orden sin restricciones, es igual a la jerarquía polinómica PH . Más precisamente, tenemos la siguiente generalización del teorema de Fagin: El conjunto de fórmulas en forma normal prenex donde los cuantificadores existenciales y universales de segundo orden se alternan k veces caracterizan el k -ésimo nivel de la jerarquía polinómica. [17]
A diferencia de la mayoría de las demás caracterizaciones de clases de complejidad, el teorema de Fagin y su generalización no presuponen un ordenamiento total de las estructuras, ya que la lógica existencial de segundo orden es en sí misma lo suficientemente expresiva como para referirse a los posibles órdenes totales de una estructura utilizando variables de segundo orden. [18]
La clase de todos los problemas computables en el espacio polinomial, PSPACE , se puede caracterizar aumentando la lógica de primer orden con un operador de punto fijo parcial más expresivo.
La lógica de punto fijo parcial , FO[PFP], es la extensión de la lógica de primer orden con un operador de punto fijo parcial, que expresa el punto fijo de una fórmula si hay uno y devuelve 'falso' en caso contrario.
La lógica de punto fijo parcial caracteriza a PSPACE en estructuras ordenadas. [19]
La lógica de segundo orden se puede extender mediante un operador de clausura transitiva de la misma manera que la lógica de primer orden, lo que da como resultado SO[TC]. El operador TC ahora también puede tomar variables de segundo orden como argumento. SO[TC] caracteriza a PSPACE . Dado que se puede hacer referencia al ordenamiento en la lógica de segundo orden, esta caracterización no presupone estructuras ordenadas. [20]
La clase de complejidad temporal ELEMENTARY de funciones elementales se puede caracterizar por HO , la clase de complejidad de estructuras que se pueden reconocer por fórmulas de lógica de orden superior . La lógica de orden superior es una extensión de la lógica de primer orden y la lógica de segundo orden con cuantificadores de orden superior. Existe una relación entre los algoritmos de orden th y no deterministas cuyo tiempo está limitado por niveles de exponenciales. [21]
Definimos variables de orden superior. Una variable de orden tiene una aridad y representa cualquier conjunto de - tuplas de elementos de orden . Se suelen escribir en mayúsculas y con un número natural como exponente para indicar el orden. La lógica de orden superior es el conjunto de fórmulas de primer orden en las que añadimos cuantificación sobre las variables de orden superior; por tanto, utilizaremos los términos definidos en el artículo de FO sin definirlos de nuevo.
HO es el conjunto de fórmulas con variables de orden como máximo . HO es el subconjunto de fórmulas de la forma , donde es un cuantificador y significa que es una tupla de variable de orden con la misma cuantificación. Por lo tanto, HO es el conjunto de fórmulas con alternancias de cuantificadores de orden , comenzando con , seguido de una fórmula de orden .
Utilizando la notación estándar de la tetración , y . con tiempos
Toda fórmula de orden th es equivalente a una fórmula en forma normal prenex, donde primero escribimos la cuantificación sobre la variable de orden th y luego una fórmula de orden en forma normal.
HO es igual a la clase ELEMENTARY de funciones elementales. Para ser más precisos, , es decir, una torre de 2 que termina en , donde es una constante. Un caso especial de esto es que , que es exactamente el teorema de Fagin . Usando máquinas oráculo en la jerarquía polinómica ,