Характеристика перечислимых множеств через вычислимые функции — различия между версиями
| Строка 5: | Строка 5: | ||
# <tex>X</tex> является областью значений вычиcлимой функции <tex>f</tex> | # <tex>X</tex> является областью значений вычиcлимой функции <tex>f</tex> | ||
# Функция <tex>p_X(i) = \begin{cases} | # Функция <tex>p_X(i) = \begin{cases} | ||
| − | + | 0 & i \in X \\ | |
\bot & i \notin X | \bot & i \notin X | ||
\end{cases}</tex> - вычислима | \end{cases}</tex> - вычислима | ||
| Строка 23: | Строка 23: | ||
for (n = 1 ... <tex>+\infty</tex>) | for (n = 1 ... <tex>+\infty</tex>) | ||
if (A(n) == i) | if (A(n) == i) | ||
| − | return | + | return 0 |
Версия 16:40, 2 декабря 2010
| Определение: |
Множество называется перечислимым, если выполняется хотя бы 1 условие из приведенных ниже:
|
| Теорема: |
Определения 1, 2, 3, 4 эквивалентны. |
| Доказательство: |
Пусть - программа перечисляющая . Приведем программу , вычисляющую for (n = 1 ... ) if (A(n) == i) return 0
Пусть область определения вычислимой функции , вычисляемой программой . Введем обозначение: запустить на секунд. Если за секунд так и не вернула значение функции , то возвращаем -1. Тогда перечисляется такой программой for ( = 1 ... ) for (n = 1 ... ) if ( != -1) print(n) Если print(n) заменить на print(), то станет перечислять область значений .
Пусть дана Введем новую функцию: если Очевидно, она вычислима, и ее область определения и область значений совпадают с
|