【计算机科学的数学基础】逻辑

逻辑非

假设某命题为A,则A的逻辑非表达式如下:
¬ A \neg A ¬A
真值表表示如下:

A ¬ A \neg A ¬A
truefalse
falsetrue

双重否定等于肯定

命题A的双重否定等于命题A:
¬ ¬ A = A \neg \neg A = A ¬¬A=A
真值表表示如下:

A ¬ A \neg A ¬A ¬ ¬ A \neg \neg A ¬¬A
truefalsetrue
falsetruefalse

逻辑与

命题“A并且B”的逻辑表达式如下:
A ∧ B A \land B AB

真值表表示如下:

AB A ∧ B A \land B AB
truetruetrue
truefalsefalse
falsetruefalse
falsefalsetrue

可以看到只有在A和B都为真的时候, A ∧ B A \land B AB才为真。

逻辑或

命题“A或B”的逻辑表达式如下:
A ∨ B A \lor B AB
其真值表如下:

AB A ∨ B A \lor B AB
truetruetrue
truefalsetrue
falsetruetrue
falsefalsefalse

异或和相等

异或

命题“A或者B,但不都满足”的逻辑表达式如下:
A ⊕ B A \oplus B AB
其真值表如下:

AB A ⊕ B A \oplus B AB
truetruefalse
truefalsetrue
falsetruetrue
falsefalsefalse

只有在A,B不同时为真的时候,结果才为真

相等

命题“A和B相等”的表达式如下:
A = B A = B A=B
其真值表如下:

AB A = B A = B A=B
truetruetrue
truefalsefalse
falsetruefalse
falsefalsetrue

只有在A和B同时为真或同时为假的时候,A和B才相等;

异或和相等互为反命题

从上面的定义和真值表可以看出 A ⊕ B A \oplus B AB A = B A= B A=B正好相反,即:
A ⊕ B = ¬ ( A = B ) ( A = B ) = ( ¬ ( A ⊕ B ) ) A \oplus B = \neg(A=B) \\ (A = B)=(\neg (A \oplus B)) AB=¬(A=B)(A=B)=(¬(AB))

蕴涵

命题“若A则B”称为蕴涵,其表达式如下:
A ⇒ B A \Rightarrow B AB
其真值表如下:

AB A ⇒ B A \Rightarrow B AB
truetruetrue
truefalsefalse
falsetruetrue
falsefalsetrue

注意:只要前提条件A为false,则不论B的真假,蕴涵的值恒为true。
由上面的真值图可以看出:
A ⇒ B = ( ¬ ) A ∧ B A \Rightarrow B = (\neg)A \land B AB=(¬)AB

逆否命题

由上式可得:
( ¬ B ) ⇐ ( ¬ A ) = B ∨ ( ¬ A ) = A ⇐ B (\neg B) \Leftarrow (\neg A) = B \lor (\neg A) = A \Leftarrow B (¬B)(¬A)=B(¬A)=AB
反之亦然。
因此可得 A ⇐ B A \Leftarrow B AB与其逆否命题 ( ¬ B ) ⇐ ( ¬ A ) (\neg B) \Leftarrow (\neg A) (¬B)(¬A)相等

逻辑表达式与二进制

将上述的所有表达式的所有真值表合并可得:

