| Step |
Hyp |
Ref |
Expression |
| 1 |
|
elnn0 |
|- ( M e. NN0 <-> ( M e. NN \/ M = 0 ) ) |
| 2 |
|
nnre |
|- ( M e. NN -> M e. RR ) |
| 3 |
2
|
adantr |
|- ( ( M e. NN /\ N e. NN0 ) -> M e. RR ) |
| 4 |
|
nnge1 |
|- ( M e. NN -> 1 <_ M ) |
| 5 |
4
|
adantr |
|- ( ( M e. NN /\ N e. NN0 ) -> 1 <_ M ) |
| 6 |
|
nn0z |
|- ( N e. NN0 -> N e. ZZ ) |
| 7 |
6
|
adantl |
|- ( ( M e. NN /\ N e. NN0 ) -> N e. ZZ ) |
| 8 |
|
uzid |
|- ( N e. ZZ -> N e. ( ZZ>= ` N ) ) |
| 9 |
|
peano2uz |
|- ( N e. ( ZZ>= ` N ) -> ( N + 1 ) e. ( ZZ>= ` N ) ) |
| 10 |
7 8 9
|
3syl |
|- ( ( M e. NN /\ N e. NN0 ) -> ( N + 1 ) e. ( ZZ>= ` N ) ) |
| 11 |
3 5 10
|
leexp2ad |
|- ( ( M e. NN /\ N e. NN0 ) -> ( M ^ N ) <_ ( M ^ ( N + 1 ) ) ) |
| 12 |
|
nnnn0 |
|- ( M e. NN -> M e. NN0 ) |
| 13 |
|
faclbnd |
|- ( ( M e. NN0 /\ N e. NN0 ) -> ( M ^ ( N + 1 ) ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) |
| 14 |
12 13
|
sylan |
|- ( ( M e. NN /\ N e. NN0 ) -> ( M ^ ( N + 1 ) ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) |
| 15 |
|
nn0re |
|- ( M e. NN0 -> M e. RR ) |
| 16 |
|
reexpcl |
|- ( ( M e. RR /\ N e. NN0 ) -> ( M ^ N ) e. RR ) |
| 17 |
15 16
|
sylan |
|- ( ( M e. NN0 /\ N e. NN0 ) -> ( M ^ N ) e. RR ) |
| 18 |
|
peano2nn0 |
|- ( N e. NN0 -> ( N + 1 ) e. NN0 ) |
| 19 |
|
reexpcl |
|- ( ( M e. RR /\ ( N + 1 ) e. NN0 ) -> ( M ^ ( N + 1 ) ) e. RR ) |
| 20 |
15 18 19
|
syl2an |
|- ( ( M e. NN0 /\ N e. NN0 ) -> ( M ^ ( N + 1 ) ) e. RR ) |
| 21 |
|
reexpcl |
|- ( ( M e. RR /\ M e. NN0 ) -> ( M ^ M ) e. RR ) |
| 22 |
15 21
|
mpancom |
|- ( M e. NN0 -> ( M ^ M ) e. RR ) |
| 23 |
|
faccl |
|- ( N e. NN0 -> ( ! ` N ) e. NN ) |
| 24 |
23
|
nnred |
|- ( N e. NN0 -> ( ! ` N ) e. RR ) |
| 25 |
|
remulcl |
|- ( ( ( M ^ M ) e. RR /\ ( ! ` N ) e. RR ) -> ( ( M ^ M ) x. ( ! ` N ) ) e. RR ) |
| 26 |
22 24 25
|
syl2an |
|- ( ( M e. NN0 /\ N e. NN0 ) -> ( ( M ^ M ) x. ( ! ` N ) ) e. RR ) |
| 27 |
|
letr |
|- ( ( ( M ^ N ) e. RR /\ ( M ^ ( N + 1 ) ) e. RR /\ ( ( M ^ M ) x. ( ! ` N ) ) e. RR ) -> ( ( ( M ^ N ) <_ ( M ^ ( N + 1 ) ) /\ ( M ^ ( N + 1 ) ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) ) |
| 28 |
17 20 26 27
|
syl3anc |
|- ( ( M e. NN0 /\ N e. NN0 ) -> ( ( ( M ^ N ) <_ ( M ^ ( N + 1 ) ) /\ ( M ^ ( N + 1 ) ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) ) |
| 29 |
12 28
|
sylan |
|- ( ( M e. NN /\ N e. NN0 ) -> ( ( ( M ^ N ) <_ ( M ^ ( N + 1 ) ) /\ ( M ^ ( N + 1 ) ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) ) |
| 30 |
11 14 29
|
mp2and |
|- ( ( M e. NN /\ N e. NN0 ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) |
| 31 |
|
elnn0 |
|- ( N e. NN0 <-> ( N e. NN \/ N = 0 ) ) |
| 32 |
|
0exp |
|- ( N e. NN -> ( 0 ^ N ) = 0 ) |
| 33 |
|
0le1 |
|- 0 <_ 1 |
| 34 |
32 33
|
eqbrtrdi |
|- ( N e. NN -> ( 0 ^ N ) <_ 1 ) |
| 35 |
|
oveq2 |
|- ( N = 0 -> ( 0 ^ N ) = ( 0 ^ 0 ) ) |
| 36 |
|
0exp0e1 |
|- ( 0 ^ 0 ) = 1 |
| 37 |
|
1le1 |
|- 1 <_ 1 |
| 38 |
36 37
|
eqbrtri |
|- ( 0 ^ 0 ) <_ 1 |
| 39 |
35 38
|
eqbrtrdi |
|- ( N = 0 -> ( 0 ^ N ) <_ 1 ) |
| 40 |
34 39
|
jaoi |
|- ( ( N e. NN \/ N = 0 ) -> ( 0 ^ N ) <_ 1 ) |
| 41 |
31 40
|
sylbi |
|- ( N e. NN0 -> ( 0 ^ N ) <_ 1 ) |
| 42 |
|
1nn |
|- 1 e. NN |
| 43 |
|
nnmulcl |
|- ( ( 1 e. NN /\ ( ! ` N ) e. NN ) -> ( 1 x. ( ! ` N ) ) e. NN ) |
| 44 |
42 23 43
|
sylancr |
|- ( N e. NN0 -> ( 1 x. ( ! ` N ) ) e. NN ) |
| 45 |
44
|
nnge1d |
|- ( N e. NN0 -> 1 <_ ( 1 x. ( ! ` N ) ) ) |
| 46 |
|
0re |
|- 0 e. RR |
| 47 |
|
reexpcl |
|- ( ( 0 e. RR /\ N e. NN0 ) -> ( 0 ^ N ) e. RR ) |
| 48 |
46 47
|
mpan |
|- ( N e. NN0 -> ( 0 ^ N ) e. RR ) |
| 49 |
|
1re |
|- 1 e. RR |
| 50 |
|
remulcl |
|- ( ( 1 e. RR /\ ( ! ` N ) e. RR ) -> ( 1 x. ( ! ` N ) ) e. RR ) |
| 51 |
49 24 50
|
sylancr |
|- ( N e. NN0 -> ( 1 x. ( ! ` N ) ) e. RR ) |
| 52 |
|
letr |
|- ( ( ( 0 ^ N ) e. RR /\ 1 e. RR /\ ( 1 x. ( ! ` N ) ) e. RR ) -> ( ( ( 0 ^ N ) <_ 1 /\ 1 <_ ( 1 x. ( ! ` N ) ) ) -> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) ) |
| 53 |
49 52
|
mp3an2 |
|- ( ( ( 0 ^ N ) e. RR /\ ( 1 x. ( ! ` N ) ) e. RR ) -> ( ( ( 0 ^ N ) <_ 1 /\ 1 <_ ( 1 x. ( ! ` N ) ) ) -> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) ) |
| 54 |
48 51 53
|
syl2anc |
|- ( N e. NN0 -> ( ( ( 0 ^ N ) <_ 1 /\ 1 <_ ( 1 x. ( ! ` N ) ) ) -> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) ) |
| 55 |
41 45 54
|
mp2and |
|- ( N e. NN0 -> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) |
| 56 |
55
|
adantl |
|- ( ( M = 0 /\ N e. NN0 ) -> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) |
| 57 |
|
oveq1 |
|- ( M = 0 -> ( M ^ N ) = ( 0 ^ N ) ) |
| 58 |
|
oveq12 |
|- ( ( M = 0 /\ M = 0 ) -> ( M ^ M ) = ( 0 ^ 0 ) ) |
| 59 |
58
|
anidms |
|- ( M = 0 -> ( M ^ M ) = ( 0 ^ 0 ) ) |
| 60 |
59 36
|
eqtrdi |
|- ( M = 0 -> ( M ^ M ) = 1 ) |
| 61 |
60
|
oveq1d |
|- ( M = 0 -> ( ( M ^ M ) x. ( ! ` N ) ) = ( 1 x. ( ! ` N ) ) ) |
| 62 |
57 61
|
breq12d |
|- ( M = 0 -> ( ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) <-> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) ) |
| 63 |
62
|
adantr |
|- ( ( M = 0 /\ N e. NN0 ) -> ( ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) <-> ( 0 ^ N ) <_ ( 1 x. ( ! ` N ) ) ) ) |
| 64 |
56 63
|
mpbird |
|- ( ( M = 0 /\ N e. NN0 ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) |
| 65 |
30 64
|
jaoian |
|- ( ( ( M e. NN \/ M = 0 ) /\ N e. NN0 ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) |
| 66 |
1 65
|
sylanb |
|- ( ( M e. NN0 /\ N e. NN0 ) -> ( M ^ N ) <_ ( ( M ^ M ) x. ( ! ` N ) ) ) |