2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Машина Тьюринга
Сообщение17.03.2012, 12:26 
Итак здравствуйте! У меня есть задание, правильно ли я его понял?
Задание построить машину тьюринга которая работает следующим образом:
$ q_{1}1^x 01^y => \begin {cases} q_{0}1^y, x>2\\  q_{0}1^y^+^3, x<=2\end {cases} $

Итак возьмем к примеру x=3 b y=2; Алфавит (1 и 0) 0 пустые ячейки.Теперь на ленте будет две группы:
0 1 1 1 0 1 1 0 .
Будем сдвигаться по ленте вправо (начиная с первого элемента первой группы) и на каждом сдвиге менять состояние МТ. Если обнаружили больше двух единиц, необходимо вернуться назад на начало последовательности единиц и удалить все единицы первой группы, тем самым оставив лишь последовательность из 1 равную 2ум(т.е. y-ку). Конец.
Если же единиц в группе меньше 3(т.е. 2 и меньше) значит доходим до начала первой группы, удаляем все 1первой группы. Идем до первого элемента второй и приписываем ко второй группе еще 3 единицы!
Конец.
Вот или я вообще зря все это? Может актером стать?
Заранее спасибо!

 
 
 
 Re: Машина Тьюринга
Сообщение18.03.2012, 11:12 
Итак здравствуйте! У меня есть задание, правильно ли я его понял?
Задание построить машину тьюринга для перевода из одной конфигурации в другую.
$ q_{1}1^x 01^y => \begin {cases} q_{0}1^y, x>2\\  q_{0}1^y^+^3, x<=2\end {cases} $
Решение выше , но я не уверен в правильности. Подскажите.

 
 
 
 Re: Машина Тьюринга
Сообщение18.03.2012, 12:22 
Похоже на то, что в состоянии q1 у МТ срабатывает триггер, который сканирует ленту с текущей позиции
, чтобы найти последовательность вида "единицы-одиночный ноль-единицы". Если такая последовательность найдена, происходит соответствующее преобразование и программа продолжает работу в состоянии q0, если не найдена - программа продолжает работу как обычно.
В Вашем примере последовательность начинается с нуля, её триггер пропустит.

 
 
 
 Re: Машина Тьюринга
Сообщение18.03.2012, 14:46 
Другими словами..
Итак возьмем к примеру x=3 b y=2; Алфавит (1 и 0) 0 пустые ячейки.Теперь на ленте будет две группы:
1 1 1 0 1 1 0 .
Будем сдвигаться по ленте вправо (начиная с первого элемента первой группы) "считая единицы" пока ни найдем последовательность "101" Если в во время прохождения обнаружили больше двух единиц , необходимо вернуться назад на начало последовательности единиц и удалить все единицы первой группы, тем самым оставив лишь последовательность из "1" равную 2ум(т.е. y-ку). Конец.
Если же единиц в группе меньше 3(т.е. 2 и меньше) значит доходим до начала первой группы, удаляем все "1" первой группы. Идем до первого элемента второй и приписываем ко второй группе еще 3 единицы!
Конец.

вот..

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group