Фіксований момент, що це означає у світі інформатики


19

Я постійно стикаюся з посиланнями на фіксовану точку запитань та відповідей на stackexchange, і я шукаю значення в Інтернеті, очевидно, знаходячи посилання на таких сайтах, як Вікіпедія. Однак жодна з посилань насправді не відповідає на моє питання про те, що є фіксованою точкою і що це означає у світі інформатики.


1
Навіть якщо поняття фіксованої точки зазвичай випливає з якоїсь пари такої, що f ( x ) = x , існує безліч різних рамок, де термін використовується з різними значеннями та наслідками. f,xf(x)=x
Рафаель

Відповіді:


17

В інформатиці, мабуть, найбільш помітне використання фіксованих точок є в решітковій теорії ¹. Решітка - це частково впорядкована множина з додатковою властивістю, що задає будь-які два елементи x , y S , множина { x , y } має як підсумковий, так і інфімативний (у S ).(S,)x,yS{x,y}S

Тепер ви часто розглядаєте монотонні функції на цій решітці, які "сходяться", тобто для деяких x S у вас f ( x ) = x . Важливими результатами в цій області є теорема Клеєна з фіксованою точкою та теорема Кнастера-Тарського .fxSf(x)=x

Видатним прикладом є решітка для деякої множини A і f, викликана індуктивним визначенням. Наприклад, нехай A = { a , b } і визначимо мову L 2 { a , b } за(2A,)AfA={a,b}L2{a,b}

wLε,aLawLbawLbwLabw,bbwL

Це індуктивне визначення відповідає монотонній функції

f(A)={ε,a}A{bawawL}{abw,bbwbwL}

По теоремі Кнастера-Тарського, ми знаємо , має найменший нерухомої опори , яка є межею всіх менших «проміжних результатів» (які відповідають кінцевим часто застосовуючи конструктори індуктивного визначення), а найменша нерухома точка є дійсно L .fL

До речі, найбільша фіксація також має використання; дивіться тут для прикладу.


У теорії рекурсії існує ще одна теорема з фіксованою точкою, також завдяки Клін. Він говорить ²,

Нехай a нумерація Ґоделя ³ і r : NN - загальна обчислювана функція (інтуїція: компілятор). Тоді є i N такий, що φ r ( i ) = φ i .φr:NNiNφr(i)=φi

Насправді, є навіть нескінченно багато таких ; якщо там, де тільки кінцево багато, ми можемо виправити r (шляхом пошуку таблиці), щоб не було фіксованих точок, що суперечить теоремі.ir


  1. Усі користуються ним щодня, навіть якщо ви цього не усвідомлюєте.
  2. Мені не подобається ця стаття у Вікіпедії; вам, напевно, краще перевірити жанрову книгу.
  3. Особливий вид нумерації функцій. Для інтуїції подумайте про це як про мову програмування.

13

Дозвольте трохи детальніше розказати відповідь мейстерлука: Уявіть, ми намагаємося визначити факторіальну функцію: пам’ятайте визначення факторної функції:

fact 0     = 1
fact (n+1) = n*(fact n)

Зараз у деяких структурах PL (а саме -рахунокλ ) не відразу зрозуміло, як визначити таку функцію. Однак визначити наступну функцію вищого порядку , так звану , може бути просто , тому що вона приймає як вхід іншу функцію та натуральне число

Fact f 0     = 1
Fact f (n+1) = n * (f n)

У цьому визначенні функції немає використання рекурсії. Однак, якщо є якийсь - то спосіб знайти лагодження точку в Fact, тобто, функція така , що Fact φ п = φ п для кожного п , то легко перевірити , що φ дійсно є реалізація функції факторіала.ϕ

Fact ϕ n = ϕ n
nϕ

Тепер у таких структурах, як -рахунок, можна показати, що всі фіксовані точки такого характеру існують насправді, що дає зрозуміти, що ви можете використовувати його як загальну мову програмування.λ

Існує багато інших застосувань до поняття фіксованих точок в інформатиці, але більшість зводиться до тієї, яку я показав вище, тобто доводить, що існують певні фіксовані точки, щоб можна було показати, що певні функції чи конструкції добре визначені в ваші рамки (тут ми показали, що функціональна функція існує).


9

f:AAxf(x)xx201x3

Зараз, залежно від математичної структури, з якою ви маєте справу, є дуже багато різних причин зацікавленості у фіксованих точках. Наприклад, якщо розглядати динамічну систему, яка дивиться на стан світу і змінює її (як термостат), то фіксованій точці відповідає стабільна конфігурація. Якщо ви думаєте про ігри в математичному сенсі теорії ігор, то фіксовані точки відповідають рівнобедреності, якщо ви думаєте про поведінку програми оптимізації, що ітеративно покращує її рішення, фіксованій крапці відповідає оптимальне рішення. Тож математичне поняття фіксованої точки має безліч застосувань у безлічі різних контекстів.

Дуже поширеним і фундаментальним застосуванням фіксованих точок в інформатиці є математичне моделювання циклів і рекурсивних програм. Якщо ми спробуємо моделювати програму як математичну функцію, то і петлі, і рекурсія не є очевидними для моделювання. Це тому, що тіло циклу є програмою і може бути представлене як математична функція. Як ми отримуємо функцію, що представляє поведінку циклу? Це відповідає застосуванню корпусу петлі повторно разом із захистом петлі, поки подальша зміна не можлива. Аналогічно, якщо ми моделюємо рекурсивні програми математично, нам потрібне математичне уявлення про те, що означає функція, яка застосовується сама. Цю відповідь надають фіксовані точки.


7

Функція в математиці - це карта між вхідними та вихідними значеннями. Фіксовані точки - це вхідні значення (для функції), які відображають значення виходу, що задовольняють рівності з вхідними.

f(x)=xf(x)=x2{0,1}

Що стосується інформатики, ми багато говоримо про часткові функції , але це не змінює для нас визначення фіксованих точок.

Можливо, вас також бентежить абсолютно інша тема: Арифметика з фіксованою точкою - це поняття, як представити реальні числа в пам'яті. Але назва "фіксованих точок" взагалі не посилається на цю тему (адже є лише 1 бал).


-1

Теорія ігор є головним підрайонам CS, і важливою концепцією є рівновага Неша, яка є теоремою з фіксованою точкою. це дає засіб визначення оптимальних ігрових стратегій, враховуючи, що інші гравці знають про стратегії один одного. це можна довести за допомогою теореми з фіксованою точкою Какутані або теореми про фіксовану точку Броувера . Наш завоював Нобелівську премію з економіки частково за розробку цієї теорії.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.