Свойства перечислимых языков. Теорема Успенского-Райса — различия между версиями
(→Свойства языков) |
(→Теорема Успенского-Райса) |
||
Строка 47: | Строка 47: | ||
'''else''' | '''else''' | ||
'''while''' ''true'' | '''while''' ''true'' | ||
+ | Исключение пустого множества нам нужно чтобы различать <tex> X</tex> и пустое. | ||
Нетрудно понять, что в разумной модели вычислений номер этой программы можно вычислить по данным <tex>i</tex> и <tex>x</tex>. Значит, можно рассмотреть такую программу: | Нетрудно понять, что в разумной модели вычислений номер этой программы можно вычислить по данным <tex>i</tex> и <tex>x</tex>. Значит, можно рассмотреть такую программу: | ||
<tex>US(\langle i, x \rangle )</tex> | <tex>US(\langle i, x \rangle )</tex> | ||
Строка 59: | Строка 60: | ||
</tex> | </tex> | ||
− | |||
Следовательно, <br/> <tex> | Следовательно, <br/> <tex> | ||
US(\langle i, x \rangle ) = p_A(g_{i,x}) = \begin{cases} | US(\langle i, x \rangle ) = p_A(g_{i,x}) = \begin{cases} |
Версия 13:18, 14 декабря 2014
Свойства языков
Рассмотрим множество всех перечислимых языков .
Определение: |
Свойством языков (англ. property of languages) называется множество | .
Примеры свойств:
- Язык должен содержать слово hello.
- Язык должен содержать хотя бы одно простое число.
Определение: |
Свойство называется тривиальным (англ. trivial), если | или .
Псевдокод для
return
Определение: |
Язык свойства (англ. language of property) | — множество программ, языки которых обладают этим свойством: .
Пример. Пусть
— разрешитель некоторого языкаp() return ('hello')
Определение: |
Свойство разрешимым. | называется разрешимым (англ. recursive), если является
Теорема Успенского-Райса
Теорема: |
Язык никакого нетривиального свойства не является разрешимым. |
Доказательство: |
Приведём доказательство от противного. Предположим, что разрешимо и нетривиально, — программа, разрешающая .Не умаляя общности, можно считать, что (в противном случае перейдём к , которое также будет разрешимым и нетривиальным, так как и .Поскольку непусто, то найдётся перечислимый язык . Пусть — полуразрешитель .Рассмотрим вспомогательную программу: — универсальная функцияif == 1 // если i (где i - это программа), на входе x выдает 1. return else while true Исключение пустого множества нам нужно чтобы различать и пустое. Нетрудно понять, что в разумной модели вычислений номер этой программы можно вычислить по данным и . Значит, можно рассмотреть такую программу:return Заметим, что Следовательно,— программа, разрешающая универсальное множество. Получили противоречие. |
См. также
Источники информации
- Wikipedia — Rice's theorem
- Rice, H. G. "Classes of Recursively Enumerable Sets and Their Decision Problems." Trans. Amer. Math. Soc. 74, 358-366, 1953.
- Хопкрофт Д., Мотванн Р., Ульманн Д. Введение в теорию автоматов, языков и вычислений страница 397.