760 likes | 961 Views
第二章 关系与序关系. 关系的概念 关系的表示 关系的性质 等价关系 关系的运算 偏序关系. 2.1 关系的概念. [ 例 ] 设 A={Alice,Bob,Tom}, B={Algebra,Graphs, Sets} Alice 选修了 Graphs, Bob 选修了 Algebra, Graph 和 Sets; Tom 选修了 Algebra,Graphs;
E N D
第二章 关系与序关系 • 关系的概念 • 关系的表示 • 关系的性质 • 等价关系 • 关系的运算 • 偏序关系
2.1 关系的概念 [例]设A={Alice,Bob,Tom}, B={Algebra,Graphs, Sets} Alice选修了Graphs, Bob选修了Algebra, Graph和Sets; Tom选修了Algebra,Graphs; R={<Alice,Graphs>,<Bob,Algebra>,<Bob,Graphs>,<Bob,Sets>,<Tom,Algrbra>,<Tom,Graphs> } AB, 表示了学生集合A与课程集合B之间的选修关系。
2.1 关系的概念 [二元关系的一般性描述]一对对象之间的关系称为二元关系。 [例]teachers={a,b,c},students={x,y,z} 建立教学关系 T: aTx iff a TEACHING x 用序偶集合表示为: T = {<a,x>,<a,z>,<b,y>,<c,y>,<c,z>} T teachers students 图示为:
2.1 关系的概念 [例]Subroutines={a,b,c,d,e} 子程序间调用关系 图示为: Calling={<a,a>,<a,b>,<a,d>,<b,a>,<b,c>,<c,c>, <c,e>, <d,d>} Calling Subroutines Subroutines
2.1 关系的概念 [二元关系的集合定义]设X,Y是两个集合, X Y的任何一个子集R 都确定了一种二元关系,称为从X到Y的二元关系。 • <x,y>R可记为 xRy,显然 R X Y <x,y>R可记为 xRy • 当 X=Y 即 X 与 Y 同一时,称 R 为 X 上的一个二元关系。
2.1 关系的概念 [例] F={<x,y>| x是y的父亲} S={<x,y>| x,y为正整数且x可整除y} T={<y2,y>| y为实数} • 对上述的:x,y,R,有<x,y>R 或<x,y>R,二者必居其一。
2.1 关系的概念 [定义域] 设二元关系S。由 <x,y>S的所有对象 x 组成的集合称为S的定义域,记为Dom(S) 。 [值域] 由<x,y>S的所有对象 y 组成的集合称为S的值域,记为Ran(S) (Range(S))。记 F(S) = D(S) R(S) ,称为 S 的域。 • 描述:Dom(S) = {x| (y)(<x,y>S)} Ran(S) = {y| (x)(<x,y>S)}
2.1 关系的概念 • 若干特殊关系: ① X 到Y 的全域关系: Ex,y = XY 特别地:Ex,x = XX ② 空关系: ③ 恒等关系:Ix = {<xi,xi>|xiX} [例] 设 X={1,2,3,4},求 X 上的关系 “ > ”(大于)及其定义域、值域。
<xi,yj>R • 0 其它 MR=[mij]mn, mij= 2.2 关系的表示方法 (1) 集合表示法 借用集合的各种描述方法对表示关系的序偶集合进行描述 (2) 关系矩阵 设 X={x1,x2,…,xm},Y={y1,y2,…,yn},m,n <+ R是X到Y的二元关系。构造矩阵
2.2 关系的表示方法 [例] 非0行对应元素构成 D(S) 非0列对应元素构成 R(S)
2.2 关系的表示方法 (3) 关系图表示法 用结点表示X、Y上的元素;若 <x,y>R 则从结点x到结点y画一条弧。 [例] 上述Teaching关系的关系图:
2.2 关系的表示方法 [例] 设 X={1,2,3,4},X 上的关系 “ > ”:
2.3 关系的性质 [定义] 设R是X上的二元关系,则: ① R 是自反的(x)(xXxRx) ② R 是对称的(x)(y)(x,yXxRyyRx) ③ R 是传递的(x)(y)(z)(x,y,zXxRyyRz xRz) ④ R 是反自反的(x)(xX¬(xRx)) ⑤ R 是反对称的(x)(y)(x,yXxRyyRx x = y)
2.2 关系的性质 [习题]设 X={1,2,3,4},画出X 上的关系 “ > ”,“”和 整除“|”的关系图和关系矩阵,并判断其性质。 [习题] 集合上的”is an element”以及”is a subset”具有什么性质?
2.3 关系的性质 [例] 正整数集合上的若干关系及其性质 • 判定关系“<”的反对称性的前提条件总为F, 反对称性成立。
2.3 关系的性质 • 从关系矩阵和关系图看关系的性质: • R是自反的:MR的对角元均为1; 关系图为自环图。 • R是对称的:MR为对称矩阵; 关系图中弧成对出现。 • R是反自反的:MR的对角元均为0; 关系图为无自环图。 • R是反对称的:MR为反对称矩阵; 关系图中只出现单向弧。
2.3 关系的性质 • 存在着既非自反也非反自反的关系,如: • 存在着既对称又反对称的关系,如:
2.3 关系的性质 • 存在着既非对称又非反对称的关系,如:
2.4 集合的划分与覆盖 [定义] 给定集合S,A={A1,A2,…,An},AiS,i=1..n。 ② 若①成立且AiAj = (若ij),则说A是S的一个 划分,并称 A1,A2,…,An为此划分的块。
2.4 集合的划分与覆盖 [例]N={0,1,2,3,4,……} 自然数集合。 取 A0={0,6,12,18,……} A1={1,7,13,19,……} A2={2,8,14,20,……} …… A5={5,11,17,23,……} 则 A={A0, A1, A2, A3, A4, A5}是N的一个划分。
2.4 集合的划分与覆盖 [例]S={a,b,c} 取 A = {{a},{b},{c}} B = {{a,b},{c}} C = {{a,b,c}} 均构成对S的划分。 显然有 |A| > |B| > |C| 可以将 A 称为最大划分;将 C 称为最小划分。
关系IX具有自反、对称和传递性; • 设 X={1,2,3,4},写出X上的模2同余关系,并判断其是否具有自反、对称和传递等性质。 • 具有自反、对称和传递性的关系称为等价关系。
2.5 等价关系 [等价关系]集合X上的关系R若具有自反性、对称性和传递性,则称R为X上的一个等价关系。 [例]N上的模6同余关系 R={<x,y>|x,yN (xy)=6L,L为整数} 自反性: 对称性: 传递性:
2.5 等价关系 [定理] N上的模m同余关系是等价关系。 [证明] 自反性: xx = 0,故 xx = mL,这里L=0。 对称性:设 xRy即 xy=mL,L为整数 则 yx= mL,故 yRx。 传递性:设 xRy且 yRz,即 xy=mL1,yz=mL2 ,L1、L2为整数 则 xz = mL1+mL2=m(L1+L2) 故 xRz
2.5 等价关系 [等价类]设R为X上的一个等价关系,对任何xX,所有与x有关系R的元素的集合,称为X上由x生成的R–等价类。记为 [x]R。 [x]R={y|yX xRy} [例]X={1,2,3,4,5,6,7},R为X上的模3同余关系。 则 [1]R={1,4,7},[2]R={2,5},[3]R={3,6}
2.5 等价关系 [性质] 设R为X上的一个等价关系,则 ①X中的任何一个元素,至少属于一个等价类。 ② 若x,yX,则x,y或属同一等价类,或属两个不同等价类但此两个不同等价类的交集为(不相交)。 [证明]
2.5 等价关系 [结论] 对X上的等价关系R, ①任意xX属于且只属于一个等价类; ②若xRy,则[x]R = [y]R ,否则 [x]R [y]R = 。
2.5 等价关系 [定理]集合X上的一个等价关系R产生对此集合的一个划分,该划分的块对应于R的等价类。 [证明] 由上述结论得到。 • 将该划分记作:X/R={[x]R|xX}
2.5 等价关系 [定理] X上的任意划分均可确定一个等价关系。 [证明] 设X上的一个划分为 A={A1, A2,…, An},定义 R={<x,y>|x,yX(Ai)(AiAxAiyAi)} 可以证明R具有 自反性: 对称性: 传递性:
2.5 等价关系 [问题] • X上由不同方法定义的等价关系R1、R2,若产生的等价类相同,则R1=R2。 • 不等价关系也能产生划分。
2.6 相容关系 [相容关系]X上的二元关系R,若R是自反的、对称的,则称R为X上的一个相容关系,记作 。 [例]X={2661,243,315,648,455} R={<x,y>|x,yX,x与y至少含有一个相同数字} 容易看出,R具有自反性、对称性。 R不具有传递性: 如 <2661,243>,<243,455>R 但 <2661,455>R 因此R不是等价关系,R是一个相容关系。
2.6 相容关系 [相容类]设 A X, 是X上的一个相容关系。称A是X上的一个相容类当且仅当A中任二元素相容。即 (x)(y)(x,yAxy)。 [最大相容类]设 A是X上的一个相容类,若X-A中不存在与A中所有元素相容的元素,则称A为X的一个最大相容类。 • 在相容关系的关系图中,最大相容类对应于一个最大完全子图。
2.6 相容关系 例如,在上图表示的相容关系中,最大相容类为: {a, b, d , f}, {d, c ,f}, {d, e}, {g} [问题]相容类与覆盖的关系。
2.7 关系的运算 (1) 关系的一般运算 [定义]设 R、S是X到Y的二元关系,定义运算如下: RS={<x,y>|xRyxSy} RS={<x,y>|xRyxSy} RS={<x,y>|xRyxSy} ~R=XYR
2.7 关系的运算 (2)关系的复合运算 [复合关系]设二元关系R:XY,S:YZ,则称 SR={<x,z>|xXzZ(y)(yYxRyySz)} 为R和S的复合关系。 • 注意, 关系的复合运算定义和函数复合保持了一致。在某些课本上,以上关系的复合记作R S。
2.7 关系的运算 [例]X={x1, x2, x3},Y={y1, y2, y3, y4},Z={z1, z2, z3} R={<x1,y1>,<x2,y3>,<x2,y4>} S= {<y1,z3>,<y2,z1>,<y4,z2>} S R={<x1,z3>,<x2,z2>} • 显然有:Dom(S R) Dom(R) • Ran (S R) Ran(S)
2.7 关系的运算 • 关系的复合运算没有交换律。 [定理]关系复合运算的结合律:设二元关系 R:XY,S:YZ, P:ZW, 则有 (P S) R= P (S R) [证明]
2.7 关系的运算 [定理]关系复合运算与一般运算的结合律:设二元关系R1, R2 :XY, S1 , S2:YZ,则有 • (S1 S2) R1 =(S1 R1)(S2 R1) • (S1S2)R1(S1R1)(S2R1) • S1(R1R1) =(S1R1)(S1R2) • S1 (R1R2) (S1R1)(S1R2) [证明]
2.7 关系的运算 [关系的幂运算] 设R为X上的二元关系,RR…R 记为Rn,规定 Rn=Rn1R,R0=IX
2.7 关系的运算 (3) 关系的逆运算 [逆关系]设二元关系 R:XY,定义 R-1={<y,x>|xXyY<x,y>R} 为R的逆关系。 [性质] • (R-1)-1 =R,-1 = • (RS)-1 = R-1S-1,(RS)-1 = R-1S-1 • (~R)-1 = ~ (R-1) • (SR)-1 =R-1S-1 • R=S R-1=S-1 RS R-1S-1
2.7 关系的运算 [问题] 设A上关系R,S的关系矩阵分别为 MR, MS, 试求SR的关系矩阵。
2.7 关系的运算 (4) 关系的闭包运算 [闭包]设R为X上的二元关系,若另有一关系R ,满足: ①R 是自反的(对称/传递); ②R R ; ③ 对于任何自反(对称/传递)的关系R,若 R R ,则R R 。 则称 R为R的自反(对称/传递)闭包,记为r(R) (s(R) / t(R))。
2.7 关系的运算 [例] 整数集上的“< ”关系的自反闭包是“≤”,对称闭包是“≠”,传递闭包仍然是“< ”。 [例] 整数“= ”的自反、对称、传递闭包都是它本身。 [例] 有关系矩阵 求 Mr (R) 、 Ms (R) 、 Mt (R)
2.7 关系的运算 [定理] 设R为X上的二元关系,则 ① r(R) = RIx ② s(R) = RR-1 [证明] ③ 1) R t(R )(t( R) 表示右式无穷并) 2)t(R ) 是传递的; 3) 如果R’是包含R的传递关系,则对于任意n, RnR’, 所以,t(R ) 是包含R的最小传递关系。
2.7 关系的运算 问题:如何求传递闭包呢? 设R是A上的关系, |A|=n, 则 t(R) = R R1 … Rn 这是因为如果从x到y有道路相连,则存在长度不超过n的道路。 求传递闭包的Washall算法。参阅课本。
2.7 关系的运算 容易证明: • R是自反的当且仅当r(R) =R; • R是对称的当且仅当s(R ) = R; • R 是传递的当且仅当t(R ) = R. 问题:设R是A上的关系 • r(RS) = r(R ) r(S)? • s(RS) = s(R ) s(S)? • t(RS) = t(R ) t(S)? 如果将并换成交呢?
2.8 偏序关系 [偏序关系(partial order)]集合A上的一个关系R满足自反性、反对称性和传递性时,称R是A上的一个偏序关系,记为“ ”,用二元组〈A, 〉表示该偏序结构,或称之为偏序集。 [例]A={2,3,6,8}, “ ”={<x,y>|x,yA (x整除y)} “ ”= {…….. } 容易验证,上述关系为偏序关系。
2.8 偏序关系 • x、y之间存在偏序关系时,说 x、y(在该关系下)可比较,否则说 x、y不可比较。上例中,2和3不可比较(在上述定义的“ ”下)。 [盖住]盖住(紧邻遮盖)。设〈A, 〉,x,yA, y盖住x xyxy(z)((xzzy)(x=zy=z)) 记 covA={<x,y>|x,yA(y盖住x)}
2.8 偏序关系 • 表达偏序关系的 Hasse图 设有偏序关系 <A, > ① 用结点表示集合元素 ② 若<x,y> covA,则用线段连接结点x,y,且令x(小者)在y的下方。