| Step |
Hyp |
Ref |
Expression |
| 1 |
|
birthday.s |
|- S = { f | f : ( 1 ... K ) --> ( 1 ... N ) } |
| 2 |
|
birthday.t |
|- T = { f | f : ( 1 ... K ) -1-1-> ( 1 ... N ) } |
| 3 |
|
birthday.k |
|- K = ; 2 3 |
| 4 |
|
birthday.n |
|- N = ; ; 3 6 5 |
| 5 |
|
2nn0 |
|- 2 e. NN0 |
| 6 |
|
3nn0 |
|- 3 e. NN0 |
| 7 |
5 6
|
deccl |
|- ; 2 3 e. NN0 |
| 8 |
3 7
|
eqeltri |
|- K e. NN0 |
| 9 |
|
6nn0 |
|- 6 e. NN0 |
| 10 |
6 9
|
deccl |
|- ; 3 6 e. NN0 |
| 11 |
|
5nn |
|- 5 e. NN |
| 12 |
10 11
|
decnncl |
|- ; ; 3 6 5 e. NN |
| 13 |
4 12
|
eqeltri |
|- N e. NN |
| 14 |
1 2
|
birthdaylem3 |
|- ( ( K e. NN0 /\ N e. NN ) -> ( ( # ` T ) / ( # ` S ) ) <_ ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) ) |
| 15 |
8 13 14
|
mp2an |
|- ( ( # ` T ) / ( # ` S ) ) <_ ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) |
| 16 |
|
log2ub |
|- ( log ` 2 ) < ( ; ; 2 5 3 / ; ; 3 6 5 ) |
| 17 |
8
|
nn0cni |
|- K e. CC |
| 18 |
17
|
sqvali |
|- ( K ^ 2 ) = ( K x. K ) |
| 19 |
17
|
mulridi |
|- ( K x. 1 ) = K |
| 20 |
19
|
eqcomi |
|- K = ( K x. 1 ) |
| 21 |
18 20
|
oveq12i |
|- ( ( K ^ 2 ) - K ) = ( ( K x. K ) - ( K x. 1 ) ) |
| 22 |
|
ax-1cn |
|- 1 e. CC |
| 23 |
17 17 22
|
subdii |
|- ( K x. ( K - 1 ) ) = ( ( K x. K ) - ( K x. 1 ) ) |
| 24 |
21 23
|
eqtr4i |
|- ( ( K ^ 2 ) - K ) = ( K x. ( K - 1 ) ) |
| 25 |
24
|
oveq1i |
|- ( ( ( K ^ 2 ) - K ) / 2 ) = ( ( K x. ( K - 1 ) ) / 2 ) |
| 26 |
17 22
|
subcli |
|- ( K - 1 ) e. CC |
| 27 |
|
2cn |
|- 2 e. CC |
| 28 |
|
2ne0 |
|- 2 =/= 0 |
| 29 |
17 26 27 28
|
divassi |
|- ( ( K x. ( K - 1 ) ) / 2 ) = ( K x. ( ( K - 1 ) / 2 ) ) |
| 30 |
|
1nn0 |
|- 1 e. NN0 |
| 31 |
5 5
|
deccl |
|- ; 2 2 e. NN0 |
| 32 |
31
|
nn0cni |
|- ; 2 2 e. CC |
| 33 |
|
2p1e3 |
|- ( 2 + 1 ) = 3 |
| 34 |
|
eqid |
|- ; 2 2 = ; 2 2 |
| 35 |
5 5 33 34
|
decsuc |
|- ( ; 2 2 + 1 ) = ; 2 3 |
| 36 |
3 35
|
eqtr4i |
|- K = ( ; 2 2 + 1 ) |
| 37 |
32 22 36
|
mvrraddi |
|- ( K - 1 ) = ; 2 2 |
| 38 |
37
|
oveq1i |
|- ( ( K - 1 ) / 2 ) = ( ; 2 2 / 2 ) |
| 39 |
5
|
11multnc |
|- ( 2 x. ; 1 1 ) = ; 2 2 |
| 40 |
30 30
|
deccl |
|- ; 1 1 e. NN0 |
| 41 |
40
|
nn0cni |
|- ; 1 1 e. CC |
| 42 |
32 27 41 28
|
divmuli |
|- ( ( ; 2 2 / 2 ) = ; 1 1 <-> ( 2 x. ; 1 1 ) = ; 2 2 ) |
| 43 |
39 42
|
mpbir |
|- ( ; 2 2 / 2 ) = ; 1 1 |
| 44 |
38 43
|
eqtri |
|- ( ( K - 1 ) / 2 ) = ; 1 1 |
| 45 |
19 3
|
eqtri |
|- ( K x. 1 ) = ; 2 3 |
| 46 |
|
3p2e5 |
|- ( 3 + 2 ) = 5 |
| 47 |
5 6 5 45 46
|
decaddi |
|- ( ( K x. 1 ) + 2 ) = ; 2 5 |
| 48 |
8 30 30 44 6 5 47 45
|
decmul2c |
|- ( K x. ( ( K - 1 ) / 2 ) ) = ; ; 2 5 3 |
| 49 |
25 29 48
|
3eqtri |
|- ( ( ( K ^ 2 ) - K ) / 2 ) = ; ; 2 5 3 |
| 50 |
49 4
|
oveq12i |
|- ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) = ( ; ; 2 5 3 / ; ; 3 6 5 ) |
| 51 |
16 50
|
breqtrri |
|- ( log ` 2 ) < ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) |
| 52 |
|
2rp |
|- 2 e. RR+ |
| 53 |
|
relogcl |
|- ( 2 e. RR+ -> ( log ` 2 ) e. RR ) |
| 54 |
52 53
|
ax-mp |
|- ( log ` 2 ) e. RR |
| 55 |
|
5nn0 |
|- 5 e. NN0 |
| 56 |
5 55
|
deccl |
|- ; 2 5 e. NN0 |
| 57 |
56 6
|
deccl |
|- ; ; 2 5 3 e. NN0 |
| 58 |
49 57
|
eqeltri |
|- ( ( ( K ^ 2 ) - K ) / 2 ) e. NN0 |
| 59 |
58
|
nn0rei |
|- ( ( ( K ^ 2 ) - K ) / 2 ) e. RR |
| 60 |
|
nndivre |
|- ( ( ( ( ( K ^ 2 ) - K ) / 2 ) e. RR /\ N e. NN ) -> ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) e. RR ) |
| 61 |
59 13 60
|
mp2an |
|- ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) e. RR |
| 62 |
54 61
|
ltnegi |
|- ( ( log ` 2 ) < ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) <-> -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) < -u ( log ` 2 ) ) |
| 63 |
51 62
|
mpbi |
|- -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) < -u ( log ` 2 ) |
| 64 |
61
|
renegcli |
|- -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) e. RR |
| 65 |
54
|
renegcli |
|- -u ( log ` 2 ) e. RR |
| 66 |
|
eflt |
|- ( ( -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) e. RR /\ -u ( log ` 2 ) e. RR ) -> ( -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) < -u ( log ` 2 ) <-> ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) < ( exp ` -u ( log ` 2 ) ) ) ) |
| 67 |
64 65 66
|
mp2an |
|- ( -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) < -u ( log ` 2 ) <-> ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) < ( exp ` -u ( log ` 2 ) ) ) |
| 68 |
63 67
|
mpbi |
|- ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) < ( exp ` -u ( log ` 2 ) ) |
| 69 |
54
|
recni |
|- ( log ` 2 ) e. CC |
| 70 |
|
efneg |
|- ( ( log ` 2 ) e. CC -> ( exp ` -u ( log ` 2 ) ) = ( 1 / ( exp ` ( log ` 2 ) ) ) ) |
| 71 |
69 70
|
ax-mp |
|- ( exp ` -u ( log ` 2 ) ) = ( 1 / ( exp ` ( log ` 2 ) ) ) |
| 72 |
|
reeflog |
|- ( 2 e. RR+ -> ( exp ` ( log ` 2 ) ) = 2 ) |
| 73 |
52 72
|
ax-mp |
|- ( exp ` ( log ` 2 ) ) = 2 |
| 74 |
73
|
oveq2i |
|- ( 1 / ( exp ` ( log ` 2 ) ) ) = ( 1 / 2 ) |
| 75 |
71 74
|
eqtri |
|- ( exp ` -u ( log ` 2 ) ) = ( 1 / 2 ) |
| 76 |
68 75
|
breqtri |
|- ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) < ( 1 / 2 ) |
| 77 |
1 2
|
birthdaylem1 |
|- ( T C_ S /\ S e. Fin /\ ( N e. NN -> S =/= (/) ) ) |
| 78 |
77
|
simp2i |
|- S e. Fin |
| 79 |
77
|
simp1i |
|- T C_ S |
| 80 |
|
ssfi |
|- ( ( S e. Fin /\ T C_ S ) -> T e. Fin ) |
| 81 |
78 79 80
|
mp2an |
|- T e. Fin |
| 82 |
|
hashcl |
|- ( T e. Fin -> ( # ` T ) e. NN0 ) |
| 83 |
81 82
|
ax-mp |
|- ( # ` T ) e. NN0 |
| 84 |
83
|
nn0rei |
|- ( # ` T ) e. RR |
| 85 |
77
|
simp3i |
|- ( N e. NN -> S =/= (/) ) |
| 86 |
13 85
|
ax-mp |
|- S =/= (/) |
| 87 |
|
hashnncl |
|- ( S e. Fin -> ( ( # ` S ) e. NN <-> S =/= (/) ) ) |
| 88 |
78 87
|
ax-mp |
|- ( ( # ` S ) e. NN <-> S =/= (/) ) |
| 89 |
86 88
|
mpbir |
|- ( # ` S ) e. NN |
| 90 |
|
nndivre |
|- ( ( ( # ` T ) e. RR /\ ( # ` S ) e. NN ) -> ( ( # ` T ) / ( # ` S ) ) e. RR ) |
| 91 |
84 89 90
|
mp2an |
|- ( ( # ` T ) / ( # ` S ) ) e. RR |
| 92 |
|
reefcl |
|- ( -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) e. RR -> ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) e. RR ) |
| 93 |
64 92
|
ax-mp |
|- ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) e. RR |
| 94 |
|
halfre |
|- ( 1 / 2 ) e. RR |
| 95 |
91 93 94
|
lelttri |
|- ( ( ( ( # ` T ) / ( # ` S ) ) <_ ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) /\ ( exp ` -u ( ( ( ( K ^ 2 ) - K ) / 2 ) / N ) ) < ( 1 / 2 ) ) -> ( ( # ` T ) / ( # ` S ) ) < ( 1 / 2 ) ) |
| 96 |
15 76 95
|
mp2an |
|- ( ( # ` T ) / ( # ` S ) ) < ( 1 / 2 ) |