集合论:二元关系(1)

     集合论这一章内容很多,重点是二元关系中关系矩阵,关系图和关系性质:自反、反自反、对称、反对称、传递以及关系闭包的运算,等价关系,偏序关系,哈斯图,真吓人!

1.笛卡儿积

     由两个元素x和y按照一定顺序排列成的二元组称作一个有序对,记为<x,y>,就是说x和y是有顺序的,不能随意调换,所以要想两个有序对相等当且仅当对应位置的元素相等

     设A,B为集合,用A中元素为第一元素,B中元素为第二元素构成有序对,所有这样的有序对组成的集合称作A和B的笛卡儿积,记为AxB。并不需要知道为什么这样定义,只需要知道我们把A集合的元素取出来放在二元组的第一位,B集合的元素取出来放在第二位,所有这样二元组组成的集合就是A和B的笛卡儿积。

     很显然,因为二元组是有序对,所以笛卡儿积德运算并不满足交换律和结合律,分配律是没问题的

2.二元关系

     如果一个集合满足以下条件之一:

    (1)集合非空,所有元素都是有序对

    (2)集合是空集

    则称该集合为一个二元关系,简称关系,对于二元关系R,如果<x,y>属于R,则记为xRy

      设A,B为集合,AxB的任何子集所定义的二元关系称作从A到B的二元关系。二元关系就是两个元素之间的关系。

      什么意思呢?其实很好理解,就是A和B所组成的任何有序对都可以看作是A中元素和B中元素产生的联系,我们可以找到一个关系来使这两个元素产生联系。二元关系其实就是一个集合,这个集合里面包含了所有满足这个关系的有序对,。比如我们说A上的恒等关系,就是找出满足两个元素相等的有序对,这个有序对可以理解成两个元素之间的前后关系,如果顺序变了也就不满足这个关系了,所以才叫有序对。所以我认为应该先有了二元关系的概念,才有了有序对,之后才出现了笛卡儿积来定义有序对组成的集合。其实AxB的所有子集都存在联系两个元素之间的关系,只是能不能找到的问题,二元关系就是表示两个东西之间有联系,并且说明是怎么联系的,联系的方式是什么

      另外,两个集合的笛卡尔积是遍历了所有的“对”,之所以是子集是因为上述“联系的描述”可能对某些对有效,对某些对无效。也就是我们平时说的,这一对有关系,这一对没关系。

     理解了这个之后,我们再看什么全域关系,恒等关系,小于等于关系,整除关系,包含关系就很简单了。

2.1全域关系 恒等关系 小于等于关系 整除关系     

    恒等关系 : IA = { < x , x > ∣ x ∈ A } 

    全域关系 : E A = A × A = { < x , y > ∣ x ∈ A ∧ y ∈ A }  , 任何两个元素之间都有关系 ;

   小于等于关系: LA​={<x,y>∣x∈A∧y∈A∧x≤y}
    整除关系 : DA​={<x,y>∣x∈A∧y∈A∧x∣y}

    我们还可以定于大于关系,小于关系,大于等于关系等等

2.2描述关系的三种方法

     有集合表达式,关系矩阵和关系图,集合表达式就是上面的

     关系矩阵

  

     比如:

     A = { a , b , c } 

    R 1 = { < a , a > , < a , b > , < b , a > , < b , c > }  

    则R1的关系矩阵为:

     关系图

     图片转至http://t.csdnimg.cn/J2CcU      

     关系图也是来说明两个元素之间是否存在某个关系

3.关系运算

     

     (1)逆运算

     从关系图来看,就是把边的方向反过来即可

     从关系矩阵来看,就是把矩阵进行转置操作

     (2)复合运算

       就是把B中同时和A、C产生关系的元素找出来,相当于给A和C中的元素搭了个桥

    (3)限制和像

     R在A上的限制就是说在R中找第一个元素属于A的有序对,A在R下的像就是R在A上的限制的值域。

    (4)关系的n次幂

     关于R^2的关系矩阵的计算是RxR的,其中第一行第一列的元素是第一个矩阵的第一行元素与第二个矩阵第一列对应位置的元素相乘完之和再相加得到的,第二行第三列的元素是第一个矩阵的第二行元素与第二个矩阵的第三列对应位置的元素相乘完之和再相加得到的。R^3,R^n都是这样计算的。

2.关系的性质

2.1自反与反自反     

     注意这里是对任意的x都要满足或者不满足这个关系,才能说R在A上是自反或者非自反的,比如:

      其中A={1,2,3},对于R2来说,对于任意的1,2,3都满足<1,1>,<2,2>,<3,3>属于R,则R在A上是自反的,而对于R3来说任意x都不满足这个关系,所以是非自反的,对于R1,有的满足,有的不满足,属于高不成低不就,所以既不是自反的也不是非自反的,总的来说,自反就是全都满足,反自反就是全都不满足

