Машина Тьюринга:Унарное сложение — различия между версиями
Материал из DISCOPAL
м (1 версия) |
(нет различий)
|
Текущая версия на 09:55, 4 августа 2008
Приведем пример машины Тьюринга, выполняющей унарное сложение двух операндов. Операнды представляются в унарной системе, т. к. целое неотрицательное число n представляется n+1 единицей.
Содержание
Табличное представление МТ
MT={ 'k':1, 'start': '1pass', 'stop': 'q', 'program': { #(Состояние, символы на лентах) -> (новое состояние, (действия по каждой ленте)) ('1pass', ('1')): ('1pass', (('1','R'))), # проходим первое число ('1pass', ('*')): ('2pass', (('1','R'))), # меняем разделитель ('2pass', ('1')): ('2pass', (('1','R'))), # проходим второе число ('2pass', ('*')): ('del1', (('*','L'))), # конец второго числа ('del1', ('1')): ('del2', (('*','L'))), # удаляем первую лишнюю 1 ('del2', ('1')): ('rewind',(('*','L'))), # удаляем вторую лишнюю 1 ('rewind',('1')): ('rewind',(('1','L'))), # перематываем к началу. ('rewind',('*')): ('q', (('*','R'))) # конец. } }
Графовое представление МТ
Примеры выполнения МТ
«1» + «1»
/bin/bash: inkscape: command not found /bin/bash: inkscape: command not found
«111» + «1»
/bin/bash: inkscape: command not found /bin/bash: inkscape: command not found
«11» + «111»
/bin/bash: inkscape: command not found /bin/bash: inkscape: command not found