Свойства перечислимых языков. Теорема Успенского-Райса

Материал из Викиконспекты
Перейти к: навигация, поиск

Определения

Рассмотрим множество перечислимых языков [math] RE [/math].

Определение:
Свойством языков называется множество [math] A \subset RE [/math].


Определение:
Свойство называется тривиальным, если [math] A = \varnothing [/math] или [math] A = RE [/math].


Определение:
Язык свойства [math] A [/math] — множество программ, языки которых обладают этим свойством: [math]L(A) \overset{\underset{\mathrm{def}}{}}{=} \lbrace p | L(p) \in A \rbrace [/math].


Определение:
Свойство [math] A [/math] называется разрешимым, если [math]L(A) [/math] является разрешимым (перечислимо).


Теорема

Теорема:
Никакое нетривиальное свойство языков не является разрешимым.
Доказательство:
[math]\triangleright[/math]

От противного. Предположим, что [math]A[/math] разрешимо и нетривиально, [math]p_A[/math] - программа, разрешающая [math]A[/math].

Не умаляя общности, можно считать, что [math]\varnothing \notin A[/math] (в противном случае перейдем к [math]RE \setminus A[/math], которое также будет разрешимым и нетривиальным).

В то же время, поскольку [math]A[/math] непусто, найдется перечислимый язык [math]X \in A[/math]. Пусть [math]p_X[/math] - полуразрешитель [math]X[/math].

Рассмотрим вспомогательную программу:

[math]g_{i,x}(y)[/math]
 if U(i, x) = 1
    return [math]p_X(y)[/math]
 else
    зависнуть

Нетрудно понять, что в разумной модели вычислений номер этой программы можно вычислить по данным [math]i,x[/math]. Значит, можно рассмотреть такую программу:

[math]US(\langle i, x \rangle )[/math]
    return [math]p_A ( g_{i,x} ) [/math]

Заметим, что [math] L(g_{i,x}) = \begin{cases} X & U(i, x) = 1 \\ \varnothing & U(i, x) \neq 1 \\ \end{cases} [/math]

Следовательно,
[math] US(\langle i, x \rangle ) = p_A(g_{i,x}) = \begin{cases} p_A(p_X) & U(i, x) = 1 \\ p_A(p_\varnothing ) & U(i, x) \neq 1 \\ \end{cases} = \begin{cases} 1 & U(i, x) = 1 \\ 0 & U(i, x) \neq 1 \\ \end{cases} [/math] - программа, разрешающая универсальное множество. Противоречие.
[math]\triangleleft[/math]