Перечислимые языки
| Определение: | 
| Полуразрешимый язык язык, для которого существует программа такая, что . | 
| Определение: | 
| Перечислимый язык язык, для которого существует программа такая, что . | 
| Определение: | 
| Пусть имеется некоторая программа , которая может либо завершиться за конечное время и что-то вернуть, либо зависнуть. Тогда запуск программы с тайм-лимитом будем обозначать как и иметь в виду следующее: если за операций программа корректно завершилась и что-то вернула, то вернет то же самое; если же за операций программа не успела завершиться, то вернет (символ зависания). | 
| Теорема: | 
 перечислимый  полуразрешимый.  | 
| Доказательство: | 
| 
 Пусть перечислимый язык. Докажем, что он полуразрешим, приведя соответствующую программу. for if return Пусть полуразрешимый язык. Докажем, что он перечислим, приведя соответствующую программу. for for if ++ if return for if ++ if return На каждой итерации цикла программы , в множестве , хранятся все выведенные на данный момент слова языка . Приведённые программы доказывают эквивалентность определений. | 
| Теорема: | 
Любой  разрешимый язык  является перечислимым.  | 
| Доказательство: | 
| Любой разрешимый язык является полуразрешимым. А так как любой полуразрешимый язык является перечислимым, то разрешимый язык является перечислимым. | 
Литература
- Н. К. Верещагин, А. Шень. Лекции по математической логике и теории алгоритмов. Часть 3. Вычислимые функции. -- М.: МЦНМО, 1999