Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
NikitchenkoNEWNEW.doc
Скачиваний:
26
Добавлен:
08.11.2019
Размер:
2.99 Mб
Скачать

5. Теорія рекурсії (теорія найменшої нерухомої точки)

5.1. Рекурсивні визначення та рекурсивні рівняння

Рекурсивні визначення – це такі визначення, в правій частині яких використовується посилання на поняття, що визначається. Такі визначення мають вид

.

Рекурсивне визначення можна тлумачити

  • операційно, тобто вказати алгоритм, за яким можна обчислити рекурсивно визначений об’єкт;

  • або денотаційно, тобто як рівняння, розв’язком якого є нерухомі точки (НТ) оператора .

Зауваження 5.1. Тут на (x) ми дивимось синкретично (не розрізнюючи різні аспекти), та тлумачимо (x) або як вираз у певній алгебрі (коли говоримо про рівняння), або як оператор у цій алгебрі (коли говоримо про нерухомі точки оператора).

Зауваження 5.2. Часто також розглядаються системи рівнянь виду

Такі системи зводяться до одного рівняння над послідовністю (x1, x2, . . . , xn).

Історія математики та логіки говорить про необхідність обережного поводження з рекурсією. Розглянемо приклад.

Припустимо, що ми хочемо визначити суму 2+22+23+24+... . Позначимо цю суму через x, тобто x=2+22+23+24+... . Якщо винести 2 з усіх членів суми, крім першого члена, отримаємо наступне рекурсивне визначення: x=2+2x. Звідси = –2, що зовсім не відповідає очікуванню.

Рекурсія може бути прихованою (неявною). Для ілюстрації розглянемо парадокс Рассела з теорії множин. А саме, множина x називається нормальною, якщо x  x. Позначимо через N множину усіх нормальних множин, тобто N ={ x | x  x}. Парадокс виявляється, якщо запитати, чи є N нормальною множиною? Отримуємо, що N  N тоді і тільки тоді, коли N  N. Тут рекурсія виступає неявно, бо в визначенні N (неявно) припускається, що N може бути елементом N.

Наведені приклади говорять про необхідність детального вивчення рекурсії, щоб уникнути некоректностей та парадоксів.

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

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

Існують різні методи розв’язку рекурсивних рівнянь. Найчастіше використовують метод послідовних наближень, який полягає у наступному.

Береться початкове наближення d0. Далі обчислюється послідовність наближень

За результат береться границя обчисленої послідовності: .

Зауваження 5.3. У теорії найменших нерухомих точок зазвичай використовується позначення виду i, де  – перший нескінченний ординал, тобто ={0, 1, 2, . . .} – множина натуральних чисел.

М етод послідовних наближень графічно представлений на рис. 5.1. Наближення мають границю d, яка є коренем рівняння .

y

Рисунок 5.1 Розв’язок рівнянь методом послідовних наближень

5.2. Частково впорядковані множини, границі ланцюгів та -області

Для того, щоб метод послідовних наближень міг бути застосований, необхідно задати відношення «наближеності» (це – частковий порядок), початкове наближення (у нашому випадку це буде найменший елемент), та гарантувати існування границі (повнота).

Вказані поняття можна формалізувати наступним чином.

Визначення 5.1. Множина D з заданим бінарним відношенням   DD називається частково впорядкованою множиною (ЧВМ), якщо для відношення  виконуються наступні аксіоми часткового порядку (d, d1,d2,d3D):

  1. Рефлексивність: .

  2. Транзитивність: .

  3. Антисиметричність: .

Визначення 5.2. Нехай – ЧВМ, – індексована підмножина D. Ця підмножина – ланцюг, якщо .

Для частково впорядкованих множин границею ланцюга вважається його точна верхня границя (супремум, найменша мажоранта).

Визначення 5.3. Нехай – ланцюг в ЧВМ . Границею X (позначається lim X = sup X = X = ) називається точна верхня границя (супремум, найменша мажоранта) множини X, якщо вона існує.

В теорії рекурсії зазвичай використовується позначення , або idi , або {di | i}, або X. Останнім позначенням і будемо користуватися у подальшому.

Визначення 5.4. ЧВМ – повна, якщо для довільного ланцюга з D існує його границя (що належить D).

Інтегруючи наведені визначення, отримуємо поняття -області.

Визначення 5.5. Множина D – -область (також вживається термін індуктивна множина, -домен), якщо

  1. на D введено частковий порядок ;

  2. в D існує найменший елемент ;

  3. D є повною ЧВМ.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]