Машина Тьюринга, добавляющая два числа - PullRequest
1 голос
/ 21 декабря 2009

Как я могу создать машину Тьюринга, которая будет вычислять сумму двух двоичных цифр, разделенных #, например. 111 # 101B, где B для бланка? Результат можно записать в конце ленты.

1 Ответ

11 голосов
/ 22 декабря 2009
  1. Напишите машину Тьюринга для преобразования обоих двоичных чисел в одинарные (сохраняя пробел между ними). ​​
  2. Напишите машину Тьюринга, чтобы заменить бланк на 1, и отрубите цифру с конца.
  3. Напишите машину Тьюринга для преобразования унарного числа в двоичное.
  4. Сцепите эти три машины вместе.
...