AB f a l s e false false A ∧ B A \land B AB A ∧ ( ¬ ) B A \land (\neg)B A(¬)B A A A ( ¬ A ) ∧ B (\neg A) \land B (¬A)B B B B ¬ ( A = B ) \neg (A = B) ¬(A=B) A ∨ B A \lor B AB ¬ ( A ∨ B ) \neg (A \lor B) ¬(AB) A = B A= B A=B ¬ B \neg B ¬B A ∧ ( ¬ B A \land (\neg B A(¬B) ¬ A \neg A ¬A ( ¬ A ) ∨ B (\neg A) \lor B (¬A)B ¬ ( A ∧ B ) \neg ( A \land B) ¬(AB) t r u e true true
A ⊕ B A \oplus B AB B ⇐ A B\Leftarrow A BA A ⇐ B A \Leftarrow B AB
truetruefalsetruefalsetruefalsetruefalsetruefalsetruefalsetruefalsetruefalsetrue
truefalsefalsefalsetruetruefalsefalsetruetruefalsefalsetruetruefalsefalsetruetrue
falsetruefalsefalsefalsefalsetruetruetruetruefalsefalsefalsefalsetruetruetruetrue
falsefalsefalsefalsefalsefalsetruefalsefalsefalsetruetruetruetruetruetruetruetrue
0123456789101112131415

上表看似杂乱无章,但是如果令 t r u e = 1 , f a l s e = 0 true=1, false = 0 true=1,false=0,则每一列自下往上组成的4为二进制数正好等于每列最下面的十进制数字0-15。
所以使用4位二进制就可以表示所有的基本逻辑表达式

德摩根定律

( ¬ A ) ∨ ( ¬ B ) = ¬ ( A ∧ B ) ( ¬ A ) ∧ ( ¬ B ) = ¬ ( A ∨ B ) (\neg A) \lor (\neg B) = \neg (A \land B) \\ (\neg A) \land (\neg B) = \neg (A \lor B) (¬A)(¬B)=¬(AB)(¬A)(¬B)=¬(AB)
其真值表如下:

AB ( ¬ A ) ∨ ( ¬ B ) (\neg A) \lor (\neg B) (¬A)(¬B) ¬ ( A ∧ B ) \neg(A \land B) ¬(AB) ( ¬ A ) ∧ ( ¬ B ) (\neg A) \land (\neg B) (¬A)(¬B) ¬ ( A ∨ B ) \neg(A \lor B) ¬(AB)
truetruefalsefalsefalsefalse
truefalsetruetruefalsefalse
falsetruetruetruefalsefalse
falsefalsetruetruetruetrue

从真值表中可以看出,如果分别将true和false、 A A A ¬ A \neg A ¬A ∧ \land ∨ \lor 进行互换,就能够得到原来命题的否定式。

三值逻辑

三值逻辑即除了true和false,再加上一个undefined,即未定义

带条件的逻辑与

A & & B A \And \And B A&&B
其真值表如下:

AB A & & B A \And \And B A&&B
truetruetrue
truefalsefalse
trueundefinedundefined
falsetruefalse
falsefalsefalse
falseundefinedfalse
undefinedtrueundefined
undefinedfalseundefined
undefinedundefinedundefined

可以看出:

  • A为true时, A & & B A \And \And B A&&B B B B相等
  • A为false时, A & & B A \And \And B A&&B恒为false
  • A为undefined时, A & & B A \And \And B A&&B恒为undefined

所以,在三值逻辑中,交换法则不成立,即 A & & B A \And \And B A&&B并不等于 B & & A B \And \And A B&&A

带条件的逻辑或

A ∣ ∣ B A || B A∣∣B
其真值表如下:

AB A 或 B A 或 B AB
truetruetrue
truefalsetrue
trueundefinedtrue
falsetruetrue
falsefalsefalse
falseundefinedundefined
undefinedtrueundefined
undefinedfalseundefined
undefinedundefinedundefined

可以看出:

  • A为true时,A || B恒为true
  • A为false时,A || B和B相等
  • A为undefined时,A || B恒为undefined

否定

! A ! A !A
其真值表如下:

A!A
truefalse
falsetrue
undefinedundefined

可以看出:

  • 不包含undefined的时候, ! A !A !A ¬ A \neg A ¬A相等
  • 若A为undefined,则 ! A !A !A也为undefined

三值逻辑的德摩根定律

( ! A ) ∣ ∣ ( ! B ) = ! ( A & & B ) ( ! A ) & & ( ! B ) = ! ( A ∣ ∣ B ) (!A) || (!B) = !(A \And\And B) \\ (!A) \And \And (!B) = !(A || B) (!A)∣∣(!B)=!(A&&B)(!A)&&(!B)=!(A∣∣B)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值