Jump to content

Рекурсивное определение

(Перенаправлено из индуктивного определения )
Четыре этапа построения снежинки Коха . Как и во многих других фракталах , стадии получаются посредством рекурсивного определения.

В математике и информатике рекурсивное используется или индуктивное определение для определения элементов набора 1977 : через другие элементы набора ( Aczel 740ff). Некоторые примеры рекурсивно определяемых объектов включают факториалы , натуральные числа , числа Фибоначчи и троичное множество Кантора .

Рекурсивное . определение функции данных определяет значения функции для некоторых входных данных через значения той же функции для других (обычно меньших) входных Например, факториала функция n ! определяется правилами

Это определение справедливо для каждого натурального числа n , поскольку рекурсия в конечном итоге достигает базового случая 0. Это определение также можно рассматривать как дающее процедуру вычисления значения функции n ! , начиная с n = 0 и продолжая n = 1, 2, 3 и т. д.

Теорема о рекурсии утверждает, что такое определение действительно определяет уникальную функцию. В доказательстве используется математическая индукция . [1]

Индуктивное определение набора описывает элементы набора через другие элементы этого набора. Например, одно определение множества натуральных чисел :

  1. 1 находится в
  2. Если элемент n находится в тогда n + 1 находится в
  3. — наименьшее множество, удовлетворяющее (1) и (2).

Существует множество наборов, удовлетворяющих (1) и (2) — например, набор {1, 1,649, 2, 2,649, 3, 3,649,…} удовлетворяет определению. Однако условие (3) уточняет набор натуральных чисел, удаляя наборы с посторонними членами.

Свойства рекурсивно определенных функций и множеств часто можно доказать с помощью принципа индукции, следующего за рекурсивным определением. Например, представленное здесь определение натуральных чисел напрямую подразумевает принцип математической индукции для натуральных чисел: если свойство имеет место для натурального числа 0 (или 1), а свойство имеет место для n + 1 всякий раз, когда оно справедливо для n , тогда это свойство справедливо для всех натуральных чисел (Aczel 1977:742).

Форма рекурсивных определений [ править ]

Большинство рекурсивных определений имеют две основы: базовый случай (базис) и индуктивное предложение.

Разница между циклическим определением и рекурсивным определением заключается в том, что рекурсивное определение всегда должно иметь базовые случаи , случаи, которые удовлетворяют определению, но не определяются в терминах самого определения, и что все другие экземпляры в индуктивных предложениях должны быть «меньше». в каком-то смысле (т. е. ближе к тем базовым случаям, которые завершают рекурсию) — правило, также известное как «повторяться только в более простом случае». [2]

Напротив, циклическое определение может не иметь базового случая и даже может определять значение функции с точки зрения самого этого значения, а не других значений функции. Такая ситуация привела бы к бесконечному регрессу .

То, что рекурсивные определения действительны – это означает, что рекурсивное определение идентифицирует уникальную функцию – это теорема теории множеств, известная как теорема о рекурсии , доказательство которой нетривиально. [3] значение f (0) Если областью определения функции являются натуральные числа, достаточные условия для того, чтобы определение было действительным, состоят в том, что задано (т. е. базовый случай) и что для n > 0 дан алгоритм определения f ( n ) через n , (т.е. индуктивное предложение).

В более общем смысле, рекурсивные определения функций могут быть сделаны всякий раз, когда область определения представляет собой хорошо упорядоченное множество , используя принцип трансфинитной рекурсии . Формальные критерии того, что представляет собой действительное рекурсивное определение, в общем случае более сложны. Схема общего доказательства и критерии можно найти в книге Джеймса Манкреса « Топология » . Однако ниже будет дан конкретный случай (область определения ограничена целыми положительными числами , а не любым хорошо упорядоченным набором) общего рекурсивного определения. [4]

Принцип рекурсивного определения [ править ]

Пусть A — множество, и пусть 0 элемент A. a Если ρ — функция, которая присваивает каждой функции f отображение непустой секции положительных целых чисел в A , элемент A , то существует уникальная функция такой, что

Примеры рекурсивных определений [ править ]

Элементарные функции [ править ]

Сложение определяется рекурсивно на основе подсчета как

Умножение определяется рекурсивно как

Возведение в степень определяется рекурсивно как

Биномиальные коэффициенты можно определить рекурсивно как

