Иерархия Хомского формальных грамматик — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
м
Строка 5: Строка 5:
 
== Класс 0 ==
 
== Класс 0 ==
 
К нулевому классу Хомского относятся грамматики  <tex> \Gamma = \langle\Sigma, N, S \in N,P\subset N^{*}\times (\Sigma\cup N)^{*}\rangle</tex>, на которые не накладывается никаких ограничений, кроме указанных в определении понятия [[формальные грамматики]].
 
К нулевому классу Хомского относятся грамматики  <tex> \Gamma = \langle\Sigma, N, S \in N,P\subset N^{*}\times (\Sigma\cup N)^{*}\rangle</tex>, на которые не накладывается никаких ограничений, кроме указанных в определении понятия [[формальные грамматики]].
 
 
== Класс 1 ==
 
== Класс 1 ==
 
Класс 1 представлен '''неукорачивающими грамматиками.'''
 
Класс 1 представлен '''неукорачивающими грамматиками.'''
Строка 11: Строка 10:
 
|definition =
 
|definition =
 
'''Неукорачивающие грамматики''' - это [[формальные грамматики]],  
 
'''Неукорачивающие грамматики''' - это [[формальные грамматики]],  
всякое правило из <tex>P</tex> которых имеет вид <tex>\alpha\rightarrow\beta</tex>, где <tex>\alpha \in \{\Sigma\cup N\}^{+}</tex>, <tex>\beta \in \{\Sigma\cup N\}^{+}</tex>  и <tex>|\alpha|\leq|\beta|</tex>, кроме, возможно, <tex>S\rightarrow \epsilon</tex>. Однако, если такое правило существует, <tex>S</tex> не встречается в правых частях остальных правил.  
+
всякое правило из <tex>P</tex> которых имеет вид <tex>\alpha\rightarrow\beta</tex>, где <tex>\alpha \in \{\Sigma\cup N\}^{+}</tex>, <tex>\beta \in \{\Sigma\cup N\}^{+}</tex>  и <tex>|\alpha|\leq|\beta|</tex>, кроме, возможно, <tex>S\rightarrow \epsilon</tex>. Однако, если такое правило существует, <tex>S</tex> не встречается в правых частях остальных правил.}}
}}
 
 
 
 
== Класс 2 ==
 
== Класс 2 ==
 
Класс 2 составляют [[контекстно-свободные грамматики]].
 
Класс 2 составляют [[контекстно-свободные грамматики]].
 
{{Определение
 
{{Определение
 
|definition =
 
|definition =
Контекстно-свободные грамматики - это [[формальные грамматики]],  
+
'''Контекстно-свободные грамматики''' - это [[формальные грамматики]],  
всякое правило из <tex>P</tex> которых имеет вид <tex>A \rightarrow\beta</tex>, где <tex>A\in N </tex>, <tex>\beta \in \{\Sigma \cup N\}^{+}</tex>.
+
всякое правило из <tex>P</tex> которых имеет вид <tex>A \rightarrow\beta</tex>, где <tex>A\in N </tex>, <tex>\beta \in \{\Sigma \cup N\}^{+}</tex>.}}
}}
 
 
 
 
== Класс 3 ==
 
== Класс 3 ==
 
Класс 3 составляют [[праволинейные(автоматные) грамматики]].
 
Класс 3 составляют [[праволинейные(автоматные) грамматики]].
 
{{Определение
 
{{Определение
 
|definition =
 
|definition =
Праволинейные(автоматные) грамматики - это [[формальные грамматики]],  
+
'''Праволинейные(автоматные) грамматики''' - это [[формальные грамматики]],  
всякое правило из <tex>P</tex> которых имеет вид <tex>A \rightarrow tB</tex> либо <tex>A \rightarrow t</tex>, где <tex>A\in N</tex>,<tex>B\in N</tex>, <tex>t\in \Sigma </tex>.
+
всякое правило из <tex>P</tex> которых имеет вид <tex>A \rightarrow tB</tex> либо <tex>A \rightarrow t</tex>, где <tex>A\in N</tex>,<tex>B\in N</tex>, <tex>t\in \Sigma </tex>.}}
}}
 

Версия 01:15, 29 октября 2010

Определение:
Иерархия Хомского — классификация формальных языков и формальных грамматик, согласно которой они делятся на 4 класса по их условной сложности.

Класс 0

К нулевому классу Хомского относятся грамматики [math] \Gamma = \langle\Sigma, N, S \in N,P\subset N^{*}\times (\Sigma\cup N)^{*}\rangle[/math], на которые не накладывается никаких ограничений, кроме указанных в определении понятия формальные грамматики.

Класс 1

Класс 1 представлен неукорачивающими грамматиками.

Определение:
Неукорачивающие грамматики - это формальные грамматики, всякое правило из [math]P[/math] которых имеет вид [math]\alpha\rightarrow\beta[/math], где [math]\alpha \in \{\Sigma\cup N\}^{+}[/math], [math]\beta \in \{\Sigma\cup N\}^{+}[/math] и [math]|\alpha|\leq|\beta|[/math], кроме, возможно, [math]S\rightarrow \epsilon[/math]. Однако, если такое правило существует, [math]S[/math] не встречается в правых частях остальных правил.

Класс 2

Класс 2 составляют контекстно-свободные грамматики.

Определение:
Контекстно-свободные грамматики - это формальные грамматики, всякое правило из [math]P[/math] которых имеет вид [math]A \rightarrow\beta[/math], где [math]A\in N [/math], [math]\beta \in \{\Sigma \cup N\}^{+}[/math].

Класс 3

Класс 3 составляют праволинейные(автоматные) грамматики.

Определение:
Праволинейные(автоматные) грамматики - это формальные грамматики, всякое правило из [math]P[/math] которых имеет вид [math]A \rightarrow tB[/math] либо [math]A \rightarrow t[/math], где [math]A\in N[/math],[math]B\in N[/math], [math]t\in \Sigma [/math].