Счетчиковые машины, эквивалентность двухсчетчиковой машины МТ
Версия от 01:35, 24 января 2012; 192.168.0.2 (обсуждение)
Счётчиковые машины
Определение: |
Для каждого счётчика возможны четыре операции: увеличить на один, уменьшить на один, не изменять значение, проверить является ли значение счетчика нулём. Будем считать, что значение нулевых счётчиков уменьшать нельзя. | -счётчиковой машиной называется набор , где
Эквивалентность двухстековой машины трёхсчётчикой машине
Лемма: |
Язык допускается двухстековой машиной тогда и только тогда, когда он допускается трёхсчётчиковой машиной. |
Эквивалентность двухсчётчиковой машины трёхсчётчиковой
Лемма: |
Для любого и для любой -счётчиковой машины существует эквивалентная ей двухсчётчиковая машина. |
Доказательство: |
Пусть | — значения счётчиков -счётчиковой машины. Тогда состояние -счётчиковой машины можно охарактеризовать одним числом , где — -е простое число. Тогда любое состояние k-счётчиковой машины можно хранить на одном счётчике, а операции увеличения значения счетчика, уменьшения значения счетчика и проверки является ли счетчик нулём осуществляются на двухсчётчиковой машине при помощи операций умножения, деления и нахождения остатка от деления на соответствующее номеру счётчика простое число. Для этих вычислений и будет использоваться второй счётчик. Таким образом, для любого и для любой -счётчиковой машины существует эквивалентная ей двухсчётчиковая машина.
Теорема: |
Для любого перечислимого языка существует двухсчётчиковая машина, которая распознает этот язык. |
Доказательство: |
Утверждение теоремы очевидно следует из двух описанных выше лемм, тезиса Тьюринга-Черча и эквивалентности двухстековой машины машине Тьюринга. |
Источники
- Хопкрофт Д., Мотвани Р., Ульман Д. — Введение в теорию автоматов, языков и вычислений, 2-е изд. : Пер. с англ. — Москва, Издательский дом «Вильямс», 2002. — 528 с. : ISBN 5-8459-0261-4 (рус.)