Я постоянно сталкиваюсь со ссылками на фиксированную точку в вопросах и ответах на stackexchange и просматриваю смысл в Интернете, очевидно, находя ссылки на таких сайтах, как Wikipedia. Однако ни одна из ссылок не отвечает на мой вопрос о том, что такое фиксированная точка и что это значит в мире информатики.
terminology
Гай Кодер
источник
источник
Ответы:
В информатике, пожалуй, наиболее заметное использование фиксированных точек в теории решетки ¹. Решетка является частично упорядоченным множеством с дополнительным свойством, которое дает любые два элемента x , y ∈ S , множество { x , y } имеет как супремум, так и инфимум (в S ).(S,≤) x,y∈S {x,y} S
Теперь вы часто рассматривают монотонные функции на этой решетке, «сходиться», то есть для некоторого х ∈ S у вас есть п ( х ) = х . Важные результаты в этой области являются теорема о неподвижной точке Клини и теорема Кнастера-Тарского .f x∈S f(x)=x
Ярким примером является решетка для некоторого множества A и f, индуцированная индуктивным определением. Например, пусть А = { , Ь } * и определим язык L ∈ 2 { , Ь } * по(2A,⊆) A f A={a,b}∗ L∈2{a,b}∗
Это индуктивное определение соответствует монотонной функции
По теореме Кнастера-Тарского, мы знаем , имеет наименьший неподвижной опоры , которая является гранью всех меньших «промежуточных результатов» (которые соответствуют конечным часто применяя конструкторы индуктивного определения), а наименьшая неподвижная точка является действительно L .f L
Кстати, самая большая точка фиксации также имеет применение; см. здесь для примера.
В теории рекурсии есть еще одна теорема о неподвижной точке, также связанная с Клини. Это говорит ²,
На самом деле, таких даже бесконечно много ; если бы там было только конечное число, мы могли бы залатать r (путем поиска в таблице), чтобы не иметь неподвижных точек, что противоречит теореме.i r
источник
Позвольте мне немного подробнее остановиться на ответе Мейстерлука: представьте, что мы пытаемся определить факториальную функцию: запомните определение факториальной функции:
В настоящее время в некоторых рамках PL (а именно в расчетеλ ) не сразу понятно, как определить такую функцию. Однако может быть легко определить следующую функцию более высокого порядка , так называемую, потому что она принимает в качестве входных данных другую функцию и натуральное число
В этом определении функции нет использования рекурсии. Однако, если есть какой - то способ найти починки точку вϕ
Fact
, то есть, функция такая , что Fact φ п = φ п для каждого п , то легко проверить , что φ действительно является реализация функции факториала.Существует много других применений понятия фиксированных точек в компьютерной науке, но большинство сводится к тому, что я показал выше, то есть доказать, что существуют определенные фиксированные точки, чтобы показать, что определенные функции или конструкции хорошо определены в Ваш каркас (здесь мы показали, что факториальная функция существует).
источник
Теперь, в зависимости от математической структуры, с которой вы имеете дело, есть много разных причин интересоваться фиксированными точками. Например, если вы рассматриваете динамическую систему, которая смотрит на состояние мира и изменяет его (например, термостат), то фиксированная точка соответствует стабильной конфигурации. Если вы думаете об играх в математическом смысле теории игр, фиксированные точки соответствуют эквилибрии, если вы думаете о поведении подпрограммы оптимизации, которая итеративно улучшает ее решение, то фиксированная точка соответствует оптимальному решению. Таким образом, математическое понятие неподвижной точки имеет множество применений в самых разных контекстах.
Очень распространенным и фундаментальным применением фиксированных точек в информатике является математическое моделирование циклов и рекурсивных программ. Если мы попытаемся смоделировать программу как математическую функцию, циклы и рекурсия не будут очевидны для модели. Это связано с тем, что тело цикла является программой и может быть представлено в виде математической функции. Как мы получаем функцию, представляющую поведение цикла? Это соответствует повторному применению тела петли в сочетании с защитой петли, пока дальнейшие изменения невозможны. Точно так же, если мы математически моделируем рекурсивные программы, нам нужно математическое представление о том, что означает, что функция применяется сама. Этот ответ обеспечивается фиксированными точками.
источник
Функция в математике представляет собой карту между входными и выходными значениями. Фиксированные точки - это входные значения (для функции), которые отображаются на выходные значения, удовлетворяющие равенству с входными данными.
Для функции равенствае( х ) = х набор входных значений равен набору фиксированных точек функции. Для функциие( х ) = х2 набор фиксированных точек ограничен { 0 , 1 } ,
Что касается информатики, мы много говорим о частичных функциях , но это не меняет определения фиксированных точек для нас.
Вы также можете быть озадачены совершенно другой темой: арифметика с фиксированной запятой - это концепция представления действительных чисел в памяти. Но название «фиксированные точки» не относится к этой теме в целом (потому что есть только 1 точка).
источник
Теория игр является основной областью CS, и важной концепцией является равновесие по Нэшу, которое является теоремой о неподвижной точке. это дает возможность определить оптимальные игровые стратегии, учитывая, что другие игроки знают стратегии друг друга. это может быть доказано с помощью теоремы Какутани о неподвижной точке или теоремы Брауэра о неподвижной точке . Нэш получил Нобелевскую премию по экономике частично за развитие этой теории.
источник