| |||
|
|
Про аксиому фундирования В одном треде возник вопрос о мотивированности аксиомы фундирования AKA регулярности (которая запрещает в числе прочего и множества, содержащие себя в качестве элемета - вроде x = {x}). Это довольно поздняя аксиома - в канон ZF она, ЕМНИМП, попала в 1925 году стараниями фон Неймана. Традиционный аргумент в ее пользу - что это объекты настолько странные, что "и ну их нафиг". В математие принято предсталвять функцию как множество упорядоченных пар <x, f (x)> (c условием, что для любого x существует не более одной пары содержащей его первым элементом). Вполне понятно, что при таком определении аксиома фундирования запрещает существование функций, которые могут применяться сами к себе: потому что в соотвествующем множестве должна будет быть пара <f, f(x)> - то есть множество f будет содержать самое себя. Это преамбула. А амбула в том, что самоприменимые функции - вролне бытовая реальность кучи языков программирования - вот простейший пример из Haskell: dup f = λx → f (f x) Сысл понят:ен: она берет одноместную функцию и возвращает ее в удвоенном виде: dup sin 1.0 ≡ sin (sin 1.0) Вполне понятно, что dup dup f x ≡ dup (dup f) x ≡ f (f (f (f x))) Что несложно проверить опытным путем: main = print ((dup dup) (+1) 0) выводит, как и следовало ожидать, чисто 4 Это, разумеется, не единственный пример самоприменимых функций, но imho достаточно показательный. |
||||||||||||||