m-сводимость
Версия от 19:15, 4 сентября 2022; Maintenance script (обсуждение | вклад) (rollbackEdits.php mass rollback)
| Определение: | 
| Множество -сводится (англ. many-one reducible, m-reducible) ко множеству , если существует всюду определённая вычислимая функция , то есть и . Обозначение: . | 
| Определение: | 
| -эквивалентно (англ. many-one equivalent, m-equivalent) , если и . Обозначение: . | 
Содержание
Свойства
| Утверждение (рефлексивность): | 
.  | 
| . | 
| Утверждение (разрешимость): | 
Если  и  разрешимо, то  разрешимо.  | 
| Пусть — программа-разрешитель для . Тогда для любого разрешитель должен вернуть значение . | 
| Утверждение (перечислимость): | 
Если  и  перечислимо, то  перечислимо.  | 
| Аналогично предыдущему свойству. | 
| Утверждение (транзитивность): | 
Если  и , то .  | 
| Если и , то -сводящая функция выглядит так . | 
Применение
| Лемма: | 
Если  и  неразрешимо, то  неразрешимо.  | 
| Доказательство: | 
| Следует из второго свойства. | 
Приведённая лемма позволяет доказывать алгоритмическую неразрешимость некоторой задачи, сводя к ней (а не наоборот!) другую, неразрешимость которой уже доказана.
Примеры применения
Сведение по Тьюрингу
| Определение: | 
| Язык сводится по Тьюрингу (англ. Turing reducible) к языку , если язык является разрешимым с использованием как оракула, обозначается как . | 
| Определение: | 
| Язык эквивалентен по Тьюрингу (англ. Turing equivalent) языку , если и , обозначается как . | 
Т-степени
Обозначим за множество классов эквивалентности языков по отношению , это множество будет множеством -степеней (тьюринговых степеней).
| Определение: | 
| -степенью языка (англ. Turing degree) называется его класс эквивалентности по отношению , то есть . | 
На -степенях можно ввести частичный порядок: для , если для каких-то , определение корректно, так как порядок не будет зависеть от выбора представителя -степени.
Свойства
- — минимальный элемент в частичном порядке на -степенях. Очевидно из того, что класс разрешимых языков замкнут по использованию разрешимого языка в качестве оракула.
 - Любая пара -степеней имеет наименьшую верхнюю границу .
 
Тьюринговый скачок
Обозначим за язык программ, останавливающихся на пустом входе. Обозначим за язык программ, использующих в качестве оракула и останавливающихся на пустом входе.
Можно показать, что:
- Если , то
 
| Определение: | 
| Тьюринговым скачком -степени (англ. Turing jump) называется -степень языка , где — произвольный язык в . | 
Заметим, что если , то , поэтому определение корректно. Оператор тьюрингова скачка обозначим как .
См. также
- Задача о выводе в полусистеме Туэ
 - Проблема соответствий Поста
 - Задача о замощении
 - Неразрешимость исчисления предикатов первого порядка
 
Источники информации
- Wikipedia — Many-one reduction
 - Wikipedia — Turing reduction
 - Topics in Logic and Foundations
 - Верещагин Н., Шень А. Вычислимые функции, 2-е изд. — МЦНМО, 2002. — С. 64. — ISBN 5-900916-36-7
 - P. Odifreddi — Classical recursion theory. — Elsivier, 1992. — ISBN 0-444-87295-7