| Step | Hyp | Ref | Expression | 
						
							| 1 |  | fourierswlem.t |  | 
						
							| 2 |  | fourierswlem.f |  | 
						
							| 3 |  | fourierswlem.x |  | 
						
							| 4 |  | fourierswlem.y |  | 
						
							| 5 |  | simpr |  | 
						
							| 6 |  | 2z |  | 
						
							| 7 | 6 | a1i |  | 
						
							| 8 |  | pirp |  | 
						
							| 9 |  | mod0 |  | 
						
							| 10 | 3 8 9 | mp2an |  | 
						
							| 11 | 10 | biimpi |  | 
						
							| 12 | 11 | adantr |  | 
						
							| 13 |  | divides |  | 
						
							| 14 | 7 12 13 | syl2anc |  | 
						
							| 15 | 5 14 | mpbid |  | 
						
							| 16 |  | 2cnd |  | 
						
							| 17 |  | picn |  | 
						
							| 18 | 17 | a1i |  | 
						
							| 19 |  | zcn |  | 
						
							| 20 | 16 18 19 | mulassd |  | 
						
							| 21 | 18 19 | mulcld |  | 
						
							| 22 | 16 21 | mulcomd |  | 
						
							| 23 | 20 22 | eqtrd |  | 
						
							| 24 | 23 | adantr |  | 
						
							| 25 | 18 19 16 | mulassd |  | 
						
							| 26 | 25 | adantr |  | 
						
							| 27 |  | id |  | 
						
							| 28 | 27 | eqcomd |  | 
						
							| 29 | 28 | adantl |  | 
						
							| 30 | 3 | recni |  | 
						
							| 31 | 30 | a1i |  | 
						
							| 32 | 17 | a1i |  | 
						
							| 33 | 19 | adantr |  | 
						
							| 34 |  | 2cnd |  | 
						
							| 35 | 33 34 | mulcld |  | 
						
							| 36 |  | pire |  | 
						
							| 37 |  | pipos |  | 
						
							| 38 | 36 37 | gt0ne0ii |  | 
						
							| 39 | 38 | a1i |  | 
						
							| 40 | 31 32 35 39 | divmuld |  | 
						
							| 41 | 29 40 | mpbid |  | 
						
							| 42 | 24 26 41 | 3eqtrrd |  | 
						
							| 43 | 1 | a1i |  | 
						
							| 44 | 42 43 | oveq12d |  | 
						
							| 45 | 16 18 | mulcld |  | 
						
							| 46 |  | 2ne0 |  | 
						
							| 47 | 46 | a1i |  | 
						
							| 48 | 38 | a1i |  | 
						
							| 49 | 16 18 47 48 | mulne0d |  | 
						
							| 50 | 19 45 49 | divcan3d |  | 
						
							| 51 | 50 | adantr |  | 
						
							| 52 | 44 51 | eqtrd |  | 
						
							| 53 |  | simpl |  | 
						
							| 54 | 52 53 | eqeltrd |  | 
						
							| 55 | 54 | ex |  | 
						
							| 56 | 55 | a1i |  | 
						
							| 57 | 56 | rexlimdv |  | 
						
							| 58 | 15 57 | mpd |  | 
						
							| 59 |  | 2re |  | 
						
							| 60 | 59 36 | remulcli |  | 
						
							| 61 | 1 60 | eqeltri |  | 
						
							| 62 |  | 2pos |  | 
						
							| 63 | 59 36 62 37 | mulgt0ii |  | 
						
							| 64 | 63 1 | breqtrri |  | 
						
							| 65 | 61 64 | elrpii |  | 
						
							| 66 |  | mod0 |  | 
						
							| 67 | 3 65 66 | mp2an |  | 
						
							| 68 | 58 67 | sylibr |  | 
						
							| 69 | 68 | orcd |  | 
						
							| 70 |  | odd2np1 |  | 
						
							| 71 | 10 70 | sylbi |  | 
						
							| 72 | 71 | biimpa |  | 
						
							| 73 | 16 19 | mulcld |  | 
						
							| 74 | 73 | adantr |  | 
						
							| 75 |  | 1cnd |  | 
						
							| 76 | 17 | a1i |  | 
						
							| 77 | 74 75 76 | adddird |  | 
						
							| 78 | 16 19 | mulcomd |  | 
						
							| 79 | 78 | oveq1d |  | 
						
							| 80 | 19 16 18 | mulassd |  | 
						
							| 81 | 1 | eqcomi |  | 
						
							| 82 | 81 | a1i |  | 
						
							| 83 | 82 | oveq2d |  | 
						
							| 84 | 79 80 83 | 3eqtrd |  | 
						
							| 85 | 17 | mullidi |  | 
						
							| 86 | 85 | a1i |  | 
						
							| 87 | 84 86 | oveq12d |  | 
						
							| 88 | 87 | adantr |  | 
						
							| 89 | 1 45 | eqeltrid |  | 
						
							| 90 | 19 89 | mulcld |  | 
						
							| 91 | 90 18 | addcomd |  | 
						
							| 92 | 91 | adantr |  | 
						
							| 93 | 77 88 92 | 3eqtrrd |  | 
						
							| 94 |  | peano2cn |  | 
						
							| 95 | 73 94 | syl |  | 
						
							| 96 | 95 18 | mulcomd |  | 
						
							| 97 | 96 | adantr |  | 
						
							| 98 |  | id |  | 
						
							| 99 | 98 | eqcomd |  | 
						
							| 100 | 99 | adantl |  | 
						
							| 101 | 30 | a1i |  | 
						
							| 102 | 95 | adantr |  | 
						
							| 103 | 38 | a1i |  | 
						
							| 104 | 101 76 102 103 | divmuld |  | 
						
							| 105 | 100 104 | mpbid |  | 
						
							| 106 | 93 97 105 | 3eqtrrd |  | 
						
							| 107 | 106 | oveq1d |  | 
						
							| 108 |  | modcyc |  | 
						
							| 109 | 36 65 108 | mp3an12 |  | 
						
							| 110 | 109 | adantr |  | 
						
							| 111 | 36 | a1i |  | 
						
							| 112 | 65 | a1i |  | 
						
							| 113 |  | 0re |  | 
						
							| 114 | 113 36 37 | ltleii |  | 
						
							| 115 | 114 | a1i |  | 
						
							| 116 |  | 2timesgt |  | 
						
							| 117 | 8 116 | ax-mp |  | 
						
							| 118 | 117 1 | breqtrri |  | 
						
							| 119 | 118 | a1i |  | 
						
							| 120 |  | modid |  | 
						
							| 121 | 111 112 115 119 120 | syl22anc |  | 
						
							| 122 | 107 110 121 | 3eqtrd |  | 
						
							| 123 | 122 | ex |  | 
						
							| 124 | 123 | a1i |  | 
						
							| 125 | 124 | rexlimdv |  | 
						
							| 126 | 72 125 | mpd |  | 
						
							| 127 | 126 | olcd |  | 
						
							| 128 | 69 127 | pm2.61dan |  | 
						
							| 129 |  | 0xr |  | 
						
							| 130 | 36 | rexri |  | 
						
							| 131 |  | iocgtlb |  | 
						
							| 132 | 129 130 131 | mp3an12 |  | 
						
							| 133 | 132 | gt0ne0d |  | 
						
							| 134 | 133 | neneqd |  | 
						
							| 135 |  | pm2.53 |  | 
						
							| 136 | 135 | imp |  | 
						
							| 137 | 128 134 136 | syl2anr |  | 
						
							| 138 | 129 | a1i |  | 
						
							| 139 | 130 | a1i |  | 
						
							| 140 |  | modcl |  | 
						
							| 141 | 3 65 140 | mp2an |  | 
						
							| 142 | 141 | rexri |  | 
						
							| 143 | 142 | a1i |  | 
						
							| 144 |  | id |  | 
						
							| 145 | 37 144 | breqtrrid |  | 
						
							| 146 | 36 | eqlei2 |  | 
						
							| 147 | 138 139 143 145 146 | eliocd |  | 
						
							| 148 | 147 | iftrued |  | 
						
							| 149 | 148 | adantl |  | 
						
							| 150 |  | oveq1 |  | 
						
							| 151 | 150 | breq1d |  | 
						
							| 152 | 151 | ifbid |  | 
						
							| 153 |  | 1ex |  | 
						
							| 154 |  | negex |  | 
						
							| 155 | 153 154 | ifex |  | 
						
							| 156 | 152 2 155 | fvmpt |  | 
						
							| 157 | 3 156 | ax-mp |  | 
						
							| 158 | 141 | a1i |  | 
						
							| 159 |  | id |  | 
						
							| 160 | 158 159 | ltned |  | 
						
							| 161 | 160 | necon2bi |  | 
						
							| 162 | 161 | iffalsed |  | 
						
							| 163 | 157 162 | eqtrid |  | 
						
							| 164 | 163 | adantl |  | 
						
							| 165 | 149 164 | oveq12d |  | 
						
							| 166 |  | 1pneg1e0 |  | 
						
							| 167 | 165 166 | eqtrdi |  | 
						
							| 168 | 167 | oveq1d |  | 
						
							| 169 | 168 | adantll |  | 
						
							| 170 |  | 2cn |  | 
						
							| 171 | 170 46 | div0i |  | 
						
							| 172 | 171 | a1i |  | 
						
							| 173 |  | iftrue |  | 
						
							| 174 | 4 173 | eqtr2id |  | 
						
							| 175 | 174 | ad2antlr |  | 
						
							| 176 | 169 172 175 | 3eqtrrd |  | 
						
							| 177 | 137 176 | mpdan |  | 
						
							| 178 |  | iftrue |  | 
						
							| 179 | 178 | adantr |  | 
						
							| 180 | 141 | a1i |  | 
						
							| 181 | 36 | a1i |  | 
						
							| 182 |  | iocleub |  | 
						
							| 183 | 129 130 182 | mp3an12 |  | 
						
							| 184 | 183 | adantr |  | 
						
							| 185 |  | ax-1cn |  | 
						
							| 186 | 185 17 | mulcomi |  | 
						
							| 187 | 85 186 | eqtr3i |  | 
						
							| 188 | 187 | oveq1i |  | 
						
							| 189 | 170 17 | mulcomi |  | 
						
							| 190 | 1 189 | eqtri |  | 
						
							| 191 | 190 | oveq1i |  | 
						
							| 192 | 113 64 | gtneii |  | 
						
							| 193 | 3 61 192 | redivcli |  | 
						
							| 194 |  | flcl |  | 
						
							| 195 | 193 194 | ax-mp |  | 
						
							| 196 |  | zcn |  | 
						
							| 197 | 195 196 | ax-mp |  | 
						
							| 198 | 17 170 197 | mulassi |  | 
						
							| 199 | 191 198 | eqtri |  | 
						
							| 200 | 199 | oveq2i |  | 
						
							| 201 | 170 197 | mulcli |  | 
						
							| 202 | 17 185 201 | adddii |  | 
						
							| 203 | 188 200 202 | 3eqtr4ri |  | 
						
							| 204 | 203 | a1i |  | 
						
							| 205 |  | id |  | 
						
							| 206 |  | modval |  | 
						
							| 207 | 3 65 206 | mp2an |  | 
						
							| 208 | 205 207 | eqtrdi |  | 
						
							| 209 | 208 | oveq1d |  | 
						
							| 210 | 30 | a1i |  | 
						
							| 211 | 61 | recni |  | 
						
							| 212 | 211 197 | mulcli |  | 
						
							| 213 | 212 | a1i |  | 
						
							| 214 | 210 213 | npcand |  | 
						
							| 215 | 204 209 214 | 3eqtrrd |  | 
						
							| 216 | 215 | oveq1d |  | 
						
							| 217 | 185 201 | addcli |  | 
						
							| 218 | 217 17 38 | divcan3i |  | 
						
							| 219 | 216 218 | eqtrdi |  | 
						
							| 220 |  | 1z |  | 
						
							| 221 |  | zmulcl |  | 
						
							| 222 | 6 195 221 | mp2an |  | 
						
							| 223 |  | zaddcl |  | 
						
							| 224 | 220 222 223 | mp2an |  | 
						
							| 225 | 224 | a1i |  | 
						
							| 226 | 219 225 | eqeltrd |  | 
						
							| 227 | 226 10 | sylibr |  | 
						
							| 228 | 227 | necon3bi |  | 
						
							| 229 | 228 | adantl |  | 
						
							| 230 | 180 181 184 229 | leneltd |  | 
						
							| 231 |  | iftrue |  | 
						
							| 232 | 157 231 | eqtrid |  | 
						
							| 233 | 230 232 | syl |  | 
						
							| 234 | 179 233 | oveq12d |  | 
						
							| 235 | 234 | oveq1d |  | 
						
							| 236 |  | 1p1e2 |  | 
						
							| 237 | 236 | oveq1i |  | 
						
							| 238 |  | 2div2e1 |  | 
						
							| 239 | 237 238 | eqtr2i |  | 
						
							| 240 | 233 239 | eqtr2di |  | 
						
							| 241 |  | iffalse |  | 
						
							| 242 | 4 241 | eqtr2id |  | 
						
							| 243 | 242 | adantl |  | 
						
							| 244 | 235 240 243 | 3eqtrrd |  | 
						
							| 245 | 177 244 | pm2.61dan |  | 
						
							| 246 | 133 | necon2bi |  | 
						
							| 247 | 246 | iffalsed |  | 
						
							| 248 |  | id |  | 
						
							| 249 | 248 37 | eqbrtrdi |  | 
						
							| 250 | 249 | iftrued |  | 
						
							| 251 | 157 250 | eqtrid |  | 
						
							| 252 | 247 251 | oveq12d |  | 
						
							| 253 | 252 | oveq1d |  | 
						
							| 254 |  | neg1cn |  | 
						
							| 255 | 185 254 166 | addcomli |  | 
						
							| 256 | 255 | oveq1i |  | 
						
							| 257 | 256 171 | eqtri |  | 
						
							| 258 | 257 | a1i |  | 
						
							| 259 | 1 | oveq2i |  | 
						
							| 260 |  | 2cnne0 |  | 
						
							| 261 | 17 38 | pm3.2i |  | 
						
							| 262 |  | divdiv1 |  | 
						
							| 263 | 30 260 261 262 | mp3an |  | 
						
							| 264 | 30 170 17 46 38 | divdiv32i |  | 
						
							| 265 | 259 263 264 | 3eqtr2i |  | 
						
							| 266 | 265 | oveq2i |  | 
						
							| 267 | 30 17 38 | divcli |  | 
						
							| 268 | 267 170 46 | divcan2i |  | 
						
							| 269 | 266 268 | eqtr2i |  | 
						
							| 270 | 6 | a1i |  | 
						
							| 271 |  | id |  | 
						
							| 272 | 270 271 | zmulcld |  | 
						
							| 273 | 269 272 | eqeltrid |  | 
						
							| 274 | 67 273 | sylbi |  | 
						
							| 275 | 274 10 | sylibr |  | 
						
							| 276 | 275 | iftrued |  | 
						
							| 277 | 4 276 | eqtr2id |  | 
						
							| 278 | 253 258 277 | 3eqtrrd |  | 
						
							| 279 | 278 | adantl |  | 
						
							| 280 | 130 | a1i |  | 
						
							| 281 | 61 | rexri |  | 
						
							| 282 | 281 | a1i |  | 
						
							| 283 | 141 | a1i |  | 
						
							| 284 |  | pm4.56 |  | 
						
							| 285 | 284 | biimpi |  | 
						
							| 286 |  | olc |  | 
						
							| 287 | 286 | adantl |  | 
						
							| 288 | 129 | a1i |  | 
						
							| 289 | 130 | a1i |  | 
						
							| 290 | 142 | a1i |  | 
						
							| 291 |  | 0red |  | 
						
							| 292 | 141 | a1i |  | 
						
							| 293 |  | modge0 |  | 
						
							| 294 | 3 65 293 | mp2an |  | 
						
							| 295 | 294 | a1i |  | 
						
							| 296 |  | neqne |  | 
						
							| 297 | 291 292 295 296 | leneltd |  | 
						
							| 298 | 297 | adantl |  | 
						
							| 299 |  | simpl |  | 
						
							| 300 | 288 289 290 298 299 | eliocd |  | 
						
							| 301 | 300 | orcd |  | 
						
							| 302 | 287 301 | pm2.61dan |  | 
						
							| 303 | 285 302 | nsyl |  | 
						
							| 304 | 36 | a1i |  | 
						
							| 305 | 304 283 | ltnled |  | 
						
							| 306 | 303 305 | mpbird |  | 
						
							| 307 |  | modlt |  | 
						
							| 308 | 3 65 307 | mp2an |  | 
						
							| 309 | 308 | a1i |  | 
						
							| 310 | 280 282 283 306 309 | eliood |  | 
						
							| 311 | 129 | a1i |  | 
						
							| 312 | 36 | a1i |  | 
						
							| 313 | 142 | a1i |  | 
						
							| 314 |  | ioogtlb |  | 
						
							| 315 | 130 281 314 | mp3an12 |  | 
						
							| 316 | 311 312 313 315 | gtnelioc |  | 
						
							| 317 | 316 | iffalsed |  | 
						
							| 318 | 141 | a1i |  | 
						
							| 319 | 312 318 315 | ltnsymd |  | 
						
							| 320 | 319 | iffalsed |  | 
						
							| 321 | 157 320 | eqtrid |  | 
						
							| 322 | 317 321 | oveq12d |  | 
						
							| 323 | 322 | oveq1d |  | 
						
							| 324 |  | df-2 |  | 
						
							| 325 | 324 | negeqi |  | 
						
							| 326 | 185 185 | negdii |  | 
						
							| 327 | 325 326 | eqtr2i |  | 
						
							| 328 | 327 | oveq1i |  | 
						
							| 329 |  | divneg |  | 
						
							| 330 | 170 170 46 329 | mp3an |  | 
						
							| 331 | 238 | negeqi |  | 
						
							| 332 | 328 330 331 | 3eqtr2i |  | 
						
							| 333 | 332 | a1i |  | 
						
							| 334 | 4 | a1i |  | 
						
							| 335 | 312 318 | ltnled |  | 
						
							| 336 | 315 335 | mpbid |  | 
						
							| 337 | 248 114 | eqbrtrdi |  | 
						
							| 338 | 337 | adantl |  | 
						
							| 339 | 128 | orcanai |  | 
						
							| 340 | 339 146 | syl |  | 
						
							| 341 | 338 340 | pm2.61dan |  | 
						
							| 342 | 336 341 | nsyl |  | 
						
							| 343 | 342 | iffalsed |  | 
						
							| 344 | 334 343 321 | 3eqtrrd |  | 
						
							| 345 | 323 333 344 | 3eqtrrd |  | 
						
							| 346 | 310 345 | syl |  | 
						
							| 347 | 279 346 | pm2.61dan |  | 
						
							| 348 | 245 347 | pm2.61i |  |