<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=46.56.241.219&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=46.56.241.219&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%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/46.56.241.219"/>
		<updated>2026-05-19T15:13:42Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=LR(0)-%D1%80%D0%B0%D0%B7%D0%B1%D0%BE%D1%80&amp;diff=80788</id>
		<title>LR(0)-разбор</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=LR(0)-%D1%80%D0%B0%D0%B7%D0%B1%D0%BE%D1%80&amp;diff=80788"/>
				<updated>2021-04-14T11:49:39Z</updated>
		
		<summary type="html">&lt;p&gt;46.56.241.219: Исправление очепятки&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;LR(0)-разборщик {{---}} это частный случай [[LR(k)-грамматики#LR-разборщик|LR(k)-разборщикa]]. Заметим, что в данном случае &amp;lt;tex&amp;gt;k=0&amp;lt;/tex&amp;gt;, то есть решение о своих действиях принимается только на основании содержимого стека, символы входной цепочки не учитываются.&lt;br /&gt;
&lt;br /&gt;
== Построение автомата и управляющей таблицы == &lt;br /&gt;
=== Автомат ===&lt;br /&gt;
Каждое состояние автомата будет состоять из LR(0)-ситуации.&lt;br /&gt;
{{Определение&lt;br /&gt;
|id=def_LR0_item) &lt;br /&gt;
|definition=&lt;br /&gt;
Пусть &amp;lt;tex&amp;gt;\Gamma =\langle \Sigma, N, S, P \rangle&amp;lt;/tex&amp;gt; {{---}} КС-грамматика и &amp;lt;tex&amp;gt;A \to w_1 w_2 \in P&amp;lt;/tex&amp;gt;. Композицию &amp;lt;tex&amp;gt;[A \to w_1 \cdot w_2] &amp;lt;/tex&amp;gt; назовем '''LR(0)-ситуацией''' (англ. ''LR(0)-item'').&lt;br /&gt;
}}&lt;br /&gt;
В начале работы стек пуст, и указатель входной цепочки находится перед ее первым символом. Этому состоянию соответствует ситуация &amp;lt;tex&amp;gt;[E_0 \to \cdot E]&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;E_0&amp;lt;/tex&amp;gt; {{---}} нетерминал, добавленный при пополнении грамматики, &amp;lt;tex&amp;gt;E&amp;lt;/tex&amp;gt; {{---}} стартовый нетерминал. Назовем это состояние &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt;. Входная цепочка может начинаться с любого терминального символа, с которого начинается правая часть любого правила с левой частью &amp;lt;tex&amp;gt;E&amp;lt;/tex&amp;gt;. Построим соответствующий переход по следующей схеме:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;{[} A \to \alpha \cdot B \beta] \xrightarrow{\varepsilon}  {[} B \to \cdot \gamma] &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь мы должны выяснить, что произойдет, если анализатор выполнит перенос. Предположим, что мы выполним перенос &amp;lt;tex&amp;gt;c&amp;lt;/tex&amp;gt; или перенос &amp;lt;tex&amp;gt;B&amp;lt;/tex&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;{[} A \to \alpha \cdot c \beta] \xrightarrow{\text{c}}  {[} A \to \alpha  c \cdot \beta] &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;{[} A \to \alpha \cdot B \beta] \xrightarrow{\text{B}}  {[} A \to \alpha  B \cdot \beta] &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Таким образом, мы определяем новые состояния, в которые автомат перейдет после переноса того или иного терминала или нетерминала. &lt;br /&gt;
&lt;br /&gt;
Можно заметить, что алгоритм LR-разбора похож на [[Алгоритм Эрли|алгоритм Эрли]].&lt;br /&gt;
&lt;br /&gt;
==== Базовые операции ====&lt;br /&gt;
&lt;br /&gt;
Заметим, что хранить в каждом состоянии только по одной ситуации не имеет смысла, поэтому пусть каждое состояние будет представлять множество ситуаций, а переходы {{---}} терминалы и нетерминалы. Для этого определим базовые операции &amp;lt;tex&amp;gt;closure (I)&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;goto (I, X)&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;I&amp;lt;/tex&amp;gt; {{---}} множество ситуаций, &amp;lt;tex&amp;gt;X&amp;lt;/tex&amp;gt; {{---}} символ грамматики (терминал или нетерминал). &lt;br /&gt;
&lt;br /&gt;
* Операция &amp;lt;tex&amp;gt;closure&amp;lt;/tex&amp;gt; добавляет ситуации к множеству ситуаций, у которых точка стоит слева от нетерминала. Добавляются те ситуации, которые получаются из правил, в левой части которых находится этот нетерминал.&lt;br /&gt;
&lt;br /&gt;
* Операция &amp;lt;tex&amp;gt;goto&amp;lt;/tex&amp;gt; &amp;quot;переносит&amp;quot; точку после символа &amp;lt;tex&amp;gt;X&amp;lt;/tex&amp;gt;. Это означает переход из одного состояния в другое под воздействием символа &amp;lt;tex&amp;gt;X&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Построение автомата ==== &lt;br /&gt;
Теперь обсудим алгоритм построения конечного автомата. Обозначим &amp;lt;tex&amp;gt;T&amp;lt;/tex&amp;gt; множество состояний, &amp;lt;tex&amp;gt;E&amp;lt;/tex&amp;gt; {{---}} множество переходов.&lt;br /&gt;
# Изначальное состояние содержит одно правило: &amp;lt;tex&amp;gt;E_0 \to E&amp;lt;/tex&amp;gt;.&lt;br /&gt;
# Для текущего состояния делаем операцию &amp;lt;tex&amp;gt;closure&amp;lt;/tex&amp;gt;.&lt;br /&gt;
# По всем возможный символам для каждой ситуации добавляем переходы, используя операцию &amp;lt;tex&amp;gt;goto&amp;lt;/tex&amp;gt;.&lt;br /&gt;
# Если множество &amp;lt;tex&amp;gt;T&amp;lt;/tex&amp;gt; или &amp;lt;tex&amp;gt;E&amp;lt;/tex&amp;gt; во втором или третьем пункте изменилось, возвращаемся ко второму шагу.&lt;br /&gt;
&lt;br /&gt;
=== Управляющая таблица ===&lt;br /&gt;
После построения автомата можно перейти к построению управляющей таблицы. &lt;br /&gt;
&lt;br /&gt;
Обращение к таблице происходит следующим образом &amp;lt;tex&amp;gt;\mathtt{T[state, token]}&amp;lt;/tex&amp;gt;, где &lt;br /&gt;
*&amp;lt;tex&amp;gt;\mathtt{state}&amp;lt;/tex&amp;gt; {{---}} состояние автомата, &lt;br /&gt;
*&amp;lt;tex&amp;gt;\mathtt{token}&amp;lt;/tex&amp;gt; {{---}} входной символ; &lt;br /&gt;
&lt;br /&gt;
В соответствии со [[LR(k)-грамматики#Управляющая программа анализатора |структурой]] управляющей таблицы будем действовать следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Для каждого ребра &amp;lt;tex&amp;gt;I \xrightarrow{\text{X}}  J &amp;lt;/tex&amp;gt; (из состояния &amp;lt;tex&amp;gt;I&amp;lt;/tex&amp;gt; в состояние &amp;lt;tex&amp;gt;J&amp;lt;/tex&amp;gt; по &amp;lt;tex&amp;gt;X&amp;lt;/tex&amp;gt;) мы поместим в позицию &amp;lt;tex&amp;gt;T[I,X]&amp;lt;/tex&amp;gt;&lt;br /&gt;
*&amp;lt;tex&amp;gt;s(J)&amp;lt;/tex&amp;gt; (сокр. от ''shift'') , если &amp;lt;tex&amp;gt;X&amp;lt;/tex&amp;gt; {{---}} терминал,&lt;br /&gt;
*&amp;lt;tex&amp;gt;J&amp;lt;/tex&amp;gt;, если &amp;lt;tex&amp;gt;X&amp;lt;/tex&amp;gt; {{---}} нетерминал.&amp;lt;/li&amp;gt;&lt;br /&gt;
 &amp;lt;li&amp;gt;Для состояния &amp;lt;tex&amp;gt;I&amp;lt;/tex&amp;gt;,  содержащего ситуацию &amp;lt;tex&amp;gt;[A\to w \cdot]&amp;lt;/tex&amp;gt; в позицию &amp;lt;tex&amp;gt;T[I, Y]&amp;lt;/tex&amp;gt; для каждого терминала &amp;lt;tex&amp;gt;Y&amp;lt;/tex&amp;gt;&lt;br /&gt;
* Поместим &amp;lt;tex&amp;gt;r(n)&amp;lt;/tex&amp;gt; (сокр. от ''reduce''), где &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; {{---}} это номер правила в изначальной грамматике.&amp;lt;/li&amp;gt;&lt;br /&gt;
* Запись &amp;lt;tex&amp;gt;r(0)&amp;lt;/tex&amp;gt; означает допуск.&lt;br /&gt;
 &amp;lt;li&amp;gt;Пустая ячейка означает ошибочную ситуацию.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Пример ==&lt;br /&gt;
Для иллюстрации алгоритма LR(0)-разборщика мы будем использовать грамматику:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
E \to E + T \\&lt;br /&gt;
E \to T \\&lt;br /&gt;
T \to {\bf n} \\&lt;br /&gt;
T \to (E) \\&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Обратим внимание, что данная грамматика является [[Устранение левой рекурсии|леворекурсивной]], поэтому нисходящий разборщик не сможет осуществить разбор слова из этой грамматики.&lt;br /&gt;
=== Пополнение грамматики===&lt;br /&gt;
&lt;br /&gt;
Для начала переходим к ''пополненной грамматике'':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
E_0 \to E \\&lt;br /&gt;
E \to E + T \\&lt;br /&gt;
E \to T \\&lt;br /&gt;
T \to {\bf n} \\&lt;br /&gt;
T \to (E) \\&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Построение автомата ===&lt;br /&gt;
&amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt; состоянию будет соответствует ситуация &amp;lt;tex&amp;gt;[E_0 \to \cdot E]&amp;lt;/tex&amp;gt;. Добавляем остальные состояния и получаем следующий [[Недетерминированные конечные автоматы|НКА]]:&lt;br /&gt;
&lt;br /&gt;
[[Файл:eps-dfa.png|600px]]&lt;br /&gt;
&lt;br /&gt;
На картинке в двойной рамке обозначены терминальные состояния {{---}} это такие состояния, из которых можно производить свертку по правилу грамматики, а из остальных возможен только перенос. Этот термин не используется в алгоритме, а нужен только для лучшего визуального восприятия.   &lt;br /&gt;
&lt;br /&gt;
Теперь в одно состояние перемещаем все ситуации, в которые идут &amp;lt;tex&amp;gt;\varepsilon&amp;lt;/tex&amp;gt;-переходы. Получаем [[Детерминированные конечные автоматы|ДКА]]:&lt;br /&gt;
&lt;br /&gt;
[[Файл:LRk_dfa.png|600px]]&lt;br /&gt;
&lt;br /&gt;
=== Заполнение управляющей таблицы ===&lt;br /&gt;
 &lt;br /&gt;
Пронумеруем правила для выполнения ''свертки'':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
(0)\ E_0 \to E\\&lt;br /&gt;
(1)\ E \to E + T\\&lt;br /&gt;
(2)\ E \to T\\&lt;br /&gt;
(3)\ T \to {\bf n} \\&lt;br /&gt;
(4)\ T \to (E) \\&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Управляющая таблица будет выглядеть так:&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;background-color:#CCC;margin:0.5px&amp;quot;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;E&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;T&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;(&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;)&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(3)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(4)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(5)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(0)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(2)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(2)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(2)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(3)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(3)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(3)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;4&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;6&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(3)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(4)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;7&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(3)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(4)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;6&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(5)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;s(8)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;7&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(1)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(1)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(1)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#EEE;padding:2px 30px&amp;quot;| &amp;lt;tex&amp;gt;8&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(4)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(4)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;r(4)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== LR(0)-разбора конкретной строки===&lt;br /&gt;
&lt;br /&gt;
Пример будет для строки &amp;lt;tex&amp;gt;(n_1+n_2)+n_3&amp;lt;/tex&amp;gt;&lt;br /&gt;
{| style=&amp;quot;background-color:#CCC;margin:0.5px&amp;quot;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Строка&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Стек&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;curState&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;curToken&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| &amp;lt;tex&amp;gt;T[curState,curToken]&amp;lt;/tex&amp;gt;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Комментарий&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;(n_1+n_2)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;(&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 4&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;|  Перенос &amp;lt;tex&amp;gt;&amp;quot;(&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;4&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;n_1+n_2)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;4&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;n_1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Перенос &amp;lt;tex&amp;gt;&amp;quot;n_1&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt; состояние. &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;+n_2)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ n_{1}3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;T \to \bf n&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;n_{1}3&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;4&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;T2&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt; состояние.  &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;+n_2)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ T2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;E \to T&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;T2&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;4&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;E6&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;6&amp;lt;/tex&amp;gt; состояние.  &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;+n_2)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ E6&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;6&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Перенос &amp;lt;tex&amp;gt;&amp;quot;+&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt; состояние. &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;n_2)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ E6\ +5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;n_2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Перенос &amp;lt;tex&amp;gt;&amp;quot;n_2&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt; состояние. &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ E6\ +5\ n_23&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 3 &amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;T \to \bf n&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;n_{2}3&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;T7&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;7&amp;lt;/tex&amp;gt; состояние.    &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ E6\ +5\ T7&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;7&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 1 &amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;E \to E + T&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;E6\ +5\ T7&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;4&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;E6&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;6&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;)+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ E6&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;6 &amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;)&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 8&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Перенос &amp;lt;tex&amp;gt;&amp;quot;)&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;8&amp;lt;/tex&amp;gt; состояние. &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ (4\ E6\ )8&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;8 &amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 4&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;T \to (E)&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;(4\ E6\ )8&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;T2&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ T2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 2&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;E \to T&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;T2&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;E1&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;+n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ E1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;+&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Перенос &amp;lt;tex&amp;gt;&amp;quot;+&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;n_3\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ E1\ +5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;n_3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;shift\ 3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Перенос &amp;lt;tex&amp;gt;&amp;quot;n_3&amp;quot;&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ E1\ +5\ n_33&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 3&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;T \to \bf n&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;n_33&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;T7&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;7&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ E1\ +5\ T7&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;7&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Свертка: &amp;lt;tex&amp;gt;E \to E + T&amp;lt;/tex&amp;gt;. Удаление из стека &amp;lt;tex&amp;gt;E1\ +5\ T7&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;0&amp;lt;/tex&amp;gt; состояние. Добавление в стек &amp;lt;tex&amp;gt;E1&amp;lt;/tex&amp;gt;. Переход в &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt; состояние.&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px;text-align: right;&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;0\ E1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;\$&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| &amp;lt;tex&amp;gt;reduce\ 0&amp;lt;/tex&amp;gt;&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 20px&amp;quot;| Так как свертка по нулевому правилу {{---}} осуществляем допуск.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
* [[Предиктивный синтаксический анализ]]&lt;br /&gt;
&lt;br /&gt;
== Источники информации ==&lt;br /&gt;
* Альфред Ахо, Рави Сети, Джеффри Ульман. Компиляторы. Принципы, технологии, инструменты. Издательство Вильямс, 2003. Стр. 301-326.&lt;br /&gt;
* [http://ict.edu.ru/ft/005128//ch7.pdf Терехов Ан.А., Вояковская Н., Булычев Д., Москаль А. Разработка компиляторов на платформе .NET {{---}} Восходящие анализаторы]&lt;br /&gt;
* [http://window.edu.ru/resource/974/69974/files/lang_trans.pdf Б.К.Мартыненко. Языки и трансляции. Стр. 198-223]&lt;br /&gt;
* [http://gas-teach.narod.ru/au/tfl/tfl13.pdf Лекции по теории формальных языков, LR(0)-, SLR(1)-, LR(1)- и LALR(1)-анализ ]&lt;br /&gt;
&lt;br /&gt;
[[Категория: Методы трансляции]]&lt;br /&gt;
[[Категория: Восходящий разбор]]&lt;/div&gt;</summary>
		<author><name>46.56.241.219</name></author>	</entry>

	</feed>