Простые числа [ править ]

Набор простых чисел можно определить как уникальный набор натуральных чисел, удовлетворяющих

  • 2 — простое число,
  • любое другое положительное целое число является простым тогда и только тогда, когда оно не делится ни на одно простое число, меньшее самого себя.

Простота целого числа 2 является базовым случаем; проверка простоты любого большего целого числа X по этому определению требует знания простоты каждого целого числа между 2 и X , что четко определено этим определением. Этот последний пункт можно доказать индукцией по X , для чего существенно, чтобы во втором предложении говорилось «тогда и только тогда, когда»; если бы он просто сказал «если», то простота, например, числа 4 не была бы ясна, и дальнейшее применение второго предложения было бы невозможно.

Неотрицательные четные числа [ править ]

Четные числа можно определить как состоящие из

  • 0 находится в множестве E неотрицательных событий (базисное предложение),
  • Для любого элемента x множестве E в x + 2 находится в E (индуктивное предложение),
  • Ничто не находится в E , если оно не получено из базиса и индуктивных предложений (экстремальное предложение).

Хорошо составленная формула [ править ]

Понятие правильно сформированной формулы (wff) в логике высказываний определяется рекурсивно как наименьшее множество, удовлетворяющее трем правилам:

  1. p — это wff, если p — пропозициональная переменная.
  2. ¬ p — это wff, если p — это wff.
  3. (p • q) является wff, если p и q являются wff и • является одной из логических связок ∨, ∧, → или ↔.

Определение можно использовать, чтобы определить, является ли какая-либо конкретная строка символов wff:

  • ( p q ) является wff, потому что пропозициональные переменные p и q являются wff, а является логической связкой.
  • ¬ ( p q ) — это wff, потому что ( p q ) — это wff.
  • p ∧ ¬ q ) — это wff, потому что ¬ p и ¬ q — это wff, а — логическая связка.

определения как логические Рекурсивные программы

Логические программы можно понимать как наборы рекурсивных определений . [5] [6] Например, рекурсивное определение четного числа можно записать в виде логической программы:

even(0).
even(s(s(X))) :- even(X).

Здесь :- представляет собой , если и s(X) представляет собой преемника X, а именно X+1, как в арифметике Пеано .

Язык логического программирования Пролог использует обратные рассуждения для решения задач и ответов на запросы. Например, учитывая запрос ?- even(s(s(0))) это дает ответ true. Учитывая запрос ?- even(s(0)) это дает ответ false.

Программу можно использовать не только для проверки истинности запроса, но и для генерации верных ответов. Например:

?- even(X).
X = 0
X = s(s(0))
X = s(s(s(s(0))))
X = s(s(s(s(s(s(0))))))
.....

Логические программы значительно расширяют рекурсивные определения, включая использование отрицательных условий, реализуемых отрицанием как неудача , как в определении:

even(0).
even(s(X)) :- not(even(X)).

См. также [ править ]

Примечания [ править ]

  1. ^ Хенкин, Леон (1960). «О математической индукции». Американский математический ежемесячник . 67 (4): 323–338. дои : 10.2307/2308975 . ISSN   0002-9890 . JSTOR   2308975 .
  2. ^ «Все о рекурсии» . www.cis.upenn.edu . Проверено 24 октября 2019 г.
  3. ^ Доказательство теоремы о рекурсии см. в книге Леона Хенкина «О математической индукции » (1960) .
  4. ^ Манкрес, Джеймс (1975). Топология, первый курс (1-е изд.). Нью-Джерси: Прентис-Холл. п. 68, упражнения 10 и 12 . ISBN  0-13-925495-1 .
  5. ^ Денекер, М., Терновска, Э.: Логика немонотонных индуктивных определений. АКМ Пер. Вычислить. Бревно. 9(2), 14:1–14:52 (2008)
  6. ^ Уоррен, Д.С. и Денекер, М., 2023. Лучшая логическая семантика для пролога. В Прологе: Следующие 50 лет (стр. 82–92). Чам: Springer Nature, Швейцария.

Ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 8908fd2e4b546f14e6ed8c3fd76a1268__1711009020
URL1:https://arc.ask3.ru/arc/aa/89/68/8908fd2e4b546f14e6ed8c3fd76a1268.html
Заголовок, (Title) документа по адресу, URL1:
Recursive definition - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)