|
楼主 |
发表于 2004-2-27 18:41:26
|
显示全部楼层
3.2序组
一个序列(或有序组)是一个表,要计及次序。
序组,我们使用最多的地方就是定义数组,数组的使用有很多方面,在计算机的硬件方面,比如内存地址,硬件中断等。
在计及次序的概念上,有个最为重要的概念就是事件(event),事件的产生是由约束条件的触发,当条件满足时,事件就会产生。
事件的产生将驱动消息机制的应用程序动作,从而使得"当条件满足时,计算机按照指定的指令进行执行"。
看一下数学概念上的序列(在概念上都是一致的)。
如:
{0 .1, 2.0, 3.0,4.0, … }
就是一个序列,注意此处的次序(依次增大)是最重要的。
如果s是一个序列,我们常把其第一项表示为s1(如上序列的值0.1),第二项表示为s2(如上序列的值2.0),等等。一般地,sn表示序列的第n项。我们把n称为序列的下标。
序列最重要的两个形式是增序列或减序列。
所谓的增序列或减序列只是相对于序列中元素的大小而言的,若元素是不可比的,又如何表示?该问题并不存在,序列讲究的是次序,即所有的元素都是可比的(对于有些元素我们仅仅关注它的标识,观察它的标识是否具有次序性)。
如果对于所有的n,有 Sn≤Sn+1 序列s 就是增序列,如果Sn≥Sn+1则称为减序列。
从已知的序列形成一个新的序列的一个方法是,只取原序列中的某些些项,而保留各项的次序不变。所得次序称为一个子序列。
以上大家关心的是序列的定义,并非所有的序列都如上描述的那样,好似没有边界,序列和集合一样,具有有限的序列。
所谓的串就是一个有限的序列。
那么,在序列X上的一个串是由X中的元素组成的一个串。
在此处不再累述,序列的有限性和无限性的意义,其等同集合。
3.3关系
关系可以想成一个表,其中列出一些元素和其他元素之间的关系,见下表
如上的关系可被一个序偶集合描述
序偶集合:(公园,人)=> 关系:公园是人的休憩场所
从场所被人使用的角度,元素与人的关系是一个描述元素与人关系的元素。
一个从集合X到集合Y的(二元的)关系R,是笛卡尔积X×Y的一个子集,如果(x,y)∈R,我们写为xRy且说x和y有关。
渐入复杂的描述。
我们更改上述的表来说明问题。
记录笛卡尔积X×Y ={(公园,树),(公园,车),(公园,人),(马路,树),…(小区,人)}
关系R={(公园,树),(马路,车),(小区,人)}
注:关于各元素间的关系,在UML类元的"关系"将有详细说明。
集合 {x∈X| 对于有些y∈Y,(x,y)∈R}称为R的定义域。
定义域其简单表示是自变量的变化范围。
表示在对象上的结果,对于序偶(公园,树),树和公园都一个对象,这两个对象间的关系为公园是树的生长场所,假如公园是自变量,符合关系"树在公园的数量",随公园不同,树的数量也不同。那么这个关系的定义域就是这个公园。
集合 {y∈Y| 对于有些x∈X,(x,y)∈R}称为R的值域。
值域就是应变量的变化范围,上述例子的树的数量就是值域。
如果一个关系由一个表给出,则定义域表的第一列的元素组成,而值域由表的第二列元素组成。
如果集合或序列(有序的集合)的表述是完整的,就是说我们在描述一个对象时,对该对象的一些特征描述是完整的,不遗漏,在对该对象的建模时将会合理考虑接口、扩展机制和相关的约束条件。
可以把某些集合上的关系画成一个有向图,也称为关系图(图的定义我们将在图论中描述)。要画出一个集合X上的关系的关系图,首先,有顶点(或结点),表示元素。箭头表示关系。(关于图上如何描述该关系,也将在图论中具体定义)
集合X上的关系R,如果对于每个x∈X都有(x,x)∈R,则称为R是自反的。
集合X上的关系R,如果对于每个x,y∈X,如(x,y) ∈R必有(y,x)∈R,则称为R是对称的。
集合X上的关系R,如果对于每个x,y∈X,如(x,y) ∈R且x≠y必有(y,x)¢R,则称为R是反对称的。
集合X上的关系R,如果对于每个x,y,z∈X,如(x,y) ∈R且(y,z)∈R,必有(x,z)∈R,则称为R是传递的。
如此定义的关系,是较为复杂的,首先是该关系R的两组元素是相同的,或是描述一组内部元素的关系,首先集合上的元素可以表示自变量也可以表示应变量。在第三章描述的UML中定义的关系,并没有关注对象(或类元)间的如此复杂的关系。但关系是什么样的性质,将关联到各个对象被触发的机制。
对象的事件机制将使用关系的特性,比如传递性、反对称性等,虽然该特性是认为在事件机制上设定的,但这些特性将有助我们设计模型。
关系可用于把一个集合的元素排序(当然不仅是排序)。
例如,整数集合上的关系:
(x,y) ∈R且x≤y
把整数从小到大排序。注意如此的关系是自反的,反对称的和传递的。我们称这种关系为一个偏序。
即集合X上的关系R,如果是自反的反对称的和传递的,则R称为一个偏序。
设R是集合X上的一个偏序。如果x,y∈X且x≤y或y≤x成立,我们说x和y是可比的,如果x,y∈X且x≮y或y≮x,就是说x和y不可比。如果X中的元素都可比,那么我们称R为全序。
这个概念较难理解,我们考察对象时,一般记如上的关系,来比较说明偏序和全序。
一个数学例子,关系R为"大于等于"。
设集合X={2,3,4}
则 关系R={(2,2),(2,3),(3,3),(3,4),(4,4),(2,4)}
考察自反性:(2,2),(3,3), (4,4) ∈ R
反对称性:(2,3)∈ R 而 (3,2) ¢R
考虑传递性:(2,3)(3,4) ∈ R 而 (2,4) ∈ R
考察X其元素,X内的所有元素是可比的。故关系R是全序。
在计算机的数字系统存在的序列,若关系存在一般皆为可比。
在但面向对象的设计上,其描述对象的集合一般不可比的。故偏序描述的是对象间关系,一般为事件关系。
如一个事件例子
设集合X={开始状态,运行状态,损坏状态}
关系为触发R={(始,始),(始, 运),(运, 运),(运, 坏),(坏, 坏),(始, 坏)}
考察自反性:(始,始),( 运, 运),(坏, 坏)∈ R
反对称性:(始, 运)∈ R 而 (运,始)¢R
考虑传递性:(始, 运),( 运, 坏) ∈ R 而 ( 始, 坏) ∈ R
考察X其元素,X内的所有元素是不可比的。故关系R是偏序。
全序是偏序是次序的序列表示。如何说法,偏序则是常常表示对象的集合,而偏序表示的对象含有的性质,如时间次序,体积大小的就具有可比性,我们在描述对象时,该性质(比较出的结果才是我们需要的)。
在对集合的学习中,如此掌握集合即可,在描述(面向的)对象的关系,或(面向的)过程的关系,集合原理是基础性,我们考察集合原理结果是把对象(们)拿到集合论里来描述、分析,如此就简单多了。
继续考察集合内元素的关系。
X上的一个自反的,对称的和传递的关系称为X上一个等价关系。
若给出一个集合X上的等价关系R,我们可以由把X中的元素按相关来分组,以进行划分。互相相关的元素可以认为是等价的。
得出如下理论:
令R是集合X上的一个等价关系。对于每个a∈X,令
[a]={ x∈X|xRa }
则
S={ [a]|a∈X } 是X的一个划分。
[此贴子已经被作者于2004-2-27 11:56:51编辑过]
|
|