- 自动机理论教程
- 自动机理论 - 首页
- 自动机理论 - 入门
- 自动机理论 - 历史
- 自动机理论 - 应用
- 自动机理论术语
- 自动机中字符串的基础知识
- 自动机的集合论
- 语言和文法
- 计算理论中的文法
- 由文法生成的语言
- 乔姆斯基文法分类
- 有限自动机
- 确定性有限自动机 (DFA)
- 非确定性有限自动机 (NFA)
- 从 NFA 到 DFA 的转换
- DFA 的最小化
- 穆尔机与米利机
- DFA 的补集
- 正则表达式
- 自动机中的正则表达式
- 自动机中的 Arden 定理
- 将正则表达式转换为有限自动机
- 正则文法的泵引理
- 计算理论中的正则集
- 上下文无关文法
- 上下文无关文法 (CFG)
- 上下文无关文法中的二义性
- 上下文无关语言的闭包性质
- 简化上下文无关文法
- 乔姆斯基范式 (CNF)
- 格雷巴赫范式 (GNF)
- 上下文无关文法的泵引理
- 下推自动机
- 下推自动机 (PDA)
- 下推自动机的接受
- 由 CFG 构造 PDA
- 下推自动机和语法分析
- 图灵机
- 图灵机 (TM) 基础知识
- 图灵机接受的语言
- 多磁带图灵机
- 多轨迹图灵机
- 非确定性图灵机
- 半无限带图灵机
- 线性有界自动机 (LBA)
- 可计算性和不可判定性
- 图灵语言的可判定性
- 不可判定语言
- 图灵机停机问题
- 计算理论中的 Rice 定理
- Post 对应问题 (PCP)
- 自动机理论资源
- 自动机理论 - 快速指南
- 自动机理论 - 资源
- 自动机理论 - 讨论
乔姆斯基文法分类
根据诺姆·乔姆斯基的理论,共有四种类型的文法:0型、1型、2型和3型。下表显示了它们之间的区别:
文法类型 | 被接受的文法 | 被接受的语言 | 自动机 |
---|---|---|---|
0型 | 无限制文法 | 递归可枚举语言 | 图灵机 |
1型 | 上下文有关文法 | 上下文有关语言 | 线性有界自动机 |
2型 | 上下文无关文法 | 上下文无关语言 | 下推自动机 |
3型 | 正则文法 | 正则语言 | 有限状态自动机 |
请看下图,它显示了每种文法的范围:
3型文法
3型文法生成正则语言。3型文法的左边必须只有一个非终结符,右边由单个终结符或单个终结符后跟单个非终结符组成。
产生式必须是X → a 或 X → aY的形式
其中X, Y ∈ N(非终结符)
且a ∈ T(终结符)
如果S不出现在任何规则的右侧,则允许规则S → ε。
示例
X → ε X → a | aY Y → b
2型文法
2型文法生成上下文无关语言。
产生式必须是A → γ的形式
其中A ∈ N(非终结符)
且γ ∈ (T ∪ N)*(终结符和非终结符的字符串)。
这些文法生成的语言可以被非确定性下推自动机识别。
示例
S → X a X → a X → aX X → abc X → ε
1型文法
1型文法生成上下文有关语言。产生式必须是
α A β → α γ β
的形式,其中A ∈ N(非终结符)
且α, β, γ ∈ (T ∪ N)*(终结符和非终结符的字符串)
字符串α和β可以为空,但γ不能为空。
如果 S不出现在任何规则的右侧,则允许规则S → ε。这些文法生成的语言可以被线性有界自动机识别。
示例
AB → AbBc A → bcA B → b
0型文法
0型文法生成递归可枚举语言。产生式没有限制。它们是任何短语结构文法,包括所有形式文法。
它们生成的语言可以被图灵机识别。
产生式可以是α → β的形式,其中α是至少包含一个非终结符的终结符和非终结符的字符串,并且α不能为null。β是终结符和非终结符的字符串。
示例
S → ACaB Bc → acB CB → DB aD → Db
广告