Chomsky Hierarchy(乔姆斯基层次结构)是由语言学家诺姆·乔姆斯基(Noam Chomsky)提出的一种分类语言文法的层次结构。这层次结构将形式文法(formal grammars)分为四个主要类型,每个类型都对应着一类编程语言的生成能力。这些类型由最强到最弱分别是:
- 无限制文法(Unrestricted Grammar): 这是最强大的一类,没有任何限制,可以生成任何可被图灵机识别的语言。
- 上下文有关文法(Context-Sensitive Grammar): 生成上下文有关语言,其规则对应的产生式中左侧和右侧的符号数量可以不相等,但必须根据上下文信息确定替代规则。
- 上下文无关文法(Context-Free Grammar,CFG): 生成上下文无关语言,产生式的规则不依赖于上下文。这是编程语言中常用的一种文法类型。
- 有限状态自动机文法(Regular Grammar): 生成正则语言,这是最弱的一类,对应正则表达式的描述能力。
这个层次结构表明,随着文法类型的减小,其生成语言的能力也随之减小。更弱类型的文法对应着更受限制、更容易分析的语言结构。这种分类有助于理解不同类型语言的特性,并在计算理论和编译原理中发挥重要作用。例如,编程语言的语法通常可以由上下文无关文法来描述,而正则表达式则对应于有限状态自动机。
