2014 dxdy logo

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

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




 
 Машина Тьюринга
Сообщение01.04.2010, 15:22 
Аватара пользователя
всем добрый день! просто не никак пока не соображу, надо построить машину Тьюринга для вычисления $f(x;y)=x+y$ алфавит выглядит так $A={O;|}$
$O$-"кружок"
$|$-"палочка"
и числа кодируются так $0$-$O|O$ $1$-$O||O$ и так далее .
допустим надо посчитать сумму $O||O$ и $O||O$ их сумма это $O|||O$разделяет два числа
я хотел посоветоваться именно на счёт самого алгоритма вычисления суммы ,а именно: я думаю что надо вместо нуля который раздляет два числа, записывать $|$ и последнюю(самую правую)$|$ стирать и управляющею головку прводить на влево. так?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 15:34 
Не очень понятно.
Как выглядит лента с исходными числами, и как она должна выглядеть после того, как сложение выполнено?

-- Чт апр 01, 2010 16:42:22 --

И где изначально располагается каретка?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 15:46 
Аватара пользователя
пара чисел на ленте выглядит так $\[OIIOII\underbrace O_{{q_1}} \Rightarrow OII\underbrace O_{{q_0}}I\]
$ ну например так!

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 15:56 
Все еще не понятно:
1. Где, собственно, сумма (0|||0) ?
2. Что это за одинокая палочка справа?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 15:58 
Аватара пользователя
да я забыл там палку! (0|||0)

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 16:07 
Так: 0||0||0 -> 0|||0** ?
И какой символ вместо звездочки?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 18:05 
Аватара пользователя
в каком смысле?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 18:31 
Начальное состояние ленты: 0||0||0
Что должно находиться в этих 7 ячейках после завершения работы программы?
0|||000 ?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 18:49 
Аватара пользователя
ну да именно 0|||000 я понимаю что надо вместо 0 который эти пары разделяет записать | и самые правые две | надо стереть , и передвинуть управляющую головку на самую правую |. так?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 18:59 
Ну да, если там больше одной правой |. Ну а если одна, то тоже понятно, что делать.

Но к сложению это особого отношения не имеет. Это программистский трюк.
Полезнее решить задачу, например, для случая, когда два числа разделены произвольным числом ноликов.

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 19:03 
Аватара пользователя
где можно про это почитать? я с этой программой уж 5-й час ругаюсь! кстати зачем мне произвольное число ноликов когда пара натуральных числ разделяется одним ноликом?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 19:15 
Почитать вот здесь, например: Хопкрофт Дж. и др. Введение в теорию автоматов, языков и вычислений

А еще вот такая забавная программка есть: JFLAP

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 19:20 
Аватара пользователя
спасибо! кстати а где в этой книге раздел про машину Тьюринга?

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 22:27 
Аватара пользователя
всем спасибо я составил!

 
 
 
 Re: Машина Тьюринга
Сообщение01.04.2010, 22:47 
maxmatem в сообщении #305376 писал(а):
кстати а где в этой книге раздел про машину Тьюринга?
А "Глава 8. Введение в теорию машин Тьюринга" не подходит?

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


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