- •© Михеева е. А., 2016 © Ульяновский государственный университет, 2016 оглавление
- •Раздел 6. Элементы математической логики . . . . . . . . . . . . . . . . . . . . 9
- •Раздел 7. Ограниченно-детерминированные (автоматные) функции
- •Раздел 8. Вычислимые функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
- •Раздел 9. Теория кодирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
- •Раздел 6. Элементы математической логики Предисловие
- •Исчисление высказываний
- •Язык ив
- •Аксиомы ив
- •Формулы алгебры высказываний
- •Соответствие между формулами ав и ив
- •Непротиворечивость ив
- •Полнота ив
- •Логические операции над предикатами
- •Теорема о полноте системы одноместных предикатов, заданных на конечном множестве
- •Исчисление предикатов (ип)
- •Формулы исчисления предикатов
- •Определение формул
- •Замена переменных в формулах
- •Правила образования выводимых формул
- •Замена переменного предиката
- •Задания для самостоятельной работы
- •Раздел 7. Ограниченно-детерминированные (автоматные) функции
- •Детерминированные функции
- •Свойство детерминированной функции
- •Примеры детерминированных и недетерминированных функций
- •Способ задания д.Функций
- •Вес детерминированной функции
- •Ограниченно-детерминированные функции
- •Способы задания о.Д.Функций
- •Конечные автоматы
- •Задания для самостоятельной работы
- •Раздел 8. Вычислимые функции Машины Тьюринга
- •Пусть в некоторый момент головка машины обозревает символ , находясь в состоянии , тогда:
- •Методы построения машин Тьюринга
- •1. Принцип двойственности для программ (машин).
- •2. Последовательное подключение одной машины к другой.
- •3. Итерация машины.
- •4. Специальный операторный язык для записи алгоритмов.
- •Описание технологии программирования для машин Тьюринга
- •Вычислимые функции
- •Операции с, Пр и
- •Классы вычислимых и рекурсивных функций
- •Эквивалентность класса рекурсивных функций и функций, вычислимых на машинах Тьюринга
- •Задания для самостоятельной работы
- •Раздел 9. Теория кодирования Алфавитное кодирование
- •Критерий однозначности декодирования
- •Задания для самостоятельной работы
Классы вычислимых и рекурсивных функций
P
выч
– класс
всех вычислимых функций.
- класс всех частичных функций из . Pвыч.
Простейшими будем называть в дальнейшем следующие функции:
S(x) = x + 1 – функция следования;
O(x) 0 – нулевая функция;
( x1, x2,…, xn) = xm ( , n = 1,2,…) – селекторная функция или функция выбора аргумента.
Pпр – класс всех примитивно рекурсивных функций представляет собой множество всех функций, которые могут быть получены из простейших функций с помощью операций суперпозиции и примитивной рекурсии.
Pчр – класс всех частично рекурсивных функций представляет собой множество всех функций, которые могут быть получены из простейших функций с помощью операций суперпозиции, примитивной рекурсии и минимизации.
Замечание. При определении классов Pпр, Pчр предполагается, что при построении каждой конкретной функции соответствующие операции применяются не более, чем конечное число раз (некоторые или все операции могут вообще не применяться).
Poр – класс всех общерекурсивных функций представляет собой множество всех всюду определенных частично рекурсивных функций.
Нетрудно показать, что Pпр Poр Pчр .
Исследования показали, что Pчр эквивалентен Pвыч. Более того, другие формализации понятия вычислимой функции также оказались равносильными. В настоящее время общепринятым является следующее предложение:
Тезис Черча. Pвыч = Pчр .
Тезис Тьюринга. Всякий алгоритм может быть реализован машиной Тьюринга.
Эквивалентность класса рекурсивных функций и функций, вычислимых на машинах Тьюринга
Утверждение. Функция вычислима машиной Тьюринга она частично рекурсивна.
Доказательство данного утверждения разобьем на две теоремы:
Теорема 1.
Всякая частично – рекурсивная функция вычислима машиной Тьюринга.
Доказательство.
Идея:
сначала доказывается, что простейшие функции вычислимы, - это очевидно.
Затем доказывается, что операции суперпозиции, примитивной рекурсии, минимизации сохраняют вычислимость – а для этого для этих операций строим машину Тьюринга.
Ограничимся
построением машины Тьюринга для
оператора примитивной рекурсии
.
Рассмотрим случай n
= 1.
Пусть
,
т.е. определена схемой
,
h(x,y+1) = g(x,y,h(x,y)),
где
функции f и
g
вычислимы машинами Mf
и Mg,
соответственно работающими с правой
полулентой. Построим машину Mh,
вычисляющую h.
Машина Mh
должна воспроизводить процесс вычисления
по схеме примитивной рекурсии, т.е.
последовательно вычислять
;
;
,…,
,…
до тех пор, пока не вычислит g(x,y,h(x,y)).
Будем считать, что машина Mh,
реализующая оператор примитивной
рекурсии для n
= 1, построена. Для n
> 1 все остается таким же, увеличится
лишь число переменных. Реализации трех
рекурсивных операторов позволяют по
рекурсивному описанию любой частично
– рекурсивной функции построить
реализующую ее машину Тьюринга.
Теорема доказана.
Теорема 2. Всякая функция, вычислимая на машине Тьюринга, частично – рекурсивна.
Идея доказательства :
Деятельность машины Тьюринга рассмотрим как преобразование чисел, т.е. как вычисление числовой функции. Именно такая интерпретация и подразумевается. Доказательство заключается в следующем, чтобы точно описать эту интерпретацию (называемую арифметизацией) и показать, что любое преобразование, реализуемое машиной Тьюринга, если его интерпретировать как вычисление, является частично – рекурсивным.
Сначала опишем арифметизацию машин Тьюринга.
Далее докажем, что на каждом шаге машина Тьюринга осуществляет примитивно – рекурсивное вычисление.
Когда дойдем до заключительного состояния, видно, что функция h, описывающая результат работы машины Тьюринга, построена из примитивно – рекурсивных функций с помощью оператора минимизации, и, следовательно, является частично – рекурсивной.
