| Step | Hyp | Ref | Expression | 
						
							| 1 |  | selberglem1.t |  | 
						
							| 2 |  | fzfid |  | 
						
							| 3 |  | elfznn |  | 
						
							| 4 | 3 | adantl |  | 
						
							| 5 |  | mucl |  | 
						
							| 6 | 4 5 | syl |  | 
						
							| 7 | 6 | zred |  | 
						
							| 8 | 7 4 | nndivred |  | 
						
							| 9 | 8 | recnd |  | 
						
							| 10 | 3 | nnrpd |  | 
						
							| 11 |  | rpdivcl |  | 
						
							| 12 | 10 11 | sylan2 |  | 
						
							| 13 |  | relogcl |  | 
						
							| 14 | 12 13 | syl |  | 
						
							| 15 | 14 | recnd |  | 
						
							| 16 | 15 | sqcld |  | 
						
							| 17 | 9 16 | mulcld |  | 
						
							| 18 | 2 17 | fsumcl |  | 
						
							| 19 |  | 2cn |  | 
						
							| 20 | 19 | a1i |  | 
						
							| 21 | 20 15 | mulcld |  | 
						
							| 22 | 20 21 | subcld |  | 
						
							| 23 | 9 22 | mulcld |  | 
						
							| 24 | 2 23 | fsumcl |  | 
						
							| 25 |  | relogcl |  | 
						
							| 26 | 25 | recnd |  | 
						
							| 27 |  | mulcl |  | 
						
							| 28 | 19 26 27 | sylancr |  | 
						
							| 29 | 18 24 28 | addsubd |  | 
						
							| 30 | 1 | oveq2i |  | 
						
							| 31 | 6 | zcnd |  | 
						
							| 32 | 16 22 | addcld |  | 
						
							| 33 | 4 | nnrpd |  | 
						
							| 34 | 33 | rpcnne0d |  | 
						
							| 35 |  | divass |  | 
						
							| 36 |  | div23 |  | 
						
							| 37 | 35 36 | eqtr3d |  | 
						
							| 38 | 31 32 34 37 | syl3anc |  | 
						
							| 39 | 9 16 22 | adddid |  | 
						
							| 40 | 38 39 | eqtrd |  | 
						
							| 41 | 30 40 | eqtrid |  | 
						
							| 42 | 41 | sumeq2dv |  | 
						
							| 43 | 2 17 23 | fsumadd |  | 
						
							| 44 | 42 43 | eqtrd |  | 
						
							| 45 | 44 | oveq1d |  | 
						
							| 46 | 19 | a1i |  | 
						
							| 47 | 9 15 | mulcld |  | 
						
							| 48 | 9 47 | subcld |  | 
						
							| 49 | 2 46 48 | fsummulc2 |  | 
						
							| 50 | 2 9 47 | fsumsub |  | 
						
							| 51 | 50 | oveq2d |  | 
						
							| 52 | 20 9 | mulcomd |  | 
						
							| 53 | 20 9 15 | mul12d |  | 
						
							| 54 | 52 53 | oveq12d |  | 
						
							| 55 | 20 9 47 | subdid |  | 
						
							| 56 | 9 20 21 | subdid |  | 
						
							| 57 | 54 55 56 | 3eqtr4d |  | 
						
							| 58 | 57 | sumeq2dv |  | 
						
							| 59 | 49 51 58 | 3eqtr3d |  | 
						
							| 60 | 59 | oveq2d |  | 
						
							| 61 | 29 45 60 | 3eqtr4d |  | 
						
							| 62 | 61 | mpteq2ia |  | 
						
							| 63 |  | ovexd |  | 
						
							| 64 |  | ovexd |  | 
						
							| 65 |  | mulog2sum |  | 
						
							| 66 | 65 | a1i |  | 
						
							| 67 |  | 2ex |  | 
						
							| 68 | 67 | a1i |  | 
						
							| 69 |  | ovexd |  | 
						
							| 70 |  | rpssre |  | 
						
							| 71 |  | o1const |  | 
						
							| 72 | 70 19 71 | mp2an |  | 
						
							| 73 | 72 | a1i |  | 
						
							| 74 |  | reex |  | 
						
							| 75 | 74 70 | ssexi |  | 
						
							| 76 | 75 | a1i |  | 
						
							| 77 |  | sumex |  | 
						
							| 78 | 77 | a1i |  | 
						
							| 79 |  | sumex |  | 
						
							| 80 | 79 | a1i |  | 
						
							| 81 |  | eqidd |  | 
						
							| 82 |  | eqidd |  | 
						
							| 83 | 76 78 80 81 82 | offval2 |  | 
						
							| 84 |  | mudivsum |  | 
						
							| 85 |  | mulogsum |  | 
						
							| 86 |  | o1sub |  | 
						
							| 87 | 84 85 86 | mp2an |  | 
						
							| 88 | 83 87 | eqeltrrdi |  | 
						
							| 89 | 68 69 73 88 | o1mul2 |  | 
						
							| 90 | 63 64 66 89 | o1add2 |  | 
						
							| 91 | 90 | mptru |  | 
						
							| 92 | 62 91 | eqeltri |  |