<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://camokathomelab.servebeer.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%B0_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D0%B0</id>
	<title>Машина Тьюринга - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://camokathomelab.servebeer.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%B0_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D0%B0"/>
	<link rel="alternate" type="text/html" href="https://camokathomelab.servebeer.com/mediawiki/index.php?title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%B0_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D0%B0&amp;action=history"/>
	<updated>2026-07-18T01:36:25Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://camokathomelab.servebeer.com/mediawiki/index.php?title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%B0_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D0%B0&amp;diff=8566&amp;oldid=prev</id>
		<title>imported&gt;43K1C7: откат правок 84.32.49.213 (обс.) к версии EyeBot</title>
		<link rel="alternate" type="text/html" href="https://camokathomelab.servebeer.com/mediawiki/index.php?title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%B0_%D0%A2%D1%8C%D1%8E%D1%80%D0%B8%D0%BD%D0%B3%D0%B0&amp;diff=8566&amp;oldid=prev"/>
		<updated>2025-12-19T07:31:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/mediawiki/index.php?title=%D0%92%D0%9F:%D0%9E%D1%82%D0%BA%D0%B0%D1%82&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;ВП:Откат (страница не существует)&quot;&gt;откат&lt;/a&gt; правок &lt;a href=&quot;/mediawiki/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/84.32.49.213&quot; title=&quot;Служебная:Вклад/84.32.49.213&quot;&gt;84.32.49.213&lt;/a&gt; (&lt;a href=&quot;/mediawiki/index.php?title=UT:84.32.49.213&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;UT:84.32.49.213 (страница не существует)&quot;&gt;обс.&lt;/a&gt;) к версии EyeBot&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Файл:Maquina.png|thumb|right|Художественное представление машины Тьюринга]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Маши́на Тью́ринга&amp;#039;&amp;#039;&amp;#039; — абстрактный исполнитель (абстрактная вычислительная машина), математическая модель вычислений, предложенная [[Тьюринг, Алан Матисон|Аланом Тьюрингом]] в [[1936 год в науке|1936 году]] для [[формализация|формализации]] понятия [[алгоритм]]а.&lt;br /&gt;
