avva: (Default)
[personal profile] avva
Recursion Theory Shoenfield'а -- очень милое краткое введение в теорию вычислимости (или теорию рекурсивных функций, если угодно). Я взял её почитать недавно, чтобы освежить память немного. Брал с некоторой опаской, т.к. учебник логики того же Shoenfield'а не люблю по некоторым причинам. Но опаска оказалась зряшной. Небольшая (75 страниц примерно), ёмкая, лаконичная и одновременно всё хорошо объясняющая книга.

Shoenfield не использует машину Тюринга, а вместо этого определяет другую модель, очень простую, видимо для того, чтобы легче было понять и доказывать. Модель такая: есть бесконечное кол-во регистров, пронумерованных R0, R1, R2, ..., каждый из которых может содержать любое число ("число" = натуральные числа, включая 0). Есть программа, представляющая собой конечный набор инструкций и хранящаяся в отдельном месте; и есть специальный регистр-указатель на номер текущей инструкции. Инструкции есть трёх видов: 1) INCREASE Ri: увеличить Ri на 1; 2) DECREASE Ri, n: если Ri=0, ничего не делать, а если Ri>0, уменьшить Ri на 1 и перейти к инструкции номер n; 3) GO TO n: перейти к инструкции номер n. Машина останавливается, когда совершён переход к номеру инструкции, большему, чем собственно есть инструкций в программе. В начале работы программы входные данные ставятся в регистры R1...Rk, а в конце выходные читаются из регистра R0.

В общем, понятно, что это та же мощность, что у машины Тюринга, но универсальную машину в такой модели "руками" построить было бы весьма трудоёмким делом. Однако Shoenfield'у это не нужно, т.к. он "строит" эту машину арифметическим путём, пользуясь определением рекурсивных функций через замыкание базисных числовых функций под действием соответствующих операторов. Простота "регистровой" машины позволяет особенно легко доказать эквивалентность этой модели числовому определению рекурсивных функций.

Ну дальше всё как обычно, набор классических теорем, RE-множества, арифметическая иерархия, degrees. В частности, особенно ясно и дельно объясняются Church-Turing Thesis и вся тема RE-множеств и RE-отношений. Хорошая книга. Рекомендую.

Date: 2003-03-14 05:20 am (UTC)
From: [identity profile] pollak.livejournal.com
А есть теорема об эквивалентности этой модели и машины Тьюринга?

Re:

Date: 2003-03-15 09:43 am (UTC)
From: [identity profile] avva.livejournal.com
Да, конечно. Т.е. в книге нет, т.к. он машины Тьюринга не рассматривает вообще, но т.к. обе модели эквивалентны рекурсивным функциям (определённым математически), то и между собой эквивалентны.

Легко и напрямую видеть. Регистровую машину легко симулировать на машине Тьюринга. Любая программа на ней использует конечное число регистров, т.к. в ней есть конечное число инструкции, каждая из который называет по имени не больше одного регистра. Поэтому для хранения информации во всех регистра нужно только конечное колч-во памяти -- конечный кусок ленты машины Тюринга. Конкретное кодирование этой информации и программы регистровой машины на ленте машины Тюринга - уже технические детали.

Для того, чтобы симулировать работу машины Тюринга на регистровой машине, надо сначала написать на регистровой машине несколько "подпрограмм"-макросов, которые облегчают работу, например, "скопировать содержимое региста N в регистр M" (сначала в цикле уменьшить второй регистр до нуля, потом в цикле уменьшать первый и увеличивать второй, пока в первом не будет 0) и ещё несколько подобных. Потом можно содержимое ленты машины Тюринга хранить закодированном в одном регистре (регистры содержат неограниченно большие числа, так что в один регистр помещается вся конечная по размеру, но неограниченно длинная лента в любой данный момент), состояние машины Тюринга - в другом, место "считывающей головки" - в третьем, а программа будет "декодировать" регистр-"ленту", находить в нём символ, находящийся под "считывающей головкой", и менять регистры состояния, ленты и места головки в соответствии с матрицей переходов оригинальной машины Тюринга, пользуясь для всего этого ещё несколькими вспомогательными регистрами.

Date: 2003-03-14 09:07 am (UTC)
From: [identity profile] drw.livejournal.com
Я правильно понимаю, что n может загружаться из регистра?

Re:

Date: 2003-03-15 09:46 am (UTC)
From: [identity profile] avva.livejournal.com
Нет, совсем неверно. n всегда задан эксплицитно внутри программы, т.е. косвенных переходов нет. Они, в общем, не нужны.

Date: 2003-03-15 09:56 am (UTC)
From: [identity profile] drw.livejournal.com
Прошу прощения; как всегда, невнимательно прочитал.

Date: 2003-03-16 09:37 am (UTC)
From: [identity profile] pechkin.livejournal.com
Vot po etoj-to sisteme nas i u4at.

Predmet javno prevyshaet moi mozgovye mow,nosti. 4to pe4al'no.

time-bounded equivalence?

Date: 2003-03-23 07:12 pm (UTC)
From: (Anonymous)
Zdravsvuite, Avva,

Pozhaluista, izvinite za pozdnii e-mail i moje lyubopytstvo. U nas v mestnoi biblioteke etoi knigi, k sozhaleniyu, net.

A vot chto interesno, pro ekvivalentnost' time-bounded partial recursive functions i time-bounded register mashines Schoenfield chto nibud' tam upominaet?

I eshchje, recursion theory eto Vy s pritselom na chto to podal'she ili tak, iz chistogo interesa?

Best wishes,

--AA

Re: time-bounded equivalence?

Date: 2003-03-24 02:57 am (UTC)
From: [identity profile] avva.livejournal.com
Уважаемый AA,

Нет, Shoenfield вообще в этой книге не рассматривает никакие ограничения на время.

Recursion theory мне просто нравится, вот и всё.

Re: time-bounded equivalence?

Date: 2003-03-24 06:32 pm (UTC)
From: (Anonymous)

Ne udivljen. :-) V sluchae ogranichenii na vremja voznikaet dovol'no lyubopytnaja situatsija; okazyvaetsja, chto v nekotoryh interesnyh sluchajah podobnoi ekvivalentnosti tam net.

Regards,

--AA

Re: time-bounded equivalence?

Date: 2003-03-24 09:18 pm (UTC)
From: [identity profile] avva.livejournal.com
Расскажите чуть подробнее, пожалуйста?
Или дайте какие-нибудь ссылки?
Спасибо.

Re: time-bounded equivalence?

Date: 2003-03-25 07:03 pm (UTC)
From: (Anonymous)
Vot nedavnii intriguyushchii resul'tat David Juedes & Jack Lutz:

Every partial recursive function can be simulated with polynomial efficiency by a self-delimiting Turing machine if and only if P = NP.

Modeling time-bounded prefix Kolmogorov complexity, Theory of Computing Systems 33 (2000), pp. 111-123.

(http://www.cs.iastate.edu/~lutz/=PAPERS/mtbpkc.ps)

prefix functions

Date: 2003-03-25 08:29 pm (UTC)
From: (Anonymous)
Sorry! The word `prefix' crawled out from the statement above.

Best wishes,

--AA

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 29th, 2025 02:31 pm
Powered by Dreamwidth Studios