布尔代数(Boolean Algebra)不仅是计算机逻辑的基础,其本质上是一个有补分配格。本章将从代数结构的角度系统化定义布尔代数。
布尔代数是一个代数系统 ⟨B,∨,∧,¬,0,1⟩,其中 ⟨B,∨,∧⟩ 是一个有补分配格。
- 0,1 分别是格的最小元和最大元。
- ¬ 是补元运算,满足 a∨¬a=1 且 a∧¬a=0。
由于布尔代数是格,它天然满足:
- 分配律:x∧(y∨z)=(x∧y)∨(x∧z)
- 吸收律:x∧(x∨y)=x
- 德·摩根律:¬(x∨y)=¬x∧¬y,¬(x∧y)=¬x∨¬y
布尔代数满足以下基本定律,这些定律是等价变换的基石。
| 定律名称 | 表达式 (OR 形式) | 表达式 (AND 形式) |
|---|
| 分配律 | a∨(b∧c)=(a∨b)∧(a∨c) | a∧(b∨c)=(a∧b)∨(a∧c) |
| 吸收律 | a∨(a∧b)=a | a∧(a∨b)=a |
| 德·摩根律 | a∨b=aˉ∧bˉ | a∧b=aˉ∨bˉ |
证明:a∨(a∧b)=a。
证明:
a∨(a∧b)=(a∧1)∨(a∧b) (单位元)
=a∧(1∨b) (分配律)
=a∧1 (最大元性质:1∨x=1)
=a。
一个逻辑门集合若能实现任何布尔函数,则称其为完备集。
- {∧,∨,¬} 是最直观的完备集。
- {↑} (NAND) 与 {↓} (NOR) 是单门完备集。
- ¬a=a↑a
- a∧b=¬(a↑b)=(a↑b)↑(a↑b)
- a∨b=¬a↑¬b=(a↑a)↑(b↑b)
卡诺图是一种利用几何相邻性(格雷码顺序)进行逻辑简化的图形工具。
- 圈内的项数必须是 2n。
- 尽可能圈大的块以消掉更多的变量。
- 圈可以跨越图的边界(卷轴特性)。
写出表达式 f=(a+bˉ)⋅c+0 的对偶式 f∗。
Check Solution
对偶运算规则:+↔⋅,0↔1。
f∗=(a⋅bˉ)+c⋅1。
化简 f=ABˉ(C+BD)+AˉBˉC。
Check Solution
- 展开内层:ABˉC+ABˉBD=ABˉC (因为 BˉB=0)。
- 原式变为:ABˉC+AˉBˉC。
- 应用德·摩根律:(ABˉC⋅AˉBˉ)C
=(Aˉ+B+Cˉ)⋅(A+B)⋅C
=[(Aˉ+B+Cˉ)⋅C]⋅(A+B)
=(AˉC+BC+0)⋅(A+B)
=AˉCA+AˉCB+BCA+BCB=0+AˉBC+ABC+BC=BC(Aˉ+A+1)=BC。
仅使用 NAND 门实现异或运算 a⊕b。
Check Solution
a⊕b=(a∧bˉ)∨(aˉ∧b)。
使用 4 个 NAND 门:
x=a↑b
y=a↑x
z=b↑x
结果 =y↑z。
给定四变量函数 ∑m(0,1,2,5,8,9,10)。画图并写出最简 SOP 形式。
Check Solution
合并结果为 f=BˉDˉ+BˉCˉ+AˉCˉD。
本章节由 SolKnow 系统根据布尔代数与格论深度整合。