Articulo de referencia

Punto fijo mínimo

La función f ( x ) = x 2 − 4 tiene dos puntos fijos, mostrados como la intersección con la línea azul; su punto mínimo está en 1/2 − √ 17 /2. En la teoría del orden ...

La función f ( x )  = x 2 − 4 tiene dos puntos fijos, mostrados como la intersección con la línea azul; su punto mínimo está en 1/2 − 17 /2.     

En la teoría del orden , una rama de las matemáticas , el punto fijo mínimo ( pfm o pfm , a veces también llamado punto fijo más pequeño ) de una función de un conjunto parcialmente ordenado (poset) a sí misma es el punto fijo que es menor que cualquier otro punto fijo, según el orden del poset. Una función no tiene por qué tener un punto fijo mínimo, pero si lo tiene, entonces este punto fijo mínimo es único.

Ejemplos

Con el orden habitual de los números reales , el punto fijo más pequeño de la función real f ( x ) = x 2 es x = 0 (ya que el único otro punto fijo es 1 y 0 < 1). En cambio, f ( x ) = x + 1 no tiene ningún punto fijo, por lo que no tiene ninguno más pequeño, y f ( x ) = x tiene infinitos puntos fijos, pero no tiene ninguno más pequeño.         

DejarGRAMO=(V,A){\displaystyle G=(V,A)}ser un grafo dirigido yv{\displaystyle v}ser un vértice. El conjunto de vértices accesibles desdev{\displaystyle v}puede definirse como el punto fijo más pequeño de la funciónF:(V)(V){\displaystyle f:\wp (V)\to \wp (V)}, definido comoF(incógnita)={v}{incógnitaV: para algunos wincógnita hay un borde de w a incógnita}.{\displaystyle f(X)=\{v\}\cup \{x\in V:{\text{ para algún }}w\in X{\text{ existe una arista de }}w{\text{ a }}x\}.}El conjunto de vértices que son co-accesibles desdev{\displaystyle v}se define por un punto fijo mínimo similar. El componente fuertemente conectado dev{\displaystyle v}es la intersección de esos dos puntos fijos mínimos.

DejarGRAMO=(V,Σ,R,S0){\displaystyle G=(V,\Sigma,R,S_{0})}ser una gramática libre de contexto . El conjuntomi{\displaystyle E}de símbolos que produce la cadena vacíaε{\displaystyle \varepsilon }se puede obtener como el punto fijo más pequeño de la funciónF:(V)(V){\displaystyle f:\wp (V)\to \wp (V)}, definido comoF(incógnita)={SV:Sincógnita o (Sε)R o (SS1Snorte)R y Siincógnita, para todos i}{\displaystyle f(X)=\{S\in V:\;S\in X{\text{ o }}(S\to \varepsilon )\in R{\text{ o }}(S\to S^{1}\dots S^{n})\in R{\text{ y }}S^{i}\in X{\text{, para todo }}i\}}, dónde(V){\displaystyle \wp (V)}denota el conjunto potencia deV{\displaystyle V}.

Aplicaciones

Muchos teoremas de punto fijo proporcionan algoritmos para localizar el punto fijo mínimo. Los puntos fijos mínimos suelen tener propiedades deseables que los puntos fijos arbitrarios no poseen.

semántica denotacional

Orden parcial enZ{\displaystyle \mathbb {Z} _ {\bot }}

En informática , el enfoque de semántica denotacional utiliza puntos fijos mínimos para obtener a partir de un texto de programa dado una función matemática correspondiente, llamada su semántica. Para ello, se utiliza un objeto matemático artificial,{\displaystyle \bot }, se introduce, denotando el valor excepcional "indefinido". Dado, por ejemplo, el tipo de datos del programa int, su contraparte matemática se define comoZ=Z{};{\displaystyle \mathbb {Z} _{\bot }=\mathbb {Z} \cup \{\bot \};} Se convierte en un conjunto parcialmente ordenado definiendonorte{\displaystyle \bot \sqsubset n}para cadanorteZ{\displaystyle n\in \mathbb {Z} }y permitiendo que dos miembros diferentesnorte,metroZ{\displaystyle n,m\in \mathbb {Z} }ser incomparable con respecto a{\displaystyle \sqsubset }, ver imagen.

La semántica de la definición de un programa int f(int n){...}es alguna función matemática.F:ZZ.{\displaystyle f:\mathbb {Z} _{\bot }\to \mathbb {Z} _{\bot }.}Si la definición del programa fno termina para alguna entrada n, esto se puede expresar matemáticamente comoF(norte)=.{\displaystyle f(n)=\bot .}El conjunto de todas las funciones matemáticas se ordena parcialmente definiendoFgramo{\displaystyle f\sqsubseteg g}si, para cadanorte,{\displaystyle n,}la relaciónF(norte)gramo(norte){\displaystyle f(n)\sqsubseteteq g(n)}se sostiene, es decir, siF(norte){\displaystyle f(n)}está menos definido o es igual agramo(norte).{\displaystyle g(n).}Por ejemplo, la semántica de la expresión x+x/xestá menos definida que la de x+1, ya que la primera, pero no la segunda, asigna0{\displaystyle 0}a,{\displaystyle \bot ,}y ellos opinan lo contrario.

Dado un texto de programa f, su contraparte matemática se obtiene como el punto fijo mínimo de alguna función que mapea funciones a otras funciones y que se puede obtener mediante una "traducción" f. Por ejemplo, la definición en C.

int fact ( int n ) { if ( n == 0 ) return 1 ; else return n * fact ( n -1 ); }

se traduce a un mapeo

