Metamath Proof Explorer


Theorem faclbnd

Description: A lower bound for the factorial function. (Contributed by NM, 17-Dec-2005)

Ref Expression
Assertion faclbnd M 0 N 0 M N + 1 M M N !

Proof

Step Hyp Ref Expression
1 elnn0 M 0 M M = 0
2 oveq1 j = 0 j + 1 = 0 + 1
3 2 oveq2d j = 0 M j + 1 = M 0 + 1
4 fveq2 j = 0 j ! = 0 !
5 4 oveq2d j = 0 M M j ! = M M 0 !
6 3 5 breq12d j = 0 M j + 1 M M j ! M 0 + 1 M M 0 !
7 6 imbi2d j = 0 M M j + 1 M M j ! M M 0 + 1 M M 0 !
8 oveq1 j = k j + 1 = k + 1
9 8 oveq2d j = k M j + 1 = M k + 1
10 fveq2 j = k j ! = k !
11 10 oveq2d j = k M M j ! = M M k !
12 9 11 breq12d j = k M j + 1 M M j ! M k + 1 M M k !
13 12 imbi2d j = k M M j + 1 M M j ! M M k + 1 M M k !
14 oveq1 j = k + 1 j + 1 = k + 1 + 1
15 14 oveq2d j = k + 1 M j + 1 = M k + 1 + 1
16 fveq2 j = k + 1 j ! = k + 1 !
17 16 oveq2d j = k + 1 M M j ! = M M k + 1 !
18 15 17 breq12d j = k + 1 M j + 1 M M j ! M k + 1 + 1 M M k + 1 !
19 18 imbi2d j = k + 1 M M j + 1 M M j ! M M k + 1 + 1 M M k + 1 !
20 oveq1 j = N j + 1 = N + 1
21 20 oveq2d j = N M j + 1 = M N + 1
22 fveq2 j = N j ! = N !
23 22 oveq2d j = N M M j ! = M M N !
24 21 23 breq12d j = N M j + 1 M M j ! M N + 1 M M N !
25 24 imbi2d j = N M M j + 1 M M j ! M M N + 1 M M N !
26 nnre M M
27 nnge1 M 1 M
28 elnnuz M M 1
29 28 biimpi M M 1
30 26 27 29 leexp2ad M M 1 M M
31 0p1e1 0 + 1 = 1
32 31 oveq2i M 0 + 1 = M 1
33 32 a1i M M 0 + 1 = M 1
34 fac0 0 ! = 1
35 34 oveq2i M M 0 ! = M M 1
36 nnnn0 M M 0
37 26 36 reexpcld M M M
38 37 recnd M M M
39 38 mulid1d M M M 1 = M M
40 35 39 syl5eq M M M 0 ! = M M
41 30 33 40 3brtr4d M M 0 + 1 M M 0 !
42 26 ad3antrrr M k 0 M k + 1 M M k ! M k 0 M k + 1 M
43 simpllr M k 0 M k + 1 M M k ! M k 0 M k + 1 k 0
44 peano2nn0 k 0 k + 1 0
45 43 44 syl M k 0 M k + 1 M M k ! M k 0 M k + 1 k + 1 0
46 42 45 reexpcld M k 0 M k + 1 M M k ! M k 0 M k + 1 M k + 1
47 36 ad3antrrr M k 0 M k + 1 M M k ! M k 0 M k + 1 M 0
48 42 47 reexpcld M k 0 M k + 1 M M k ! M k 0 M k + 1 M M
49 43 faccld M k 0 M k + 1 M M k ! M k 0 M k + 1 k !
50 49 nnred M k 0 M k + 1 M M k ! M k 0 M k + 1 k !
51 48 50 remulcld M k 0 M k + 1 M M k ! M k 0 M k + 1 M M k !
52 nn0re k 0 k
53 peano2re k k + 1
54 43 52 53 3syl M k 0 M k + 1 M M k ! M k 0 M k + 1 k + 1
55 nngt0 M 0 < M
56 55 ad3antrrr M k 0 M k + 1 M M k ! M k 0 M k + 1 0 < M
57 0re 0
58 ltle 0 M 0 < M 0 M
59 57 58 mpan M 0 < M 0 M
60 42 56 59 sylc M k 0 M k + 1 M M k ! M k 0 M k + 1 0 M
61 42 45 60 expge0d M k 0 M k + 1 M M k ! M k 0 M k + 1 0 M k + 1
62 simplr M k 0 M k + 1 M M k ! M k 0 M k + 1 M k + 1 M M k !
63 simprr M k 0 M k + 1 M M k ! M k 0 M k + 1 M k + 1
64 46 51 42 54 61 60 62 63 lemul12ad M k 0 M k + 1 M M k ! M k 0 M k + 1 M k + 1 M M M k ! k + 1
65 64 anandis M k 0 M k + 1 M M k ! M k + 1 M k + 1 M M M k ! k + 1
66 nncn M M
67 expp1 M k + 1 0 M k + 1 + 1 = M k + 1 M
68 66 44 67 syl2an M k 0 M k + 1 + 1 = M k + 1 M
69 68 adantr M k 0 M k + 1 M M k ! M k + 1 M k + 1 + 1 = M k + 1 M
70 facp1 k 0 k + 1 ! = k ! k + 1
71 70 adantl M k 0 k + 1 ! = k ! k + 1
72 71 oveq2d M k 0 M M k + 1 ! = M M k ! k + 1
73 38 adantr M k 0 M M
74 faccl k 0 k !
75 74 nncnd k 0 k !
76 75 adantl M k 0 k !
77 nn0cn k 0 k
78 peano2cn k k + 1
79 77 78 syl k 0 k + 1
80 79 adantl M k 0 k + 1
81 73 76 80 mulassd M k 0 M M k ! k + 1 = M M k ! k + 1
82 72 81 eqtr4d M k 0 M M k + 1 ! = M M k ! k + 1
83 82 adantr M k 0 M k + 1 M M k ! M k + 1 M M k + 1 ! = M M k ! k + 1
84 65 69 83 3brtr4d M k 0 M k + 1 M M k ! M k + 1 M k + 1 + 1 M M k + 1 !
85 84 exp32 M k 0 M k + 1 M M k ! M k + 1 M k + 1 + 1 M M k + 1 !
86 85 com23 M k 0 M k + 1 M k + 1 M M k ! M k + 1 + 1 M M k + 1 !
87 nn0ltp1le k + 1 0 M 0 k + 1 < M k + 1 + 1 M
88 44 36 87 syl2anr M k 0 k + 1 < M k + 1 + 1 M
89 peano2nn0 k + 1 0 k + 1 + 1 0
90 44 89 syl k 0 k + 1 + 1 0
91 reexpcl M k + 1 + 1 0 M k + 1 + 1
92 26 90 91 syl2an M k 0 M k + 1 + 1
93 92 adantr M k 0 k + 1 + 1 M M k + 1 + 1
94 37 ad2antrr M k 0 k + 1 + 1 M M M
95 44 faccld k 0 k + 1 !
96 95 nnred k 0 k + 1 !
97 remulcl M M k + 1 ! M M k + 1 !
98 37 96 97 syl2an M k 0 M M k + 1 !
99 98 adantr M k 0 k + 1 + 1 M M M k + 1 !
100 26 ad2antrr M k 0 k + 1 + 1 M M
101 27 ad2antrr M k 0 k + 1 + 1 M 1 M
102 simpr M k 0 k + 1 + 1 M k + 1 + 1 M
103 90 ad2antlr M k 0 k + 1 + 1 M k + 1 + 1 0
104 103 nn0zd M k 0 k + 1 + 1 M k + 1 + 1
105 nnz M M
106 105 ad2antrr M k 0 k + 1 + 1 M M
107 eluz k + 1 + 1 M M k + 1 + 1 k + 1 + 1 M
108 104 106 107 syl2anc M k 0 k + 1 + 1 M M k + 1 + 1 k + 1 + 1 M
109 102 108 mpbird M k 0 k + 1 + 1 M M k + 1 + 1
110 100 101 109 leexp2ad M k 0 k + 1 + 1 M M k + 1 + 1 M M
111 37 96 anim12i M k 0 M M k + 1 !
112 nn0re M 0 M
113 id M 0 M 0
114 nn0ge0 M 0 0 M
115 112 113 114 expge0d M 0 0 M M
116 36 115 syl M 0 M M
117 95 nnge1d k 0 1 k + 1 !
118 116 117 anim12i M k 0 0 M M 1 k + 1 !
119 lemulge11 M M k + 1 ! 0 M M 1 k + 1 ! M M M M k + 1 !
120 111 118 119 syl2anc M k 0 M M M M k + 1 !
121 120 adantr M k 0 k + 1 + 1 M M M M M k + 1 !
122 93 94 99 110 121 letrd M k 0 k + 1 + 1 M M k + 1 + 1 M M k + 1 !
123 122 ex M k 0 k + 1 + 1 M M k + 1 + 1 M M k + 1 !
124 88 123 sylbid M k 0 k + 1 < M M k + 1 + 1 M M k + 1 !
125 124 a1dd M k 0 k + 1 < M M k + 1 M M k ! M k + 1 + 1 M M k + 1 !
126 52 53 syl k 0 k + 1
127 lelttric M k + 1 M k + 1 k + 1 < M
128 26 126 127 syl2an M k 0 M k + 1 k + 1 < M
129 86 125 128 mpjaod M k 0 M k + 1 M M k ! M k + 1 + 1 M M k + 1 !
130 129 expcom k 0 M M k + 1 M M k ! M k + 1 + 1 M M k + 1 !
131 130 a2d k 0 M M k + 1 M M k ! M M k + 1 + 1 M M k + 1 !
132 7 13 19 25 41 131 nn0ind N 0 M M N + 1 M M N !
133 132 impcom M N 0 M N + 1 M M N !
134 faccl N 0 N !
135 134 nnnn0d N 0 N ! 0
136 135 nn0ge0d N 0 0 N !
137 nn0p1nn N 0 N + 1
138 137 0expd N 0 0 N + 1 = 0
139 0exp0e1 0 0 = 1
140 139 oveq1i 0 0 N ! = 1 N !
141 134 nncnd N 0 N !
142 141 mulid2d N 0 1 N ! = N !
143 140 142 syl5eq N 0 0 0 N ! = N !
144 136 138 143 3brtr4d N 0 0 N + 1 0 0 N !
145 oveq1 M = 0 M N + 1 = 0 N + 1
146 oveq12 M = 0 M = 0 M M = 0 0
147 146 anidms M = 0 M M = 0 0
148 147 oveq1d M = 0 M M N ! = 0 0 N !
149 145 148 breq12d M = 0 M N + 1 M M N ! 0 N + 1 0 0 N !
150 144 149 syl5ibr M = 0 N 0 M N + 1 M M N !
151 150 imp M = 0 N 0 M N + 1 M M N !
152 133 151 jaoian M M = 0 N 0 M N + 1 M M N !
153 1 152 sylanb M 0 N 0 M N + 1 M M N !