第1章 引言
哲学逻辑,顾名思义,是一门既与哲学有关又与逻辑学有关的学科。它的英文名是 philosophical logic。直接翻译过来,就是“哲学的逻辑”。简单地说,哲学逻辑是这样一门学科,它以现代的、数学化的符号逻辑为工具来探讨哲学问题。实际上,现代哲学逻辑探讨的问题,已经远远超出了哲学的范围。哲学逻辑提供的技术,已经广泛应用于计算机科学、人工智能、语言学、经济学、法学等领域。
1.1 逻辑是什么
什么是“逻辑”?这个问题本身不是一个逻辑学的问题。但是,这个问题常会给初学者带来实际的困扰。当学习哲学逻辑时,这个问题带来的困扰变得更加突出。因为很快你就发现,哲学逻辑并不是单个逻辑,而是由很多个相互之间差别很大的逻辑共同组成。那么,为什么这些逻辑都可以被称为“逻辑”呢?“逻辑”到底是什么?这个问题并没有一个统一的、公认的答案。回答这个问题也不是本书关注的内容。但是,为了方便初学者理解和讨论本书的内容,我们在这里给出一个适用于本书内容的、“逻辑”的工作定义。
要回答“逻辑”是什么,*好的方式是考察已知的、公认的逻辑。命题逻辑往往是数理逻辑课程中第一个被介绍的逻辑。命题逻辑是大多数已有逻辑的基础。我们可以有把握地说,命题逻辑是一种逻辑。
命题逻辑由它的句法定义和语义定义组成。它的句法提供了命题逻辑的语言,这个语言由它所有的合式公式组成。命题逻辑的语言与我们的自然语言不同,它是人工定义的、严格的形式语言。这种人工语言严格遵循它的公式形成规则,只有按照形成规则形成的合式公式才是语言中的合法表达。在“逻辑”的定义中,首先要说明,一个逻辑总是提供一种人工严格定义的形式语言。但是,并不是任何人工严格定义的形式语言都可以称为一个逻辑语言。我们随意定义一个语言如下:
(1)是一个公式;×是一个公式。
(2)如果φ和ψ是公式,则φφψ也是公式。
(3)所有公式只由以上两条规则生成。
这个语言是一个人工严格定义的形式语言。按照它的公式形成规则,显然, ×是公式;××.×× ×是公式;但×× ×不是公式。但是,我们很难把这个语言作为一个有意义的逻辑语言。我们很难想象这个语言能够表达任何有意义的句子或性质。
人工严格定义的形式语言和我们的自然语言一样,都是用来“说事情”的。我们不应该天马行空地定义形式语言。通常来讲,我们定义的形式语言总是来源于自然语言,在自然语言中有它对应的对象。
因此,我们需要扩充关于“逻辑”的定义如下:一个逻辑是一种人工严格定义的形式语言,这种语言用于表达给定讨论域(模型)的性质。例如,我们可以使用命题逻辑语言表达“如果由 A 可得到 B,那么由 B 的否定可得到 A 的否定”;我们可以使用一阶谓词逻辑语言表达“模型中所有个体都有 P 性质”“模型恰好只有两个个体”等关于模型的性质。用来建立形式语言和其模型之间的关系的,就是一个逻辑的语义定义。
按照逻辑的这个定义,显然,前面随意定义的那个语言不是一个逻辑语言,因为我们不能有意义地使用它讨论某个领域的性质。
在哲学逻辑中,逻辑语言的表达力是一个重要的问题。以一阶谓词逻辑为例,我们可以使用一阶谓词逻辑公式表达“模型中恰好有 n 个个体”(n 是任意非零自然数),但是,不存在一阶谓词逻辑的公式表达“模型中的个体是有穷多个”(使用紧致性定理可以证明这个一阶谓词逻辑的性质)。当然,我们可以使用自然语言表达“模型中的个体是有穷多个”这句话。但是,这个性质超出了一阶谓词逻辑语言的表达力。我们*后修订“逻辑”的工作定义如下:
一个逻辑是一种具有一定表达力的、人工严格定义的形式语言,这种语言用于表达给定讨论域(模型)的性质。
1.2 逻辑学史概述
图1.1 亚里士多德
逻辑学起源于古希腊哲学家亚里士多德(Aristotle,公元前384~前322年)。亚里士多德的三段论理论、四谓词理论等是古希腊逻辑学的代表成就,也代表着逻辑学的开端。这些理论至今仍有相当的影响。我们现在把亚里士多德开创的逻辑学及其后世的发展称之为传统逻辑或非形式逻辑,以区别于现代数学化、符号化的形式逻辑。亚里士多德认为,逻辑先于数学。亚里士多德的逻辑学论述主要收录在他的《工具论》,他认为,只有以逻辑为工具才能确立数学真理。作为一种“公元前”理论,他的三段论达到了令人叹服的准确性和深度,以近乎统治性的地位占据逻辑学研究两千多年,直到19世纪的布尔等人以全新的数学工具开展逻辑学研究,三段论理论中的某些不足之处才得以被鉴别出来。康德曾表示:“逻辑学自亚里士多德之后连一步都未能前行,因而从各方面看来都已终结。”
图1.2 莱布尼茨
现代的形式逻辑*早可追溯到德国哲学家、数学家莱布尼茨(Gottfried Wilhelm Leibniz,1646~1716年)的思想。首先,莱布尼茨是传统逻辑的继承者,并且在多方面推进了传统逻辑的发展。莱布尼茨的主谓词学说、关于直言三段论等的论述、对同一律原则的阐述、对或然性逻辑和概率推理的论述等贡献改革和发展了自亚里士多德以来的传统逻辑。
更重要地,莱布尼茨是现代符号逻辑的引路人和倡导者。莱布尼茨有感于充斥于哲学领域的争论,于17世纪提出建立一种数学化的逻辑学的思想。莱布尼茨观察到,在哲学的所有领域、讨论的所有问题上,都存在着不同程度的争论,而且尽管哲学家们的观点经常相互不一致,但他们对各自的观点都有着看起来十分合理的辩护。莱布尼茨不仅是一位大哲学家,同时也是一位大数学家。他和牛顿分别单独*立了微积分这一现代数学的基石。莱布尼茨看到,有一个领域内没有争议,这就是数学。一个数学证明,要么是对的,要么是错的。如果存在争议,那么争议的一方必定在某处存在误解。莱布尼茨由此建议,使用一种“通用的科学语言”,把哲学争论的过程用这种通用的科学语言写下来,然后大家坐下来按照数学的方式“算一算”,算出孰对孰错,从而解决哲学争论。也就是说,要把哲学论证过程像数学一样计算。莱布尼茨经常使用“普遍字符”这个术语。他认为,构建普遍字符,就是“找到一些字符或符号适合于表达我们的全部思想”,使得这些字符“构成一种既能够写作也能够言说的新语言”。
莱布尼茨给出了“通用的科学语言”“普遍字符”等想法。莱布尼茨本人构建的逻辑演算仍具有相当的局限性。直到将近200年后,数理逻辑的创立使得莱布尼茨的想法初步成为可能。承担“通用的科学语言”任务的,就是现代的数理逻辑和哲学逻辑。
图1.3 弗雷格
数理逻辑的主要创建者是19世纪末20世纪初德国数学家、哲学家弗雷格(Friedrich Ludwig Frege,1848~1925年)。弗雷格的工作奠定了分析哲学的基础,创立了现代符号逻辑。弗雷格创立数理逻辑的初衷,并不是为了实现莱布尼茨的理想,而是为了给数学寻找可靠的逻辑基础(我们将在介绍直觉主义逻辑时详细介绍数学基础问题)。弗雷格定义了命题逻辑和谓词逻辑,它们是整个现代形式逻辑的基础。
弗雷格的工作在其生前并未得到普遍承认,他本人也近乎默默无闻。但随后他的学说和思想成为20世纪学界热烈讨论的核心话题之一。他的思想对罗素和维特根斯坦的哲学影响很深。哲学家在研究罗素和维特根斯坦时,认识到弗雷格思想的重要性。现代逻辑学历史上的另一个中心人物是20世纪德国数学家哥德尔(Kurt Friedrich G.del,1906~1978年)。哥德尔在其硕士研究生期间证明了命题演算可靠性和完全性,然后在其博士论文中给出了一阶谓词演算的可靠性和完全性。哥德尔博士毕业几年后又证明了哥德尔不完全性定理、连续统一致性定理等一系列重要的、开创性的数理逻辑定理,使得他成为数理逻辑的理论奠基者。哥德尔在逻辑学的主要成就都是在其读书期间或刚毕业几年间取得的。他后期的兴趣转向了数学哲学。哥德尔一生著述极少,但他发表的每篇文章基本都是里程碑式的成果。
图1.4 哥德尔
20世纪初创立数理逻辑,是从传统逻辑到现代逻辑过渡的里程碑式节点。从此以后,逻辑学日益从以非形式逻辑为特点的传统逻辑,转向了以形式逻辑为特点的现代逻辑。另外,并非所有问题都适合使用严格的形式语言描述,我们有时仍需要求助于非形式逻辑。因此,非形式逻辑在当代仍然是一个活跃的学术研究领域,有着相当的生命力。
数理逻辑是一种把推理过程拿来计算和证明的学问。数理逻辑并不提供一个“通用的科学语言”。事实上,数理逻辑提供的是一个表达力相当有限的语言。它能够刻画的推理过程,仅仅是数学的推理过程。人的理性、知识、智能是一个层次多样、边界模糊、组成部分复杂的集合体。数学只是其中重要的组成部分之一。要使用严格的形式语言刻画这个复杂的集合体,我们需要在数理逻辑的基础上创建表达力更丰富、形式更多样的逻辑系统。这些逻辑系统都是当代逻辑学家向着创建“通用的科学语言”所做的努力,它们共同构成了现代的哲学逻辑。
1.3 从数理逻辑到哲学逻辑
哲学逻辑建基于数理逻辑,并超越数理逻辑成为一门单独的学问。数理逻辑的英文是 mathematical logic,直接的译义是“数学的逻辑”。数理逻辑探讨的是数学推理和数学证明中使用的逻辑。哲学逻辑则是“哲学的逻辑”(philosophical logic)。有些翻译者也把哲学逻辑译为哲理逻辑。数学证明中不会实质性地出现“可能”“必然”这样的字词。我们不能使用这样的证明:“因为 x 可能(必然)等于1,所以 y >2。”数学证明中需要的是明确的表述,例如:因为 x 等于1,所以 y >2。
数学证明中不会实质性地出现“相信”“知道”这样的字词。我们不能使用这样的证明:“因为我相信 x 等于1,所以 y >2。”证明者相信什么与一个数学证明无关。类似地,“因为我知道 x 等于1,所以 y >2”也不是一个合法的数学证明。数学证明中不会实质性地出现“应当”“允许”这样的字词。我们不能使用这样的证明:“因为 x 应当等于1,所以 y >2。”“应当如何”与事实上“是如何”是两个不同的概念。数学证明中只能使用关于事实的表达。类似地,“因为 x 被允许等于1,所以 y >2”也不能出现在数学证明中。
数学证明中不会实质性地出现“将来”“过去”等时态词。我们不能使用这样的证明:“因为 x 将来等于1,所以 y >2。”数学证明中只能使用关于事实的陈述。我们可以使用“x 等于1”这个事实。但这个事实是何时发生的与证明无关。数学证明中不会实质性地出现表达不确定性的概念。我们不能使用这样的证明:“因为 x 是否等于1是不确定的,所以 y >2。”
请注意,在论述中我们使用了定语“实质性地出现”,这意味着它们是数学证明中不可替代的部分。
这些字词在数学证明中出现的唯一例外,是它们本身是当前证明讨论的对象。例如,如果当前讨论的是时间的性质(时态逻辑),那么时态词当然出现在证明中。类似“可能”“必然”“知道”“相信”“应当”“允许”“将来”“过去”“不确定”等概念不在数学推理中使用。作为表达数学推理的数理逻辑,它当然也不能表达和处理这些概念。
但是,这些概念广泛地使用于哲学讨论中,在我们日常生活中也被普遍使用。它们属于构成人的理性和智能的基础性概念。一个“通用的科学语言”必须能够允许我们使用它来表达包含这些概念的句子。如此,它才可能将哲学推理和日常推理变成计算和证明问题。构建能够表达和处理这些概念的逻辑,是哲学逻辑的任务。
1.4 哲学逻辑的分类
人的心灵大概是*复杂的存在物。哲学逻辑尝试为心灵中标识为“理性”的那一部分建立模型并使用逻辑语言刻画它的性质。人使用语言的方式、人的知识表达的方式、人的推理模式,简言之,人的智能,它是一个复杂的,包含有各种
展开