Cantor's Theorem
Theorem: For any set (finite or otherwise), there exists an even larger set.
Prove: ALL(s):[Set(s)
=> EXIST(s'):[Set(s')
& ~EXIST(f):[ALL(a):[a
s => f(a)
s'] & ALL(a):[a
s' => EXIST(b):[b
s & a=f(b)]]]]]
Here, a set s' is said to be larger than a set s if there can be no function
mapping s onto all of s'.
Prove: Set(s)
=> EXIST(s'):[Set(s')
& ~EXIST(f):[ALL(a):[a
s => f(a)
s'] & ALL(a):[a
s' => EXIST(b):[b
s & a=f(b)]]]]
Suppose...
1 Set(s)
Premise
Construct the power set of s. We will show that it must be larger than s.
Applying the Power Set Axiom...
2 ALL(a):[Set(a) => EXIST(b):[Set(b)
& ALL(c):[c
b <=> Set(c) & ALL(d):[d
c => d
a]]]]
Power Set
3 Set(s) => EXIST(b):[Set(b)
& ALL(c):[c
b <=> Set(c) & ALL(d):[d
c => d
s]]]
U Spec, 2
Applying the Detachment Rule on lines 3 and 1...
4 EXIST(b):[Set(b)
& ALL(c):[c
b <=> Set(c) & ALL(d):[d
c => d
s]]]
Detach, 3, 1
Define: p, the power set of s
5 Set(p)
& ALL(c):[c
p <=> Set(c) & ALL(d):[d
c => d
s]]
E Spec, 4
Splitting this definition into its component parts...
6 Set(p)
Split, 5
7 ALL(c):[c
p <=> Set(c) & ALL(d):[d
c => d
s]]
Split, 5
Prove: There is no f function mapping s onto all of p, that is
~[ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]]
Suppose to the contrary...
8 ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]
Premise
Splitting this premise...
9 ALL(a):[a
s => f(a)
p]
Split, 8
10 ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]
Split, 8
Construct k, a subset of s to obtain a contradiction.
Applying the Subset Axiom...
11 EXIST(k):[Set(k) & ALL(a):[a
k <=> a
s & ~a
f(a)]]
Subset, 1
Define: k, a subset of s
12 Set(k) & ALL(a):[a
k <=> a
s & ~a
f(a)]
E Spec, 11
Splitting this definition...
13 Set(k)
Split, 12
14 ALL(a):[a
k <=> a
s & ~a
f(a)]
Split, 12
Prove: k
p
Applying the definition of p (the power set of s)...
15 k
p <=> Set(k) & ALL(d):[d
k => d
s]
U Spec, 7
Splitting this IFF-statement into it component implications...
16 [k
p => Set(k) & ALL(d):[d
k => d
s]]
& [Set(k) & ALL(d):[d
k => d
s] => k
p]
Iff-And, 15
Splitting this AND-statement into its component parts...
17 k
p => Set(k) & ALL(d):[d
k => d
s]
Split, 16
Sufficient: For k
p
18 Set(k) & ALL(d):[d
k => d
s] => k
p
Split, 16
Prove: x
k => x
s
Suppose...
19 x
k
Premise
Applying the definition of k...
20 x
k <=> x
s & ~x
f(x)
U Spec, 14
Splitting this IFF-statement into its component parts...
21 [x
k => x
s & ~x
f(x)] & [x
s & ~x
f(x) => x
k]
Iff-And, 20
Splitting this AND-statement into its component parts...
22 x
k => x
s & ~x
f(x)
Split, 21
23 x
s & ~x
f(x) => x
k
Split, 21
Applying the Detachment Rule on lines 22 and 19...
24 x
s & ~x
f(x)
Detach, 22, 19
Splitting this result and deleting the second part...
25 x
s
Split, 24
Applying the Conclusion Rule...
26 x
k => x
s
Conclusion, 19
Generalizing...
27 ALL(d):[d
k => d
s]
U Gen, 26
28 Set(k) & ALL(d):[d
k => d
s]
Join, 13, 27
As Required:
29 k
p
Detach, 18, 28
Obtain the pre-image of k. Applying the definition of f...
30 k
p => EXIST(b):[b
s & k=f(b)]
U Spec, 10
Applying the Detachment Rule on lines 30 and 29...
31 EXIST(b):[b
s & k=f(b)]
Detach, 30, 29
Define: k', the pre-image of k under f
32 k'
s & k=f(k')
E Spec, 31
Splitting this result...
33 k'
s
Split, 32
34 k=f(k')
Split, 32
Is k'
k? Applying the definition of k...
35 k'
k <=> k'
s & ~k'
f(k')
U Spec, 14
Substituting...
36 k'
k <=> k'
s & ~k'
k
Substitute, 34, 35
Splitting this IFF-statement into its component parts...
37 [k'
k => k'
s & ~k'
k] & [k'
s & ~k'
k => k'
k]
Iff-And, 36
Splitting this AND-statement...
38 k'
k => k'
s & ~k'
k
Split, 37
39 k'
s & ~k'
k => k'
k
Split, 37
Prove: ~k'
k
Suppose to the contrary...
40 k'
k
Premise
From the definition of k...
41 k'
s & ~k'
k
Detach, 38, 40
Splitting this result...
42 k'
s
Split, 41
As Required:
43 ~k'
k
Split, 41
We obtain the contradiction...
44 k'
k & ~k'
k
Join, 40, 43
Applying the Conclusion Rule, by contradiction...
45 ~k'
k
Conclusion, 40
Joining previous results...
46 k'
s & ~k'
k
Join, 33, 45
From the definition of k, we also have...
47 k'
k
Detach, 39, 46
Joining results, we obtain the contradiction...
48 ~k'
k & k'
k
Join, 45, 47
Applying the Conclusion Rule, by contradiction...
49 ~[ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]]
Conclusion, 8
Generalizing...
50 ALL(f):~[ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]]
U Gen, 49
Switching quantifiers...
51 ~EXIST(f):~~[ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]]
Quant, 50
Removing the double negation...
52 ~EXIST(f):[ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]]
Rem DNeg, 51
Joining results on lines 6 and 52...
53 Set(p)
& ~EXIST(f):[ALL(a):[a
s => f(a)
p] & ALL(a):[a
p => EXIST(b):[b
s & a=f(b)]]]
Join, 6, 52
As Required:
Generalizing, we have...
54 EXIST(s'):[Set(s')
& ~EXIST(f):[ALL(a):[a
s => f(a)
s'] & ALL(a):[a
s' => EXIST(b):[b
s & a=f(b)]]]]
E Gen, 53
Applying the Conclusion Rule...
55 Set(s)
=> EXIST(s'):[Set(s')
& ~EXIST(f):[ALL(a):[a
s => f(a)
s'] & ALL(a):[a
s' => EXIST(b):[b
s & a=f(b)]]]]
Conclusion, 1
As Required:
Generalizing...
56 ALL(s):[Set(s)
=> EXIST(s'):[Set(s')
& ~EXIST(f):[ALL(a):[a
s => f(a)
s'] & ALL(a):[a
s' => EXIST(b):[b
s & a=f(b)]]]]]
U Gen, 55