1 / 70

第九章 格与布尔代数

第九章 格与布尔代数. 9.1 格 9.2 布尔代数 9.3 子布尔代数、积布尔代数 和布尔代数同态 9.4 布尔代数的原子表示 9.5 布尔代数 B r 2 9.6 布尔表达式及其范式定理. 退出. 9.1 格. 1 .格作为偏序集

zizi
Télécharger la présentation

第九章 格与布尔代数

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第九章 格与布尔代数 • 9.1 格 • 9.2 布尔代数 • 9.3 子布尔代数、积布尔代数 • 和布尔代数同态 • 9.4 布尔代数的原子表示 • 9.5 布尔代数Br2 • 9.6 布尔表达式及其范式定理 退出

  2. 9.1 格 • 1.格作为偏序集 • 定义9.1.1设<L,≤>是一个偏序集,若对任意a,b,L,存在glb{a,b}和lub{a,b},则称<L,≤>为格,并记为a*b=glb{a,b},ab=lub{a,b},称和分别为L上的交(或积)和并(或和)运算。称<L,,*>为<L,≤>所诱导的代数结构的格。若L是有限集合,称<L,≤>为有限格。

  3. 格的对偶性原理是成立的: • 令<L,≤>是偏序集,且<L,≥>是其对偶的偏序集。若<L,≤>是格,则<L,≥>也是格,反之亦然。这是因为,对于L中任意a和b,<L,≤>中lub{a,b}等同于<L,≥>中glb {a,b},<L,≤>中glb{a,b}等同于<L,≥>中的lub{a,b}。若L是有限集,这些性质易从偏序集及其对偶的哈斯图得到验证。

  4. 从上讨论中,可知两格互为对偶。互为对偶的两个<L,≤>和<L,≥>有着密切关系,即格<L,≤>中交运算正是格<L,≥>中的并运算,而格<L,≤>中的并运算正是格<L,≥>中的交运算。因此,给出关于格一般性质的任何有效命题,把关系≤换成≥(或者≥换成≤),交换成并,并换成交,可得到另一个有效命题,这就是关于格的对偶性原理。从上讨论中,可知两格互为对偶。互为对偶的两个<L,≤>和<L,≥>有着密切关系,即格<L,≤>中交运算正是格<L,≥>中的并运算,而格<L,≤>中的并运算正是格<L,≥>中的交运算。因此,给出关于格一般性质的任何有效命题,把关系≤换成≥(或者≥换成≤),交换成并,并换成交,可得到另一个有效命题,这就是关于格的对偶性原理。 • 定义9.1.2设<L,≤>是格,且SL。若对任意a,bS,有a*bS和abS,则称<S,≤>是格<L,≤>的子格。

  5. 2.格的基本性质 • 在证明格的性质前,回忆一下a*b和ab的真正含义是有好处的。 • ①a*b≤a和ab≤b,则表明a*b是a和b的下界。 • ②若c≤a和c≤b,则c≤a*b,这表明a*b是a和b的最大下界。 • ①’a≤ab和b≤ab,则表明ab是a和b的上界。 • ②’若a≤c,且b≤c,则ab≤c,这表明ab是a和b的最小上界。

  6. 定理9.1.1设<L,≤>是格,对任意a,bL,有 • ① ab=ba≤b • ② a*b=aa≤b • ③ a*b=aab=b • 亦即 a≤bab=ba*b=a

  7. 定理9.1.2设<L,≤>是格,对任意a,bL,有 • ① a*b=a, aa=a。 (幂等律) • ② a*b=b*a, ab=ba。 (交换律) • ③ a*(b*c)=(a*b)*c • a(bc)=(ab)c (结合律) • ④ a*(ab)=a • a(a*b)=a (吸收律)

  8. 定理9.1.3设<L,≤>是格,对任意a,b,cL,有 • ①若a≤b和c≤d,则a*c≤b*d,ac≤bd。 • ②若a≤b,则a*c≤b*c,ac≤bc。 • ③c≤a和c≤b c≤a*b • ④a≤c和b≤c ab≤c

  9. 定理9.1.4设<L,≤>是格,对任意的a,b,cL,有 • a(b*c)≤(ab)*(ac) • (a*b)(a*c)≤a*(bc) • 通常称上二式为格中分配不等式。

  10. 定理9.1.5设<L,≤>是格,对任意的a,b,cL,有 • a≤ca(b*c) ≤(ab)*c • 推论:在格<L,≤>中,对任意的a,b,cL,有 • (a*b)(a*c)≤a*(b(a*c)) • a(b*(ac))≤(ab)*(ac)

  11. 3.特殊的格 • 定义9.1.3设<L,≤>是格,若L中有最大元和最小元,则称<L,≤>为有界格。一般把格中最大元记为1,最小元记为0。 • 由定义可知,对任意aL,有 • 0≤a≤1 • a*0=0, a0=a • a*1=a, a1=1

  12. 定理9.1.6设<L,≤>是有限格,其中L={a1,a2,···,an},则<L,≤>是有界格。定理9.1.6设<L,≤>是有限格,其中L={a1,a2,···,an},则<L,≤>是有界格。

  13. 定义9.1.4设<L,≤>是有界格,对于aL,存在bL,使得定义9.1.4设<L,≤>是有界格,对于aL,存在bL,使得 • a*b=0,ab=1 • 称b为a的补元,记为a’。 • 由定义可知,若b是a的补元,则a也是b的补元,即a与b互为补元。 • 显然,0’=1和1’=0,且易证补元是唯一的。 • 一般说来,一个元素可以有其补元,未必唯一,也可能无补元。

  14. 定义9.1.5设<L,≤>是格,对任意的a,b,cL,有 • ① a*(bc)=(a*b)(a*c) • ② a(b*c)=(ab)*(ac) • 则称<L,≤>为分配格,称①和②为格中分配律。

  15. 定义9.1.6设<L,≤>是格,对任意的a,b,cL,有 • a≤ca(b*c)=(ab)*c • 称<L,≤>为模格。 • 定理9.1.7分配格是模格 • 定理9.1.8每个链都是分配格。

  16. 定理9.1.9一个格为分配格,当且仅当它不含有任何子格与这两个五元素格中任一个同构。定理9.1.9一个格为分配格,当且仅当它不含有任何子格与这两个五元素格中任一个同构。 • 定理9.1.10设<L,≤>是分配格,对任意a,b,cL,有 • (a*b=a*c)且(ab=ac)b=c • 定理9.1.11设<L,≤>是有界分配格,若aL,且补元存在,则其补元是唯一的。

  17. 定义9.1.7设<L,≤>是格,若L中每个元素至少有一补元,则称<L,≤>为有补格。定义9.1.7设<L,≤>是格,若L中每个元素至少有一补元,则称<L,≤>为有补格。 • 由于补元的定义是在有界格中给出的,可知,有补格一定是有界格。 • 定义9.1.8若一格既是有补又是分配的,则称该格为有补分配格,或布尔格,或布尔代数。

  18. 定理9.1.12设<L,≤>是有补分配格,若任意元素aL,则a的补元a’是唯一的。定理9.1.12设<L,≤>是有补分配格,若任意元素aL,则a的补元a’是唯一的。 • 该定理9.1.11的直接推论,因为有补分配格当然是有界分配格。 • 由于有补分配格中,每个元素a都有唯一的补元a’,因此可在L上定义一个一元运算—补运算“’”。这样,有补分配格可看作具有两个二元运算和一个一元运算的代数结构,习惯上称它为布尔代数,记为<B,,*,’,0,1>,其中B=L。

  19. 定理9.1.13设<L,≤>是有补分配格,对任意a,bL,则定理9.1.13设<L,≤>是有补分配格,对任意a,bL,则 • ① (a’)’=a • ② (a*b)’=a’b’ • ③ (ab)’=a’*b’ • 后两式称为格中德·摩根律。

  20. 定理9.1.14设<L,≤>是有补分配格,对任意a,bL,有定理9.1.14设<L,≤>是有补分配格,对任意a,bL,有 • a≤ba*b’=0 • a’b=1 • 格同态,格直积等概念可以接下来定义和研究,但这里不打算这样做,因为如此进行会相对较繁,而是将格作为一个代数结构而引入它们。

  21. 4.格是代数结构 • 能自然地把代数结构中有关子代数、同态、积代数等概念,引入到格中。 • 定义9.1.9设<L,,*>是一代数结构,其中和*是L上满足交换律、结合律和吸收律的二元运算,且对任意a,bL,定义关系≤如下: • a≤ba*b=a • 则<L,≤>是格,称<L,≤>为代数系统<L,,*>所诱导的偏序集确立的格。

  22. 定义9.1.10设<L,,*>和<S,,>是格。存在函数f:LS,若对任意a,bL,有定义9.1.10设<L,,*>和<S,,>是格。存在函数f:LS,若对任意a,bL,有 • f(ab)=f(a)f(b),f(a*b)=f(a)f(b) • 则称f是从<L,,*>到<S,,>的格同态。 • 下述定理说明格同态是保序的。 • 定理9.1.15设<L,,*>和<S,,>是格,而<L, ≤>和<S,≤’>分别是给定两个格所诱导的偏序集确立的格。若f:LS是格同态,则对任意a,bL,且a≤b,必有f(a)≤’f(b)。

  23. 在定义9.1.10中,若f是双射函数,则称f是格同构。或称<L,,*>和<S,,>两个格同构。由于同构是相互的,又是保序的,故对任意a,bL,有在定义9.1.10中,若f是双射函数,则称f是格同构。或称<L,,*>和<S,,>两个格同构。由于同构是相互的,又是保序的,故对任意a,bL,有 • a≤bf(a)≤’f(b) • 和 • f(a)≤’f(b)a≤b • 这表明同构的两个格的哈斯图是一样的,只是各结点的标记不同而已。

  24. 定义9.1.11设<L,,*>和<S,,>是格,定义一个代数结构<LS,+,o>如下:定义9.1.11设<L,,*>和<S,,>是格,定义一个代数结构<LS,+,o>如下: • 对任意<a1,b1>,<a2,b2>LS,有 • <a1,b1>+<a2,b2>=<a1b1,a2b2> • <a1,b1>o<a2,b2>=<a1*b1,a2b2> • 称<LS,+,o>是格<L,,*>和<S,,>的直积。

  25. 两个格的直积也是格。这是因为在LS上,运算o和+是封闭的,且满足交换律、结合律和吸收律。两个格的直积也是格。这是因为在LS上,运算o和+是封闭的,且满足交换律、结合律和吸收律。 • 格积的阶等于两个格的阶乘积。由于<LS,o,+>是一个格,故又可以与另一个格作直积,这样,利用格的直积可用较小阶的格构造出阶越来越大的格。但反之,较大阶的格,并不都能表示成较小阶的格直积。

  26. 9.2 布尔代数 • 前已指出,布尔代数是有补分配格,常记为<B,,*, ’,0,1>。对任意a,b,cB,有

  27. <B,,*>是格,且≤为B上由或*所定义的偏序关系,满足 • (L-1) ab=lub{a,b}, a*b=glb{a,b} • (L-2) a≤bab=ba*b=a • (L-3) aa=a, a*a=a (等幂律) • (L-4) ab=ba, a*b=b*a (交换律) • (L-5) (ab)c=a(bc),(a*b)*c=a*(b*c) (结合律) • (L-6) a(a*b)=a,a*(ab)=a (吸收律)

  28. ② <B,,*>是分配格,满足 • (D-1) a(b*c)=(ab)*(ac), • a*(bc)=(a*b)(a*c) (分配律) • (D-2) (ab=ac)(a*b=a*c)b=c • (D-3) (ab)*(bc)*(ca)=(a*b)(b*c)(c*a)

  29. ③ <B,,*, ’,0,1>是有界格,满足 • (B-1) 0≤a≤1 • (B-2) a0=a,a*a=a (幺律) • (B-3) a1=1,a*0=0 (零律) • ④ <B,,*, ’,0,1>是有补格,满足 • (C-1) aa’=1,a*a’=0 (互补律) • (C-2) 1’=0,0’=1

  30. ⑤ <B,,*, ’,0,1>是有补分配格,满足 • (CD-1) (ab)’=a’*a’,(a*b)’=a’b’ (德·摩根律) • (CD-2) a≤ba’b=1a*b’=0b’≤a’ • 注意,上述公式并非都是独立的,可从中选出一些公式作为基本公式,用它们推出其余的公式,而且可以用基本公式定义布尔代数。

  31. 定义9.2.1设<B,,*, ’>是一代数结构,其中和*是B上的二元运算,’是B上的一元运算。0,1B。若对任意a,bB,有 • ① ab=ba,a*b=b*a (交换律) • ② a(b*c)=(ab)*(ac),a*(bc)=(a*b)(a*c) (分配律) • ③ a0=a,a*1=a (幺律) • ④ aa’=1,a*a’=0 (互补律)

  32. 则称<B,,*, ’>是布尔代数,称、*和’分别是B上的并、交和补运算,0和1分别称为和*的零元和幺元。 • 代数结构<B,,*, ’,0,1>满足定义9.2.1的条件,所以它是布尔代数,它是二元布尔代数。二元布尔代数其哈斯图是链的唯一布尔代数。

  33. 9.3 子布尔代数、积布尔代数和布尔代数同态 • 把子代数、积代数和同态的概念应用到布尔代数上,便得到了相应论题,本节不准备详尽叙述它,仅就其特点讨论之。

  34. 定义9.3.1给定布尔代数<B,,⊙,’,0,1>,≠TB,若T对所有运算封闭,且0,1∈T,则称<T,,⊙,’>是子布尔代数。定义9.3.1给定布尔代数<B,,⊙,’,0,1>,≠TB,若T对所有运算封闭,且0,1∈T,则称<T,,⊙,’>是子布尔代数。 • 显然,<B,,⊙,’,0,1>和<{0,1},,⊙,’,0,1>是子布尔代数。

  35. 应该指出,没有必要对所有三个运算,⊙和’都要检查封闭性,也没有必要验证0与1是否在T中,只要对运算集合{,’}或{⊙,’}检查其封闭性即可。这可从布尔代数中这两个运算集合是全功能集得出。因为对任意x,y∈S,有x⊙y=(x’y’)’,0=(x’x)’,1=xx’,故对于和’的封闭便保证了⊙的封闭以及0,1∈T。应该指出,没有必要对所有三个运算,⊙和’都要检查封闭性,也没有必要验证0与1是否在T中,只要对运算集合{,’}或{⊙,’}检查其封闭性即可。这可从布尔代数中这两个运算集合是全功能集得出。因为对任意x,y∈S,有x⊙y=(x’y’)’,0=(x’x)’,1=xx’,故对于和’的封闭便保证了⊙的封闭以及0,1∈T。

  36. 对于{⊙,’}可用同样论证。 • 显然,每个子布尔代数都是布尔代数。 • 布尔代数的子集可以是个布尔代数,但也可能不是布尔代数,因为这可从它对运算是否封闭而定。

  37. 定义9.3.2给定两个布尔代数<B1,1,⊙1,’,01,11>和<B2,2,⊙2,″,02,12>,则两个布尔代数的积也是布尔代数,称为积布尔代数,记作<B1×B2,3,⊙3,’’’,03,13>,其中对任意<b11,b21>,<b12,b22>∈B1×B2,有定义9.3.2给定两个布尔代数<B1,1,⊙1,’,01,11>和<B2,2,⊙2,″,02,12>,则两个布尔代数的积也是布尔代数,称为积布尔代数,记作<B1×B2,3,⊙3,’’’,03,13>,其中对任意<b11,b21>,<b12,b22>∈B1×B2,有

  38. <b11,b21>3<b12,b22>=<b111b12,b212b22> • <b11,b21>⊙3<b12,b22>=<b11⊙1b12,b21⊙2b22> • <b11,b21>’’’=<b11’,b21″> • 03=<01,02>,13=<11,12> • 可见,积布尔代数能够生成新的布尔代数。

  39. 定义9.3.3给定两个布尔代数<B,+,·,’,0,1>和<T,,⊙,ˉ,α,β>,则定义9.3.3给定两个布尔代数<B,+,·,’,0,1>和<T,,⊙,ˉ,α,β>,则 • <B,+,·,’,0,1><T,,⊙,ˉ,α,β>:=(f)(f∈TB∧(x)(y)(x,y∈S→(f(x+y)=f(x) f(y)∧f(x·y)=f(x)⊙f(y)∧f(x’)= ∧f(0)=α∧f(1)=β))) • 并称f为从<B,+,·,’,0,1>到<T,,⊙,ˉ,α,β>的布尔同态映射。

  40. 如前所述,同态的定义仍可简化成:若保持运算{,’}或{⊙,’}则f∈TB为布尔同态映射。又若f为双射,则f为布尔同构映射。如前所述,同态的定义仍可简化成:若保持运算{,’}或{⊙,’}则f∈TB为布尔同态映射。又若f为双射,则f为布尔同构映射。 • 定理9.3.1若f为从<B,+,·,’,0,1>到<T,,⊙,ˉ,α,β>的布尔同态映射,且|f(B)|≥2,其中f(B)={y|f(x)=y∈T∧x∈B},则<f(B),,⊙,ˉ,f(0),f(1)>是布尔代数。

  41. 9.4 布尔代数的原子表示 • 在布尔集合代数中,每个子集可表成单元集的并,而且这种表示在不计项的次序情况下是唯一的。对于任何有限布尔代数,也将有同样的结果,这里起着单元集作用的那些元素,称它们是原子。

  42. 定义9.4.1给定布尔代数<B,,⊙,’,0,1>且0≠a∈B,则a为原子:=(x)(x∈B→a⊙x=a∨a⊙x=0)定义9.4.1给定布尔代数<B,,⊙,’,0,1>且0≠a∈B,则a为原子:=(x)(x∈B→a⊙x=a∨a⊙x=0) • 因为a⊙x=aax,所以上述定义又可表为 • a为原子:=(x)(x∈S→ax∨a⊙x=0) • 若a为原子且xa,则x=0或x=a。这表明原子在偏序图中是那些紧位于零元之上的元素。

  43. 定理9.4.1若a1和a2为布尔代数<B,,⊙,’>的原子,且a1⊙a2≠0,则a1=a2。定理9.4.1若a1和a2为布尔代数<B,,⊙,’>的原子,且a1⊙a2≠0,则a1=a2。 • 定理9.4.2若x是有限布尔代数<B,,⊙,’>的非零元,则存在原子a∈S,使得ax。 • 定理9.4.3若a,a1,a2,…,an为有限布尔代数<B,,⊙,’,0,1>的原子,则 • aa1a2…an(i)(i∈{1,2,…,n}∧a=ai)

  44. 定理9.4.4设有限布尔代数<B,,⊙,’,0,1>的所有原子是a1,a2,…,an,且y∈B,则定理9.4.4设有限布尔代数<B,,⊙,’,0,1>的所有原子是a1,a2,…,an,且y∈B,则 • y=0(i)(i∈{1,2,…,n}→y⊙ai=0)

  45. 定理9.4.5(原子表示定理) • 给定布尔代数<B,,⊙,’,0,1>,0≠x∈B以及i=1,2,…,n,aix,则x= ai,且不计原子的次序表示式是唯一的。

  46. 定理9.4.6 (斯通(Stone)定理) • 设<B,,⊙,’,0,1>是有限布尔代数,且A表示该代数中的所有原子的集合,则<B,,⊙,’,0,1>同构于幂集代数<P(A),∪,∩,ˉ,,A>。 • 本定理说明了,能够用布尔代数的各原子,完全确定该布尔代数,并且可用布尔集合代数<P(A),∪,∩,ˉ,,A>表示这一布尔代数。

  47. 由本定理可直接得到下面推论: • |B|=2|A| • 由此又可推出,若两个有限布尔代数中的集合有相同的基数,则它们的原子集合也有相同的基数。于是该二个布尔代数是同构的。因此可得到如下定理: • 定理9.4.7每个有限布尔代数的集合基数均为2的方幂,具有同样集合基数的布尔代数都是同构的。

  48. 9.5 布尔代数Br2 • 为了书写方便,用Bn表示具有n个元素的布尔代数<Bn,,⊙,’>,即Bn=<Bn,,⊙,’>。根据定理9.4.7可知,n必为2的方幂。因此,“最小”的布尔代数即是二元布尔代数B2=<B2,,⊙,’>,其中B2={0,1}。B2的运算表如表9.1.1所示。下面再给出“次最小”的布尔代数B4=<B4,,⊙,’>的运算表9.5.1,其中B4={0,α,β,1}。

  49. 特别令人感兴趣的代数结构是B2×B2×…×B2(r个),即r个相同的布尔代数B2的直积。该系统记作Br2,且其运算符号仍与B2中的,⊙和’相同,即Br2=<Br2,,⊙,’,0r,1r>。对任意<σ1,σ2,…,σr>和<δ1,δ2,…,δr>∈Br2,其中σi,δj∈{0,1},i,j=1,2,…,n。特别令人感兴趣的代数结构是B2×B2×…×B2(r个),即r个相同的布尔代数B2的直积。该系统记作Br2,且其运算符号仍与B2中的,⊙和’相同,即Br2=<Br2,,⊙,’,0r,1r>。对任意<σ1,σ2,…,σr>和<δ1,δ2,…,δr>∈Br2,其中σi,δj∈{0,1},i,j=1,2,…,n。

More Related