什么是网站权重/免费大数据网站
Chomsky文法分类体系
文章目录
- Chomsky文法分类体系
- 0型文法(Type-0 Grammar)
- 1型文法(Type-1 Grammar)
- 2型文法(Type-2 Grammar)
- 3型文法(Type-3 Grammar)
- 四种文法之间的关系
0型文法(Type-0 Grammar)
α→β\alpha \rightarrow{\beta} α→β
无限制文法/短语结构文法
∀α→β∈P\forall \alpha \rightarrow \beta \in P∀α→β∈P,α\alphaα中至少包含1个非终结符。
由0型文法生成的语言称为0型语言。
1型文法(Type-1 Grammar)
α→β\alpha \rightarrow{\beta} α→β
上下文有关文法(Context-Sensitive Grammar):
7
- ∀α→β∈P,∣α∣≤∣β∣\forall \alpha \rightarrow{\beta} \in P,|\alpha| \le |\beta|∀α→β∈P,∣α∣≤∣β∣
- 产生式的一般形式:α1Aα2→α1βα2(β≠ϵ)\alpha_1 A\alpha_2 \rightarrow{\alpha_1\beta \alpha_2} (\beta \ne \epsilon)α1Aα2→α1βα2(β̸=ϵ)
- 由上下文有关文法(1型文法)G产生的语言L(G),称为1型语言(上下文有关语言)。
2型文法(Type-2 Grammar)
α→β\alpha \rightarrow{\beta} α→β
上下文无关文法(Context-Free Grammar):
- ∀α→β∈P,a∈VN\forall \alpha \rightarrow{\beta} \in P, a \in V_N∀α→β∈P,a∈VN(产生式的左部一定要是非终结符)
- 产生式的一般形式:A→βA \rightarrow{\beta}A→β
例如:
- S→L∣LTS \rightarrow{L | LT}S→L∣LT
- T→L∣D∣TL∣TDT \rightarrow{L | D | TL | TD}T→L∣D∣TL∣TD
- L→a∣b∣c∣...∣zL \rightarrow{a|b|c|...|z}L→a∣b∣c∣...∣z
- D→0∣1∣2∣..∣9D \rightarrow{0|1|2|..|9}D→0∣1∣2∣..∣9
由上下文无关文法生成的语言称为上下文无关语言(2型语言)
3型文法(Type-3 Grammar)
3型文法又称正则文法(Regular Grammar):
- 右线性文法:A→ωBA \rightarrow{\omega B}A→ωB或A→ωA \rightarrow{\omega}A→ω
- 左线性文法:A→BωA \rightarrow{B \omega}A→Bω或A→ωA \rightarrow{\omega}A→ω
左线性文法和右线性文法都称为正则文法。
由于左部一定是非终结符,所以3型文法满足2型文法。
正则文法能描述程序设计语言的多数单词。
四种文法之间的关系
- 逐级限制
- 0型文法:α\alphaα中至少包含1个非终结符
- 1型文法:∣α∣≤∣β∣|\alpha| \le |\beta|∣α∣≤∣β∣
- 2型文法:α∈VN\alpha \in V_Nα∈VN
- 3型文法:A→ωBA \rightarrow{\omega B}A→ωB或A→ωA \rightarrow{\omega}A→ω(右线性)。A→BωA \rightarrow{B \omega}A→Bω或A→ωA \rightarrow{\omega}A→ω(左线性)