1.5 逻辑代数的基本定律和规则
和普通代数相似,逻辑代数中的运算也有一些定律和规则可依。本节介绍逻辑代数的基本定律和几条常用的规则,熟悉这些内容,对数字电路的分析和设计是非常有用的。
1.逻辑函数的相等
逻辑函数和普通代数一样,也有相等的问题。判断两个函数相等,可依照下面的规则:设有两个函数F1=f1(A1,A2,…,An)和F2=f2(A1,A2,…,An),如果对于A1,A2,…,An的任何一组取值(共2n组),F1和F2的值均相等,则称函数F1和F2相等,记为F1=F2。换言之,如果F1和F2两函数的真值表相同,则F1=F2。反之,如果F1=F2,那么这两个函数的真值表一定相同。
【例1.13】 设有两个函数:F1=A+BC,F2=(A+B)(A+C)。求证:F1=F2。
解:这两个函数都具有三个变量,有23=8组逻辑取值,其真值表如表1.17所示。由表可见,对应于A,B,C的每组取值,函数F1和F2的值均相等,所以F1=F2。
2.基本定律
①0-1律 A·0=0; A+1=1
②自等律 A·1=A; A+0=A
③重叠律 A·A=A; A+A=A
④互补律
⑤交换律 A·B=B·A; A+B=B+A
⑥结合律 A(BC)=(AB)C; A+(B+C)=(A+B)+C
⑦分配律 A(B+C)=AB+AC; A+BC=(A+B)(A+C)
⑧反演律
⑨还原律
其中,反演律也叫德·摩根(De.Morgan)定理,是一个非常有用的定律。
以上逻辑代数的基本定律的正确性,可像例13那样用真值表加以验证。以基本定律为基础,可以推导出逻辑代数的其他公式,这将在后面介绍。
3.逻辑代数的三条规则
逻辑代数有三条重要规则,即代入规则、反演规则和对偶规则,现分别叙述如下。
(1)代入规则
任何一个含有变量X的逻辑等式中,若用逻辑函数式F替代等式两边的变量X,则新的逻辑等式仍然成立。这个规则称为代入规则。
由于任何一个逻辑函数和任何一个逻辑变量一样,只有0和1两种取值,显然,以上规则是成立的。
表1.17 F1和F2的真值表
利用代入规则,可以将上述基本定律中的变量用任意的逻辑表达式来代替,从而扩大基本定律的应用范围。
【例1.14】 试用代入规则证明下式成立:。
解:由德·摩根定理可知等式,应用代入规则,用F=B+C替代等式中所有B的位置,则有
即
可见,应用代入规则可以将两变量的德·摩根定理推广为三变量。同理,可以证明n变量的德·摩根定理的成立,即:。
在使用代入规则时,一定要把所有出现某变量X的位置都用同一逻辑函数式替代,否则是不正确的。
(2)反演规则
假设逻辑函数式,则,称F是原函数,F为反函数。若F是一个逻辑变量,则称F是原变量,F为反变量。由原函数求它的反函数的过程叫做反演或求反。以下的反演规则给出了进行这种运算的一种方法。
设F为任意的逻辑表达式,若将F中所有的运算符、常量及变量做如下变换
则所得的新的逻辑表达式,即为F的反函数,记为F。这个规则称为反演规则。
反演规则(又称为香农定理)实际上是前述反演律的推广,这里就不严格证明了。反演规则为直接求取F提供了方便。
【例1.15】 已知,求。
解:利用反演规则可得:。
应用反演规则时,必须注意保持函数的变量间运算次序不要改变。在例1.15中F的“与”项变成的“或”项时,一定要加括号。如果写成,则是错误的。
【例1.16】 已知,求。
解:直接应用反演规则可得。
此例是有多层“非”号的情况。在直接运用反演规则求F时,注意对不属于单个变量的“非”号保留不变。
(3)对偶规则
若有两个逻辑表达式F和G相等,则它们的对偶式F' 和G' 也相等,这就是对偶规则。
所谓“对偶式”是这样定义的:设F为任意的逻辑表达式,若将F中所有的运算符号和常量做如下变换:
但变量不变,则所得的新的逻辑表达式,即为F的对偶式,记为F'。
例如:若,则;若,则。
实际上对偶是相互的,即F和F' 互为对偶式。
求对偶式时需要注意:
①保持原函数变量间运算次序;
②单变量的对偶式,仍为其自身,如F=A,F'=A;
③一般情况下,;在某些特殊情况下,才有F'=F。例如,异或表达式,,而,故。
对偶规则实际上是反演规则和代入规则的应用。因为F=G,所以。而和F',以及和G' 的区别仅在于,求反函数时要改变变量,而求对偶式时,变量不动。若分别将和中所有的变量都代之以它们的“非”,则得F' 和G'。根据代入规则,既然,则有F'=G' 。
回顾前述的基本定律,可以发现,每个定律的两个等式都是互为对偶式。所以有了对偶规则,使得要证明和记忆的公式数目就减少了一半。有时为了证明两个逻辑表达式相等,也可以通过证明它们的对偶式相等来完成。因为在有些情况下,证明它们的对偶式相等更加容易。
例如:已知A(B+C)=AB+AC,则根据对偶规则必有A+BC=(A+B) (A+C)。
4.逻辑代数的常用公式
运用逻辑代数的基本定律和三条规则,可以得到更多的公式。常用到的几个公式如下:
消去律
证明:
该公式说明:两个乘积项相加时,若它们只有一个因子不同(如一项中有B,另一项中有B),而其余因子完全相同,则这两项可以合并成一项,且能消去那个不同的因子(即B和B)。
由对偶规则可得:
吸收律1 A+AB=A
证明:A+AB=A(1+B)=A·1=A
该公式说明:两个乘积项相加时,若其中一项是另一项的因子,则另一项是多余的。
由对偶规则可得: A(A+B)=A
吸收律2
证明:
该公式说明:两个乘积项相加时,若其中一项的非是另一项的因子,则此因子是多余的。
由对偶规则可得:
包含律
证明:
该公式说明:三个乘积项相加时,其中两个乘积项中,一项含有原变量A,另一项含有反变量,而这两项的其余因子都是第三个乘积项的因子,则第三个乘积项是多余的。
该公式可以推广为:
由对偶规则可得:
5.关于异或(同或)逻辑运算
二输入变量的“异或”和“同或”互为反函数,是仅对偶数个变量而言的,如
而对奇数个变量,则“异或”等于“同或”,如A⊕B⊕C=A⊙B⊙C。
另外,“异或”和“同或”具有如下性质:
异或: 同或:
借助以上介绍的逻辑代数中的基本定律、三个规则和常用公式,可以对复杂的逻辑表达式进行推导、变换和简化,这在分析和设计逻辑电路时是非常有利的。但这些公式反映的是对逻辑变量进行的逻辑运算,而不是对数进行的数值运算。因此,在运用过程中务必注意逻辑代数和普通代数的区别,不能简单地套用普通代数的运算法则。在逻辑代数中,不存在指数、系数、减法和除法。逻辑等式两边相同的项不能随便消去。例如:
另外,对于所有公式,要正确理解其含义,避免引起误解。
例如:,这是吸收律第二种表达式。运用代入规则可推广为:,如果认为,显然是错误的。这是误认为了。