逻辑非
假设某命题为A,则A的逻辑非表达式如下:
¬
A
\neg A
¬A
真值表表示如下:
A | ¬ A \neg A ¬A |
---|---|
true | false |
false | true |
双重否定等于肯定
命题A的双重否定等于命题A:
¬
¬
A
=
A
\neg \neg A = A
¬¬A=A
真值表表示如下:
A | ¬ A \neg A ¬A | ¬ ¬ A \neg \neg A ¬¬A |
---|---|---|
true | false | true |
false | true | false |
逻辑与
命题“A并且B”的逻辑表达式如下:
A
∧
B
A \land B
A∧B
真值表表示如下:
A | B | A ∧ B A \land B A∧B |
---|---|---|
true | true | true |
true | false | false |
false | true | false |
false | false | true |
可以看到只有在A和B都为真的时候, A ∧ B A \land B A∧B才为真。
逻辑或
命题“A或B”的逻辑表达式如下:
A
∨
B
A \lor B
A∨B
其真值表如下:
A | B | A ∨ B A \lor B A∨B |
---|---|---|
true | true | true |
true | false | true |
false | true | true |
false | false | false |
异或和相等
异或
命题“A或者B,但不都满足”的逻辑表达式如下:
A
⊕
B
A \oplus B
A⊕B
其真值表如下:
A | B | A ⊕ B A \oplus B A⊕B |
---|---|---|
true | true | false |
true | false | true |
false | true | true |
false | false | false |
只有在A,B不同时为真的时候,结果才为真
相等
命题“A和B相等”的表达式如下:
A
=
B
A = B
A=B
其真值表如下:
A | B | A = B A = B A=B |
---|---|---|
true | true | true |
true | false | false |
false | true | false |
false | false | true |
只有在A和B同时为真或同时为假的时候,A和B才相等;
异或和相等互为反命题
从上面的定义和真值表可以看出
A
⊕
B
A \oplus B
A⊕B和
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))
A⊕B=¬(A=B)(A=B)=(¬(A⊕B))
蕴涵
命题“若A则B”称为蕴涵,其表达式如下:
A
⇒
B
A \Rightarrow B
A⇒B
其真值表如下:
A | B | A ⇒ B A \Rightarrow B A⇒B |
---|---|---|
true | true | true |
true | false | false |
false | true | true |
false | false | true |
注意:只要前提条件A为false,则不论B的真假,蕴涵的值恒为true。
由上面的真值图可以看出:
A
⇒
B
=
(
¬
)
A
∧
B
A \Rightarrow B = (\neg)A \land B
A⇒B=(¬)A∧B
逆否命题
由上式可得:
(
¬
B
)
⇐
(
¬
A
)
=
B
∨
(
¬
A
)
=
A
⇐
B
(\neg B) \Leftarrow (\neg A) = B \lor (\neg A) = A \Leftarrow B
(¬B)⇐(¬A)=B∨(¬A)=A⇐B
反之亦然。
因此可得
A
⇐
B
A \Leftarrow B
A⇐B与其逆否命题
(
¬
B
)
⇐
(
¬
A
)
(\neg B) \Leftarrow (\neg A)
(¬B)⇐(¬A)相等
逻辑表达式与二进制
将上述的所有表达式的所有真值表合并可得:
A | B | f a l s e false false | A ∧ B A \land B A∧B | 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 A∨B | ¬ ( A ∨ B ) \neg (A \lor B) ¬(A∨B) | 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) ¬(A∧B) | t r u e true true |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A ⊕ B A \oplus B A⊕B | B ⇐ A B\Leftarrow A B⇐A | A ⇐ B A \Leftarrow B A⇐B | |||||||||||||||
true | true | false | true | false | true | false | true | false | true | false | true | false | true | false | true | false | true |
true | false | false | false | true | true | false | false | true | true | false | false | true | true | false | false | true | true |
false | true | false | false | false | false | true | true | true | true | false | false | false | false | true | true | true | true |
false | false | false | false | false | false | true | false | false | false | true | true | true | true | true | true | true | true |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
上表看似杂乱无章,但是如果令
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)=¬(A∧B)(¬A)∧(¬B)=¬(A∨B)
其真值表如下:
A | B | ( ¬ A ) ∨ ( ¬ B ) (\neg A) \lor (\neg B) (¬A)∨(¬B) | ¬ ( A ∧ B ) \neg(A \land B) ¬(A∧B) | ( ¬ A ) ∧ ( ¬ B ) (\neg A) \land (\neg B) (¬A)∧(¬B) | ¬ ( A ∨ B ) \neg(A \lor B) ¬(A∨B) |
---|---|---|---|---|---|
true | true | false | false | false | false |
true | false | true | true | false | false |
false | true | true | true | false | false |
false | false | true | true | true | true |
从真值表中可以看出,如果分别将true和false、 A A A和 ¬ A \neg A ¬A、 ∧ \land ∧和 ∨ \lor ∨进行互换,就能够得到原来命题的否定式。
三值逻辑
三值逻辑即除了true和false,再加上一个undefined,即未定义
带条件的逻辑与
A
&
&
B
A \And \And B
A&&B
其真值表如下:
A | B | A & & B A \And \And B A&&B |
---|---|---|
true | true | true |
true | false | false |
true | undefined | undefined |
false | true | false |
false | false | false |
false | undefined | false |
undefined | true | undefined |
undefined | false | undefined |
undefined | undefined | undefined |
可以看出:
- 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
其真值表如下:
A | B | A 或 B A 或 B A或B |
---|---|---|
true | true | true |
true | false | true |
true | undefined | true |
false | true | true |
false | false | false |
false | undefined | undefined |
undefined | true | undefined |
undefined | false | undefined |
undefined | undefined | undefined |
可以看出:
- A为true时,A || B恒为true
- A为false时,A || B和B相等
- A为undefined时,A || B恒为undefined
否定
!
A
! A
!A
其真值表如下:
A | !A |
---|---|
true | false |
false | true |
undefined | undefined |
可以看出:
- 不包含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)