布尔逻辑

简介

布尔(Boolean)是一种逻辑数据类型,它表达了一种简单基本的逻辑模型。

布尔类型的值有且仅有两种,即(true)与(false)

运算

not[1] 是一元运算,表示将值翻转。即将真变为假,假变为真。

and[2] 是二元运算,表示“且”关系。当 ab 同为真时 a and b 为真,否则为假。

a and btruefalse
truetruefalse
falsefalsefalse

or[3] 是二元运算。当 ab 之一为真时 a or b 为真,否则为假。

a or btruefalse
truetruetrue
falsetruefalse

异或 xor[4] 是二元运算。当 ab 恰一个为真时 a xor b 为真,否则为假。

a xor btruefalse
truefalsetrue
falsetruefalse

练习

  1. notand 的复合运算表示 or
  2. notor 的复合运算表示 and
  3. notor 的复合运算表示 xor
  4. 证明异或满足分配律与结合律
Note

可以尝试使用 Venn 图来方便理解、刻画

  • 1在形式逻辑中记作否定(¬)
  • 2在形式逻辑中记作合取(∧)
  • 3在形式逻辑中记作析取(∨)
  • 4也记作