&lt;br /&gt;
Машина Тьюринга является расширением [[конечный автомат|конечного автомата]] и, согласно [[тезис Чёрча — Тьюринга|тезису Чёрча — Тьюринга]], способна имитировать всех исполнителей (с помощью задания правил перехода), каким-либо образом реализующих процесс пошагового вычисления, в котором каждый шаг вычисления является достаточно элементарным.&lt;br /&gt;
&lt;br /&gt;
То есть всякий интуитивный алгоритм может быть реализован с помощью некоторой машины Тьюринга{{sfn|Нефёдов|с=97|1992}}.&lt;br /&gt;
&lt;br /&gt;
Машина Тьюринга изначально была разработана как теоретический инструмент для изучения границ [[теория вычислимости|вычислимости]] и [[математическое доказательство|доказательства]] [[алгоритмическая разрешимость|невозможности существования алгоритмов]] для решения некоторых задач. Со временем она стала фундаментальной [[модель]]ю в [[теория сложности алгоритмов|теории сложности алгоритмов]], служит удобным инструментом для [[теория алгоритмов|формального исследования алгоритмов]]. С её помощью можно оценивать [[временная сложность алгоритма|временную сложность выполнения алгоритмов]] и объём памяти, требуемый для вычислений, включая абстрактные оценки, применимые к [[компьютер|реальным вычислительным системам]]&amp;lt;ref&amp;gt;{{Cite web |url=https://cyberleninka.ru/article/n/mashiny-tyuringa |title=Машины Тьюринга |access-date=2023-10-14 |archive-date=2024-01-05 |archive-url=https://web.archive.org/web/20240105195832/https://cyberleninka.ru/article/n/mashiny-tyuringa |url-status=live }}&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Устройство ==&lt;br /&gt;
В состав машины Тьюринга входит неограниченная в обе стороны &amp;#039;&amp;#039;лента&amp;#039;&amp;#039; (возможны машины Тьюринга, которые имеют несколько бесконечных лент), разделённая на ячейки{{sfn|Нефёдов|с=94|1992}}{{sfn|Эббинхауз|с=24|1972}}, и &amp;#039;&amp;#039;управляющее устройство&amp;#039;&amp;#039; (также называется &amp;#039;&amp;#039;головкой записи-чтения&amp;#039;&amp;#039;), способное находиться в одном из &amp;#039;&amp;#039;множества состояний&amp;#039;&amp;#039;. Число возможных состояний управляющего устройства конечно и точно задано.&lt;br /&gt;
&lt;br /&gt;
Управляющее устройство может перемещаться влево и вправо по ленте, оставаться в неподвижном положении, читать и записывать в ячейки символы некоторого конечного [[Алфавит (формальный язык)|алфавита]]. Выделяется особый &amp;#039;&amp;#039;пустой&amp;#039;&amp;#039; символ, заполняющий все клетки ленты, кроме тех из них (конечного числа), на которых записаны входные данные.&lt;br /&gt;
&lt;br /&gt;
Управляющее устройство работает согласно &amp;#039;&amp;#039;правилам перехода&amp;#039;&amp;#039;, которые представляют алгоритм,&lt;br /&gt;
&amp;#039;&amp;#039;реализуемый&amp;#039;&amp;#039; данной машиной Тьюринга. Каждое правило перехода предписывает машине, в зависимости от текущего состояния и наблюдаемого в текущей клетке символа, записать в эту клетку&lt;br /&gt;
новый символ, перейти в новое состояние и переместиться на одну клетку влево или вправо. Некоторые состояния машины Тьюринга могут быть помечены как &amp;#039;&amp;#039;терминальные&amp;#039;&amp;#039;, и переход в любое из них означает конец работы, остановку алгоритма.&lt;br /&gt;
&lt;br /&gt;
Машина Тьюринга называется &amp;#039;&amp;#039;детерминированной&amp;#039;&amp;#039;, если каждой комбинации состояния и&lt;br /&gt;
ленточного символа в таблице соответствует не более одного правила. Если существует пара «ленточный символ — состояние», для которой существует 2 и более команд, такая машина Тьюринга называется &amp;#039;&amp;#039;[[Недетерминированная машина Тьюринга|недетерминированной]]&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
== Описание машины Тьюринга ==&lt;br /&gt;
Конкретная машина Тьюринга задаётся перечислением букв алфавита A, множеством состояний Q и набором правил перехода, по которым работает машина. Они имеют вид: q&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;a&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;→q&amp;lt;sub&amp;gt;i1&amp;lt;/sub&amp;gt;a&amp;lt;sub&amp;gt;j1&amp;lt;/sub&amp;gt;d&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt; (если головка находится в состоянии q&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;, а в обозреваемой ячейке записана буква a&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;, то головка переходит в состояние q&amp;lt;sub&amp;gt;i1&amp;lt;/sub&amp;gt;, в ячейку вместо a&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; записывается a&amp;lt;sub&amp;gt;j1&amp;lt;/sub&amp;gt;, головка делает движение d&amp;lt;sub&amp;gt;k&amp;lt;/sub&amp;gt;, которое имеет три варианта: на ячейку влево (L), на ячейку вправо (R), остаться на месте (N)). Для каждой возможной конфигурации &amp;lt;q&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;, a&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;&amp;gt; имеется ровно одно правило (для недетерминированной машины Тьюринга может быть большее количество правил). Правил нет только для заключительного состояния, попав в которое, машина останавливается. Кроме того, необходимо указать начальное и конечное состояния, начальную конфигурацию на ленте и расположение головки машины.&lt;br /&gt;
&lt;br /&gt;
== Пример ==&lt;br /&gt;
{{см. также|Ханойская башня#Решение для машины Тьюринга}}&lt;br /&gt;
Пример машины Тьюринга для умножения чисел в [[Унарная система счисления|унарной системе счисления]].&lt;br /&gt;
Запись правила перехода «q&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;a&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;→q&amp;lt;sub&amp;gt;i1&amp;lt;/sub&amp;gt;a&amp;lt;sub&amp;gt;j1&amp;lt;/sub&amp;gt;R/L/N» следует понимать так: q&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; — состояние, при котором выполняется это правило, a&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; — данные в ячейке, в которой находится головка, q&amp;lt;sub&amp;gt;i1&amp;lt;/sub&amp;gt; — состояние, в которое нужно перейти, a&amp;lt;sub&amp;gt;j1&amp;lt;/sub&amp;gt; — что нужно записать в ячейку, R/L/N — команда на перемещение.&lt;br /&gt;
&lt;br /&gt;
Машина работает по следующему набору правил:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
! |&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;5&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;6&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;8&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-----&lt;br /&gt;
!|1&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;1→q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;1R&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;1→q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;aR&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;1→q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;1L&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;1 → q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;aR&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;1→q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;1R&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;1→q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;aR&lt;br /&gt;
|&lt;br /&gt;
|-----&lt;br /&gt;
!|×&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;×→q&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;×R&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;×→q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;×L&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;×→q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;×R&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;6&amp;lt;/sub&amp;gt;×→q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;×R&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;8&amp;lt;/sub&amp;gt;×→q&amp;lt;sub&amp;gt;9&amp;lt;/sub&amp;gt;×N&lt;br /&gt;
|-----&lt;br /&gt;
!|=&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=→q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;=L&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;=→q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;=R&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;=→q&amp;lt;sub&amp;gt;8&amp;lt;/sub&amp;gt;=L&lt;br /&gt;
|&lt;br /&gt;
|-----&lt;br /&gt;
!|a&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;a→q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;aL&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;a→q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;aL&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;a→q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;aR&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;6&amp;lt;/sub&amp;gt;a→q&amp;lt;sub&amp;gt;6&amp;lt;/sub&amp;gt;1R&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;a→q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;aR&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;8&amp;lt;/sub&amp;gt;a→q&amp;lt;sub&amp;gt;8&amp;lt;/sub&amp;gt;1L&lt;br /&gt;
|-----&lt;br /&gt;
!|*&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;*→q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;*R&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;*→q&amp;lt;sub&amp;gt;6&amp;lt;/sub&amp;gt;*R&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;*→q&amp;lt;sub&amp;gt;5&amp;lt;/sub&amp;gt;1R&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-----&lt;br /&gt;
!|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  q&amp;lt;sub&amp;gt;5&amp;lt;/sub&amp;gt; →q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;*L&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|+&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Описание состояний:&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&amp;#039;&amp;#039;Начало&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
! width=&amp;quot;50&amp;quot; |q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&lt;br /&gt;
| начальное состояние. Ищем «x» справа. При нахождении переходим в состояние q1&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;&lt;br /&gt;
| заменяем «1» на «а» и переходим в состояние q2&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&amp;#039;&amp;#039;Переносим все «1» из первого числа в результат&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt;&lt;br /&gt;
| ищем «х» слева. При нахождении переходим в состояние q3&lt;br /&gt;
|-&lt;br /&gt;
! valign=&amp;quot;top&amp;quot;|q&amp;lt;sub&amp;gt;3&amp;lt;/sub&amp;gt;&lt;br /&gt;
| ищем «1» слева, заменяем её на «а» и переходим в состояние q4.&lt;br /&gt;
В случае, если «1» закончились, находим «*» и переходим в состояние q6&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;4&amp;lt;/sub&amp;gt;&lt;br /&gt;
| переходим в конец (ищем «*» справа), заменяем «*» на «1» и переходим в состояние q5&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;5&amp;lt;/sub&amp;gt;&lt;br /&gt;
| добавляем «*» в конец и переходим в состояние q2&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&amp;#039;&amp;#039;Обрабатываем каждый разряд второго числа&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;6&amp;lt;/sub&amp;gt;&lt;br /&gt;
| ищем «х» справа и переходим в состояние q7. Пока ищем, заменяем «а» на «1»&lt;br /&gt;
|-&lt;br /&gt;
! valign=&amp;quot;top&amp;quot;|q&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;&lt;br /&gt;
| ищем «1» или «=» справа,&lt;br /&gt;
при нахождении «1» заменяем его на «а» и переходим в состояние q2&lt;br /&gt;
&lt;br /&gt;
при нахождении «=» переходим в состояние q8&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&amp;#039;&amp;#039;Конец&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;8&amp;lt;/sub&amp;gt;&lt;br /&gt;
| ищем «х» слева. При нахождении переходим в состояние q9. Пока ищем, заменяем «а» на «1»&lt;br /&gt;
|-&lt;br /&gt;
! |q&amp;lt;sub&amp;gt;9&amp;lt;/sub&amp;gt;&lt;br /&gt;
| терминальное состояние (остановка алгоритма)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Умножим с помощью МТ 3 на 2 в единичной системе.&lt;br /&gt;
В протоколе указаны начальное и конечное состояния МТ, начальная конфигурация на ленте и расположение головки машины (подчёркнутый символ).&lt;br /&gt;
&lt;br /&gt;
Начало. Находимся в состоянии q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;, ввели в машину данные: *111x11=*, головка машины располагается на первом символе *.&lt;br /&gt;
&lt;br /&gt;
1-й шаг. Смотрим по таблице правил, что будет делать машина, находясь в состоянии q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; и над символом «*». Это правило из 1-го столбца 5-й строки — q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;*→q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;*R. Это значит, что мы переходим в состояние q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; (то есть не меняем его), символ станет «*» (то есть не изменится) и смещаемся по введённому нами тексту «*111x11=*» вправо на одну позицию (R), то есть на 1-й символ 1. В свою очередь, состояние q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;1 (1-й столбец 1-я строка) обрабатывается правилом q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;1→q&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;1R. То есть снова происходит просто переход вправо на 1 позицию. Так происходит, пока мы не станем на символ «х». И так далее: берём состояние (индекс при q), берём символ, на котором стоим (подчёркнутый символ), соединяем их и смотрим обработку полученной комбинации по таблице правил.&lt;br /&gt;
&lt;br /&gt;
Простыми словами, алгоритм умножения следующий: помечаем 1-ю единицу 2-го множителя, заменяя её на букву «а», и переносим весь 1-й множитель за знак равенства. Перенос производится путём поочерёдной замены единиц 1-го множителя на «а» и дописывания такого же количества единиц в конце строки (слева от крайнего правого «*»). Затем меняем все «а» до знака умножения «х» обратно на единицы. И цикл повторяется. Действительно, ведь A умножить на В можно представить как А+А+А В раз. Помечаем теперь 2-ю единицу 2-го множителя буквой «а» и снова переносим единицы. Когда до знака «=» не окажется единиц — значит, умножение завершено.&lt;br /&gt;
&lt;br /&gt;
[[Файл:prot.gif|Протокол|center]]&lt;br /&gt;
&lt;br /&gt;
== Полнота по Тьюрингу ==&lt;br /&gt;
{{main|Полнота по Тьюрингу}}&lt;br /&gt;
Можно сказать, что машина Тьюринга представляет собой простейшую вычислительную машину с линейной памятью, которая согласно формальным правилам перехода преобразует входные данные с помощью последовательности &amp;#039;&amp;#039;элементарных действий&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Элементарность действий заключается в том, что действие меняет лишь небольшой фрагмент данных в памяти (в случае машины Тьюринга лишь одну ячейку), и число возможных действий конечно. Несмотря на простоту машины Тьюринга, на ней можно вычислить всё, что можно вычислить на любой другой машине, осуществляющей вычисления с помощью последовательности элементарных действий. Это свойство называется &amp;#039;&amp;#039;полнотой&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Один из естественных способов доказательства того, что алгоритмы вычисления, которые можно реализовать на одной машине, можно реализовать и на другой, это имитация первой машины на второй.&lt;br /&gt;
&lt;br /&gt;
Имитация заключается в следующем. На вход второй машине подаётся описание программы (правил работы) первой машины &amp;lt;math&amp;gt;D&amp;lt;/math&amp;gt; и входные данные &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;, которые должны были поступить на вход первой машины. Нужно описать такую программу (правила работы второй машины), чтобы в результате вычислений на выходе оказалось то же самое, что вернула бы первая машина, если бы получила на вход данные &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Как было сказано, на машине Тьюринга можно имитировать (с помощью задания правил перехода) все другие исполнители, каким-либо образом реализующие процесс пошагового вычисления, в котором каждый шаг вычисления достаточно элементарен.&lt;br /&gt;
&lt;br /&gt;
На машине Тьюринга можно имитировать [[Машина Поста|машину Поста]], [[Нормальный алгоритм|нормальные алгоритмы Маркова]] и любую программу для обычных компьютеров, преобразующую входные данные в выходные по какому-либо алгоритму. В свою очередь, на различных абстрактных исполнителях можно имитировать Машину Тьюринга. Исполнители, для которых это возможно, называются &amp;#039;&amp;#039;полными по Тьюрингу&amp;#039;&amp;#039; (Turing complete).&lt;br /&gt;
&lt;br /&gt;
Есть программы для обычных компьютеров, имитирующие работу машины Тьюринга. Но данная имитация неполная, так как в машине Тьюринга присутствует абстрактная бесконечная лента. Бесконечную ленту с данными невозможно в полной мере имитировать на компьютере с конечной памятью: суммарная память компьютера — оперативная память, жёсткие диски, различные внешние носители данных, регистры и кэш процессора и др. — может быть очень большой, но тем не менее всегда конечна. Теоретический предел количества информации, которая может находиться внутри заданной поверхности, с точностью до множителя &amp;lt;math&amp;gt;1 / \ln{2}&amp;lt;/math&amp;gt; равен [[Энтропия|энтропии]] [[Чёрная дыра|чёрной дыры]] с той же площадью поверхности.&lt;br /&gt;
&lt;br /&gt;
== Варианты машины Тьюринга ==&lt;br /&gt;
Модель машины Тьюринга допускает расширения. Можно рассматривать машины Тьюринга с произвольным числом лент и многомерными лентами с различными ограничениями. Однако все эти машины являются полными по Тьюрингу и моделируются обычной машиной Тьюринга.&lt;br /&gt;
&lt;br /&gt;
=== Машина Тьюринга, работающая на полубесконечной ленте ===&lt;br /&gt;
В качестве примера такого сведения рассмотрим следующую теорему: &amp;#039;&amp;#039;Для любой машины Тьюринга существует эквивалентная машина Тьюринга, работающая на полубесконечной ленте (то есть на ленте, бесконечной в одну сторону).&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Рассмотрим доказательство, приведённое Ю. Г. Карповым в книге «Теория автоматов». Доказательство этой теоремы конструктивное, то есть мы дадим алгоритм, по которому для любой машины Тьюринга может быть построена эквивалентная машина Тьюринга с объявленным свойством. Во-первых, произвольно занумеруем ячейки рабочей ленты МТ, то есть определим новое расположение информации на ленте:&lt;br /&gt;
&lt;br /&gt;
[[Файл:mt1.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
Затем перенумеруем ячейки, причём будем считать, что символ «*» не содержится в словаре МТ:&lt;br /&gt;
&lt;br /&gt;
[[Файл:mt2.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
Наконец, изменим машину Тьюринга, удвоив число её состояний, и изменим сдвиг головки считывания-записи так, чтобы в одной группе состояний работа машины была бы эквивалентна её работе в заштрихованной зоне, а в другой группе состояний машина работала бы так, как исходная машина работает в незаштрихованной зоне. Если при работе МТ встретится символ ‘*’, значит головка считывания-записи достигла границы зоны:&lt;br /&gt;
&lt;br /&gt;
[[Файл:mt3.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
Начальное состояние новой машины Тьюринга устанавливается в одной или другой зоне в зависимости от того, в какой части исходной ленты располагалась головка считывания-записи в исходной конфигурации. Очевидно, что слева от ограничивающих маркеров «*» лента в эквивалентной машине Тьюринга не используется.&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
* [[Муравей Лэнгтона]] (двумерная машина Тьюринга)&lt;br /&gt;
* [[Универсальная машина Тьюринга]]&lt;br /&gt;
* [[Недетерминированная машина Тьюринга]]&lt;br /&gt;
* [[Вероятностная машина Тьюринга]]&lt;br /&gt;
* [[Квантовая машина Тьюринга]]&lt;br /&gt;
* [[Диаграмма Тьюринга]]&lt;br /&gt;
* [[Машина Минского]]&lt;br /&gt;
;Другие абстрактные исполнители и формальные системы вычислений&lt;br /&gt;
* [[Нормальный алгоритм|Нормальный алгоритм Маркова]] ([[продукционное программирование]])&lt;br /&gt;
* [[Машина Поста]] ([[автоматное программирование]])&lt;br /&gt;
* [[Частично рекурсивная функция]]&lt;br /&gt;
&lt;br /&gt;
== Примечания ==&lt;br /&gt;
{{Примечания}}&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
* {{книга&lt;br /&gt;
|заглавие = Введение в теорию автоматов, языков и вычислений&lt;br /&gt;
|часть = Глава 8. Введение в теорию машин Тьюринга&lt;br /&gt;
|оригинал = Introduction to Automata Theory, Languages, and Computation&lt;br /&gt;
|автор = [[Хопкрофт, Джон|Джон Хопкрофт]], Раджив Мотвани, Джеффри Ульман&lt;br /&gt;
|ссылка =&lt;br /&gt;
|isbn = 0-201-44124-1&lt;br /&gt;
|страниц = 528&lt;br /&gt;
|год = 2002&lt;br /&gt;
|издание =&lt;br /&gt;
|место =  М.&lt;br /&gt;
|издательство = [[Вильямс (издательство)|Вильямс]]&lt;br /&gt;
}}&lt;br /&gt;
* {{книга | автор = Карпов Ю. Г. | заглавие = Теория автоматов | ISBN = 5-318-00537-3 | издательство = Питер | год = 2003}}&lt;br /&gt;
* {{книга | автор = Эббинхауз Г. Д., Якобс К., Ман Ф. К., Хермес Г. | заглавие = Машины Тьюринга и рекурсивные функции | место          = М. | издательство  = Мир | год = 1972 | страниц = 262 | isbn = | ref = Эббинхауз}}&lt;br /&gt;
* {{книга | автор = Нефёдов В. Н., Осипова В. А. | заглавие = Курс дискретной математики | место = М. | издательство  = МАИ | год = 1992 | страниц = 260 | isbn = | ref = Нефёдов}}&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
{{Навигация&lt;br /&gt;
|Викиучебник = Машина Тьюринга&lt;br /&gt;
}}&lt;br /&gt;
* [http://postnauka.ru/video/10777 Машина Тьюринга] // Лекция [[Шень, Александр Ханиевич|Александра Шеня]] в проекте [[ПостНаука]] (06.04.2013)&lt;br /&gt;
&lt;br /&gt;
{{rq|&lt;br /&gt;
{{нет сносок|дата=2009-07-01}}&lt;br /&gt;
{{стиль статьи|дата=2019-01-03}}&lt;br /&gt;
}}&lt;br /&gt;
{{Формальные языки}}&lt;br /&gt;
{{ВС}}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Теория алгоритмов]]&lt;br /&gt;
[[Категория:Теория сложности вычислений]]&lt;br /&gt;
[[Категория:Модели вычислений]]&lt;br /&gt;
[[Категория:Формальные методы]]&lt;br /&gt;
[[Категория:Информационные машины]]&lt;br /&gt;
[[Категория:Алан Тьюринг]]&lt;/div&gt;</summary>
		<author><name>imported&gt;43K1C7</name></author>
	</entry>
</feed>