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