定义: 集合 A 是被称为元素或成员的对象的无序
集合。
Definition: A set is an unordered collection of objects, called elements or members
of the set.
记法:
x
∈
A
x \in A
x∈A 表示
x
x
x 是集合
A
A
A 的元素
x
∉
A
x \notin A
x∈/A 表示
x
x
x 不是集合
A
A
A 的元素
我们将根据以下原则使用这个定义:
我们可以定义集合:
我们总是用花括号(curly brackets)表示集合。竖栏’ | ‘可以读为’ such that ‘或者’with the property that’。例如:{x | x ∈ A and x is even} 能够被读作 ‘the set of all x such that x is
an element of A and x is even.’
同时也可能发现:
例如:B = {x: x ∈ A, x even}
注意:
如何避免这些问题?
在有意的使用表示法时,记住要显式地提到集合中被选择的元素!
{x ∈ A | x has property (properties) P}, 其中A是一个集合,P是一个属性,或者属性列表,A的每个元素可能存在也可能不存在。
重要的基础属性:
集合可以由“原子(‘atomic’)”或“组合(‘composed’)”元素构建。集合可以包含不同种类的元素。例如:
集合{1,(黑桃,8),{红,蓝},5,1}由以下元素组成:
元素1、元素(黑桃,8)、元素{red, blue}和元素5
标准数集的记法:
如果两个集合 A 和 B包含相同的元素,则它们相等。于是有:
所有
x
∈
A
x\in A
x∈A 满足
x
∈
B
x\in B
x∈B,并且:
所有
x
∈
B
x\in B
x∈B 满足
x
∈
A
x\in A
x∈A
例子:
{1, 2, 3} = {1, 2, 2, 3},
{1, 2, 3} = {2, 1, 3}
{1, 2, 3} = {i | i is an integer, 0 < i ≤ 3}.
定义:
空集是不包含元素的(唯一确定的)集。
我们表示为:
∅
\varnothing
∅ 或者
{
}
\{\}
{}
只有一个元素的集合被称为单例集(singleton set)。
注意:
Ø是一个集合,但是不含任何元素。
{Ø}是一个非空集合,集合只有空集这个元素。
一个常见的错误是将∅与{∅}混淆
类比: 空文件夹与包含空文件夹的文件夹不同。
一个集合叫做有限集,如果它只包含有限的元素,也就是说,如果有一个数n∈N,使这个集合恰好包含n个元素。
集合M是:
∣
M
∣
:
=
{
−
x
,
t
h
e
n
u
m
b
e
r
o
f
e
l
e
m
e
n
t
s
i
n
M
,
i
f
M
i
s
f
i
n
i
t
e
∞
,
o
t
h
e
r
(1)
|M|:= \begin{cases} -x,the\ number\ of\ elements\ in\ M,\ if\ M\ is\ finite\\ \infty, other \end{cases} \tag{1}
∣M∣:={−x,the number of elements in M, if M is finite∞,other(1)
举例:
|{2, 4, 6}| = 3
|∅| = 0
|{∅}| = 1
|N| = ∞
|{2, 4, 6, 4}| = 3
|{7, {7, 14}}| = 2
在编程语言中,数据类型或类型的概念是建立在集合的概念之上的。特别是,数据类型或类型是集合的名称,以及可以对该集合中的对象执行的一组操作。
例如,boolean是集合{0,1}的名称以及该集合的一个或多个元素上的操作符,如AND、or和NOT
设A,B为集合
维恩图:
维恩图(Venn Diagrams)能够用来说明集合之间的关系,然而,维恩图却不能用来代替证明。
表示 A
⊆
\subseteq
⊆B:
举例:
这些事实中的每一个都紧跟着一个元素,它属于第一组,也属于第二组。
对每一个集合 S S S
对于集合 A, B, C:
从给定的集合中构建新的集合。
幂集(power set):
集合S的幂集是集合S的所有子集的集合,比如:
P
(
{
a
,
b
}
)
=
{
∅
,
{
a
}
,
{
b
}
,
{
a
,
b
}
}
P(\{a, b\}) = \{\varnothing, \{a\}, \{b\}, \{a, b\}\}
P({a,b})={∅,{a},{b},{a,b}}
注意:在文献中,你也会发现P(S)用Pow(S)或 2 s 2^s 2s表示。
假设A 和 B 为集合
注意:
差集有时也写作
A
∖
B
A\setminus B
A∖B
对称差有时也写作
A
Δ
B
A\Delta B
AΔB
我们想要集合
A
A
A的补数,简写为
A
‾
\overline{A}
A,是所有不属于
A
A
A 的元素的集合。
准确定义
A
‾
\overline{A}
A时要注意:
如果我们简单的假设:
A
‾
:
=
{
x
:
x
∉
A
}
\overline{A}:=\{x:x\notin A\}
A:={x:x∈/A}
空集合
∅
\varnothing
∅ 将包含一切——“所有集合的集合”(set of all sets)。
这个集合不可能存在,这就导致了罗素悖论(Russell’s paradox)。
因此,我们总是考虑一个固定全集(fixed universe)U中的集合,而U本身就是一个集合。
定义:设
U
U
U 为我们的固定全集,该全集本身是一个集合,设
A
⊂
U
A\subset U
A⊂U是一个集合。
在集合
U
U
U 中,
A
A
A的补数为集合:
A
‾
:
=
U
−
A
\overline A:=U-A
A:=U−A
假设 A , B , C A, B, C A,B,C为集合,于是:
A
,
B
,
C
A, B, C
A,B,C 为任意集合:
假设
U
U
U 是一个固定全集,它自身也是一个集合,假设集合
A
,
B
⊆
U
A, B\subseteq U
A,B⊆U,于是:
元组的组件也称为元素。
顺序
问题重复
组件(元素)两个集合A, B的笛卡尔积,用A
×
\times
× B表示,是有序对(a, b)的集合,其中a属于A, b属于B。
换句话说:
A
×
B
:
=
{
(
a
,
b
)
∣
a
∈
A
a
n
d
b
∈
B
}
A\times B:=\{(a, b)|a\in A\ and\ b\in B \}
A×B:={(a,b)∣a∈A and b∈B}
举例:
假设
A
=
{
a
,
b
}
A=\{a, b\}
A={a,b} 并且
B
=
{
1
,
2
,
3
}
B = \{1, 2, 3\}
B={1,2,3}
A × B = {(a, 1),(a, 2),(a, 3),(b, 1),(b, 2),(b, 3)}.
A × {1} = {(a, 1),(b, 1)}.
A × ∅ = ∅.
集合
A
1
,
A
2
,
…
,
A
n
A_1, A_2, …, A_n
A1,A2,…,An 的笛卡尔积,表示为
A
1
×
A
2
×
.
.
.
×
A
n
A_1\times A_2\times . . .\times A_n
A1×A2×...×An,是有序n元组
(
a
1
,
a
2
,
.
.
.
,
a
n
)
(a_1, a_2, ..., a_n)
(a1,a2,...,an) 的集合,这里
a
i
a_i
ai 属于
A
i
A_i
Ai,其中
i
=
1
,
2
,
3
,
.
.
.
,
n
i = 1, 2, 3, ..., n
i=1,2,3,...,n
.
换句话说:
A
1
×
A
2
×
.
.
.
×
A
n
:
=
{
(
a
1
,
a
2
,
.
.
.
,
a
n
)
∣
a
1
∈
A
1
,
.
.
.
,
a
n
∈
A
n
}
A_1 × A_2 × . . . × A_n:= \{(a_1, a_2, . . . , a_n) | a_1 ∈ A_1, . . . , a_n ∈ A_n\}
A1×A2×...×An:={(a1,a2,...,an)∣a1∈A1,...,an∈An}
注意:
.如果
A
A
A是一个集合,我们用
A
2
A^2
A2 去表示
A
×
A
A\times A
A×A,笛卡尔积为
A
A
A 和它自己。
更普遍的说,对于 n ∈ N n\in N n∈N,我们设 A n : = A × . . . × A A^n:= A\times ...\times A An:=A×...×A,这里乘积包含 n n n个因子。
注意: 因此:关系是笛卡尔积的子集。
为了在格式(day, month, year)中指定日期,我们使用范围
则有效日期(vaild date)是下列集合的子集:
例如:有效日期(vaild date)对于DayValues, MonthValues, YearValues来说
这个关系包含,比如说 tuple (23, 6, 1912), 但不包含 tuple (30, 2, 1912).
集合A与自身之间的关系具有特殊的意义,设A是一个集合。集合A上的关系是A与自身的关系。
设A:={1, 2, 3, 4}。R对A的关系中有哪些对(paris)R:= {(a, b) | a 除以 b}?
在某些关系中,一个元素总是与其自身相联系的。例如,如果A是所有人的集合,R是由a满足b的所有(a, b)对(paris)组成的关系,那么对于所有a∈A,(a, a)∈R。
定义:对于集合A上的每个元素a∈A,如果(a, a)∈R,R是集合A的关系,则称为自反关系。
这可以通过∀x (x, x)∈R在谓词逻辑中形式化,其中x的定义域是A中所有元素的集合。
在某些关系中,第一个元素与第二个元素相关,当且仅当第二个元素也与第一个元素相关时。
由一对(x,y)组成的关系,其中x和y是计算机学院的学生,这些学生具有至少该属性的类。
由一对(x,y)组成的关系,其中x和y是人,然后x loves y不具备该属性。
定义:
如果对于所有a,b
∈
\in
∈A,(a,b)
∈
\in
∈R 能表示 (b,a)
∈
\in
∈R在集合A上的一个关系R叫做对称的
(symmetric)。
在集合A上的一个关系R,使得对于所有a,b
∈
\in
∈A,如果(a,b)
∈
\in
∈R 并且 (b,a)
∈
\in
∈R,就有a=b,这种关系叫做反对称的
(antisymmetric)。
对称性(symmetry)可以用谓词逻辑形式化为
∀
x
∀
y
(
(
x
,
y
)
∈
R
→
(
y
,
x
)
)
∈
R
\forall x\forall y((x,y)\in R\rightarrow (y,x))\in R
∀x∀y((x,y)∈R→(y,x))∈R
反对称性(antisymmetry)可以形式化为
∀
x
∀
y
(
(
(
x
,
y
)
∈
R
∧
(
y
,
x
)
∈
R
)
→
x
=
y
)
\forall x\forall y(((x,y)\in R\wedge (y,x)\in R)\rightarrow x=y)
∀x∀y(((x,y)∈R∧(y,x)∈R)→x=y)
这里,x和y的定义域是集合A的所有元素。
举例:
考虑下列所有整数集合上的关系
1.
{
(
a
,
b
)
∣
a
≤
b
}
\{(a,b) | a\le b\}
{(a,b)∣a≤b}
2.
{
(
a
,
b
)
∣
a
=
b
}
\{(a,b) | a = b\}
{(a,b)∣a=b}
3.
{
(
a
,
b
)
∣
a
+
b
≤
3
}
\{(a,b) | a + b \le 3\}
{(a,b)∣a+b≤3}
判断哪些关系是自反的(reflexive)?哪个是对称的(symmetric)?哪个是反对称的(antisymmertic)?
Reflexive: 1,2
Symmetric:2,3
Antisymmertic:1,2
所有的(a,a)都在R中,则R是自反关系。
所有的(a,a)都不在R中,则R是反自反关系。
a≠b时,(a,b)与(b,a)要么都在R中,要么都不在R中,那么R就是对称关系。
a≠b时,(a,b)与(b,a)要么都不在R中,要么只有一个在R中,那么R就是反对称关系。
如果我们考虑包含(x, y)的关系式R,如果x在班上所有学生的集合上比y年长,那么我们知道如果(x, y) ∈ \in ∈R和(y, z) ∈ \in ∈R,那么(x, z) ∈ \in ∈R。
定义:如果(a,b)
∈
\in
∈R,并且(b,c)
∈
\in
∈R,就有对于所有a,b,c
∈
\in
∈A有(a,c)
∈
\in
∈R,该集合A上的关系R被称为传递性
(transitive)。
它可以使用谓词逻辑形式化为: ∀ x ∀ y ∀ z ( ( ( x , y ) ∈ R ∧ ( y , z ) ∈ R ) → ( x , z ) ∈ R ) \forall x\forall y\forall z(((x,y)\in R\wedge(y,z)\in R)\rightarrow(x,z)\in R) ∀x∀y∀z(((x,y)∈R∧(y,z)∈R)→(x,z)∈R),这里x,y和z的定义域为集合A的所有元素。
定义:如果对所有a,b ∈ \in ∈A,满足:(a,b) ∈ \in ∈R或者(b,a) ∈ \in ∈R,则在集合A上的一个关系R称为全数的
它可以用谓词逻辑格式化为: ∀ x ∀ y ( ( x , y ) ∈ R ∨ ( y , x ) ∈ R ) \forall x\forall y ((x,y)\in R\vee(y,x)\in R) ∀x∀y((x,y)∈R∨(y,x)∈R),这里定义域为集合A的所有元素。
举例:
考虑下列所有整数集合上的关系:
1.
{
(
a
,
b
)
∣
a
≤
b
}
\{(a,b)|a\le b\}
{(a,b)∣a≤b}
2.
{
(
a
,
b
)
∣
a
=
b
o
r
a
=
−
b
}
\{(a,b)|a=b\ or\ a=-b\}
{(a,b)∣a=b or a=−b}
3.
{
(
a
,
b
)
∣
a
+
b
≤
3
}
\{(a,b)| a+b\le 3\}
{(a,b)∣a+b≤3}
Transitive:1,2
Total:1
对所有a,b,c属于A,如果有(a, b) ∈ R,并且(b, c) ∈ R,那么有(a, c) ∈ R
对所有a, b ∈ A 满足 (a, b) ∈ R 或者(b, a) ∈ R.
一个等价关系是一个二元关系(binary relation),这种关系是自反的,传递的和对称的。
举例:
假设
E
E
E 为一个在集合
V
V
V上的等价关系。对于每个
v
∈
V
v\in V
v∈V 我们假设
[
v
]
E
:
=
{
v
′
∈
V
∣
(
v
,
v
′
∈
E
)
}
[v]_E:=\{v^{'}\in V|(v,v^{'}\in E)\}
[v]E:={v′∈V∣(v,v′∈E)}
表示
v
v
v 相对于
E
E
E的等价类(即等价类
[
v
]
E
[v]_E
[v]E由
v
v
v的所有元素组成,他们根据
E
E
E与
v
v
v而等价)。
如果存在一个 W = [ v ] E W=[v]_E W=[v]E的元素 v ∈ V v\in V v∈V,那么一个集合 W ⊆ V W\subseteq V W⊆V是一个等价类(是 E E E的)
元素 v v v 叫做 等价类 W W W的代表。
例子:
下列等价关系的等价类是什么?
设
E
E
E是集合
V
V
V上的一个二元关系。
1.如果
E
E
E是自反的和传递的,
E
E
E是一个前序
2.如果
E
E
E是自反的、传递的和反对称的,
E
E
E是一个偏序
3.如果
E
E
E是自反的、传递的、反对称的和全数的,
E
E
E是一个线性序列或者全数序列。
例子:
1.
≤
\le
≤是
N
N
N(以及
Z
Z
Z、
Q
Q
Q 和
R
R
R)上的一个线性序列。相似的,
≥
\ge
≥是
N
N
N(以及
Z
Z
Z、
Q
Q
Q 和
R
R
R)上的一个线性序列。
2.对每一个集合
M
M
M,关系
⊆
\subseteq
⊆和
⊇
\supseteq
⊇在幂集
P
(
M
)
P(M)
P(M)(不是线性序列)上是部分序列。
"
⊆
"
"\subseteq"
"⊆" 和
M
=
{
1
,
2
}
M=\{1, 2\}
M={1,2} 的图解:
3.对每一个有限集
M
M
M,
E
:
=
{
(
A
,
B
)
∣
A
,
B
⊆
M
,
∣
A
∣
≤
∣
B
∣
}
E:=\{(A,B) | A,B\subseteq M, |A|\le |B|\}
E:={(A,B)∣A,B⊆M,∣A∣≤∣B∣}是一个在
P
(
M
)
P(M)
P(M)上的前序,但不是一个偏序。
M
=
1
,
2
M={1,2}
M=1,2的图解: