M-сводимость — различия между версиями
(→Литература) |
|||
| Строка 72: | Строка 72: | ||
* [http://en.wikipedia.org/wiki/Many-one_reduction Wikipedia — Many-one reduction] | * [http://en.wikipedia.org/wiki/Many-one_reduction Wikipedia — Many-one reduction] | ||
* [http://en.wikipedia.org/wiki/Turing_reduction Wikipedia — Turing reduction] | * [http://en.wikipedia.org/wiki/Turing_reduction Wikipedia — Turing reduction] | ||
| + | * [http://www.personal.psu.edu/t20/notes/topics-s05.pdf Topics in Logic and Foundations] | ||
* ''Верещагин Н., Шень А.'' — '''Вычислимые функции''', 2-е изд. МЦНМО, 2002, стр. 64. ISBN 5-900916-36-7 | * ''Верещагин Н., Шень А.'' — '''Вычислимые функции''', 2-е изд. МЦНМО, 2002, стр. 64. ISBN 5-900916-36-7 | ||
* ''P. Odifreddi'' — '''Classical recursion theory'''. Elsivier, 1992. ISBN 0-444-87295-7 | * ''P. Odifreddi'' — '''Classical recursion theory'''. Elsivier, 1992. ISBN 0-444-87295-7 | ||
{{Заголовок со строчной буквы}} | {{Заголовок со строчной буквы}} | ||
Версия 20:15, 18 января 2014
| Определение: |
| Множество m-сводится (является many-one reducible, m-reducible) ко множеству , если существует всюду определённая вычислимая функция , то есть и . Обозначение: . |
| Определение: |
| m-эквивалентно (many-one equivalent, m-equivalent) , если и . Обозначение: . |
Содержание
Свойства
- .
- Доказательство: .
- Если и разрешимо, то разрешимо.
- Доказательство: Пусть — программа-разрешитель для . Тогда для любого разрешитель должен вернуть значение .
- Если и перечислимо, то перечислимо.
- Доказательство: Аналогично предыдущему свойству.
- Если и , то .
- Доказательство: Если и , то m-сводящая функция выглядит так .
Применение
| Лемма: |
Если и неразрешимо, то неразрешимо. |
| Доказательство: |
| Следует из второго свойства. |
Приведённая лемма позволяет доказывать алгоритмическую неразрешимость некоторой задачи, сводя к ней (а не наоборот!) другую, неразрешимость которой уже доказана.
Например:
Сведение по Тьюрингу
| Определение: |
| Язык сводится по Тьюрингу (является Turing reducible) к языку , если язык является разрешимым с использованием как оракула, обозначается как . |
| Определение: |
| Язык эквивалентен по Тьюрингу (Turing equivalent) языку , если и , обозначается как . |
Свойства
- рефлексивность:
- транзитивность: из и следует
- Очевидно, что — отношение эквивалентности
Т-степени
Обозначим за множество классов эквивалентности языков по отношению , это множество будет множеством Т-степеней (тьюринговых степеней).
| Определение: |
| Т-степенью языка называется его класс эквивалентности по отношению , то есть . |
На Т-степенях можно ввести частичный порядок: для , если для каких-то , определение корректно, так как порядок не будет зависеть от выбора представителя Т-степени.
Свойства
- — минимальный элемент в частичном порядке на Т-степенях. Очевидно из того, что класс разрешимых языков замкнут по использованию разрешимого языка в качестве оракула.
- Любая пара Т-степеней имеет наименьшую верхнюю границу .
Тьюринговый скачок
Обозначим за язык программ, останавливающихся на пустом входе. Обозначим за язык программ, использующих в качестве оракула и останавливающихся на пустом входе.
Можно показать, что:
- Если , то
Тогда тьюринговым скачком Т-степени называется Т-степень языка , где — произвольный язык в . Заметим, что если , то , поэтому определение корректно. Оператор тьюрингова скачка обозначим как .
Литература
- 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