Теорема Райса-Шапиро — различия между версиями
Tsar (обсуждение | вклад) (Список источников) |
Tsar (обсуждение | вклад) (Словесные пояснения для псевдокода в леммах) |
||
Строка 21: | Строка 21: | ||
Свойство <tex>A_{\gamma}</tex> перечислимо для любого образца <tex>\gamma</tex>. | Свойство <tex>A_{\gamma}</tex> перечислимо для любого образца <tex>\gamma</tex>. | ||
|proof = | |proof = | ||
− | Построим полуразрешитель <tex>A_{\gamma}</tex> | + | Построим полуразрешитель <tex>A_{\gamma}</tex>. Он будет возвращать 1 для программы <tex>p</tex>, если <tex>p(x_i)</tex> завершится с результатом <tex>y_i</tex> для всех элементов образца <tex>\langle x_i, y_i\rangle</tex>. В противном случае полуразрешитель будет зависать. |
<tex>q(p):</tex> | <tex>q(p):</tex> | ||
for <tex>\langle x_i, y_i\rangle \in \gamma</tex> | for <tex>\langle x_i, y_i\rangle \in \gamma</tex> | ||
Строка 38: | Строка 38: | ||
Тогда <tex>A_{\Gamma}</tex> является перечислимым. | Тогда <tex>A_{\Gamma}</tex> является перечислимым. | ||
|proof = | |proof = | ||
− | Построим полуразрешитель <tex>A_{\Gamma}</tex> | + | Построим полуразрешитель <tex>A_{\Gamma}</tex>. Он будет брать <tex>k</tex> первых образцов из <tex>\Gamma</tex> и для каждого их них проверять принадлежность программы <tex>p</tex> свойству этого образца с ограничением по времени <tex>k</tex> для всех <tex>k</tex> от 1 до бесконечности. При обнаружении <tex>p</tex> полуразрешитель завершится и вернёт 1. В противном случае он останется зависшим. |
<tex>q(p):</tex> | <tex>q(p):</tex> | ||
for <tex>k = 1\ldots +\infty</tex> | for <tex>k = 1\ldots +\infty</tex> |
Версия 07:55, 24 января 2012
Содержание
Определение образца
Определение: |
Пусть Тогда называется образцом. | .
Свойство образца
Определение: |
Пусть Тогда называется свойством образца . | , где .
Лемма о перечислимости свойства образца
Лемма: |
Свойство перечислимо для любого образца . |
Доказательство: |
Построим полуразрешитель . Он будет возвращать 1 для программы , если завершится с результатом для всех элементов образца . В противном случае полуразрешитель будет зависать.Полуразрешителя достаточно для доказательства перечислимости. for if while True return 1 |
Лемма о перечислимости свойства перечислимого множества образцов
Лемма: |
Пусть — перечислимое множество образцов, .
Тогда является перечислимым. |
Доказательство: |
Построим полуразрешитель . Он будет брать первых образцов из и для каждого их них проверять принадлежность программы свойству этого образца с ограничением по времени для всех от 1 до бесконечности. При обнаружении полуразрешитель завершится и вернёт 1. В противном случае он останется зависшим.Полуразрешителя достаточно для доказательства перечислимости. for for if return 1 |
Теорема Райса-Шапиро
Теорема: | ||||||||||||
Свойство функций перечислимо тогда и только тогда, когда , где — перечислимое множество образцов. | ||||||||||||
Доказательство: | ||||||||||||
Очевидно (перебор по TL).
Здесь нам потребуются две вспомогательные леммы.
Функции с конечной областью определения записываются так: if return if return Такие функции перечислимы. Значит, такие функции, удоволетворяющие , тоже перечислимы.по первой вспомогательной лемме. Значит, по второй вспомогательной лемме. . | ||||||||||||
Литература
- Верещагин Н. К., Шень A. Лекции по математической логике и теории алгоритмов. Часть 3. Вычислимые функции. — М.: МЦНМО, 1999. С. 134. ISBN 5-900916-36-7
- Хопкрофт Д., Мотвани Р., Ульман Д. Введение в теорию автоматов, языков и вычислений, 2-е изд. : Пер. с англ. — М.: Издательский дом «Вильямс», 2008. — С. 528 — ISBN 978-5-8459-1347-0 (рус.)