Машина Поста
Маши́на По́ста — абстрактная вычислительная машина, предложенная Эмилем Постом в 1936 году, создана независимо от машины Тьюринга, но сообщение о машине Поста опубликовано на несколько месяцев позднее. Отличается от машины Тьюринга большей простотой, притом обе машины алгоритмически «эквивалентны» и обе разработаны для формализации понятия алгоритма и решения задач об алгоритмической разрешимости, то есть, демонстрации алгоритмического решения задач в форме последовательности команд для машины Поста.
Принцип работы
Машина Поста состоит из каретки (или считывающей и записывающей головки) и разбитой на ячейки бесконечной в обе стороны ленты. Каждая ячейка ленты может находиться в 2 состояниях — быть либо пустой — 0, либо помеченной меткой 1. За такт работы машины каретка может сдвинуться на одну позицию влево или вправо, считать, изменить символ в своей текущей позиции.
Работа машины Поста определяется программой, состоящей из конечного числа строк. Для работы машины нужно задать программу и её начальное состояние (то есть состояние ленты и позицию каретки). Кареткой управляет программа, состоящая из пронумерованных не обязательно упорядоченных строк команд, если в каждой команде указана строка, на которую нужно перейти. Обычно принимается, что если в команде переход не указан, то переход происходит на следующую строку. Каждая команда имеет следующий синтаксис:
i. K j
где i — номер команды, K — действие каретки, j — номер следующей команды (отсылка).
Всего для машины Поста существует шесть типов команд:
V j— поставить метку, перейти кj-й строке программы;X j— стереть метку, перейти кj-й строке;← j— сдвинуться влево, перейти кj-й строке;→ j— сдвинуться вправо, перейти кj-й строке;? j1; j2— если в ячейке нет метки, то перейти кj1-й строке программы, иначе перейти кj2-й строке;!— конец программы («стоп», останов).
В команде «стоп» переход на следующую строку не указывается.
После запуска программы возможны варианты:
- работа может закончиться невыполнимой командой (стирание несуществующей метки или запись в помеченное поле);
- работа может закончиться командой «стоп»;
- работа никогда не закончится.
Пример
Для сложения и вычитания натуральных (целых неотрицательных) чисел P и Q их можно представить на ленте набором из P и Q единиц, отделённых друг от друга одним нулём; пусть исходное положение каретки находится на крайней левой «1» группы единиц Q (помечено символом «⇓»):
⇓…00111110111000…╚═══╝ ╚═╝P Q
Сложение двух чисел тривиально — достаточно поставить «1» между числами и стереть одно крайнее правое «1» у представления Q.
Программа вычитания таких чисел состоит из последовательного изменения крайних левых «1» у представления Q и правых «1» у представления P. В начале программы каретка установлена на крайнюю левую «1» у Q:
1. ←— шаг влево2. ? 1; 3— если в ячейке пусто, перейти к1-шагу, если нет — к33. X— удалить метку4. →— шаг вправо5. ? 4; 6— если в ячейке пусто, перейти к4-шагу, если нет — к66. X— удалить метку7. →— шаг вправо8. ? 9; 1— если в ячейке пусто, перейти к9шагу, если нет — к19. !— конец
В 5-й строке возможно зацикливание, если .
Литература
- Успенский Владимир Андреевич. Машина Поста / Гл. ред. физ.-мат. лит.. — 2-е изд., испр.. — М.: Наука, 1988. — 96 с. — (Популярные лекции по математике). — ISBN 5-02-013735-9.
Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер, Информация о Машина Поста, Что такое Машина Поста? Что означает Машина Поста?
Mashi na Po sta abstraktnaya vychislitelnaya mashina predlozhennaya Emilem Postom v 1936 godu sozdana nezavisimo ot mashiny Tyuringa no soobshenie o mashine Posta opublikovano na neskolko mesyacev pozdnee Otlichaetsya ot mashiny Tyuringa bolshej prostotoj pritom obe mashiny algoritmicheski ekvivalentny i obe razrabotany dlya formalizacii ponyatiya algoritma i resheniya zadach ob algoritmicheskoj razreshimosti to est demonstracii algoritmicheskogo resheniya zadach v forme posledovatelnosti komand dlya mashiny Posta Princip rabotyMashina Posta sostoit iz karetki ili schityvayushej i zapisyvayushej golovki i razbitoj na yachejki beskonechnoj v obe storony lenty Kazhdaya yachejka lenty mozhet nahoditsya v 2 sostoyaniyah byt libo pustoj 0 libo pomechennoj metkoj 1 Za takt raboty mashiny karetka mozhet sdvinutsya na odnu poziciyu vlevo ili vpravo schitat izmenit simvol v svoej tekushej pozicii Rabota mashiny Posta opredelyaetsya programmoj sostoyashej iz konechnogo chisla strok Dlya raboty mashiny nuzhno zadat programmu i eyo nachalnoe sostoyanie to est sostoyanie lenty i poziciyu karetki Karetkoj upravlyaet programma sostoyashaya iz pronumerovannyh ne obyazatelno uporyadochennyh strok komand esli v kazhdoj komande ukazana stroka na kotoruyu nuzhno perejti Obychno prinimaetsya chto esli v komande perehod ne ukazan to perehod proishodit na sleduyushuyu stroku Kazhdaya komanda imeet sleduyushij sintaksis i K j gde i nomer komandy K dejstvie karetki j nomer sleduyushej komandy otsylka Vsego dlya mashiny Posta sushestvuet shest tipov komand V j postavit metku perejti k j j stroke programmy X j steret metku perejti k j j stroke j sdvinutsya vlevo perejti k j j stroke j sdvinutsya vpravo perejti k j j stroke j1 j2 esli v yachejke net metki to perejti k j1 j stroke programmy inache perejti k j2 j stroke konec programmy stop ostanov V komande stop perehod na sleduyushuyu stroku ne ukazyvaetsya Posle zapuska programmy vozmozhny varianty rabota mozhet zakonchitsya nevypolnimoj komandoj stiranie nesushestvuyushej metki ili zapis v pomechennoe pole rabota mozhet zakonchitsya komandoj stop rabota nikogda ne zakonchitsya PrimerDlya slozheniya i vychitaniya naturalnyh celyh neotricatelnyh chisel P i Q ih mozhno predstavit na lente naborom iz P i Q edinic otdelyonnyh drug ot druga odnim nulyom pust ishodnoe polozhenie karetki nahoditsya na krajnej levoj 1 gruppy edinic Q pomecheno simvolom 00111110111000 P Q Slozhenie dvuh chisel trivialno dostatochno postavit 1 mezhdu chislami i steret odno krajnee pravoe 1 u predstavleniya Q Programma vychitaniya takih chisel sostoit iz posledovatelnogo izmeneniya krajnih levyh 1 u predstavleniya Q i pravyh 1 u predstavleniya P V nachale programmy karetka ustanovlena na krajnyuyu levuyu 1 u Q 1 shag vlevo 2 1 3 esli v yachejke pusto perejti k 1 shagu esli net k 3 3 X udalit metku 4 shag vpravo 5 4 6 esli v yachejke pusto perejti k 4 shagu esli net k 6 6 X udalit metku 7 shag vpravo 8 9 1 esli v yachejke pusto perejti k 9 shagu esli net k 1 9 konec V 5 j stroke vozmozhno zaciklivanie esli Q gt P displaystyle Q gt P LiteraturaUspenskij Vladimir Andreevich Mashina Posta Gl red fiz mat lit 2 e izd ispr M Nauka 1988 96 s Populyarnye lekcii po matematike ISBN 5 02 013735 9
