1
真值表是对命题逻辑联接词的定义,命题逻辑联接词的实质是真值函数,它们把不同的真值组合映射到特定的真值;
比如否定联接词?是一个一元函数,它将1映射到0,将0映射到1。具体定义如下:
f?: {0,1}→{0,1}
f?(0)=1
f?(1)=0
又如,合取联接词∧是一个二元函数,定义如下:
f∧: {0,1}×{0,1}→{0,1}
f∧(0,0)=0
f∧(0,1)=0
f∧(1,0)=0
f∧(1,1)=1
析取联接词∨也是个二元函数,定义如下:
f∨: {0,1}×{0,1}→{0,1}
f∧(0,0)=0
f∧(0,1)=1
f∧(1,0)=1
f∧(1,1)=1
蕴含联接词→和双蕴含联接词?不再赘述。
实际上,二元联接词一***可以有2^(2^2)=16个。一般的,n元联接词有2^(2^n)个。
2
数学定义是一种约定定义,约定定义没有正确错误之分(词典定义则有正确错误之分)。所以,对于约定定义来说,你知不知道为什么,都对它没有影响,它就是那么定义,它的含义和用法已经完全由定义所限定了。当然,“为什么这样定义”的问题依然存在。约定定义虽然没有正确错误之分,作为一个行为,仍然有它的理由或者动机。但约定俗称的特点也在于,它可以无理据,或者说,你可以不知道它的理据而正确使用它。比如不需要知道为什么“cat”对应猫,也不需要知道为什么“猫”对应那种特定的动物,也不需要知道为什么“猫”这个字对应mao这个读音,你就可以正确使用这些符号。
不过,追溯一个约定定义的理据(定义的理由或动机)很多时候仍然是可能的(只要历史没有断裂),而且也有自己的价值。具体就数学(以及逻辑学)而言,数学定义通常受两方面影响:直观起源和技术需要。
[直观起源]:?∧∨→?这几个联接词的直观起源分别是not(不是,并非),and(和,并且),or(或者),if...then...(如果…那么…),if and only if(当且仅当)[严格来说,if and only if(当且仅当)并非出自日常用语,而是从逻辑学反过来渗透日常用语的结果。q if and only if p 相当于说(if p, q) and (only if p, q),就是说p是q的充分必要条件]
[技术需要]:逻辑学对这些联接词作了单一化、技术化的处理,使之严格精确,易于处理。在日常语言中,not、and、or等词的使用并不是那么单一化的。比如,and可以表示时间先后,比如:
I open the door and walk into the room.
这句话反过来说就变成一个不伦不类的意思了:
I walk into the room and open the door.
但是在合取联接词∧的定义中显然没有保留这个不对称的特征。
∧与and的差异我们尚可接受;不过,→与if的差异(以及?与if and only if的差异)比∧与and的差异要大得多得多,以致出现了所谓的“蕴含怪论”。
蕴含怪论:
1、p为假,则无论q是什么命题,p→q都为真
2、q为真,则无论p是什么命题,p→q都为真
上面两点对于蕴含联接词→都是成立的,但是如果换成if…then…(或者“如果…那么…”),就会非常奇怪。比如:
if 1+1=3, then a apple is red.
实际上,日常用语中的if根本就不是真值联接词。
所谓真值联接词就是真值函数,它的特点是,由若干子命题与真值联接词结合而成的复合命题,其真值完全由该命题的子命题的真值决定。比如p、q都为真的情况下,p→q就是真的。但是,我们从p真q真,并不能确定if p then q的真假。很可能p与q的真假完全没有关联。显然,日常用语中的if p, then q需要p和q之间有某种关联(不管这种关联是逻辑的、本体论的、物理的、事实的还是其他种类的),但→和?显然都不能表达p和q之间的关联。
为了更好的模拟日常用语中的if,就出现了各种扩展的或者修正的逻辑,比如模态逻辑、相干逻辑、条件句逻辑等等,它们各自定义了不同的蕴含联接词。为了区分不同逻辑中的蕴含联接词,→就称为实质蕴含,模态逻辑中基于实质蕴含和模态词定义了严格蕴含,相干逻辑定义了相干蕴含、条件句逻辑里有反事实蕴含等等。
无论如何,实质蕴含→仍然有它的价值。首先,它在数学中仍然很常用,而且不会出现问题;其次,它也是后面所有这些扩展和修正逻辑的基础。