离散数学-二元关系、闭包的概念

二元关系

设S是一个非空集合,R是关于S的元素的一个条件.如果对S中任意一个有序元素对(a,b),我们总能确定a与b是否满足条件R,就称R是S的一个关系(relation).如果a与b满足条件R,则称a与b满足条件R,则称a与b有关系R,记做aRb;否则称a与b无关系R.关系R也成为二元关系.

定义:

集合 X 与集合 Y 上的二元关系是 R=(X, Y, G(R)) 当中 G(R),称为R 的图,是笛卡儿积 X × Y的子集.若 (x,y) ∈ G(R) 则称 x 是 R-关系於 y 并记作 xRy 或 R(x,y).

但经常地我们把关系与其图等价起来,即若 R ? X × Y 则 R 是一个关系.

闭包

   关系的闭包运算时关系上的一元运算,它把给出的关系R扩充成一新关系R’,使R’具有一定的性质,且所进行的扩充又是最“节约”的。
比如自反闭包,相当于把关系R对角线上的元素全改成1,其他元素不变,这样得到的R’是自反的,且是改动次数最少的,即是最“节约”的。
一个关系R的闭包,是指加上最小数目的有序偶而形成的具有自反性,对称性或传递性的新的有序偶集,此集就是关系R的闭包。

设R是集合A上的二元关系,R的自反(对称、传递)闭包是满足以下条件的关系R‘:

(i)R‘是自反的(对称的、传递的);

(ii)R‘?R;

(iii)对于A上的任何自反(对称、传递)关系R",若R"?R,则有R"?R‘。

R的自反、对称、传递闭包分别记为r(R)、s(R) 和t(R)。

性质1

集合A上的二元关系R的闭包运算可以复合,例如:

ts(R)=t(s(R))

表示R的对称闭包的传递闭包,通常简称为R的对称传递闭包。而tsr(R)则表示R的自反对称传递闭包。

性质2

设R是集合A上的二元关系,则有

(a)如果R是自反的,那么s(R)和t(R)也是自反的;

(b)如果R是对称的,那么r(R)和t(R)也是对称的;

(c)如果R是传递的,那么r(R)也是传递的。

性质3

设R是集合A上的二元关系,则有

(a)rs(R)=sr(R);

(b)rt(R)=tr(R);

(c)ts(R)? st(R)。
时间: 2024-10-21 06:33:40

离散数学-二元关系、闭包的概念的相关文章

闭包的概念和实例

闭包的概念 什么是闭包呢? 闭包(Closure),是引用了自由变量的函数.这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外.所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体. 其实js中,每个函数就是一个闭包.函数和自己的内部定义的变量绑定在一块,组合成的实体就是闭包.只不过在特殊的情况下,即使函数执行完成了,由于某些原因导致函数内部的变量仍然被外界所引用,所以垃圾回收并不释放函数相关的所有内容,而且将函数和必要的变量组成一个闭包的实体,不释放,

离散数学2:基本概念

离散数学2:基本概念 公式层次:单个的命题变项A是0层公式. 如果A是n层公式,B是m层公式,那么¬A是n+1层公式:C=A∧B,C=A∨B,C=A→B,C=A↔B的层次是:max(n,m)+1. 比如(¬(p→¬q) ∧((r∨s) ↔¬q)的层次计算就是: 0   1     0  0     1 2         1      1 3             2 4 4层公式 设p1,p2,p3…pn是公式A中的全部与命题变项,那么给它们各指定一个真值,这就是A的一个赋值/解释.若使A=

离散数学1:基本概念

离散数学1:基本概念 一.命题与联结词 命题:非真即假的陈述句即为命题.如:因为3>2,所以3≠2.(它是复合命题) 命题有真值,非1即0. 简单命题/原子命题:不能被分解成更简单的命题.如3>2和3≠2这是两个简单命题. 命题符号化:用p.q.r.s等表示命题. 联结词¬.∧.∨.→.↔的定义 P   q ¬p 非 p∧q 与 p∨q 或 p→q 若p则q p↔q当且仅当 0   0 1 0 0 1 1 0   1 1 0 1 1 0 1   0 0 0 1 0 0 1   1 0 1 1

由 JavaScript 看闭包的概念

一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量. Js代码 var n=999; function f1(){ alert(n); } f1(); // 999 另一方面,在函数外部自然无法读取函数内的局部变量. Js代码 function f1(){ var n=999; } alert(n); // error 这里有一个地方需要注意,函数

作用域、原型链、闭包等概念理解

1.执行环境及作用域 (1).执行环境: 定义了变量或函数有权访问的其它数据,决定了它们的各自行为.每个执行环境都有一个与之关联的变量对象(variable object, VO),执行环境中定义的所有变量和函数都会保存在这个对象中,解析器在处理数据的时候就会访问这个内部对象. 全局执行环境是最外层的一个执行环境,在web浏览器中全局执行环境是window对象,因此所有全局变量和函数都是作为window对象的属性和方法创建的.每个函数都有自己的执行环境,当执行流进入一个函数的时候,函数的环境会被

深入理解Lua的闭包:概念和应用

本文首先通过具体的例子讲解了Lua中闭包的概念,然后总结了闭包的应用场合,最后探讨了Lua中闭包的实现原理. 闭包的概念 在Lua中,闭包(closure)是由一个函数和该函数会访问到的非局部变量(或者是upvalue)组成的,其中非局部变量(non-local variable)是指不是在局部作用范围内定义的一个变量,但同时又不是一个全局变量,主要应用在嵌套函数和匿名函数里,因此若一个闭包没有会访问的非局部变量,那么它就是通常说的函数.也就是说,在Lua中,函数是闭包一种特殊情况.另外在Lua

JavaScript闭包的概念及用法

1.闭包的概念: 闭包就是能够读取其他函数内部变量的函数. 例如: function f1(){ var n=999; function f2(){ alert(n); } return f2; } var result=f1(); result(); // 999 其中f2函数就是闭包. 由于在Javascript语言中,只有函数内部的子函数才能读取局部变量, 因此可以把闭包简单理解成"定义在一个函数内部的函数". 所以,在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁.2.

python函数中闭包的概念说明

函数中闭包的概念说明 闭包: 内层函数对外层函数非全局变量的引用,就叫做闭包 判断闭包方法 ._closure_ : 执行后返回有效信息就是闭包,返回none就不是闭包 举例1: 是闭包 def wrapper(): name = 'alex' def inner(): print(name) inner() print(inner.__closure__) #(<cell at 0x006121D0: str object at 0x00227380>,) wrapper() 结果: ale

离散数学--二元关系总结

等价关系: 设 R 是集合 A 上的一个二元关系,若R满足://都是任意元素 自反性:∀ a ∈A, => (a, a) ∈ R 对称性:(a, b) ∈R∧ a ≠ b => (b, a)∈R 传递性:(a, b)∈R,(b, c)∈R =>(a, c)∈R 则称 R 是定义在 A 上的一个等价关系.设 R 是一个等价关系,若(a, b) ∈ R,则称 a 等价于 b,记作 a ~ b . 偏序关系: 偏序存在A<B,A<C,则B与C之间无法比较大小的现象.而对应的全序则必