Свойства перечислимых языков. Теорема Успенского-Райса — различия между версиями
(→Свойства языков) |
(→Свойства языков) |
||
| Строка 7: | Строка 7: | ||
'''Пример'''. | '''Пример'''. | ||
| − | Свойство языка, язык | + | Свойство языка, язык содержит слова ''hello''. |
{{Определение | {{Определение | ||
|definition=Свойство называется '''тривиальным''' (англ. ''trivial''), если <tex> A = \varnothing </tex> или <tex> A = \mathrm {RE} </tex>. | |definition=Свойство называется '''тривиальным''' (англ. ''trivial''), если <tex> A = \varnothing </tex> или <tex> A = \mathrm {RE} </tex>. | ||
| Строка 21: | Строка 21: | ||
|definition='''Язык свойства''' (англ. ''language of property'') <tex> A </tex> {{---}} множество программ, языки которых обладают этим свойством: <tex>L(A) \overset{\underset{\mathrm{def}}{}}{=} \lbrace p \mid L(p) \in A \rbrace </tex>. | |definition='''Язык свойства''' (англ. ''language of property'') <tex> A </tex> {{---}} множество программ, языки которых обладают этим свойством: <tex>L(A) \overset{\underset{\mathrm{def}}{}}{=} \lbrace p \mid L(p) \in A \rbrace </tex>. | ||
}} | }} | ||
| + | Пример. | ||
| + | Пусть pX - разрешитель некоторого языка | ||
| + | p(px) | ||
| + | '''return''' px('hello') | ||
{{Определение | {{Определение | ||
|definition=Свойство <tex> A </tex> называется '''разрешимым''' (англ. ''recursive''), если <tex>L(A) </tex> является [[Разрешимые_(рекурсивные)_языки|разрешимым]]. | |definition=Свойство <tex> A </tex> называется '''разрешимым''' (англ. ''recursive''), если <tex>L(A) </tex> является [[Разрешимые_(рекурсивные)_языки|разрешимым]]. | ||
Версия 23:23, 12 декабря 2014
Свойства языков
Рассмотрим множество всех перечислимых языков .
| Определение: |
| Свойством языков (англ. property of languages) называется множество . |
Пример.
Свойство языка, язык содержит слова hello.
| Определение: |
| Свойство называется тривиальным (англ. trivial), если или . |
Псевдокод для
p(A) return false
Псевдокод для .
p(A) return true
| Определение: |
| Язык свойства (англ. language of property) — множество программ, языки которых обладают этим свойством: . |
Пример. Пусть pX - разрешитель некоторого языка
p(px)
return px('hello')
| Определение: |
| Свойство называется разрешимым (англ. recursive), если является разрешимым. |
Теорема Успенского-Райса
| Теорема: |
Язык никакого нетривиального свойства не является разрешимым. |
| Доказательство: |
|
Приведём доказательство от противного. Предположим, что разрешимо и нетривиально, — программа, разрешающая . Не умаляя общности, можно считать, что (в противном случае перейдём к , которое также будет разрешимым и нетривиальным). Поскольку непусто, то найдётся перечислимый язык . Пусть — полуразрешитель . Рассмотрим вспомогательную программу: if U(i, x) == 1 //если 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.
- Хопкрофт Д., Мотванн Р., Ульманн Д. Введение в теорию автоматов, языков и вычислений.