zyskm用梦想丈量人生,用奔跑丈量激情

Chomsky文法

看Chomsky的书是因为在编译原理课程中多次提到这个人,这是个变态天才,神一般的存在,而且还是活的。
Chomsky的语言学理论观点在语言学、心理学和哲学领域都产生了广泛而深刻的影响。Chomsky的哲学思想是一个贯穿了唯实论、自然主义和心智主义的连贯的、完整的体系。这一体系的核心是内在语言理论。但是这一理论观点与传统观点分歧很大 ,因此遭受到哲学界的强烈攻击。Chomsky正是在这些争论的过程中不断地发现问题并对自己的理论和观点进行修改和补充 ,从而使其哲学系统乃至语言学理论系统更趋完善。哲学问题咱不关心这么无聊的问题留给哲学家们去扯。

理论方法
Chomsky语言学的理论方法概况起来讲,是自然科学中形式主义的演绎方法,用Chomsky自己的话讲,叫伽利略研究风格(Galileo Style),像伽利略为宇宙建立抽象的数学模型一样,构建有关语言知识的抽象数学模型,相信类似数学一样的形式主义的演绎推理模型具有自足自明的真理性。Chomsky的语言研究所追求的是从世界各种语言五花八门的句子样式中抽象出几个简单的句法规则。

Chomsky的句法结构一书中把语言学看成跟自然科学中的其他科学一样,可以从假设出发,进行推演并形式化。换句话说,非经验主义是可能的。《句法结构》有一半篇幅用于英语语法的形式化。非经验主义和形式化是转换生成语法的首要标志。
 
把句法关系作为语言结构的中心并以此说明语句的生成是这场革命的又一表现。为了描写和解释语言现象,Chomsky在《句法结构》中论证了语法的生成能力,认为应该把语法看成是能生成无限句子的有限规则系统。
 
它以"核心句"为基础,通过转换规则描写和分析不同句式之间的内在联系。该书分析了以"马尔可夫过程"为基础的通讯理论,认为它只能生成有限状态的语法,而这种"有限状态的语法"不能生成象英语这种语言里含有不连续结构的所有合乎语法的句子。基于此,乔姆斯基提出了转换语法模式,认为它才能生成所有合乎语法的句子而不会生成不合乎语法的句子。转换语法模式由短语结构规则、转换规则、语素音位规则三套规则构成。
 
短语结构规则有三种:合并、递归、推导式,其基本形式是x→y 。→读作"改写",这个公式就是将x改写成y。短语结构规则生成的是"核心语符列",不经过转换直接由这种语符列得出的基本句型叫"核心句"。
 
转换规则包括:移位、删略、添加。最后运用语素音位规则得出实际说出的句子。这三套规则中,最引人注目的是转换规则,因为短语结构规则和语素音位规则实际上继承了描写语言学的"直接成分分析"和语素音位的分析,转换是一种创新,它使语法具有更强的解释力。
 
《句法结构》把语义排除在语法之外,这一时期的理论框架不包括语义部分。乔姆斯基认为,语法理论不应该建立在语义的基础上,而应该用某种严格的、客观的方法去代替对于模糊的语义的依赖。不过这一理论在后来的发展中做了重大的修正。

Chomsky 定义的四种形式语言文法中, 0 型文法又称为 ( A )文法; 1 型文法又称为 ( C ) 文法; 2 型语言可由 ( G ) 识别。
A .短语结构文法 B 前后文无关文法 C 前后文有关文法 D 正规文法
E 图灵机 F 有限自动机 G 下推自动机
文法是用来定义语言的一个模型,常用的文法体系为Chomsky文法体系。
 
文法定义
 
文法G(Grammar)是一个四原组,G=(N,T,P,S),N(Non-terminator)是非终结符集合,T(Terminator)是终结符集合,P(Production)是产生式集合,S(Start)是起始符
 
其中:
 
N 交 T = 空集
 
P 是形式为 α -> β 的产生式
 
   α ∈  (N∪T)*N+(N∪T)*,也就是说α中必须有一个非终结符
 
   β ∈  (N∪T)* ,也就是说β可以是空串
 
S∈N
 
 
 
分类
 
0型文法(短语文法或无限制文法),识别0语言的机器叫做图灵机

  定义:P中产生式a-->b,其中a属于V正闭包且至少含有一个非终结符,b属于V星闭包

  注:任何0型文法都是可递归可枚举的

    对0型文法作某些限制,可以得到其他文法的定义

1型文法 又称上下文有关文法。生成式形式为 α->β, 且 |α| < |β| 并且不存在 A->ε
 
2型文法 又称上下文无关文法。生成式形式为 A->α,即左边必须只有一个非终结符
 
3型文法 又称正则文法。
 
             生成式 A->wB或A->w,称为右线性文法
 
             生成式 A->Bw或A->w,称为左线性文法
 
0型文法 对生成式没有任何限制的文法称为0型文法。从0到3都是包含的关系,但是有特例,包含  A->ε 产生式的2,3型文法不属于1型文法。
 
四种文法产生的语言分别称为 上下文有关语言,上下文无关语言,正则语言,无限制性语言。
 
 
 
2型语言的表示法
 
2型语言是很重要的一种语言,除了用四元组的方法表示,此处再介绍两种表示方法。
 
当人们要解释或者讨论程序设计语言本身时,经常又需要一种语言,被讨论的语言叫做对象语言,即某种程序设计语言,讨论对象语言的语言称为元语言,即元语言是描述语言的语言。BNF范式通常被作为讨论某种程序设计语言语法的元语言,而语法图是与BNF范式的描述能力等价的另一种文法表示形式,因其直观性而经常采用。
 
(1)巴科斯范式(Backus Normal Form,BNF)
 
2型文法生成式左端只有一个非终结符,所以可以把左端相同的生成式合并在一起,右端用|隔开,用::=代替->,所有非终结符用<>括起来,这是Backus为了描述AIGOL语言首次提出并使用的。
 
用BNF描述十进制整数的生成语法:
 
<无符号整数> ::= <数字>|<数字><无符号整数>
 
<数字> ::= 0|1|2|3|4|5|6|7|8|9
 
(2)语法图
 
语法图有四种基本形式
 
(3)推导树
 
2型文法还经常用推导树表示

posted on 2013-06-24 11:25 zyskm 阅读(2527) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: