本身幂集(Power Set,下称PS)仅仅只是一个非常小的概念,并且我们高中也都接触过,实在是似乎没必要作为一个专题进行讲解。实际上本人在某次实变课中听了老师的讲解后,对幂集有一些更为独特的认识,特此记录。
PS的标准定义
这和高中的定义别无二致,定义集合
A
A
A的幂集
P
(
A
)
\mathbb{P}(A)
P(A)如下:
P
(
A
)
=
{
B
∣
B
⊆
A
}
\mathbb{P}(A)= \{B|B\subseteq A\}
P(A)={B∣B⊆A}说白了,幂集就是由某个集合的所有子集组成的,其中元素总个数为
2
N
(
A
)
2^{N(A)}
2N(A)(此时我们并不在无限集合中进行讨论),
N
(
A
)
N(A)
N(A)代表集合
A
A
A中的元素总数。
集合映射的定义法
我们先给出一个定义:
Y
X
Y^X
YX代表
{
f
∣
f
:
X
→
Y
}
\{f|f:X\rightarrow Y\}
{f∣f:X→Y},即
Y
X
Y^X
YX代表一个集合,这个集合中的所有元素由所有能够将
X
X
X映射到由
Y
Y
Y中元素组成的序列
s
e
q
(
Y
)
{\rm seq}(Y)
seq(Y)中的映射
f
f
f构成。所谓的
s
e
q
(
Y
)
{\rm seq}(Y)
seq(Y),实质上就是代表一个不定长的序列
s
=
{
s
i
∣
s
i
∈
Y
}
s=\{s_i|s_i\in Y\}
s={si∣si∈Y},换句话说,就是一个由
Y
Y
Y中的元素构成的序列。
这个看似和幂集没有关系的定义,实际上,当我们令
Y
=
{
0
,
1
}
Y = \{0,1\}
Y={0,1}后,就可以得到一个完全等价于
P
(
A
)
\mathbb{P}(A)
P(A)的集合
{
0
,
1
}
A
\{0,1\}^A
{0,1}A。
{
0
,
1
}
A
\{0,1\}^A
{0,1}A事实上就是代表所有能够将
A
A
A中映射为一个
s
e
q
(
{
0
,
1
}
)
{\rm seq}(\{0,1\})
seq({0,1})的映射构成的集合。我们如何理解这样的一个集合,不妨给出一个例子:
假设
A
=
{
0
,
1
,
2
}
A=\{0,1,2\}
A={0,1,2},则
P
(
A
)
=
{
∅
,
{
0
}
,
{
1
}
,
{
0
,
1
}
,
{
1
,
2
}
,
{
0
,
2
}
,
{
0
,
1
,
2
}
}
\mathbb{P}(A)=\{\varnothing,\{0\},\{1\},\{0,1\},\{1,2\},\{0,2\},\{0,1,2\}\}
P(A)={∅,{0},{1},{0,1},{1,2},{0,2},{0,1,2}}。那么接下来我们将给出
2
A
2^{A}
2A(事实上有
2
:
=
{
0
,
1
}
2:=\{0,1\}
2:={0,1},详细见附录)。
事实上,此时
2
A
=
{
f
1
,
f
2
,
f
3
,
f
4
,
f
5
,
f
6
,
f
7
,
f
8
}
2^A=\{f_1,f_2,f_3,f_4,f_5,f_6,f_7,f_8\}
2A={f1,f2,f3,f4,f5,f6,f7,f8},其中
{
f
1
:
A
→
{
0
,
0
,
0
}
[
B
1
=
∅
]
f
2
:
A
→
{
1
,
0
,
0
}
[
B
2
=
{
0
}
]
f
3
:
A
→
{
0
,
1
,
0
}
[
B
3
=
{
1
}
]
f
4
:
A
→
{
0
,
0
,
1
}
[
B
4
=
{
2
}
]
f
5
:
A
→
{
1
,
1
,
0
}
[
B
5
=
{
0
,
1
}
]
f
6
:
A
→
{
0
,
1
,
1
}
[
B
6
=
{
1
,
2
}
]
f
7
:
A
→
{
1
,
0
,
1
}
[
B
7
=
{
0
,
2
}
]
f
8
:
A
→
{
1
,
1
,
1
}
[
B
8
=
{
0
,
1
,
2
}
]
\left\{\begin{align} f_1:A\rightarrow \{0,0,0\}\;[B_1=&\varnothing]\\ f_2:A\rightarrow \{1,0,0\}\;[B_2=&\{0\}]\\ f_3:A\rightarrow \{0,1,0\}\;[B_3=&\{1\}]\\ f_4:A\rightarrow \{0,0,1\}\;[B_4=&\{2\}]\\ f_5:A\rightarrow \{1,1,0\}\;[B_5=&\{0,1\}]\\ f_6:A\rightarrow \{0,1,1\}\;[B_6=&\{1,2\}]\\ f_7:A\rightarrow \{1,0,1\}\;[B_7=&\{0,2\}]\\ f_8:A\rightarrow \{1,1,1\}\;[B_8=&\{0,1,2\}]\\ \end{align} \right.
⎩
⎨
⎧f1:A→{0,0,0}[B1=f2:A→{1,0,0}[B2=f3:A→{0,1,0}[B3=f4:A→{0,0,1}[B4=f5:A→{1,1,0}[B5=f6:A→{0,1,1}[B6=f7:A→{1,0,1}[B7=f8:A→{1,1,1}[B8=∅]{0}]{1}]{2}]{0,1}]{1,2}]{0,2}]{0,1,2}]可以看到每个映射
f
i
f_i
fi映射出的
s
e
q
(
A
i
)
{\rm seq}(A_i)
seq(Ai)以及通过哪个真子集
B
i
B_i
Bi映射出的。因此,事实上就有
2
A
=
=
=
P
(
A
)
2^A===\mathbb{P}(A)
2A===P(A)(对js玩家的基本尊重!#^.^#)。我们可以看到,当我们以一种独特的眼光看待
{
0
,
1
}
\{0,1\}
{0,1}的时候,即将是否属于这层关系以0/1关系对表达后,我们就可以以集合映射的这种方式表达幂集,因为事实上幂集的定义也隐含着是否属于这层关系作为划分。那么找这种想法,如果我们能够敏锐地捕捉到某种三元关系,就可以自己创造出一个三元集合
Y
=
{
0
,
1
,
2
}
Y=\{0,1,2\}
Y={0,1,2},然后仿照上述方式自定义出
3
A
3^A
3A。
Cantor定理
有了前面关于幂集的铺垫,事实上理解Cantor定理的证明就是手到擒来。Cantor定理非常简单,就是证明
2
A
‾
‾
>
A
‾
‾
,
A
∼
R
\overline{\overline{2^A}} > \overline{\overline{A}},A\sim\mathbb{R}
2A>A,A∼R此定理直接引出了无最大基数的结论,这也是显然的。我们不妨以
A
=
[
0
,
1
]
A=[0,1]
A=[0,1]进行论证,使用对等的传递性可以推广到任意US上。在接下来的一章中我们将会详细地讨论证明技巧,在此处我们直接使用伯恩斯坦(Bernstein)定理。首先分析
2
A
2^A
2A的构成,显然其中的每个映射出的
s
e
q
(
{
0
,
1
}
)
{\rm seq}(\{0,1\})
seq({0,1})的长度都是
ℵ
\aleph
ℵ。接下来,根据Bernstein定理,只需要证明(a)
∃
f
:
A
→
2
A
,
f
i
s
i
n
j
e
c
t
i
v
e
m
a
p
\exists f:A\rightarrow 2^A,f\;is\;{\rm injective\;map}
∃f:A→2A,fisinjectivemap,同时有(b)
∃
f
:
2
A
→
A
,
f
i
s
i
n
j
e
c
t
i
v
e
m
a
p
\exists f:2^A\rightarrow A,f\;is\;{\rm injective\;map}
∃f:2A→A,fisinjectivemap。那么先证明命题(a)的正确性。事实上还是非常简单的,只要
t
a
k
e
a
∈
A
take\;a\in A
takea∈A,而后将这个
a
a
a表达成为一个三进制的数即可,映射关系为
f
(
a
)
=
∑
i
=
1
+
∞
a
[
i
]
3
i
f(a)=\sum_{i=1}^{+\infty}\frac{a[i]}{3^i}
f(a)=∑i=1+∞3ia[i],其中
a
[
i
]
a[i]
a[i]代表取
a
a
a的小数点后第
i
i
i位数字,当
i
→
+
∞
i\rightarrow+\infty
i→+∞的时候,通常有
a
[
i
]
=
0
a[i]=0
a[i]=0。经过上述映射后,事实上就得到了一串仅仅由0或者1组成的数字了。(?这里似乎有些问题,如果
a
=
0.2
a=0.2
a=0.2,那么似乎得到的是
{
2
,
2
,
2
,
2
,
⋯
}
\{2,2,2,2,\cdots\}
{2,2,2,2,⋯})。对于命题(b),事实上就很简单了,因为在
2
A
2^A
2A中是一串由0或1组成的序列,在二进制的背景下就可以轻松地表征任意小数,即使用映射
f
(
a
)
=
∑
i
=
1
+
∞
2
i
−
1
⋅
a
[
i
]
f(a)=\sum_{i=1}^{+\infty}2^{i-1}\cdot a[i]
f(a)=∑i=1+∞2i−1⋅a[i],其中
a
[
i
]
a[i]
a[i]代表
a
a
a的第
i
i
i位数。
附录
-
自然数的集合表示
如果定义 1 : { 0 } 1:\{0\} 1:{0},那么就可以定义迭代式 n : n = ( n − 1 ) + { n − 1 } n:n=(n-1)+\{n-1\} n:n=(n−1)+{n−1},这样就可以给出接下来几个自然数的定义:
2 : { 0 , 1 } 3 : { 0 , 1 , 2 } 4 : { 0 , 1 , 2 , 3 } \begin{align} &2:\{0,1\}\\ &3:\{0,1,2\}\\ &4:\{0,1,2,3\}\\ \end{align} 2:{0,1}3:{0,1,2}4:{0,1,2,3} -
进制转换
对于一个实数 a = ⋯ x n ⋯ x 0 . x − 1 ⋯ x − n ⋯ a=\cdots x_n\cdots x_0.x_{-1}\cdots x_{-n}\cdots a=⋯xn⋯x0.x−1⋯x−n⋯,它的 k k k进制表达式为
b k ( a ) = ( ⋯ , x n , ⋯ , x − n , ⋯ ) ⋅ ( ⋯ , k n , ⋯ , k − n , ⋯ ) T = ∑ i = − ∞ + ∞ k i x i b_k(a)=(\cdots,x_n,\cdots,x_{-n},\cdots)\cdot(\cdots,k^{n},\cdots,k^{-n},\cdots)^T=\sum_{i=-\infty}^{+\infty}k^{i}x_i bk(a)=(⋯,xn,⋯,x−n,⋯)⋅(⋯,kn,⋯,k−n,⋯)T=i=−∞∑+∞kixi同样地,如果知道了 b k ( a ) b_k(a) bk(a)的值 v = b k ( a ) v=b_k(a) v=bk(a),也可以做一个反映射求解出 a a a。即
a = b k − 1 ( v ) = ∑ i = − ∞ + ∞ k − i x i a=b_k^{-1}(v)=\sum_{i=-\infty}^{+\infty}k^{-i}x_i a=bk−1(v)=i=−∞∑+∞k−ixi