Metamath Proof Explorer


Theorem faclbnd

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

Ref Expression
Assertion faclbnd M0N0MN+1MMN!

Proof

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