2.2对称与反对称

     对称很好理解,反对称怎么理解,就是说如果对任意的x和y有x,y都属于A且x不等于y,<x,y>属于R,我们可以推出<y,x>不属于R,我们就说R在A上是反对称的。总的来说对称就是全都满足,反对称就是全都不满足。

2.3传递

    这个很好理解,跟复合有点像,y也是给x和z搭了个桥。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/293053.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Midjourney V6版本强势来袭,挑战像素极限!

最新的Midjourney V6模型带来了一系列强大的功能和改进&#xff0c;以下是一些关键特性的总结&#xff1a; AI提示词&#xff08;第33辑&#xff09;Midjourney V6版本强势来袭&#xff0c;挑战像素极限&#xff01;-喜好儿aigc 目前测试已发现&#xff1a; 提示词长度已增至…

安卓好用的python编辑器,安卓平台python编辑器

本篇文章给大家谈谈安卓上好用的python编辑软件有哪些&#xff0c;以及安卓上好用的python编辑软件推荐&#xff0c;希望对各位有所帮助&#xff0c;不要忘了收藏本站喔。 1. 简介 Thonny是基于python内置图形库tkinter开发出来的支持多平台(windows,Mac,Linux)的python IDE&am…

简单了解一下当前火热的大数据 -- Kylin

神兽麒麟 一、Apache Kylin 是什么&#xff1f;二、Kylin架构结语 一、Apache Kylin 是什么&#xff1f; 由eBay公司中国团队研发&#xff0c;是一个免费开源的OLAP多维数据分析引擎优点 超快的响应速度&#xff0c;亚秒级支持超大数据集&#xff08;PB以上&#xff0c;千亿记…

OpenCV | 告别人工目检:深度学习技术引领工业品缺陷检测新时代

文章目录 机器视觉缺陷检测工业上常见缺陷检测方法内容简介作者简介目录读者对象如何阅读本书获取方式 机器视觉 机器视觉是使用各种工业相机&#xff0c;结合传感器跟电气信号实现替代传统人工&#xff0c;完成对象识别、计数、测量、缺陷检测、引导定位与抓取等任务。其中工…

算法题系列7·获得数组中多数元素

目录 题目描述 实现 提交结果 题目描述 给定一个大小为 n 的数组 nums &#xff0c;返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示例 1&#xff1a; 输入&#xff1a;…

ElasticSearch学习篇9_文本相似度计算方法现状以及基于改进的 Jaccard 算法代码实现

背景 XOP亿级别题库的试题召回以及搜题的举一反三业务场景都涉及使用文本相似搜索技术&#xff0c;学习此方面技术以便更好的服务于业务场景。 目前基于集合的Jaccard算法以及基于编辑距离的Levenshtein在计算文本相似度场景中有着各自的特点&#xff0c;为了优化具体的计算时…

大数据技术基本功-数据采集

产品指南&#xff5c;DataScale自定义采集器功能介绍产品指南&#xff5c;开发 DataScale Collector​​​​​​​

Vue中为什么data属性是一个函数而不是一个对象?(看完就会了)

文章目录 一、实例和组件定义data的区别二、组件data定义函数与对象的区别三、原理分析四、结论 一、实例和组件定义data的区别 vue实例的时候定义data属性既可以是一个对象&#xff0c;也可以是一个函数 const app new Vue({el:"#app",// 对象格式data:{foo:&quo…

八、Shell 使用变量

在 Shell 脚本中&#xff0c;可以使用变量来存储和引用数据。以下是在 Shell 脚本中使用变量的方法&#xff1a; 1、声明变量 格式&#xff1a;varnamevalue&#xff0c;如下所示 my_variable"Hello, World!" 注&#xff1a; 等号两边不能有空格符&#xff0c;否…

类和对象(下篇)

再谈构造函数 构造函数体赋值 在之前的学习中我们知道&#xff0c;在创建一个对象时&#xff0c;我们的编译器就会自动调用构造函数将对象初始化&#xff0c;给对象中各个成员变量一个合适的初始值。 例如&#xff1a; class Date { public:Date(int year, int month, int d…

大一C语言作业题目34

7-3 计算职工工资 给定N个职员的信息&#xff0c;包括姓名、基本工资、浮动工资和支出&#xff0c;要求编写程序顺序输出每位职员的姓名和实发工资&#xff08;实发工资基本工资浮动工资-支出&#xff09;。 输入格式&#xff1a; 输入在一行中给出正整数N。随后N行&#xff0c…