En las áreas matemáticas de orden y teoría de redes , el teorema de Knaster-Tarski , llamado así en honor a Bronisław Knaster y Alfred Tarski , establece lo siguiente:
Fue Tarski quien formuló el resultado en su forma más general, [1] y por eso el teorema se conoce a menudo como el teorema del punto fijo de Tarski . Algún tiempo antes, Knaster y Tarski establecieron el resultado para el caso especial donde L es la red de subconjuntos de un conjunto, la red de conjuntos potencia . [2]
El teorema tiene aplicaciones importantes en la semántica formal de los lenguajes de programación y en la interpretación abstracta , así como en la teoría de juegos .
Anne C. Davis demostró una especie de recíproco de este teorema : si cada función que preserva el orden f : L → L en una red L tiene un punto fijo, entonces L es una red completa. [3]
Como las redes completas no pueden estar vacías (deben contener un supremo y un ínfimo del conjunto vacío), el teorema en particular garantiza la existencia de al menos un punto fijo de f , e incluso la existencia de un punto fijo mínimo (o punto fijo máximo ). En muchos casos prácticos, esta es la implicación más importante del teorema.
El punto fijo menor de f es el elemento menor x tal que f ( x ) = x , o, equivalentemente, tal que f ( x ) ≤ x ; el dual se cumple para el punto fijo mayor , el elemento mayor x tal que f ( x ) = x .
Si f (lim x n ) = lim f ( x n ) para todas las secuencias ascendentes x n , entonces el punto fijo mínimo de f es lim f n (0) donde 0 es el elemento mínimo de L , lo que da una versión más "constructiva" del teorema. (Véase: Teorema del punto fijo de Kleene .) De forma más general, si f es monótona, entonces el punto fijo mínimo de f es el límite estacionario de f α (0), tomando α sobre los ordinales , donde f α se define por inducción transfinita : f α+1 = f ( f α ) y f γ para un ordinal límite γ es el límite superior mínimo de f β para todos los ordinales β menores que γ. [4] El teorema dual se cumple para el punto fijo máximo.
Por ejemplo, en la informática teórica , los puntos mínimos fijos de funciones monótonas se utilizan para definir la semántica del programa ; véase Punto mínimo fijo § Semántica denotacional para un ejemplo. A menudo se utiliza una versión más especializada del teorema, donde se supone que L es la red de todos los subconjuntos de un determinado conjunto ordenados por inclusión de subconjuntos . Esto refleja el hecho de que en muchas aplicaciones solo se consideran dichas redes. Por lo general, se busca el conjunto más pequeño que tenga la propiedad de ser un punto fijo de la función f . La interpretación abstracta hace un amplio uso del teorema de Knaster-Tarski y las fórmulas que dan los puntos fijos mínimo y máximo.
El teorema de Knaster-Tarski se puede utilizar para dar una prueba simple del teorema de Cantor-Bernstein-Schroeder . [5] [6]
Se pueden formular versiones más débiles del teorema de Knaster-Tarski para conjuntos ordenados, pero implican suposiciones más complicadas. Por ejemplo: [ cita requerida ]
Esto se puede aplicar para obtener varios teoremas sobre conjuntos invariantes , por ejemplo, el teorema de Ok:
En particular, utilizando el principio de Knaster-Tarski se puede desarrollar la teoría de atractores globales para sistemas de funciones iteradas no contractivas discontinuas (multivaluadas) . Para sistemas de funciones iteradas débilmente contractivas es suficiente el teorema de Kantorovich (conocido también como principio de punto fijo de Tarski-Kantorovich).
Otras aplicaciones de los principios de punto fijo para conjuntos ordenados provienen de la teoría de ecuaciones diferenciales , integrales y de operadores.
Reformulemos el teorema.
Para una red completa y una función monótona en L , el conjunto de todos los puntos fijos de f también es una red completa , con:
Demostración. Empezamos por demostrar que P tiene un elemento mínimo y un elemento máximo. Sea D = { x | x ≤ f ( x )} y x ∈ D (sabemos que al menos 0 L pertenece a D ). Entonces, como f es monótona, tenemos f ( x ) ≤ f ( f ( x )) , es decir, f ( x ) ∈ D .
Ahora sea ( u existe porque D ⊆ L y L es una red completa). Entonces para todo x ∈ D es cierto que x ≤ u y f ( x ) ≤ f ( u ) , por lo que x ≤ f ( x ) ≤ f ( u ) . Por lo tanto, f ( u ) es un límite superior de D , pero u es el límite superior mínimo, por lo que u ≤ f ( u ) , es decir, u ∈ D . Entonces f ( u ) ∈ D (porque f ( u ) ≤ f ( f ( u ))) y por lo tanto f ( u ) ≤ u de lo que se sigue f ( u ) = u . Como cada punto fijo está en D tenemos que u es el punto fijo más grande de f .
La función f es monótona en la red dual (completa) . Como acabamos de demostrar, su punto fijo máximo existe. Es el punto fijo mínimo de L , por lo que P tiene elementos mínimos y máximos; es decir, de manera más general, toda función monótona en una red completa tiene un punto fijo mínimo y un punto fijo máximo.
Para a , b en L escribimos [ a , b ] para el intervalo cerrado con límites a y b : { x ∈ L | a ≤ x ≤ b } . Si a ≤ b , entonces ⟨[ a , b ], ≤⟩ es un retículo completo.
Queda por demostrar que P es una red completa. Sea , W ⊆ P y . Demostramos que f ([ w , 1 L ]) ⊆ [ w , 1 L ] . De hecho, para cada x ∈ W tenemos x = f ( x ) y dado que w es el límite superior mínimo de W , x ≤ f ( w ) . En particular w ≤ f ( w ) . Entonces de y ∈ [ w , 1 L ] se sigue que w ≤ f ( w ) ≤ f ( y ) , dando f ( y ) ∈ [ w , 1 L ] o simplemente f ([ w , 1 L ]) ⊆ [ w , 1 L ] . Esto nos permite ver a f como una función en la red completa [ w , 1 L ]. Entonces tiene un punto fijo mínimo allí, lo que nos da el límite superior mínimo de W. Hemos demostrado que un subconjunto arbitrario de P tiene un supremo, es decir, P es una red completa.
Chang, Lyuu y Ti [7] presentan un algoritmo para encontrar un punto fijo de Tarski en una red totalmente ordenada , cuando la función de preservación del orden está dada por un oráculo de valores . Su algoritmo requiere consultas, donde L es el número de elementos en la red. En cambio, para una red general (dada como un oráculo), demuestran un límite inferior de consultas.
Deng, Qi y Ye [8] presentan varios algoritmos para encontrar un punto fijo de Tarski. Consideran dos tipos de retículos: ordenamiento por componentes y ordenamiento lexicográfico . Consideran dos tipos de entrada para la función f : oráculo de valores o una función polinómica. Sus algoritmos tienen la siguiente complejidad de tiempo de ejecución (donde d es el número de dimensiones y N i es el número de elementos en la dimensión i ):
Los algoritmos se basan en la búsqueda binaria . Por otra parte, determinar si un punto fijo dado es único es computacionalmente difícil:
Para d = 2, para una red de componentes y un oráculo de valores, la complejidad de es óptima. [9] Pero para d > 2, hay algoritmos más rápidos:
El teorema del punto fijo de Tarski tiene aplicaciones en los juegos supermodulares . [8] Un juego supermodular (también llamado juego de complementos estratégicos [12] ) es un juego en el que la función de utilidad de cada jugador tiene diferencias crecientes , por lo que la mejor respuesta de un jugador es una función débilmente creciente de las estrategias de los otros jugadores. Por ejemplo, considere un juego de competencia entre dos empresas. Cada empresa tiene que decidir cuánto dinero gastar en investigación. En general, si una empresa gasta más en investigación, la mejor respuesta de la otra empresa es gastar más en investigación también. Algunos juegos comunes se pueden modelar como juegos supermodulares, por ejemplo, la competencia de Cournot , la competencia de Bertrand y los juegos de inversión .
Como las funciones de mejor respuesta son monótonas, el teorema del punto fijo de Tarski se puede utilizar para demostrar la existencia de un equilibrio de Nash de estrategia pura (PNP) en un juego supermodular. Además, Topkis [13] demostró que el conjunto de PNE de un juego supermodular es una red completa, por lo que el juego tiene un PNE "más pequeño" y un PNE "más grande".
Echenique [14] presenta un algoritmo para encontrar todas las PNE en un juego supermodular. Su algoritmo primero utiliza secuencias de mejor respuesta para encontrar la PNE más pequeña y más grande; luego, elimina algunas estrategias y repite hasta que se encuentran todas las PNE. Su algoritmo es exponencial en el peor de los casos, pero se ejecuta rápidamente en la práctica. Deng, Qi y Ye [8] muestran que una PNE se puede calcular de manera eficiente al encontrar un punto fijo de Tarski de una aplicación que preserva el orden asociada con el juego.