Редактирование: Конструирование Компиляторов, Теоретический минимум (2009)

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

ПРЕДУПРЕЖДЕНИЕ: Длина этой страницы составляет 30 килобайт. Страницы, размер которых приближается к 32 КБ или превышает это значение, могут неверно отображаться в некоторых браузерах. Пожалуйста, рассмотрите вариант разбиения страницы на меньшие части.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 1: Строка 1:
''см. также [[Конструирование Компиляторов, Теоретический минимум|ответы на вопросы теоретического минимума 2007 года]], [[Конструирование Компиляторов, Определения|список определений]].''
''см. также [[Конструирование Компиляторов, Теоретический минимум|ответы на вопросы теоретического минимума 2007 года]], [[Конструирование Компиляторов, Определения|список определений]].''
-
== Алфавит ==
 
- 
-
Алфавит - конечное множество символов
 
- 
== Определение грамматики ==
== Определение грамматики ==
-
Грамматика <math>~G = (N,T,P,S)</math> - четверка множеств, где
+
Грамматика G = (N,T,P,S) - четверка множеств, где
-
* <math>~N</math> - алфавит нетерминальных символов
+
* N - алфавит нетерминальных символов
-
* <math>~T</math> - алфавит терминальных символов, <math>N \cap T = \empty</math>;
+
* T - алфавит терминальных символов, <math>N \cap T = \empty</math>;
-
* <math>~P</math> - множество правил вида <math>\alpha \rarr \beta, \alpha \in ( N \cup T)^*N(N \cup T)^*, \beta \in (N \cup T)^*</math>
+
* P - множество правил вида &alpha; &rarr; &beta;, &alpha; &isin; ( N &cup; T)*N(N &cup; T)*, &beta; &isin; (N &cup; T)*
-
* <math>S \in N</math> - начальный символ или аксиома грамматики
+
* S &isin; N - начальный символ или аксиома грамматики
== Определение грамматик типа 0 по Хомскому ==
== Определение грамматик типа 0 по Хомскому ==
-
Если на грамматику <math>~G = (N, T, P, S)</math> не накладываются никакие ограничения, то её называют грамматикой типа 0, или грамматикой без ограничений.
+
Если на грамматику G = (N, T, P, S) не накладываются никакие ограничения, то её называют грамматикой типа 0, или грамматикой без ограничений.
== Определение грамматик типа 1 (неукорачивающих) по Хомскому ==
== Определение грамматик типа 1 (неукорачивающих) по Хомскому ==
Если
Если
-
# Каждое правило грамматики, кроме <math>S \rarr \epsilon </math> , имеет вид <math>\alpha \rarr \beta, |\alpha| \le |\beta|</math>
+
# Каждое правило грамматики, кроме S &rarr; &epsilon;, имеет вид &alpha; &rarr; &beta;, |&alpha;| &le; |&beta;|
-
# В том случае, когда <math>S \rarr \epsilon \in P</math>, символ <math>~S</math> не встречается в правых частях правил
+
# В том случае, когда S &rarr; &epsilon; &isin; P, символ S не встречается в правых частях правил
то грамматику называют грамматикой типа 1, или неукорачивающей.
то грамматику называют грамматикой типа 1, или неукорачивающей.
- 
-
== Грамматика типа 2 (Контекстно-свободная, КС) по Хомскому ==
 
- 
-
Грамматика типа 2 (Контекстно-свободная, КС) - грамматика, где каждое правило <math>p \in P</math> имеет вид <math>A \rarr \alpha</math>, где <math> A \in N, \alpha \in (N \cup T)^*</math>
 
- 
-
== Грамматика типа 3 (Праволинейная) по Хомскому ==
 
- 
-
Грамматика типа 3 (Праволинейная) - грамматика, где <math> \forall p \in P </math> имеет вид либо <math> A \rarr xB </math>, либо <math> A \rarr x </math>, где <math> A,B \in N, x \in T^* </math>
 
== Определение детерминированной машины Тьюринга ==
== Определение детерминированной машины Тьюринга ==
Строка 38: Строка 26:
* F &sube; Q — множество конечных состояний
* F &sube; Q — множество конечных состояний
-
 
+
== Определение недетерминированной машины Тьюринга ==
 +
'''Недетерминированная машина Тьюринга''' — T<sub>m</sub> = (Q, Г, &Sigma;, D, q<sub>0</sub>, F)
 +
* Q — конечное множество состояний
 +
* Г — конечное множество символов (конечный алфавит)
 +
* &Sigma; — входной алфавит, &Sigma; &sube; Г\{b} (b - пустой символ)
 +
* D — правила перехода
 +
** D: (Q\F) &times; Г &rarr; 2<sup>Q &times; Г &times; {L, R}</sup>
 +
* q<sub>0</sub> &isin; Q — начальное состояние
 +
* F &sube; Q — множество конечных состояний
== Определение конфигурации машины Тьюринга ==
== Определение конфигурации машины Тьюринга ==
Строка 58: Строка 54:
'''Регулярное множество''' в алфавите T определяется следующим образом:
'''Регулярное множество''' в алфавите T определяется следующим образом:
-
* <math> \varnothing </math> — регулярное множество в алфавите T
+
* {} (пустое множество) — регулярное множество в алфавите T
-
* <math> ~\{a\} </math> — регулярное множество в алфавите T для каждого a &isin; T
+
* {a} — регулярное множество в алфавите T для каждого a &isin; T
-
* <math> ~\{\epsilon\} </math> — регулярное множество в алфавите T
+
* {&epsilon;} — регулярное множество в алфавите T
-
* Если P и Q — регулярные множества в алфавите T, то регулярны множества
+
* Если P и Q — регулярные множества в алфавите T, то таковы же и множества
-
** <math>~P \cup Q</math> (объединение)
+
** P &cup; Q (объединение)
-
** <math>~PQ</math> (конкатенация, <math>\{ pq | p \in P, q \in Q\}</math>)
+
** PQ (конкатенация, то есть множество таких pq, что p &isin; P, q &isin; Q)
-
** <math>~P^*</math> (итерация: <math>P^* = \{\epsilon\} \cup P \cup PP \cup PPP \cup ...)</math>
+
** P* (итерация: P* = {&epsilon;} &cup; P &cup; PP &cup; PPP &cup; &hellip;)
* Ничто другое не является регулярным множеством в алфавите T
* Ничто другое не является регулярным множеством в алфавите T

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Шаблоны, использованные на этой странице:

Разделы