【月谈逻辑01】用韦恩图理解命题的与或非
大家都知道思考集合问题的时候韦恩图是个好东西,实际上,对于命题的各种与或非运算,用韦恩图来理解同样会很直观。
当初学到集合的交并补运算和逻辑与或非的时候,我就注意到集合运算和逻辑运算法则完全雷同,交=与,并=或,非=补,于是我在处理逻辑与或非运算的时候,直接当成集合运算,进而用韦恩图思考,抽象的逻辑问题会变得形象很多。
现在先来喵喵集合运算跟逻辑运算之间的基情。
下面这段如果学过逻辑真值表的会比较好理解点(看不懂就略过吧,我说的不好,吧友也可以自己想想集合运算和逻辑运算的关系,欢迎补充意见~)。
对于n个命题的一个运算F(a1,a2,...,an),考虑n个集合的韦恩图(A1,A2,...,An),这里统一用小写字母表示命题,大写字母表示对应的集合。
n个命题共有2^n种真值结果,所谓的真值结果是指诸如“a1为真,a2为假,a3假,...”这样的一个结果;而n个集合的韦恩图刚好也被分成2^n个区域,某个区域表示着“在A1内,在A2外,在A3外...”!
显然,我们可以把这2^n个结果和2^n个区域建立一个对应关系,结果的ai为真那么其对应的区域就在Ai内!
那么,(a1且a2),其实是表示满足“a1为真,a2为真,...”的共2^(n-2)个结果集合,对应着韦恩图上满足“在A1内,在A2内”的区域,也就是A1交A2;
(a1或a2),是表示满足“a1为真...”或满足“a2为真...”的结果集合,对应着韦恩图上满足“在A1内”或在“A2内”的区域,也就是A1并A2;
非a1显然就是对应A1的补集。
理论说完了,看不太明白不要紧(我自己都感觉没说明白),重要的是结论:
命题的与或非运算等价于集合的交并补运算,把命题运算看成是集合运算,然后就可以亮出你的韦恩图来理解。
好了,现场实践下,求证:(非a 或 b) 且 (!b或a) = (非a且非b)或(a且b)
吧友试试不用韦恩图来证明这个等式,估计没学过逻辑化简的吧友死一堆脑细胞都整不出来。
现在跟我一起用牛逼的韦恩图秒杀此题,画下韦恩图就知道两者的结果都是如下的红色部分:
当初学到集合的交并补运算和逻辑与或非的时候,我就注意到集合运算和逻辑运算法则完全雷同,交=与,并=或,非=补,于是我在处理逻辑与或非运算的时候,直接当成集合运算,进而用韦恩图思考,抽象的逻辑问题会变得形象很多。
现在先来喵喵集合运算跟逻辑运算之间的基情。
下面这段如果学过逻辑真值表的会比较好理解点(看不懂就略过吧,我说的不好,吧友也可以自己想想集合运算和逻辑运算的关系,欢迎补充意见~)。
对于n个命题的一个运算F(a1,a2,...,an),考虑n个集合的韦恩图(A1,A2,...,An),这里统一用小写字母表示命题,大写字母表示对应的集合。
n个命题共有2^n种真值结果,所谓的真值结果是指诸如“a1为真,a2为假,a3假,...”这样的一个结果;而n个集合的韦恩图刚好也被分成2^n个区域,某个区域表示着“在A1内,在A2外,在A3外...”!
显然,我们可以把这2^n个结果和2^n个区域建立一个对应关系,结果的ai为真那么其对应的区域就在Ai内!
那么,(a1且a2),其实是表示满足“a1为真,a2为真,...”的共2^(n-2)个结果集合,对应着韦恩图上满足“在A1内,在A2内”的区域,也就是A1交A2;
(a1或a2),是表示满足“a1为真...”或满足“a2为真...”的结果集合,对应着韦恩图上满足“在A1内”或在“A2内”的区域,也就是A1并A2;
非a1显然就是对应A1的补集。
理论说完了,看不太明白不要紧(我自己都感觉没说明白),重要的是结论:
命题的与或非运算等价于集合的交并补运算,把命题运算看成是集合运算,然后就可以亮出你的韦恩图来理解。
好了,现场实践下,求证:(非a 或 b) 且 (!b或a) = (非a且非b)或(a且b)
吧友试试不用韦恩图来证明这个等式,估计没学过逻辑化简的吧友死一堆脑细胞都整不出来。
现在跟我一起用牛逼的韦恩图秒杀此题,画下韦恩图就知道两者的结果都是如下的红色部分:
我越来越不理解逻辑里的‘’或‘’了,请教下,像‘’A→B‘’等价与‘’~A或B‘这样的结论能画出类似的图来吗?’
————————————————————————————————————————
左边的圈表示A,右边表示B,1表示A真B假,2表示A真B真,3为A假B真,4为A假B假
首先,把“若A则B”理解成如下(至于为什么能这么理解之后再说)
如果A为真,那么B也要真;如果A为假,那么B可能真也可能假。(*)
按照(*)的理解,1不符合,因为1中A真B假,2符合,3和4都符合,所以“若A则B”对应的区域是2或3或4,而“非A或B”显然也是对应2或3或4。
至于为什么“若A则B”能理解成(*)呢,当我说“如果今天下雨,那么我就不外出”这句话时,我其实只是对“下雨了”这种情况断言,如果实际没有下雨,我无论是否外出我都没有说谎,所以当我说“若A则B”时,隐藏着“若非A那么B怎么样都行”的意思,所以“若A则B”理解成(*)是合理的。当然语言本身也是一种其实也是一种约定,当我说“如果今天下雨,那么我就不外出”,很可能会有人认为我还包含着潜意思“如果不下雨,我就外出”,也即认为“若A则B”是
如果A为真,那么B也为真;如A为假,那么B为假(#)
显然,从语言本身的逻辑上看,若A则B,我就是针对A为真的情况作了判断,A为假的情况我不做任何判断,而(#)强行给我加了个针对A为假的情况的判断,显然(#)这种理解不是由语言本身的逻辑而来的,而更多是一种经验。
————————————————————————————————————————
左边的圈表示A,右边表示B,1表示A真B假,2表示A真B真,3为A假B真,4为A假B假
首先,把“若A则B”理解成如下(至于为什么能这么理解之后再说)
如果A为真,那么B也要真;如果A为假,那么B可能真也可能假。(*)
按照(*)的理解,1不符合,因为1中A真B假,2符合,3和4都符合,所以“若A则B”对应的区域是2或3或4,而“非A或B”显然也是对应2或3或4。
至于为什么“若A则B”能理解成(*)呢,当我说“如果今天下雨,那么我就不外出”这句话时,我其实只是对“下雨了”这种情况断言,如果实际没有下雨,我无论是否外出我都没有说谎,所以当我说“若A则B”时,隐藏着“若非A那么B怎么样都行”的意思,所以“若A则B”理解成(*)是合理的。当然语言本身也是一种其实也是一种约定,当我说“如果今天下雨,那么我就不外出”,很可能会有人认为我还包含着潜意思“如果不下雨,我就外出”,也即认为“若A则B”是
如果A为真,那么B也为真;如A为假,那么B为假(#)
显然,从语言本身的逻辑上看,若A则B,我就是针对A为真的情况作了判断,A为假的情况我不做任何判断,而(#)强行给我加了个针对A为假的情况的判断,显然(#)这种理解不是由语言本身的逻辑而来的,而更多是一种经验。
然后就是~A或B了,你看,按这个图,~A或B 是 包含有~B这个部分的,就是这个让我困惑。
————————————————————————————————————
@angelycs
我画的图是从一般的韦恩图中找出满足“若A则B”的区域,而你这个图是我那图中取出满足的区域(2,3,4),也就是说,你这个图所有区域都是满足的,已经去掉了我图里的区域1(~B且A),所以你这个图的~B相当于是(~B且~A),也就是我图的区域4.
这两种画法思路稍有不同,但结果都是一样的,我的画法是先画出两命题所有可能的关系,然后根据“若A则B“这个命题找出满足的关系;而你的图是直接根据”若A则B”画出A与B的关系,所以你图所有区域都是符合“若A则B”关系,已经包含了A和B的一些关系限制,故~B已经包括了~A。
————————————————————————————————————
@angelycs
我画的图是从一般的韦恩图中找出满足“若A则B”的区域,而你这个图是我那图中取出满足的区域(2,3,4),也就是说,你这个图所有区域都是满足的,已经去掉了我图里的区域1(~B且A),所以你这个图的~B相当于是(~B且~A),也就是我图的区域4.
这两种画法思路稍有不同,但结果都是一样的,我的画法是先画出两命题所有可能的关系,然后根据“若A则B“这个命题找出满足的关系;而你的图是直接根据”若A则B”画出A与B的关系,所以你图所有区域都是符合“若A则B”关系,已经包含了A和B的一些关系限制,故~B已经包括了~A。
换个角度看,F(A,B)这个运算看成是描述A,B的关系以及与空集,全集之间的关系。
比如,6楼的图中,结果为2表示(下面没特别说明为空集的都不是空集)
A=B,~A为空集;
结果为2并3表示
A包含于B,~B为空集。
结果为3表示:
A为空集,~B为空集
结果为1并3表示:
A与B没有交集,~A且~B为空集。
对于“若A则B”,表示的是
A包含于B(跟你的上图一样)(也就是6楼图的2,3,4表示的关系)
而“非A或B”,结果也是2,3,4.
好了,为什么你的下图表示的关系不一样呢?
你的下图先不看”非A或B“这个描述表示的关系,其本身就已经描述了”A和B没有交集“这个关系,自然结果就不一样。
比如,6楼的图中,结果为2表示(下面没特别说明为空集的都不是空集)
A=B,~A为空集;
结果为2并3表示
A包含于B,~B为空集。
结果为3表示:
A为空集,~B为空集
结果为1并3表示:
A与B没有交集,~A且~B为空集。
对于“若A则B”,表示的是
A包含于B(跟你的上图一样)(也就是6楼图的2,3,4表示的关系)
而“非A或B”,结果也是2,3,4.
好了,为什么你的下图表示的关系不一样呢?
你的下图先不看”非A或B“这个描述表示的关系,其本身就已经描述了”A和B没有交集“这个关系,自然结果就不一样。