【数理逻辑四】谓词逻辑及形式系统 【下】

谓词逻辑及形式系统 【下】

 

一、谓词逻辑的逻辑等价与逻辑蕴含

  • 一个谓词公式想变为命题,具有确定真值。必须满足以下几个条件

① 给定个体域(确定模型
② 公式中的所有谓词都有 明确意义(确定解释函数
③ 公式中的所有自由变元取定个体(确定变元的真值

  • 和命题逻辑一样,谓词逻辑也有矛盾式,意思是:句子φ,对于φ所属语言对应的所有模型M(这里的M应当是一个集合)它的语义解释函数是:

                                                                 

举几个矛盾式的例子,
∀x(Ax ∧ ¬Ax)
∀xAx ∧ ∃y¬Ay
∃x∀y(Ryx → ¬Ryy)
与矛盾式相反的是,句子φ,如果对于φ所属语言对应的所有模型M(这里的M应当是一个集合)它的语义解释函数是:
                                                                

则称之永真式

  • 谓词公式有4个层次的“永真”

                                                        

第一层永真:                                          

给定个体域D,公式A中各谓词符号的 解 释 I , 如 果 A 中 的 自 由 变 元 x1,…,xn 分别取值 u1,…,un 时A真,

A在u1,…,un处真

第二层永真:如果A在自由变元的任何取值下都真,称A在解释I下真
第三层永真:如果A在每个解释I下均真,称A在D上永真
第四层永真: 如果A在任何个体域D永真,称A永真
 

〉 如果对于某个个体域,谓词的某个解释,和自由变元的某个取值,公式A在此处取值真,则称公式A是可满足式
〉 公式A不可满足时也称A是永假式
 

谓词逻辑的逻辑等价与逻辑蕴含

  • 和命题逻辑一样,谓词逻辑的等价(当且当)是指两个句子公式φ和ψ的真值永远相等。不过由于谓词逻辑使用的赋值函数加入了模型的概念,因此表示二者之间真值相等的公式是

                                                               

 

  • 如果按照评估法,其表述应当是:句子φ,如果对于φ所属语言对应的所有模型M(这里的M应当是一个集合)模型中的每一个评估函数g,它的语义解释函数是:


                                                                

不管用什么方法,如果给定两个句子,我们现在可以轻而易举地判断它们是否等价。有了逻辑等价式之后,在谓词演算是就可以相互替换了。如果替换项和被替换项等价,那么替换后原句仍然等价。

  • 逻辑等价 :A╞╡B当且仅当对一切域、解释和变元取值状况,A和B都具有相同的真值
  • 逻辑蕴涵  : A╞B当且仅当对一切域、解释,一切使A成真的变元取值状况均使B成真
     

重要的谓词演算永真式

# 1

所有命题逻辑中的重言式都是谓词演算永真式
当A不含变元x时,∀xA╞╡A,∃xA╞╡A
〉 ∀xA(x)╞A(x),A(x)╞∃xA(x),∀xA(x)╞∃xA(x)
〉 ¬∃x¬A(x)╞╡∀xA(x)
〉 ¬∀x¬A(x)╞╡ ∃xA(x)
〉 ¬∃xA(x)╞╡∀x¬A(x)
〉 ¬∀xA(x)╞╡∃x¬A(x)

#2

当公式B中不含自由变元x时,有:
〉 ∀xA(x)∨B╞╡∀x(A(x)∨B)
〉 ∀xA(x)∧B╞╡∀x(A(x)∧B)
〉 ∃xA(x)∨B╞╡∃x(A(x)∨B)
〉 ∃xA(x)∧B╞╡∃x(A(x)∧B)

#3
当公式B中含自由变元x时,有
〉 ∀x(A(x)∧B(x))╞╡∀xA(x)∧∀xB(x)
〉 ∀xA(x)∨∀xB(x)╞ ∀x(A(x)∨B(x))
〉 ∃x(A(x)∧B(x))╞ ∃xA(x)∧∃xB(x)
〉 ∃x(A(x)∨B(x))╞╡∃xA(x)∨∃xB(x)
#4
量词的组合与顺序
〉 ∀x∀yA(x,y)╞╡∀y∀xA(x,y)
〉 ∀x∀yA(x,y)╞∃y∀xA(x,y)
〉 ∃y∀xA(x,y)╞∀x∃yA(x,y)
〉 ∀x∃yA(x,y)╞∃y∃xA(x,y)
〉 ∃x∃yA(x,y)╞╡∃y∃xA(x,y)
#5
当C中无自由变元x时,有:
〉 ∀x(C→A(x))╞╡C→∀xA(x)
〉 ∃x(C→A(x))╞╡C→∃xA(x)
〉 ∀x(A(x)→B(x))╞∀xA(x)→∀xB(x)

二、关系

【关系】的概念无论在语言学还是数学都是都是非常重要的概念。从语言学的角度,表达关系的句法结构通常都不是线性的连续结构;从数学的角度,关系通常是某个有序对集合满足某种性质的子集。但是,无论是语言学还是数学大部分是从形式的角度研究【关系】。如果从语义的角度,那么就可以利用我们在前面建立的一阶谓词逻辑的语义框架研究【关系】。我们这里的重点是从自然语言的某些语言现象出发,讨论【关系】的一些性质。具体地说,本节关注的【关系】的性质包括,自反关系非自反关系、对称关系、非对称关系、反对称关系、传递关系和连接关系(connected)。

在前面我们曾经举过一个关于“大于”表达式的例子,并指出这种关系有传递性,如果A>B且B>C则A>C。因此关于“大于”的逻辑推理也是以这种关系为根据。因此,我们首先可以用一阶语言表达这种【关系】

                                                   

其中,L表示“大于”关系。对这个一阶语言表达式的语义解释就是:
设M是任意模型,则
                                                  

意思是,命题是永真式。由此我们可以从真值定义推论,在下列情况下命题为真:
设指称对象集合为D,该集合的成员d1,d2,d3, …∈D;如果任意两个成员具有有序对<d1, d2>∈DxD,<d2, d3>∈DxD,则<d1,d3>∈DxD。此时如果为关系R在模型M赋予解释函数
I(R),那么,当上式的命题为真时,其I(R)就被称作具有传递性。因此“大于”关系具有传递性
除了“大于”关系以外,另一种具有传递性的关系是“相同”关系。不过“相同”关系和“大于”关系的区别在于另外一种性质:对称性对称性的意思是,有序对中的两个元素对调位置其命题仍然成立。因此,“相同”关系兼具对称性和传递性。至于“相同”关系的命题和上面的“大于”关系命题差不多,这里就不列举了,你可以自己补上。
这里需要注意的是对关系的解释函数I(R)。解释函数I是从符号与模型域D中的元素或子集合的对应的表达,显然,关系R是D中的子集,但这个子集的成员不再是个体元素,而是<有序对>。“有序对”的概念是数学概念,而且在国内属高中数学的范围,大部分同学应当或多或少知道,但这里我试着从语言学的角度谈谈。

指称论的角度,所有符号都必须找到一个唯一指称对象作为“解释”,这个“唯一对象”既可以是个体也可以是个体集合。专有名词对应的是个体,普通名词对应的是个体集合。但是有些指称对象或对象集合无法用单个符号表示。例如买了一个新手机,说明书上往往会列举这个手机的产品规格,包括品名、型号、配置、出厂日期、保修日期等等。规格中的每个数据都是这个手机品牌的一部分,换句话说,这些数据作为一个“共同体”描述了这个手机。数学中,这样的例子更是司空见惯:平面直角座标系上的点是由两个实数确定的,一个矩阵是由m x n个元素构成的。因此,由多语言符号个体构成一个“共同体”指称对象域中的某个个体或个体集合,这个共同体有一个特别的名字:元组 (tuple)。这里的“元”,可以理解为“单元”,基本元素的意思,由一些基本元素构成一个共同体,作为一个符号单位与域中某个个体或个体集合建立解释关系。如果“元组”中的成分只有两个,那么它又有一个特殊名称:有序对 (ordered pair)。从这个名称来看,元组中的元素是对“序”敏感的,例如座标点(3, -5)不等于(-5, 3)。元组中的元素,可以来自同一集合,例如座标点中的成分都来自于实数系。而手机规格则不同,其中的每一项数据都来自不同的集合。不过这里的重点是:元组可以看作与个单个符号具有同样的地位,用来指称某个特定的对象。

有了和“元组”的概念,我们就可以从形式上把【关系】理解为“元组”的集合,这个集合可以用Rxyz...表示。如果元组的元素只有两个,那么就称作“有序对”,由“有序对”构成的集合又称作“二值关系” (binary relation)。而“二值关系”可以看做是多值关系的基础,因此从“二值关系”我们可以获得许多有用的性质。

除了传递性、对称性,关于二值关系的性质还包括自反性。自反性的意思是,两元素相同的有序对是否满足某种关系。例如:0=0,我就是我,其中“=”、“就是”,这些表达式所指称的关系都是符合“自反性”;但是3<3,表达式所指称的性质就没有自反性;没有自反性关系的二值关系又称作“非自反关系”(irreflexive relation)。

反对称性(antisymmetric),是另一个有趣的关系性质。这里不再做形式化解说,只举一个例子:实数数轴。
在实数轴上,以0为中心向两边延伸,其中除了0以外,所有实数a都可以找到自己的相反数
-a,只有0,它的相反数只能是它自己。所以我们说,实数轴上的所有数,除了0都有对称性质,而0,由于没有相反数,但是0也不符合非对称,因此称这种关系具有反对称。

连接性(connected),是一种非常“松散”个关系性质,是说一个二值关系中两元素或者相等,或者对某个关系R,无论Rxy还是Ryx,只要这三者有一个成立,就具备了连接性的性质。因此,在自然语言中,只要可以用动词、形容词连接的两个元素,都可以看做是具有“连接性”性质的关系。

现在,用数轴的概念,将这些关系的性质做一个总结:想象数轴上有一个箭头,这个箭头有起点和终点,代表两个指称元素,起点是有序对中第一个元素,终点是第二个元素。
有了这个前提,我们将这些关系的名称,一阶语言表达式和它们的说明一并列表如下:

                              

                             

其中,反对称和连接性的一阶语言表达式还可以是:

                

 

                  

非对称和反对称的区别是:非对称蕴含非反身,即,如果非对称,则非反身。
从自然语言的角度,对【关系】研究可以使我们用精确的数学语言描述句子中词与词、词组与词组、句子与句子之间的的语义关系。有些关系的性质是否成立和所选定语境——域有很大关系:例如“兄弟”关系,如果我的语境是所有人,那么既不是对称关系也不是非对称关系,只有在语境是“男性”时,才具有对称性质。下面我们探讨一下谓词逻辑中函数的表示法问题。

 

三、函数

函数是一种特殊的【关系】。从D到D的函数总是可以表示为关系R,定义如下:
<d, e>∈I(R) 当且当r(d)=e。
而且∀x∃!yRxy在当前给定的模型中为真。反之,如果对于二值关系R,∀x∃!yRxy在某个模型中为真,则可定义函数r,则可以赋予唯一的e使得<d, e>∈I(R)对应与任何域元素d。

因此,单参函数可以表示为二值关系,n个参数的函数可以表示为n+1值关系。例如和函数+可以通过三值关系的谓词P表示。亦即,如果域模型是自然数,那么I(P)则定义为<n1,n2,n3>∈I(P)当且当n1 + n2 = n3。此时,<2,2,4>∈I(P)而<2,2,5>∉I(P)。在这个模型中,加法交换律的真值归结为
∀x∀y∀z(Pxyz → Pyxz)
而结合律的表示尽管可以做得到但更困难些。
∀x∀y∀z∀w1∀w2∀w3((Pxyw1 ∧ Pw1zw2 ∧ Pyzw3) → Pxw3w2),其中w1、w2和w3的意义可以通过下列树形图得知:

                                         
很明显,利用谓词字母表达函数的性质所得到的公式可读性并非很好。正因为如此,那些作为函数符号的字符通常是谓词逻辑的一部分。

函数符号,和谓词字母一样,也是n参数的,可以有单参、双参、三参以及多参。不过,谓词字母后跟n个项形成原子公式,函数符号后跟n个项则形成另一个项,这个项可以是一个表达式,表示域模型中的对象,这和常项和变项的作用相同。因此函数常项与变项一样,凡常项/变项可以出现的地方函数都可以出现。

如果关于自然数的加法函数可以借助二值函数符号p表示,那么,交换律和结合律就可以轻松表达:

                                     

这样,我们不仅得到比谓词字母的表示法跟简单的公式,还获得了复合项(composite term),而这个复合项的构建是通过在项的前面加上(prefixing)函数符号得到的。例如(107)和(108)中的p(x,y)、p(y,x)、p(x, p(y, z))都是复合项。复合项的构建和复合公式的构建方式相同,都是从较简单的形态开始,因此对复合项的定义也可以用归纳法:

【定义11】
(i) 若t是语言L中的变项或常项,则t是L中的项;
(ii) 若f是语言L中的n参数函数符号,且t1,t2,…tn是L中的项,则f(t1,t2,…tn)也是L中的项;

函数的语义在谓词逻辑中的语义要稍稍复杂一些因为我们首先要对项做出解释。我们需要一个对函数符号的解释函数I(f),它要将D^n,亦即域的n元笛卡尔乘积映射到某个模型的域。
这时,原来的变项/常项的解释维持不变,而复合项的的解释可以通过“评估法”得到:

                             

这时我们才可以明白为什么我们以前对常项、变项的语义解释函数的定义(定义8【注1】)如此重要,因为比较当前这个定义,我们就可以知道它们是完全相同的。如果我们采用“替换法”,我们只需考虑项而不用考虑变量,在这种情况下,下标中的评估函数g可以取消。
迄今为止,我们对谓词逻辑的介绍都偏向于个体对象的谓词和关系,以此形成逻辑上较简单的表达式。在这方面,我们尽量靠近自然语言,因为自然语言中很少有【词汇性的函项表达式】(这个观点不适用于汉语)。但这里应强调的是,若将谓词逻辑应用于数学,函数就称为基础而不再是谓词(也不完全对,对经典逻辑是如此,但是对于组合逻辑以及线性逻辑等不适用)。不过在一个更高的层次上,自然语言也存在着函数的行为。

在这里简单谈谈逻辑和数学的关系,以及从经典逻辑到非经典逻辑的一个变种:λ-运算的对应关系。

前面我们阐述一个形式系统,这个形式系统由常项、变项作为词汇表,通过归纳法的生成规则生成良性公式,然后给出这个公式的语义解释框架。因此,我们迄今为止只关注语言——一阶语言,而没有考虑用这个语言干点儿什么。这就像我们学外语,只关注词汇、语法,而从未将学到的语言技能应用到实践中。
如一阶谓词的一个应用:自然数系统。并且通过传统的谓词表达式描述部分算术公理:交换律和结合律。但是我们看到,谓词表示法是非常笨拙的,因此在这个形式系统中要引进一个新的范畴——函数。函数和谓词的最大不同是输出值的类型,谓词值的类型是真与假的所谓布尔值,而函数的输出类型则是可以和输入值同类,这样,函数值的处理就可以和数字、常项、变项一样了。
有了函数的概念,一些不同的名称的元素例如常项、变项都可以统一起来,作为一个统一概念处理,这就是【项】的概念。在正文的定义11中,我们将变项、常项和函数符号统一定义为【项】,从简单项到复合项的构建,作者所用的术语是“前加”(直译是“前缀”)——prefixing,也就是说在【项】前面“前缀”函数符号就可以构建更复杂的【复合项】。

不过,如果仔细研究定义11我们会发现一个非常有意思的事实:函数符号和变项之间的区别消失了。特别是定义(ii),如果我们递归应用这条定义,例如,我先反复应用定义11-(i),得到若干变项t1,..tn,然后应用(ii),得到一个函数f,这时f也是一个【项】,那么我再次应用定义(ii),不过这次的变项是不再是t,而是f,因为f也是项,我们就遇到了以前从未遇到的问题:当函数的参数也是函数时,会发生什么?

如果将谓词逻辑应用于数学,那么谓词将“退居二线”,第一线的角色将由函数承担,这里我们已经看到对算术公理的两种表达法:谓词表达法和函数表达法,显然后者更经济,更简单、更直观。
为此,从1920年代起,对一阶谓词逻辑的研究重点开始从谓词向函数迁移,从而产生了一些非经典的逻辑变种,其中流传最广对现代影响最深的就是λ-演算了。首先,λ-演算重新定义了量化式的表达,第二,λ-演算关注的重点也不再是谓词而是函数,之所以这样,正如本书作者指出的,一阶语言一旦应用到数学,函数就成了基础元素。而λ-演算的创建者真正的目标也是想通过这套形式系统研究算术公理从而为数学基础问题建立公理系统。虽然λ-演算的作者没有达到目的,原因是哥德尔定理的出现,使得利用任何逻辑系统建立算术公理系统的企图都不可能,但是,这套系统找到了另一个更重要也是更实用的用途,研究函数的有效计算性问题。因为逻辑的重点从谓词转到函数,应用的模型是自然数系,那么关于自然数的性质——递归——的研究就提上日程。这个问题的实质就是:如何确定给定的函数计算是可以“有效”完成的,这样的问题称为“可判定性问题”(Entscheidungsproblem)。λ-演算的创立者和他的学生通过这样的研究,逐步创立了后来被称作“可计算函数”的理论。这套理论所使用的表达工具,就是λ-演算,后来这个理论和其它另外两个理论,图灵机、递归函数论成为理论计算机科学的奠基石。那么λ-演算和我们现在学的一阶谓词逻辑有什么差异呢?最大的差异,就是:经典一阶逻辑是面向谓词的理论,λ-演算是面向函数的理论。同时λ-演算从理论的高度回答了关于函数的所有问题,例如关于【项】的定义,量词和量化表达式的关系,特别是对约束变量、自由变量、绑定关系等进一步发展了一阶谓词理论。到了现代,λ-演算已经成为计算机编程设计语言的理论基础,同时也是我们研究自然语言语义的工具之一。

四、论证和论证模式

和前面学习的「命题逻辑」和「谓词逻辑」相比较,这里我们开始跳脱单个句子的范围,研究多个逻辑句之间的关系。

通过前面的学习,我们已经认识到,逻辑学的本质就是「如何确定命题的真值」,亦即,求真的过程。手段是:1. 为命题逻辑、谓词逻辑定义表达命题的形式语言,将自然语言的句子翻译成这种形式语言。2. 研究在给定上下文(模型)的情况下确定真值的条件 —— 基本方法是:对给定的句子,通过确定句子成分的意义(非句子成分)与真值(子句成分)来确定整个句子的真值。
下一步,就是:如何从其它句子确定给定句子的真值,换句话说,确定多个句子的命题真值之间的关系,或者,确定句子间的语义关系 (the interdependencies between the meaning of sentences)。

最开始我们介绍到所谓【论证】,就是我们进行推理的形式化表示:一组句子,从第1个句子到第n-1个句子称为【前提】,第n个句子称为【结论】。所谓【论证模式】,就是从无数个具有相同结构的论证中抽取的「公式」。在前面的「命题逻辑」和「谓词逻辑」的学习中,我们所关注的是句子,严格地说是用逻辑连接符连接的复句、和带量词的量化句。这构成了逻辑语言的核心内容——句法和语义。而这里所关注的如上所述,确定多个句子的命题真值之间的关系,我们用一个术语来命名——【演算】(calculus)、或者称【演绎】(deduction)。学习研究方法和前两章相同:从自然语言开始,将其翻译成逻辑语言(一阶语言),然后研究如何从一组句子Φ={φ1,..φn}的真值获得句子ψ的真值。当然,逻辑语言不是万能的,它只能处理一小部分自然语言——那些具有和逻辑连接符以及量词相同意义的「连词」和「修饰词」的句子。句子ψ的真值由集合Φ的成员决定,这是「外延性」的又一个实例。外延性原则,不但是集合论中最重要的公理之一,也是逻辑学的重要原则。将自然语言的句子翻译成一阶语言的句子,获得一个句子集合Φ,通过论证得到结论ψ,把这个写成公式就是:
                φ1,..,φn/ψ
这个公式就是论证模式(argument schema)的形式化表示。

如果句子集φ1,..,φn为真使得ψ亦为真,那么我们就说这个论证模式是【有效】的(valid)。此时的ψ称之为 logical consequence,「逻辑归结」。

(1)
        小张比小王个子高
        小王比小李个子高
——————————
结论 小张比小李个子高

代入我们上面的论证模式:
        Φ = {小张比小王个子高, 小王比小李个子高} / 小张比小李个子高
假定「小张比小王个子高」和「小王比小李个子高」是我们观察到的结果、是事实,但小张从未和小李比过个子,第三个句子是通过上面的论证模式「造」出来的,是「形而上」的结果。那现在的问题是:凭什么从前两个句子就可以得到第三个句子并且知道该句子的命题真值一定为真?虽然我们的直觉告诉我们这个天经地义,但是没有逻辑,我们还真的讲不出什么道理。不信你可以拿这段话问问周围的人,这里的关键是:小张和小李从未比过谁个子高,而且由于种种原因他们无法走到一起比个子。一般人的答案一般就是:既然「小张比小王个子高」且「小王比小李个子高」,那自然就是「小张比小李个子高」。庞加莱说过:「逻辑的唯一功能是制裁直觉的入侵」,所谓讲道理,第一是遵循「道」(principle),第二是按照「理」(reason),这里没有「直觉」的容身之地。因此,把上面的事情说清楚,就必须有理论武器,这个武器就是我们下面要展开的话题 —— 论证与论证模式。

  • 接下来让我们先来确定一些术语

一、推理 (reasoning):推理是一个「过程」,这个过程有「输入」,有「输出」。输入是一些已知为真的命题和一个待定真假的命题,输出则是那个输入时未知真假、但现在已确定真假的命题,因此推理的过程就是求真的过程,从某种意义上,推理可以看做是算法的概念。
二、论证 (argument):论证是推理的表达形式,这种表达形式可以是任何自然语言,可以是计算机语言,也可以是逻辑符号语言。因此论证可以看做是一个算法的实现:给定一组命题真值确定的句子,输出一个命题真值确定的新句子。
三、论证模式 (argument schema):如果某一类论证被证明是通用的,可重复使用的,可以离开具体场景存在的,那么论证的结构可以看做一种模式、句型,称作「论证模式」。
        A (φ1,..,φn) = ψ
四、推演 (inference):论证的具体实例。推理、论证是抽象的概念,而「推演」则是推理论证的具体活动。如果说论证是一个算法实现,推演就是一个运行时。
五、句法 (syntax):论证的纯形式侧面,论证的结构,不考虑论证中各个成分的意义,例如前提、结论、逻辑归结等都属于句法概念。

六、语义 (semantics):论证的内容侧面,论证中的命题义——真值,论证是否有效,因此「有效性」可以看做是语义的概念。

对论证、推演的研究,可以从句法的角度进行,此时,我们只根据句子的句法结构而不考虑论证所涉及的内容,因此一个推演是否成立,这里用的术语是【推导】(derivation)、「可推导的」(derivable),或者说,我们研究的是从前提到结论的可推导性 (derivability);

也可以从语义的角度进行,我们考虑的是一个推演中命题真值与模型之间的关系,一个推演是否成立,用的术语是【有效性】(validity)。

七、有效性 (validity):参见前面的文章。

八、演算 (calculus):如果论证的表达形式是非自然语言的,则称之为「演算」。例如在一些大学数学教科书中,逻辑表达式和数学表达式经常混用,亦即,用逻辑语言表达数学命题,这样的表达式就是典型的「演算」实例,称作「逻辑数学演算」(logico-mathematical calculus)。在其他的形式科学中,例如Montague语义论中,逻辑作为元语言,描述自然语言句子的派生过程,其中的表达式也可以看做是「演算」。总之,「演算」就是论证的形式化表示。

八、外延性 (extensionality):对一个概念的定义不是根据其本身的性质而是根据这个概念下存在的实例定义。因此,没有实例的概念没有外延性。

  • 如何确定一个论证有效

在给出比较形式化的定义之前,我们先来了解一下【语义有效】(semantically valid)的概念。
首先,正如我们用真假作为句子命题的真值一样,我们用「有效」(valid)和「无效」(invalid)表示一个论证模式的「值」。在一个论证(φ1,..,φn)/ψ中,当前提(φ1,..,φn)的每个句子的命题真值为真且结论ψ的命题真值亦为真时,则称为该论证「有效」。
而所谓【语义有效】是指前提中的每个句子在任何场景下都为真,这就是我们在谓词逻辑中所得到的【模型】的概念。前提中句子φ1在任何场景下都为真表示为:

                                                          

这是我们用模型的概念表示句子为真的方法。因此,语义有效是说:我们用模型和真值定义论证中所有前提句子的语义,如果结论句子也根据模型真值得到为真的语义值,则这个论证模式称作【语义有效】。下面我们给出【语义有效】的形式化定义:

当论证 (φ1,..,φn) / ψ 满足下列条件则语义有效:
        i. 对于论证φ1,..,φn中出现的所有谓词、常项、以及函数都存在解释的模型(模型的集 合)M,
        ii. 论证中所有句子都得到语义解释:

                                                      
则有

                                                     

从命题逻辑的观点来看,我们实际上可以把论证看做是一个蕴含式:
         (φ1∧..∧φn) → ψ
所以【语义有效】的定义也可以写作:

                                                        

如果我们从语义的角度、或者说从命题真值的角度研究论证的有效性,那么得到的结果就是关于「语义有效」性的性质。我们会在后面的笔记讨论这些性质,现在要了解的就是三个概念:模型、真值、有效性。而「语义有效」如果用大白话说就是:如果前提为真那么结论也为真,那这个推理一定「正确」,稍微「绕」一点儿的说法是:一个推理如果「正确」就不可能出现前提为真而结论为假的论证模式。

由此可见,从语义的角度研究论证的有效性,非常直观,和我们在「普通逻辑」中所学的基本一样,唯一不同的就是加上了「模型」的概念。

研究论证有效性的另一种方法是句法的方法。所谓句法的方法,说穿了,就是代数的方法。想想我们在学习初等代数时做的恒等变形、包括代数的恒等变形、三角恒等变形,最常用的一个词是什么?—— 「推导」。给定一个恒等式,你的任务就是从等号左边的代数式推导得到等号右边的代数式。这些代数式中所出现的字母a, b, c, u, v, w, x, y, z,我们关心它们代表什么吗?a代表一条板凳、b代表一只狗,跟我们的恒等式没有半毛钱关系。我们所关心的,只是这些毫无意义的符号在满足代数基本法则的情况下如何从一种形式转换成另外一种形式,这个「转换」的过程,我们就称作【推导】(derivation)。推导的实质就是:在保持代数表达式的等值关系的情况下从一种代数表达式转换成另外一种表达式。

五、谓词演算形式系统FC

  • 一阶谓词演算形式系统(First order predicate Calculus)

FC的符号系统
〉 个体变元:x,y,z,u,v,w,…
〉 个体常元:a,b,c,d,e,…
〉 个体间运算符号(函数符)f(n),g(n),h(n),…其中n是正整数,表示函数的元数
〉 谓词符号:P(n),Q(n),R(n),S(n),… 其中n是非负整数,表示谓词的元数当n=0时,谓词公式退化为命题常元
〉 真值联结词:¬,→
〉 量词:(∃x等价于¬∀x¬)

〉 括号:(, )
个体项(term),简称
① 个体变元和个体常元是项
② 对任意正整数n,如果f(n)为一n元函数符,t1,…,tn为项,则f(n)(t1,…,tn)也是项
③ 除有限次数使用上述两个条款确定的符号串外,没有别的东西是项

  • 合式公式

〉 合式公式(well-formed formula),简称公式。归纳定义如下:
① 对任意非负整数n,如果P(n)是一n元谓词符,t1,…,tn为项,那么P(0)(命题常元)和P(n)(t1,…,tn)(n>0)是公式;
② 如果A,B是公式,v为任一个体变元,那么(¬A), (A→B), (vA)(或(vA(v)))均为公式
③ 除有限次数使用上述两个条款确定的符号串外,没有别的东西是公式

〉 设v1,…,vn是公式A中的自由变元,那么公式v1…vnA(或v1…vnA(v1,…,vn))称为公式A的全称封闭式
〉 A中不含自由变元时,A的全称封闭式为其自身

  • FC的公理

〉 A1:A→(B→A)
〉 A2:(A→(B→C))→((A→B)→(A→C))
〉 A3:(¬A→¬B)→(B→A)

〉 A4:xA(x)→A(t/x)(x为任一自由变元,t为对x可代入的项)
〉 A5:x(A(x)→B(x))→(xA(x)→xB(x))(x为任一自由变元)
〉 A6:A→xA(A中无自由变元x)
〉 A7:(A1到A6的全称封闭式都是FC的公理)
〉 我们看到A1~A3是命题逻辑的重言式,也是谓词演算的永真式,A4~A7是谓词演算的永真式

  • FC的推理规则和重要性质

〉 FC的推理规则(A,B表示任意公式)

〉 A, A→B / B(分离规则
〉 FC的重要性质: ① 合理性、一致性、完备性   ② 演绎定理     ③ 归谬定理    ④ 穷举定理
 

谓词逻辑的全称引入规则及存在消除规则:

  • 全称引入规则(universal generalization)

〉 对于任意公式A,变元v,如果┠A,那么┠vA
证明:
〉 对A的证明序列长度 l 进行归纳
〉 l=1时,A为公理,那么:
〉 如果A中有自由变元v,vA就是A的全称封闭式,根据A7,vA还是公理;
〉 如果A中没有自由变元,由A和公理A6:A→vA用分离规则, 得到 ┠vA

假设 l<k 时全称引入规则成立,而A的证明序列是A1,A2,…,Ak(=A)
① 如果Ak是公理,则证明同上;
② 如果Ak不是公理,则一定由Ai和Aj(=Ai→Ak)(i,j<k)用分离规则得出
〉 由归纳假设我们有┠∀vAi┠∀v(Ai→Ak)
〉 同时我们有公理∀v(Ai→Ak)→(∀vAi→∀vAk)
〉 对上式公理和归纳假设结果用两次分离规则,得到┠vAk也就是 ┠vA
〉 归纳完成,全称引入规则得证。

  • 全称引入规则推广到演绎结果

〉 对任何公式集Γ,公式A以及不在 Γ 中任何公式自由出现的变元v
〉 如果Γ┠A,那么 Γ┠∀vA

〉 关于全称引入规则的直觉表述:
〉 如果我们能够用一组与变元v无关的前提演绎出A(v)
〉 表明我们已经对任意的v导出了A(v),也就是vA(v)
〉 反过来,如果前提中有公式B(v)包含了自由变元v
〉 那么导出的A(v)是以B(v)为前提的,即v不是任意的,所以不会有vA(v)成立

  • 存在消除规则(existential instantiation)

〉 设A,B为任意公式,变元x是公式A,但不是公式B的自由变元
〉 那么当 ┠∃xA(x),A(x)┠B 同时成立时,有┠B
〉 同样具有演绎的推广形式
意义:如果A(x)能推出B成立,而 B 中并不包含变元x,说明 B的成立与x的具体取值无关,只需要有x能使A(x)为真,B即为真。
〉 数学证明中经常使用的“不妨设……”句式,即为存在消除规则。

六、自然推理系统

  • PC和FC的不足之处

〉 FC 和 PC 一样,证明和演绎过程都过于繁复
〉 为了追求简洁,只用2个联结词、1个量词和1条推理规则
〉 如果能够引入更多的联结词、量词、推理规则,那么证明和演绎过程会显得】自然

  • 人们经常在推理过程中使用假设

〉(演绎)为了证明A→B,常假设A成立,如果能够证明B成立,则完成了A→B的证明;
〉(归谬/反证)为了证明A,常假设¬A,如果导出矛盾(假命题f),则A成立;
〉(穷举)已知A∨B,要证明C,常假设AB成立分别证明C,如果都能成功,则完成C的证明
〉(不妨设)已知vA(v),要证明与v无关的C,常假设A(v0),如果能够证明C,则完成C的证明
〉在形式系统中引入带假设推理规则,能够使推理过程更加接近人的思维,更加高效和便捷

  • 自然推理系统ND(Natural Deduction)

〉 采用5个联结词,2个量词

少数公理,更多的规则,引入假设
〉 用推理规则体现人的推理习惯

ND的符号系统

〉 引入5个联结词、2个量词
〉 ND的公理
Γ; A┠A(Γ是公式集合
假设引入规则
〉 Γ┠B
〉 Γ; A┠B(源于重言式B→(A→B))
假设消除规则
〉 Γ; A┠B,Γ; ¬A┠B
〉 Γ┠B(源于重言式¬A→(A→B))
〉 推理中的分情况证明
 

  • 自然推理系统ND的推理规则
∨ 引入规则
〉 Γ┠A
〉 Γ┠A∨B(源于重言式A→(A∨B))
∨引入规则(加强形式)
〉 Γ; ¬B┠A
〉 Γ┠A∨B(源于重言式(¬B→A)↔(B∨A))
∨ 消除规则
〉 Γ; A┠C,Γ; B┠C,Γ┠A∨B
〉 Γ┠C(源于重言式(A∨B)∧(A→C)∧(B→C)→C)
∧ 引入规则
〉 Γ┠A,Γ┠B
〉 Γ┠A∧B
∧ 消除规则
〉 Γ┠A∧B
〉 Γ┠A
→引入规则
〉 Γ; A┠B
〉 Γ┠ A→B(即演绎定理)
→消除规则
〉 Γ┠ A→B,Γ┠A
〉 Γ┠B(即分离规则)
¬引入规则
〉 Γ; A┠B,Γ; A┠ ¬B
〉 Γ┠ ¬A
¬引入规则(2)
〉 Γ; A┠f
〉 Γ┠ ¬A(反证法)

¬消除规则
〉 Γ┠A, Γ┠ ¬A
〉 Γ┠B(虚假的前提可以蕴涵任何结论)

¬¬引入规则
〉 Γ┠ A
〉 Γ┠ ¬ ¬A
¬¬消除规则
〉 Γ┠ ¬ ¬A
〉 Γ┠ A
↔引入规则
〉 Γ┠A→B,Γ┠B→A
〉 Γ┠A↔B
↔消除规则
〉 Γ┠A↔B
〉 Γ┠A→B
∀引入规则
〉 Γ┠ A
〉 Γ┠ vA(v在A中无自由出现,FC公理)
∀引入规则(2)
〉 Γ┠ A(v)
〉 Γ┠ vA(v)(v在Γ中无自由出现,全称引入规则)
∀消除规则
〉 Γ┠ vA(v)
〉 Γ┠ A(t/v)(t对v可代入)
〉 源于FC的公理A4:xA(x)→A(t/x)
∃引入规则
〉 Γ┠ A(t)
〉 Γ┠ vA(v/t)(源于永真式A(t)→vA(v/t))
∃消除规则
〉 Γ┠ vA(v),Γ; A(e/v)┠C
〉 Γ┠C
 

 

  • ND的一些重要性质

〉 FC的公理和定理都是ND的定理
〉 我们这里引入的 ND 和前面引入的PC, 和 FC 一样都是合理的、一致的、完备的。但需要注意并不是所有的形式系统都是完备的,有些系统中的定理可能并不能在自身的形式系统内得到判定和证明。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章