- 签证留学 |
- 笔译 |
- 口译
- 求职 |
- 日/韩语 |
- 德语
也就是说,在位置1和位置4之间有一个数特征为3s的句子,其结构为:
s(np(art(the), n(dog)), vp(v(cried)))
该结构就是图1所示句法分析树的一种表示方法。
语法2
图1 结构的树表示
为了制定语法,大多数基于逻辑的语法系统都会提供更便利的表示格式,这种格式可以自动地转换为和语法2类似的PROLOG子句。每个谓词上都有词的位置参数,它们可以由系统自动添加,因此可以忽略。类似地,所有表示终结符的谓词都可以由系统定义,因此,系统可以自动产生这些规则。这些缩减方式都可以表示为一种特定的格式,我们称之为确定子句语法(DCG,definite clause grammar)。
例如,要制定语法2,只需要给出下面三条DCG规则(符号“→”通常用于标记DCG规则):
s(Number, s(Np, Vp)) → np(N1, Np), vp(N2, Vp)
np(Number, np(Art, N)) → art(N1, Art), n(N2, N)
vp(Number, vp(Verb)) → v(Number, Verb)
在形式化方面,这个结果和的扩充上下文无关文法很相似。如果采用“特征/值”的形式表示结构,这种相似性会更加显著。现在,我们就采用特征结构作为单独的参数,并代替所有位置的参数。因此,可以得到一个DCG,如语法3所示。其中,方括号表示的是PROLOG中的表结构。注意,S,NP和VP采用同一个变量作为其参数。所以,只有在它们的agr特征完全一致的前提下,规则1才可以使用。
语法3 DCG形式
显然,只有每个语法成分按照相同的顺序来指定特征值,并保证特征表的一致性,这种表示才能有效。比如,如果S中包括了“agr”特征、“inv”特征和“vform”特征,那么使用S的每条规则都必须按照同一顺序来指定所有这些特征。在实际语法中,这是非常困难的,因为每个语法成分都会有多种可能的特征,而且每种特征都必须在各种情况下列出来。解决这个问题的一个办法是对DCG规则到PROLOG规则的转换程序进行扩展,使该转换程序能够采用变量值添加任何一个未确定的特征。采取这种方法,用户只需要给出那些重要的特征。
责任编辑:admin