离散数学_九章:关系(6)(二)

简介: 离散数学_九章:关系(6)(二)

3、⛺哈塞图(Hasse Diagrams)


**定义:**哈塞(Hasse) 图是偏序的一种可视化表示,它省略了由于自反性和传递性而必须出现的边


构造哈塞图


偏序如上图 (a) 所示

构造Hasse图的步骤:

① 移走 由于自反性而产生的 环( 如图 b))

② 移走 由于由于传递性而必须出现的 边( 如图c))

③最后,排列每条边使得它的 起点在终点的下面


覆盖

设 ( S, ≼ ) 是一个偏序集。若x ≺ y且不存在元素z∈S使得x ≺ z ≺ y,则称元素y∈S 覆盖 元素x∈S。


y 覆盖 x 的有序对 (x,y) 的集合称为(S, ≼ )的 覆盖关系


对应到Hasse图,即上下直接相邻连接的两个元素有覆盖关系


从对偏序集的哈塞图的描述中,我们可以看出,在(S,≤)的哈塞图中的边是指向上面的边并且与(S,≤)的覆盖关系中的有序对相对应。而且,我们可以从偏序集的覆盖关系中得到这个偏序集,因为它是它的覆盖关系的传递闭包的自反闭包。


这就告诉我们,可以从哈塞图中构造一个偏序



4、⛺偏序集上的特殊元素


极大元、极小元

极大元:假设a为极大元,则任取与a具有关系R的元素x,都有xRa.(也就是说:并不是A中的任意元素都与a有关系R,这就是最大元与极大元的区别)


极小元:假设a为极小元,则任取与a具有关系R的元素x,都有aRx.


最大元、最小元

论最大元、最小元,前提是可比!!!

最大元:偏序集中存在一个元素大于每个其他的元素。这样的元素称为最大元


( 假设a为最大元,则在集合A中,任取元素x,都有xRa )


最小元:类似地,一个元素称为最小元,当它小于偏序集的所有其他元素。


( 假设a为最小元,则在集合A中,任取元素x,都有aRx )


最大元、最小元是唯一的,极大元与极小元不唯一


上确界、下确界

A是一个偏序集,B包含于A,在哈斯图中,求B的上界、上确界,下界、下确界:


y 比 B 中所有的元素都要大,称y是B的上界。上界中最小的叫做上确界

y 比 B 中所有的元素都要小,称y是B的下界。下界中最大的叫做下确界


从哈斯图上看出 上界、上确界、下界、下确界的方法:


在A的哈斯图中,标出子集B中的结点,

则不低于(不高于)其中最高结点(最低结点)并有与它们均相连且只通过下方( 上方)直线相连 (包括环) 的结点都为B的上界(下界);

在上界集(下界集)中距B中最高结点(最低结点)路径最短的结点是上确界(下确界)


例:


集合 A = { 1 , 2 , 3 , 4 , 5 , 6 , 9 , 10 , 15 },

(A,|)是一个偏序集,在哈斯图中,求A的上界、上确界,下界、下确界


🔴解:

A不存在上界,当然也不存在上确界;

1 比 A 中所有的元素都要小,所以 1 是 A 的下界,也是下确界


在Hasse图中看最大元、最小元、极小元、极大元

从哈斯图上看出 最大元、最小元、极小元、极大元的方法:


(以下均就A是一个偏序集而言,B包含于A,求B中的极大元、极小元、最大元、最小元)


(1)极大元:在B的哈斯图中每一个 孤立结点 或 只有下方连线的结点 是B的极大元。


(2)极小元:在B的哈斯图中每一个 孤立结点 或 只有上方连线的结点 是B的极小元。


(3)最大元和最小元:首先找出B的极大元和极小元 → 若极大元或极小元只有一个,则这个极大元或极小元就是B的最大元或最小元;若不止一个,则B的最大元或最小元不存在。


例1:偏序集 ( { 2,4,5,10,12,20,25 } ,| ) 中的哪些元素是极大元,哪些是极小元?


🔴解:

画出这个偏序集的哈塞图(如图),显示了极大元是12,20,25;极小元是2,5


(没有最大元、最小元)


例2:

a) 没有最大元,有最小元a

b)都没有

c) 最大元d,没有最小元

d)最大元是d,最小元是a


5、⛺格(Lattices)


如果一个偏序集的每对元素都有最小上界和最大下界,则称这个偏序集为格


a)、c)每对元素都有最小上界和最大下界,比较好判断


对于b):

