Metamath Proof Explorer


Theorem birthdaylem3

Description: For general N and K , upper-bound the fraction of injective functions from 1 ... K to 1 ... N . (Contributed by Mario Carneiro, 17-Apr-2015)

Ref Expression
Hypotheses birthday.s S=f|f:1K1N
birthday.t T=f|f:1K1-11N
Assertion birthdaylem3 K0NTSeK2K2N

Proof

Step Hyp Ref Expression
1 birthday.s S=f|f:1K1N
2 birthday.t T=f|f:1K1-11N
3 abn0 f|f:1K1-11Nff:1K1-11N
4 ovex 1NV
5 4 brdom 1K1Nff:1K1-11N
6 3 5 bitr4i f|f:1K1-11N1K1N
7 hashfz1 K01K=K
8 nnnn0 NN0
9 hashfz1 N01N=N
10 8 9 syl N1N=N
11 7 10 breqan12d K0N1K1NKN
12 fzfid K0N1KFin
13 fzfid K0N1NFin
14 hashdom 1KFin1NFin1K1N1K1N
15 12 13 14 syl2anc K0N1K1N1K1N
16 nn0re K0K
17 nnre NN
18 lenlt KNKN¬N<K
19 16 17 18 syl2an K0NKN¬N<K
20 11 15 19 3bitr3d K0N1K1N¬N<K
21 6 20 bitrid K0Nf|f:1K1-11N¬N<K
22 21 necon4abid K0Nf|f:1K1-11N=N<K
23 22 biimpar K0NN<Kf|f:1K1-11N=
24 2 23 eqtrid K0NN<KT=
25 24 fveq2d K0NN<KT=
26 hash0 =0
27 25 26 eqtrdi K0NN<KT=0
28 27 oveq1d K0NN<KTS=0S
29 1 2 birthdaylem1 TSSFinNS
30 29 simp3i NS
31 30 ad2antlr K0NN<KS
32 29 simp2i SFin
33 hashnncl SFinSS
34 32 33 ax-mp SS
35 31 34 sylibr K0NN<KS
36 35 nncnd K0NN<KS
37 35 nnne0d K0NN<KS0
38 36 37 div0d K0NN<K0S=0
39 28 38 eqtrd K0NN<KTS=0
40 16 adantr K0NK
41 40 resqcld K0NK2
42 41 40 resubcld K0NK2K
43 42 rehalfcld K0NK2K2
44 nndivre K2K2NK2K2N
45 43 44 sylancom K0NK2K2N
46 45 renegcld K0NK2K2N
47 46 adantr K0NN<KK2K2N
48 47 rpefcld K0NN<KeK2K2N+
49 48 rpge0d K0NN<K0eK2K2N
50 39 49 eqbrtrd K0NN<KTSeK2K2N
51 simplr K0NKNN
52 simpr K0NKNKN
53 simpll K0NKNK0
54 nn0uz 0=0
55 53 54 eleqtrdi K0NKNK0
56 nnz NN
57 56 ad2antlr K0NKNN
58 elfz5 K0NK0NKN
59 55 57 58 syl2anc K0NKNK0NKN
60 52 59 mpbird K0NKNK0N
61 1 2 birthdaylem2 NK0NTS=ek=0K1log1kN
62 51 60 61 syl2anc K0NKNTS=ek=0K1log1kN
63 fzfid K0NKN0K1Fin
64 elfznn0 k0K1k0
65 64 adantl K0NKNk0K1k0
66 65 nn0red K0NKNk0K1k
67 53 nn0red K0NKNK
68 peano2rem KK1
69 67 68 syl K0NKNK1
70 69 adantr K0NKNk0K1K1
71 51 adantr K0NKNk0K1N
72 71 nnred K0NKNk0K1N
73 elfzle2 k0K1kK1
74 73 adantl K0NKNk0K1kK1
75 51 nnred K0NKNN
76 67 ltm1d K0NKNK1<K
77 69 67 75 76 52 ltletrd K0NKNK1<N
78 77 adantr K0NKNk0K1K1<N
79 66 70 72 74 78 lelttrd K0NKNk0K1k<N
80 71 nncnd K0NKNk0K1N
81 80 mulridd K0NKNk0K1 N1=N
82 79 81 breqtrrd K0NKNk0K1k< N1
83 1red K0NKNk0K11
84 71 nngt0d K0NKNk0K10<N
85 ltdivmul k1N0<NkN<1k< N1
86 66 83 72 84 85 syl112anc K0NKNk0K1kN<1k< N1
87 82 86 mpbird K0NKNk0K1kN<1
88 66 71 nndivred K0NKNk0K1kN
89 1re 1
90 difrp kN1kN<11kN+
91 88 89 90 sylancl K0NKNk0K1kN<11kN+
92 87 91 mpbid K0NKNk0K11kN+
93 92 relogcld K0NKNk0K1log1kN
94 88 renegcld K0NKNk0K1kN
95 elfzle1 k0K10k
96 95 adantl K0NKNk0K10k
97 divge0 k0kN0<N0kN
98 66 96 72 84 97 syl22anc K0NKNk0K10kN
99 88 98 87 eflegeo K0NKNk0K1ekN11kN
100 88 reefcld K0NKNk0K1ekN
101 efgt0 kN0<ekN
102 88 101 syl K0NKNk0K10<ekN
103 92 rpregt0d K0NKNk0K11kN0<1kN
104 lerec2 ekN0<ekN1kN0<1kNekN11kN1kN1ekN
105 100 102 103 104 syl21anc K0NKNk0K1ekN11kN1kN1ekN
106 99 105 mpbid K0NKNk0K11kN1ekN
107 92 reeflogd K0NKNk0K1elog1kN=1kN
108 88 recnd K0NKNk0K1kN
109 efneg kNekN=1ekN
110 108 109 syl K0NKNk0K1ekN=1ekN
111 106 107 110 3brtr4d K0NKNk0K1elog1kNekN
112 efle log1kNkNlog1kNkNelog1kNekN
113 93 94 112 syl2anc K0NKNk0K1log1kNkNelog1kNekN
114 111 113 mpbird K0NKNk0K1log1kNkN
115 63 93 94 114 fsumle K0NKNk=0K1log1kNk=0K1kN
116 63 108 fsumneg K0NKNk=0K1kN=k=0K1kN
117 51 nncnd K0NKNN
118 66 recnd K0NKNk0K1k
119 nnne0 NN0
120 119 ad2antlr K0NKNN0
121 63 117 118 120 fsumdivc K0NKNk=0K1kN=k=0K1kN
122 arisum2 K0k=0K1k=K2K2
123 53 122 syl K0NKNk=0K1k=K2K2
124 123 oveq1d K0NKNk=0K1kN=K2K2N
125 121 124 eqtr3d K0NKNk=0K1kN=K2K2N
126 125 negeqd K0NKNk=0K1kN=K2K2N
127 116 126 eqtrd K0NKNk=0K1kN=K2K2N
128 115 127 breqtrd K0NKNk=0K1log1kNK2K2N
129 63 93 fsumrecl K0NKNk=0K1log1kN
130 46 adantr K0NKNK2K2N
131 efle k=0K1log1kNK2K2Nk=0K1log1kNK2K2Nek=0K1log1kNeK2K2N
132 129 130 131 syl2anc K0NKNk=0K1log1kNK2K2Nek=0K1log1kNeK2K2N
133 128 132 mpbid K0NKNek=0K1log1kNeK2K2N
134 62 133 eqbrtrd K0NKNTSeK2K2N
135 17 adantl K0NN
136 50 134 135 40 ltlecasei K0NTSeK2K2N