F:(ZZ)(ZZ),{\displaystyle F:(\mathbb {Z} _{\bot }\to \mathbb {Z} _{\bot })\to (\mathbb {Z} _{\bot }\to \mathbb {Z} _{\bot }),}definido como(F(F))(norte)={1si norte=0,norteF(norte1)si norte y norte0,si norte=.{\displaystyle (F(f))(n)={\begin{cases}1&{\text{si }}n=0,\\n\cdot f(n-1)&{\text{si }}n\neq \bot {\text{ y }}n\neq 0,\\\bot &{\text{si }}n=\bot .\\\end{cases}}}

El mapeoF{\displaystyle F}se define de forma no recursiva, aunque factse definió recursivamente. Bajo ciertas restricciones (véase el teorema del punto fijo de Kleene ), que se cumplen en el ejemplo,F{\displaystyle F}necesariamente tiene un punto fijo mínimo,hecho{\displaystyle \operatorname {fact} }, eso es(F(hecho))(norte)=hecho(norte){\displaystyle (F(\operatorname {fact} ))(n)=\operatorname {fact} (n)}a pesar denorteZ{\displaystyle n\in \mathbb {Z} _ {\bot }}. [ 1 ] Es posible demostrar que

hecho(norte)={norte¡si norte0,si norte<0 o norte=.{\displaystyle \operatorname {fact} (n)={\begin{cases}n!&{\text{si }}n\geq 0,\\\bot &{\text{si }}n<0{\text{ o }}n=\bot .\end{cases}}}

Un punto fijo más grande deF{\displaystyle F}es por ejemplo la funciónhecho0,{\displaystyle \operatorname {fact} _{0},}definido por

hecho0(norte)={norte¡si norte0,0si norte<0,si norte=,{\displaystyle \operatorname {fact} _{0}(n)={\begin{cases}n!&{\text{if }}n\geq 0,\\0&{\text{if }}n<0,\\\bot &{\text{if }}n=\bot ,\end{cases}}}

Sin embargo, esta función no refleja correctamente el comportamiento del texto del programa anterior para valores negativos.norte;{\displaystyle n;}Por ejemplo, la llamada fact(-1)no terminará en absoluto, y mucho menos devolverá 0. Solo el punto fijo más pequeño ,hecho,{\displaystyle \operatorname {fact} ,}Puede utilizarse razonablemente como semántica de un programa matemático.

Complejidad descriptiva

Immerman [ 2 ] [ 3 ] y Vardi [ 4 ] demostraron independientemente el resultado de complejidad descriptiva de que las propiedades computables en tiempo polinomial de estructuras linealmente ordenadas se pueden definir en FO(LFP) , es decir, en lógica de primer orden con un operador de punto fijo mínimo. Sin embargo, FO(LFP) es demasiado débil para expresar todas las propiedades en tiempo polinomial de estructuras no ordenadas (por ejemplo, que una estructura tenga un tamaño par ).

Puntos fijos máximos

El punto fijo mayor de una función se puede definir de forma análoga al punto fijo menor, como el punto fijo que es mayor que cualquier otro punto fijo, según el orden del conjunto parcialmente ordenado (poset). En informática , los puntos fijos mayores se utilizan con mucha menos frecuencia que los puntos fijos menores. En concreto, los posets que se encuentran en la teoría de dominios no suelen tener un elemento mayor; por lo tanto, para una función dada, puede haber múltiples puntos fijos máximos mutuamente incomparables , y el punto fijo mayor de esa función puede no existir. Para abordar este problema, el punto fijo óptimo se ha definido como el punto fijo más definido compatible con todos los demás puntos fijos. El punto fijo óptimo siempre existe, y es el punto fijo mayor si este existe. El punto fijo óptimo permite el estudio formal de funciones recursivas y correcursivas que no convergen con el punto fijo menor. [ 5 ] Desafortunadamente, mientras que el teorema de recursión de Kleene muestra que el punto fijo menor es efectivamente computable, el punto fijo óptimo de una función computable puede ser una función no computable. [ 6 ]

Véase también

Notas

  1. CA Gunter; DS Scott (1990). «Dominios semánticos». En Jan van Leeuwen (ed.). Modelos formales y semántica . Manual de informática teórica. Vol.  B. Elsevier. págs. 633–674 . ISBN  0-444-88074-7.Aquí: págs.  636–638
  2. N. Immerman, Consultas relacionales computables en tiempo polinomial, Information and Control 68 (1–3) (1986) 86–104.
  3. Immerman, Neil (1982). "Consultas relacionales computables en tiempo polinomial". STOC '82: Actas del decimocuarto simposio anual de la ACM sobre teoría de la computación . págs. 147–152 . doi : 10.1145/800070.802187 .  Versión revisada en Information and Control , 68 (1986), 86–104.
  4. Vardi, Moshe Y. (1982). "La complejidad de los lenguajes de consulta relacionales". STOC '82: Actas del decimocuarto simposio anual de la ACM sobre teoría de la computación . págs. 137–146 . doi : 10.1145/800070.802186 . 
  5. Charguéraud, Arthur (2010). "El combinador óptimo de punto fijo" (PDF) . Demostración interactiva de teoremas . Notas de clase en informática. Vol. 6172. págs. 195–210 . doi : 10.1007/978-3-642-14052-5_15 . ISBN   978-3-642-14051-8Consultado el 30 de octubre de 2021 .
  6. Shamir, Adi (octubre de 1976). Los puntos fijos de las definiciones recursivas (tesis doctoral). Instituto Weizmann de Ciencias. OCLC 884951223 . Aquí: Ejemplo 12.1, págs. 12.2–3

Referencias