W informatyce najbardziej widocznym zastosowaniem punktów stałych jest teoria sieci ¹. Sieć to częściowo uporządkowany zbiór z dodatkową właściwością, która dała dowolne dwa elementy x , y ∈ S , zbiór { x , y } ma zarówno supremum, jak i infimum (w S ).(S,≤)x,y∈S{x,y}S
Teraz często rozważasz funkcje monotoniczne na tej sieci, które „zbiegają się”, to znaczy dla niektórych x ∈ S masz f ( x ) = x . Ważnymi wynikami w tej dziedzinie są twierdzenie Kleene'a o stałym punkcie oraz twierdzenie Knastera-Tarskiego .fx∈Sf(x)=x
Znakomity przykład jest krata dla A, część zestawu i f indukowane przez określenie indukcyjnego. Na przykład, pozwólmy A = { a , b } ∗, a my zdefiniujemy język L ∈ 2 { a , b } ∗ przez(2A,⊆)AfA={a,b}∗L∈2{a,b}∗
w∈Law∈Lbw∈L⟹ε,a∈L⟹baw∈L⟹abw,bbw∈L
Ta definicja indukcyjna odpowiada funkcji monotonicznej
fa(A)={ε,a}∪A∪{baw∣aw∈L}∪{abw,bbw∣bw∈L}
Przez Knaster-Tarskiego twierdzenia wiemy, ma najmniejszą fixpoint który jest Supremum wszystkich mniejszych „wyniki pośrednie” (co odpowiada skończenie często stosowania konstruktory definicji indukcyjne), a najmniejszą fixpoint jest rzeczywiście l .fL
Nawiasem mówiąc, największy punkt stały ma również zastosowania; patrz tutaj na przykład.
W teorii rekurencji istnieje inne twierdzenie o punkcie stałym, również z powodu Kleene'a. To mówi ²,
Niech się numerację Godeł ³ i R : N → N TOTAL, funkcja obliczeniowy (intuicji kompilator). Potem jest i ∈ N takie, że φ r ( i ) = φ i .φr:N→Ni∈Nφr(i)=φi
W rzeczywistości istnieje nawet nieskończenie wiele takich ; gdyby tam było tylko skończonych wielu, moglibyśmy załatać r (przez przeglądanie tabeli), aby nie mieć stałych punktów, co jest sprzeczne z twierdzeniem.ir
- Każdy używa go codziennie, nawet jeśli nie zdajesz sobie z tego sprawy.
- Nie podoba mi się ten artykuł z Wikipedii; prawdopodobnie lepiej jest sprawdzić książkę gatunku.
- Specjalny rodzaj numeracji funkcji. Dla intuicji pomyśl o tym jako o języku programowania (kompletnym Turinga).