绪论
莱布尼茨曾经提出过一个非常伟大的设想:
“我们可以为一切对象指派其文字数字(everything can be assigned its characteristic number),这样便能够构造一种语言或者文字,它能够服务于发现和判定的艺术,犹如算术之于数,代数之于量的作用。我们必然会创造出一种人类思想的字母,通过对字母表中字母的对比和由字母组成的词的分析,我们可以发现和判定万物。”[1]
这个伟大的设想,被很多学者称为“莱布尼茨之梦”,几百年来众多科学家和思想家为之努力奋斗。
在莱布尼茨本人看来,要实现这个伟大的设想,有两个关键部分:一是“普遍文字”,另一个是“理性演算”。而无论是普遍文字,或是理性演算,其实都离不开自然语言、逻辑与计算三个方面。普遍文字是期望用一种人工符号的方法,来表达人类思想(迄今为止,能够接近做到这一点的,只有人类的自然语言)。理性演算是一种逻辑机制,通过理性演算,可以进行自动的发现和判定(人类和其他高等生物所具备的一种能力,现代计算机最为接近地模拟了这一种机制)。
曾有不少学者,依据哥德尔不完全性定理,认为莱布尼茨之梦已逝。[2]无论这种推论正确与否,不可否认的是,正是在莱布尼茨之梦的启示下,诞生了现代数理逻辑:布尔把逻辑变成代数,弗雷格创立谓词逻辑以及皮尔斯、施罗德、埃尔布朗、珀斯特、罗素等人对逻辑的创新;也正是在莱布尼茨之梦的启示下,图灵用“自动机”和“指令表语言”去契合莱布尼茨的“普遍文字”和“理性演算”,构造出现代计算机的理论原型——图灵机。
自从现代计算机诞生以来[3],语言、逻辑与计算的交叉与互动进入一个新的阶段,在逻辑学研究中,出现了从人为主体到计算机为主体的转向,以自然语言的形式语法和语义的计算机信息处理为旨趣,产生了一系列重大的理论创新:
①20世纪70年代,蒙太格认为自然语言与人工语言并不存在本质的差异,提出了普遍语法思想,开创了自然语言形式语义学研究的新思路。
②20世纪80年代初,巴威斯(Jon Barwise)和库珀(Robin Cooper)依据自然语言中的量化句,创立广义量词理论。
③汉斯·坎普(H.Kamp)通过递增的动态方式,处理自然语言的语义,并在自然语言语句结构分析树和语义模型之间,插入一个成为话语表征结构(Discourse Representation Structure)的中间层次作为语义表达式,构造了话语表征理论。
④巴威斯和佩里(J.Perry)在对蒙太格语法的批判下,将“意义”视为情境类型之间的关联,通过强调“信息流动”,从而创立了情境语义学。
⑤20世纪80年代末90年代初,莫特盖特(Michael Moortgat)基于类型逻辑的方法(type-logical approach),通过对自然语言的形式与语义组合开发一个统一的演绎阐释,发展出了范畴类型逻辑。
⑥斯蒂德曼(Steedman)在范畴语法的基础上,通过增加函子范畴的组合运算,产生了组合范畴语法(Combinatory Categorial Grammar)。
在计算机科学的研究中,逻辑作为“计算机科学的演算”[4],极大地促进了计算机科学的创新发展:
①布尔逻辑成为集成电路设计的一个核心理论,正如赫尔曼·戈德斯坦(Herman Goldstine)所说:“正是通过它[布尔逻辑],使得电路设计从一门艺术变成一门科学。”[5]同时,也正是由于布尔逻辑的思想融汇在开关电路的设计中,才会在集成电路领域形成著名的摩尔定律[6],才使得集成电路和技术的创新发展得以实现。
②一阶逻辑、逻辑类型论和Lambda演算与编程语言的深度交叉,形成了程序设计理论的核心。形式语法(formal syntax)、类型系统(type system)和形式语义(formal semantics)成为程序设计语言的基础。
③逻辑的证明论模型论思想与计算机软硬件系统的互动,构成了计算机系统正确性验证理论,利用霍尔逻辑、分离逻辑、Isabelle、Coq等理论与工具,验证大型软硬件系统的正确性。
然而,从现状而言,语言、逻辑与计算之间的交叉融合仍然过于“温和”,正如在粒子对撞机中所发生的一样,只有能量足够高,粒子对撞才能产生巨大的相互作用反应率,从而发现新粒子。而语言、逻辑与计算之间的碰撞还远不够“激烈”,无论是重温“莱布尼茨之梦”,或者是研究现代的“人工智能”难题,都离不开语言、逻辑与计算之间的“高能”交互与深度融合。
本书的研究正是从“语言、逻辑与计算”的互动视角,以组合范畴语法为主要的研究对象,一方面从语言与逻辑的互动视角,研究组合范畴语法如何形式化描述汉语的语法,并将汉语的分析转化为逻辑的演绎。另一方面从逻辑与计算的视角,从宾州中文树库转换生成汉语CCG树库,并给出汉语CCG在计算语言学中的应用价值。本书的主要内容如下:
第一,从逻辑本身的发展角度,研究组合范畴语法的发展脉络(第一章)。组合范畴语法是从范畴语法发展而来,在古典范畴语法中,主要刻画的是自然语言的毗邻,在此基础上,兰贝克演算形成句法演算,最后通过增加组合规则,形成组合范畴语法。
第二,从语言与逻辑的互动视角,研究组合范畴语法如何形式化描述汉语的语法,并将汉语的分析转化为逻辑的演绎(第二章)。除了表述汉语的基本词序和名词短语、动词短语以及语句,而且形成对基本组合范畴规则的补充。
第三,从逻辑与计算的视角,从宾州中文树库转换生成汉语CCG树库(第三章)。宾州中文树库转换过程中,主要通过预处理、标记、二分、赋范畴和修复阶段进行转换。
第四,总结了CCG的应用价值(第四章)。从语法理论视角看,CCG是一种词汇形式化的方法;从计算语言学视角看,CCG属于一类适度上下文相关文法;从逻辑语义学视角看,CCG在句法与语义的接口方面非常融洽。无论是CCG语言的、计算的,还是逻辑的特征,都使得 CCG非常适用于自然语言信息处理,对于自然语言的处理与语义理解具有很好的理论和实际价值。
[1] Leibniz,Zur allgemeinen Charakteristik.Hauptschriften zur Grundlegung der Philosophie,Philosophische Werke Band 1,trans.,Artur Buchenau.Hamburg:Felix Meiner,1966,pp.30-31.
[2] 参见[美]戴维斯《逻辑的引擎》,张卜天译,湖南科学技术出版社2005年版。
[3] 以1936年图灵的《论可计算数及其在判定问题中的应用》和1946年第一台电子计算机ENIAC的诞生为标志。
[4] Manna Z.and Waldinger R.,The Logical Basis for Computer Programming,Boston:Addison-Wesley,1985,pp.67-72.
[5] Goldstine and Herman H.,The computer from Pascal to von Neumann,NewJersey:Princeton University Press,1972,p.365.
[6] 摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出来的。其大致内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18—24个月便会增加一倍,性能也将提升一倍。