A → B = ¬(A)∨B 简明解释

07 Mar 2017 , 1291 words

自认平时思考时逻辑勉强过得去,但对逻辑学一无所知。今天初见这个公式十分蒙圈:A 推断出 B,怎么会等价与非 A与 B 的并集呢?

A → B = ¬(A)∨B

百度(读英文涉及到陌生的 term,还是忍不住先搜百度,比如逻辑里边说到 conjunction, disjunction, 一时实在反应不过来就是「与」、「或」)找了半天都没看到一个能说人话解释清楚的。甚至很多人压根和我一样都根本不理解,硬背真值表。最后还是 Youtube 救了命。

和我一样理解错误的人,思路大概都是这样的:

  1. 从等号左边开始,A 推断出 B,说明 B 包含 A;下面看等号右边,试图从 ¬(A)∨B 推出相同的结果
  2. 等号右边 ¬(A) 应该是 A 以外所有部分,这里边包括 B 的一部分
  3. 用这部分去「并」B…… 得到的显然是全集啊

这里我犯的错误本质是没搞清楚等号的意义,以及文氏图在作为真值表配图时真正的用法

wrong way to illustrate truth table with venn diagram

上边的三步思路第一步就错了。A → B,即A 推断出 B,并不是一个假设,而是一个完整的陈述,有其自身的 True/False。既然 A → B 不是假设,那就无从谈起「假设 A 推断出 B,那么 B 包含 A」。

从文氏图角度来说,如果是在讨论真值表,那么一开始都应该是 A 与 B 两个椭圆作如下摆放,在此基础上去推断它们之间各种组合的逻辑值。也就不可能前文 A 画在 B 当中的错误。

boilerplate to illustrate truth table with venn diagram

下面是人话:

A → B ,即 「A 推断出 B」或者说「如果 A 则 B」作为一个完整的陈述,可以举例来理解:

如果今天下雨了 (A),那么我就有雨伞 (B)。

于是这句话作为一个完整陈述,那么分几种现实可能来讨论这句话的真假:

  1. 今天没下雨 (A is False),我也没拿伞 (B is False)。
  2. 今天没下雨 (A is False),我也没拿伞 (B is True)。
  3. 今天下雨了(A is True),我确实有伞 (B is True)。
  4. 今天下雨了 (A is True),我没拿伞!(B is False)。

可以看到,只有第四种情况是跟上边的陈述矛盾的。也就是说,「如果今天下雨了 (A),那么我就有雨伞 (B)。」这句话,大部分时候都是真的(比如所有不下雨的天气,不管我拿不拿伞都是对的),除非确实下了雨,而我却没拿伞,这句话才是假的。也就是说

A 为真,B 为假,此时 A → B 为假。其余时候,A → B 都为真。

文氏图如下,只有属于 A 却不属于 B 的部分不包含在我们的范围内。

venn diagram for A_implies_B

现在再来看 A → B = A → B = ¬(A)∨B 这个式子。已经知道了它等号左边的真假情况,如何随着不同 A、B 组合变化。接下来是其等号右边的。稍微想想就发现,跟等号左边的组合结果是一样的:

A 为 真(则 ¬(A) 为 假),B 为 假,此时 ¬(A)∨B 为假,其余时候 ¬(A)∨B 为真。

BTW…

「日本货 白送给老子老子都不要!」对有些人来说这句话非常经济实用,因为只要没人真的送辆日本车给他(而他又忍不住收了),那么他总是对的。