Изменения

Перейти к: навигация, поиск

Теорема о рекурсии

1095 байт добавлено, 17:18, 2 января 2017
Нет описания правки
Программа <tex> p </tex> знает свой код, что то же самое, что и знает свой номер. Как видно из её кода, она допускает только одно число {{---}} свой номер.
}}
 
==Пример использования теоремы о рекурсии в доказательстве о неразрешимости языка==
Используя теорему о рекурсии, приведём простое доказательство неразрешимости языка <tex>L=\{p \mid p(\varepsilon)=\perp\}</tex>.
{{Лемма
|id=st2
|statement= Язык <tex>L=\{p \mid p(\varepsilon)=\perp\}</tex> неразрешим.
|proof=
Предположим обратное, тогда существует программа <tex>r</tex> разрещающая <tex>L</tex>.
Рассмотрим следущую программу:
<code>
<tex>p(x){:}</tex>
'''if''' <tex>r(p)</tex>
'''return''' 1
'''while''' true
</code>
Пусть <tex>p(\epsilon)=\perp</tex>. Тогда условие <tex>r(p)</tex> выполняется и <tex>p(\epsilon)=1</tex>. Противоречие. Если <tex>p(\epsilon) \ne \perp</tex>, то <tex>r(p)</tex> не выполняется и <tex>p(\epsilon)=\perp</tex>. Противоречие.
}}
 
==См. также==
313
правок

Навигация