カントール-ベルンシュタインの定理の証明
📂集合論カントール-ベルンシュタインの定理の証明
定理
集合A、Bについて、AがBの部分集合と同値で、BがAの部分集合と同値であれば、AとBは同値である。
- 二つの集合が同値であることは、両集合間に全単射が存在することを意味する。
証明
戦略:xに関数fをk回適用するのをfk(x)のように表現しようとする。そうすれば、全てのk∈Nに対してfk(x)=f(fk−1(x))のように表現できるだろう。この視点から、f0は関数fを全く適用しない関数、言わば恒等関数と考えることができる。
まず、集合Aの部分集合Bに対して、単射f:A→Bが存在する場合は、全単射h:A→Bも存在することを示そうとする。もしB=Aであれば、何らかの単射fが恒等関数h:=f0を持つので、これ以上示すことはないので、B⊊Aの場合だけ考えればいい。
Part 1. n=mならばfn(A∖B)∩fm(A∖B)=∅
m<nの時にfn(A∖B)∩fm(A∖B)=∅が成り立つと仮定してみよう。これはすなわち、何かx1,x2∈(A∖B)が存在してfn(x1)=fm(x2)を満たすことを意味する。そこで
fn−m(x1)===fm−m(x2)f0(x2)x2
ここで、f0(x2)∈Bとはx2∈Bを意味する。しかし、これはx2∈(A∖B)に矛盾する。同様の方法で、m>nの時にもfn(A∖B)∩fm(A∖B)=∅が成立することを示すことができる。
Part 2. h(A)=B
集合Cを以下のように定義しよう。
C:=h(z):=n≥0⋃fn(A∖B){f(z)z,z∈C,z∈A∖C
Cとz∈Aに対して関数hを上記のように定義すると、A∖B⊂Cかつ、f(C)⊂Cである。関数の像に関する和集合の性質により
h(A)=========(A∖C)∪f(C)[A∖n≥0⋃fn(A∖B)]∪f(n≥0⋃fn(A∖B))[A∩(n≥0⋃fn(A∖B))c]∪n≥1⋃fn(A∖B)[A∪n≥1⋃fn(A∖B)]∩[(n≥0⋃fn(A∖B))c∪n≥1⋃fn(A∖B)]A∩[n≥0⋃fn(A∖B)∩(n≥1⋃fn(A∖B))c]cA∩[f0(A∖B)]cA∩(A∖B)cA∖(A∖B)B
つまり、h(A)=Bであり、hは全射である。ここで、fは単射なので、hも単射になり、結果として全単射である。
Part 3. hは全単射である
A0⊂AB0⊂B
定理の前提によると、二つの全単射f0:A→B0とg0:B→A0が存在すると、f(x)=g0(f0(x))として定義された関数fは単射である。Part 1と2に従えば、全単射h:A→A0が存在する。したがって、g0−1∘h:A→Bは全単射である。従って、AとBは同値である。
■