| Step | Hyp | Ref | Expression | 
						
							| 1 |  | 2nn |  | 
						
							| 2 |  | fpprel |  | 
						
							| 3 | 1 2 | ax-mp |  | 
						
							| 4 |  | eluz4nn |  | 
						
							| 5 | 4 | adantr |  | 
						
							| 6 |  | eluzelz |  | 
						
							| 7 |  | zeo2ALTV |  | 
						
							| 8 | 6 7 | syl |  | 
						
							| 9 | 8 | adantr |  | 
						
							| 10 | 9 | biimprd |  | 
						
							| 11 |  | nnennexALTV |  | 
						
							| 12 | 5 10 11 | syl6an |  | 
						
							| 13 |  | oveq1 |  | 
						
							| 14 | 13 | oveq2d |  | 
						
							| 15 |  | id |  | 
						
							| 16 | 14 15 | oveq12d |  | 
						
							| 17 | 16 | eqeq1d |  | 
						
							| 18 | 17 | adantl |  | 
						
							| 19 |  | 2z |  | 
						
							| 20 | 1 | a1i |  | 
						
							| 21 |  | id |  | 
						
							| 22 | 20 21 | nnmulcld |  | 
						
							| 23 |  | nnm1nn0 |  | 
						
							| 24 | 22 23 | syl |  | 
						
							| 25 |  | zexpcl |  | 
						
							| 26 | 19 24 25 | sylancr |  | 
						
							| 27 | 22 | nnrpd |  | 
						
							| 28 |  | modmuladdim |  | 
						
							| 29 | 26 27 28 | syl2anc |  | 
						
							| 30 | 24 | adantr |  | 
						
							| 31 | 19 30 25 | sylancr |  | 
						
							| 32 | 31 | zcnd |  | 
						
							| 33 |  | zcn |  | 
						
							| 34 | 33 | adantl |  | 
						
							| 35 |  | 2cnd |  | 
						
							| 36 |  | nncn |  | 
						
							| 37 | 36 | adantr |  | 
						
							| 38 | 35 37 | mulcld |  | 
						
							| 39 | 34 38 | mulcld |  | 
						
							| 40 |  | 1cnd |  | 
						
							| 41 |  | subadd |  | 
						
							| 42 |  | eqcom |  | 
						
							| 43 | 41 42 | bitrdi |  | 
						
							| 44 | 32 39 40 43 | syl3anc |  | 
						
							| 45 |  | 2cnd |  | 
						
							| 46 | 45 36 | mulcld |  | 
						
							| 47 |  | 1cnd |  | 
						
							| 48 | 46 47 | subcld |  | 
						
							| 49 | 48 | adantr |  | 
						
							| 50 |  | npcan1 |  | 
						
							| 51 | 49 50 | syl |  | 
						
							| 52 | 51 | eqcomd |  | 
						
							| 53 | 52 | oveq2d |  | 
						
							| 54 |  | 2t1e2 |  | 
						
							| 55 | 54 | eqcomi |  | 
						
							| 56 | 55 | oveq2i |  | 
						
							| 57 |  | sub1m1 |  | 
						
							| 58 | 38 57 | syl |  | 
						
							| 59 | 35 37 40 | subdid |  | 
						
							| 60 | 56 58 59 | 3eqtr4a |  | 
						
							| 61 |  | 2nn0 |  | 
						
							| 62 | 61 | a1i |  | 
						
							| 63 |  | nnm1nn0 |  | 
						
							| 64 | 63 | adantr |  | 
						
							| 65 | 62 64 | nn0mulcld |  | 
						
							| 66 | 60 65 | eqeltrd |  | 
						
							| 67 | 35 66 | expp1d |  | 
						
							| 68 | 35 66 | expcld |  | 
						
							| 69 | 68 35 | mulcomd |  | 
						
							| 70 | 67 69 | eqtrd |  | 
						
							| 71 | 53 70 | eqtrd |  | 
						
							| 72 | 34 35 37 | mul12d |  | 
						
							| 73 | 71 72 | oveq12d |  | 
						
							| 74 | 34 37 | mulcld |  | 
						
							| 75 | 35 68 74 | subdid |  | 
						
							| 76 | 75 | eqcomd |  | 
						
							| 77 | 73 76 | eqtrd |  | 
						
							| 78 | 77 | eqeq1d |  | 
						
							| 79 |  | zexpcl |  | 
						
							| 80 | 19 66 79 | sylancr |  | 
						
							| 81 |  | simpr |  | 
						
							| 82 |  | nnz |  | 
						
							| 83 | 82 | adantr |  | 
						
							| 84 | 81 83 | zmulcld |  | 
						
							| 85 | 80 84 | zsubcld |  | 
						
							| 86 |  | m2even |  | 
						
							| 87 | 85 86 | syl |  | 
						
							| 88 |  | 1oddALTV |  | 
						
							| 89 |  | zneoALTV |  | 
						
							| 90 | 87 88 89 | sylancl |  | 
						
							| 91 |  | eqneqall |  | 
						
							| 92 | 90 91 | syl5com |  | 
						
							| 93 | 78 92 | sylbid |  | 
						
							| 94 | 44 93 | sylbird |  | 
						
							| 95 | 94 | rexlimdva |  | 
						
							| 96 | 29 95 | syld |  | 
						
							| 97 | 96 | adantl |  | 
						
							| 98 | 97 | adantr |  | 
						
							| 99 | 18 98 | sylbid |  | 
						
							| 100 | 99 | ex |  | 
						
							| 101 | 100 | rexlimdva |  | 
						
							| 102 | 101 | com23 |  | 
						
							| 103 | 102 | imp |  | 
						
							| 104 | 12 103 | syld |  | 
						
							| 105 | 104 | 3adant2 |  | 
						
							| 106 | 3 105 | sylbi |  | 
						
							| 107 | 106 | pm2.18d |  |