b)所示的Hasse图表示的偏序不是格,因为元素b和c没有最小上界(b,c有上界d和e,但是d、e不可比,无法确定d e哪个最小 )


(书上的几个例题:)


相关文章
|
运维 安全 Cloud Native
Apsara Stack 技术百科 | 混合云全景智能化观测平台Sunfire
在企业数字化转型的浪潮中,核心业务的上云和迁云无疑是转型过程的重中之重,企业对于数字安全性及等保合规层面的需求也日益强烈,混合云成为诸多大型政府企业客户上云迁云的首选方案。随着企业云上业务的复杂化,云上云下技术栈的多样化,以及云上运维组织规模的扩大化,云上业务的稳定性和连续性面临着巨大的挑战。
4128 0
Apsara Stack 技术百科 | 混合云全景智能化观测平台Sunfire
|
10月前
|
定位技术 API
HarmonyOS实战:高德地图定位功能完整流程详解
本文详细介绍了在鸿蒙系统中使用高德地图实现完整定位功能的流程。首先分析需求,包括权限申请、检查GPS状态、单次或多次定位选择以及定位失败处理。接着通过代码实现具体步骤:添加定位权限、申请用户权限、检查GPS开关状态、启动定位服务,并处理定位成功或失败的情况。若定位失败,可尝试获取历史定位信息或使用默认位置。最后总结指出,虽然定位功能基础简单,但完整的流程与细节处理才是关键。建议读者动手实践,掌握高德地图定位功能的使用。
1291 15
|
机器学习/深度学习 人工智能 安全
利用 AI 进行代码优化:智能化代码审查的新纪元
【10月更文挑战第24天】本文探讨了AI在代码优化和审查中的应用,介绍了AI如何通过静态代码分析、代码风格一致性、历史数据学习和实时反馈等功能提升代码审查效率。文章还介绍了几款智能化代码审查工具,如SonarQube、DeepCode和GitHub Copilot Security,并提供了实施AI代码审查的最佳实践,帮助开发者提高工作效率和代码质量。
|
监控 数据可视化 数据挖掘
成本累计曲线:项目预算的秘密武器
成本累计曲线(S曲线)是项目管理中用于分析和跟踪成本的重要工具,它随时间展示项目的累计成本或资源使用量,帮助项目经理实时了解成本支出和进度差异,及时调整预算和资源分配。本文详细介绍了S曲线的定义、关键步骤及在项目各阶段的应用,强调了项目管理工具在提高成本管理效率和准确性方面的辅助作用。
613 3
助力开发:使用 Postman 批量发送请求
最近写了几个接口: 获取 books 的接口 获取 likes 的接口 获取 collections 的接口
助力开发:使用 Postman 批量发送请求
|
Java 编译器 开发者
java方法重载详细说明
Java方法重载允许在同一类中定义多个同名但参数列表不同的方法,通过参数数量、类型或顺序的不同来区分。这提高了代码的可读性和灵活性。例如,在一个类中可以定义多个`add`方法,分别处理不同数量和类型的参数。重载的关键不在于返回类型或访问修饰符,而在于参数列表的差异。合理使用方法重载可以简化程序设计,使代码更加高效。
378 5
|
小程序 前端开发 开发者
调用第三方接口微信登录接口
该文档介绍了调用微信登录接口的需求和实现思路。当用户尝试访问需要登录的页面时,若未登录则弹出微信登录选项。登录过程涉及微信小程序的wx.login()方法获取临时凭证code,并将其发送到服务器,服务器通过此code换取用户的OpenID、UnionID和session_key。依据这些信息,服务器可生成自定义登录态以识别用户身份。参考微信官方文档和登录流程图进行实现。
990 9
|
程序员
深入理解汇编:平栈、CALL和RET指令详解
深入理解汇编:平栈、CALL和RET指令详解
497 1
|
API Python Windows
将Py转为exe文件
今天我要给大家介绍一种非常方便的方法,可以将Python文件打包成可执行的exe文件。你不用担心用户是否安装了Python环境,只需要一个点击,你的程序就能在任何Windows电脑上运行了!,当然在进行文件打包时,我们总会遇到很多问题,例如某模块未打包进入文件,导致exe文件无法使用,接下来,我会一点一点进行解决.此工具我会出一个专栏,这是工具1.0版本的,只能打包,只包含基础库的py文件,后续会一步步优化,包含自定义打包文件的小图标,文件名,将音乐或其他第三方库模块进行打包。注意,最终为一个GUI工具
将Py转为exe文件