Metamath Proof Explorer


Theorem faclbnd6

Description: Geometric lower bound for the factorial function, where N is usually held constant. (Contributed by Paul Chapman, 28-Dec-2007)

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

Proof

Step Hyp Ref Expression
1 oveq2 m = 0 N + 1 m = N + 1 0
2 1 oveq2d m = 0 N ! N + 1 m = N ! N + 1 0
3 oveq2 m = 0 N + m = N + 0
4 3 fveq2d m = 0 N + m ! = N + 0 !
5 2 4 breq12d m = 0 N ! N + 1 m N + m ! N ! N + 1 0 N + 0 !
6 oveq2 m = k N + 1 m = N + 1 k
7 6 oveq2d m = k N ! N + 1 m = N ! N + 1 k
8 oveq2 m = k N + m = N + k
9 8 fveq2d m = k N + m ! = N + k !
10 7 9 breq12d m = k N ! N + 1 m N + m ! N ! N + 1 k N + k !
11 oveq2 m = k + 1 N + 1 m = N + 1 k + 1
12 11 oveq2d m = k + 1 N ! N + 1 m = N ! N + 1 k + 1
13 oveq2 m = k + 1 N + m = N + k + 1
14 13 fveq2d m = k + 1 N + m ! = N + k + 1 !
15 12 14 breq12d m = k + 1 N ! N + 1 m N + m ! N ! N + 1 k + 1 N + k + 1 !
16 oveq2 m = M N + 1 m = N + 1 M
17 16 oveq2d m = M N ! N + 1 m = N ! N + 1 M
18 oveq2 m = M N + m = N + M
19 18 fveq2d m = M N + m ! = N + M !
20 17 19 breq12d m = M N ! N + 1 m N + m ! N ! N + 1 M N + M !
21 faccl N 0 N !
22 21 nnred N 0 N !
23 22 leidd N 0 N ! N !
24 nn0cn N 0 N
25 peano2cn N N + 1
26 24 25 syl N 0 N + 1
27 26 exp0d N 0 N + 1 0 = 1
28 27 oveq2d N 0 N ! N + 1 0 = N ! 1
29 21 nncnd N 0 N !
30 29 mulid1d N 0 N ! 1 = N !
31 28 30 eqtrd N 0 N ! N + 1 0 = N !
32 24 addid1d N 0 N + 0 = N
33 32 fveq2d N 0 N + 0 ! = N !
34 23 31 33 3brtr4d N 0 N ! N + 1 0 N + 0 !
35 22 adantr N 0 k 0 N !
36 peano2nn0 N 0 N + 1 0
37 36 nn0red N 0 N + 1
38 reexpcl N + 1 k 0 N + 1 k
39 37 38 sylan N 0 k 0 N + 1 k
40 35 39 remulcld N 0 k 0 N ! N + 1 k
41 nnnn0 N ! N ! 0
42 41 nn0ge0d N ! 0 N !
43 21 42 syl N 0 0 N !
44 43 adantr N 0 k 0 0 N !
45 37 adantr N 0 k 0 N + 1
46 simpr N 0 k 0 k 0
47 36 nn0ge0d N 0 0 N + 1
48 47 adantr N 0 k 0 0 N + 1
49 45 46 48 expge0d N 0 k 0 0 N + 1 k
50 35 39 44 49 mulge0d N 0 k 0 0 N ! N + 1 k
51 40 50 jca N 0 k 0 N ! N + 1 k 0 N ! N + 1 k
52 nn0addcl N 0 k 0 N + k 0
53 52 faccld N 0 k 0 N + k !
54 53 nnred N 0 k 0 N + k !
55 nn0re N 0 N
56 peano2nn0 k 0 k + 1 0
57 56 nn0red k 0 k + 1
58 readdcl N k + 1 N + k + 1
59 55 57 58 syl2an N 0 k 0 N + k + 1
60 45 48 59 jca31 N 0 k 0 N + 1 0 N + 1 N + k + 1
61 51 54 60 jca31 N 0 k 0 N ! N + 1 k 0 N ! N + 1 k N + k ! N + 1 0 N + 1 N + k + 1
62 61 adantr N 0 k 0 N ! N + 1 k N + k ! N ! N + 1 k 0 N ! N + 1 k N + k ! N + 1 0 N + 1 N + k + 1
63 32 adantr N 0 k 0 N + 0 = N
64 nn0ge0 k 0 0 k
65 64 adantl N 0 k 0 0 k
66 0re 0
67 nn0re k 0 k
68 67 adantl N 0 k 0 k
69 55 adantr N 0 k 0 N
70 leadd2 0 k N 0 k N + 0 N + k
71 66 68 69 70 mp3an2i N 0 k 0 0 k N + 0 N + k
72 65 71 mpbid N 0 k 0 N + 0 N + k
73 63 72 eqbrtrrd N 0 k 0 N N + k
74 52 nn0red N 0 k 0 N + k
75 1re 1
76 leadd1 N N + k 1 N N + k N + 1 N + k + 1
77 75 76 mp3an3 N N + k N N + k N + 1 N + k + 1
78 69 74 77 syl2anc N 0 k 0 N N + k N + 1 N + k + 1
79 73 78 mpbid N 0 k 0 N + 1 N + k + 1
80 nn0cn k 0 k
81 ax-1cn 1
82 addass N k 1 N + k + 1 = N + k + 1
83 81 82 mp3an3 N k N + k + 1 = N + k + 1
84 24 80 83 syl2an N 0 k 0 N + k + 1 = N + k + 1
85 79 84 breqtrd N 0 k 0 N + 1 N + k + 1
86 85 anim1ci N 0 k 0 N ! N + 1 k N + k ! N ! N + 1 k N + k ! N + 1 N + k + 1
87 lemul12a N ! N + 1 k 0 N ! N + 1 k N + k ! N + 1 0 N + 1 N + k + 1 N ! N + 1 k N + k ! N + 1 N + k + 1 N ! N + 1 k N + 1 N + k ! N + k + 1
88 62 86 87 sylc N 0 k 0 N ! N + 1 k N + k ! N ! N + 1 k N + 1 N + k ! N + k + 1
89 expp1 N + 1 k 0 N + 1 k + 1 = N + 1 k N + 1
90 26 89 sylan N 0 k 0 N + 1 k + 1 = N + 1 k N + 1
91 90 oveq2d N 0 k 0 N ! N + 1 k + 1 = N ! N + 1 k N + 1
92 29 adantr N 0 k 0 N !
93 expcl N + 1 k 0 N + 1 k
94 26 93 sylan N 0 k 0 N + 1 k
95 26 adantr N 0 k 0 N + 1
96 92 94 95 mulassd N 0 k 0 N ! N + 1 k N + 1 = N ! N + 1 k N + 1
97 91 96 eqtr4d N 0 k 0 N ! N + 1 k + 1 = N ! N + 1 k N + 1
98 97 adantr N 0 k 0 N ! N + 1 k N + k ! N ! N + 1 k + 1 = N ! N + 1 k N + 1
99 facp1 N + k 0 N + k + 1 ! = N + k ! N + k + 1
100 52 99 syl N 0 k 0 N + k + 1 ! = N + k ! N + k + 1
101 84 fveq2d N 0 k 0 N + k + 1 ! = N + k + 1 !
102 84 oveq2d N 0 k 0 N + k ! N + k + 1 = N + k ! N + k + 1
103 100 101 102 3eqtr3d N 0 k 0 N + k + 1 ! = N + k ! N + k + 1
104 103 adantr N 0 k 0 N ! N + 1 k N + k ! N + k + 1 ! = N + k ! N + k + 1
105 88 98 104 3brtr4d N 0 k 0 N ! N + 1 k N + k ! N ! N + 1 k + 1 N + k + 1 !
106 5 10 15 20 34 105 nn0indd N 0 M 0 N ! N + 1 M N + M !