Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  smumul Structured version   Visualization version   Unicode version

Theorem smumul 14546
 Description: For sequences that correspond to valid integers, the sequence multiplication function produces the sequence for the product. This is effectively a proof of the correctness of the multiplication process, implemented in terms of logic gates for df-sad 14504, whose correctness is verified in sadadd 14520. Outside this range, the sequences cannot be representing integers, but the smul function still "works". This extended function is best interpreted in terms of the ring structure of the 2-adic integers. (Contributed by Mario Carneiro, 22-Sep-2016.)
Assertion
Ref Expression
smumul bits smul bits bits

Proof of Theorem smumul
Dummy variable is distinct from all other variables.
StepHypRef Expression
1 bitsss 14478 . . . . . 6 bits
2 bitsss 14478 . . . . . 6 bits
3 smucl 14537 . . . . . 6 bits bits bits smul bits
41, 2, 3mp2an 686 . . . . 5 bits smul bits
54sseli 3414 . . . 4 bits smul bits
65a1i 11 . . 3 bits smul bits
7 bitsss 14478 . . . . 5 bits
87sseli 3414 . . . 4 bits
98a1i 11 . . 3 bits
10 simpll 768 . . . . . . . . . . . 12
11 simplr 770 . . . . . . . . . . . 12
12 simpr 468 . . . . . . . . . . . . 13
13 1nn0 10909 . . . . . . . . . . . . . 14
1413a1i 11 . . . . . . . . . . . . 13
1512, 14nn0addcld 10953 . . . . . . . . . . . 12
1610, 11, 15smumullem 14545 . . . . . . . . . . 11 bits ..^ smul bits bits
1716ineq1d 3624 . . . . . . . . . 10 bits ..^ smul bits ..^ bits ..^
18 2nn 10790 . . . . . . . . . . . . . . . 16
1918a1i 11 . . . . . . . . . . . . . . 15
2019, 15nnexpcld 12475 . . . . . . . . . . . . . 14
2110, 20zmodcld 12150 . . . . . . . . . . . . 13
2221nn0zd 11061 . . . . . . . . . . . 12
2322, 11zmulcld 11069 . . . . . . . . . . 11
24 bitsmod 14489 . . . . . . . . . . 11 bits bits ..^
2523, 15, 24syl2anc 673 . . . . . . . . . 10 bits bits ..^
2617, 25eqtr4d 2508 . . . . . . . . 9 bits ..^ smul bits ..^ bits
27 inass 3633 . . . . . . . . . . . . 13 bits ..^ ..^ bits ..^ ..^
28 inidm 3632 . . . . . . . . . . . . . 14 ..^ ..^ ..^
2928ineq2i 3622 . . . . . . . . . . . . 13 bits ..^ ..^ bits ..^
3027, 29eqtri 2493 . . . . . . . . . . . 12 bits ..^ ..^ bits ..^
3130oveq1i 6318 . . . . . . . . . . 11 bits ..^ ..^ smul bits ..^ bits ..^ smul bits ..^
3231ineq1i 3621 . . . . . . . . . 10 bits ..^ ..^ smul bits ..^ ..^ bits ..^ smul bits ..^ ..^
33 inss1 3643 . . . . . . . . . . . 12 bits ..^ bits
341a1i 11 . . . . . . . . . . . 12 bits
3533, 34syl5ss 3429 . . . . . . . . . . 11 bits ..^
362a1i 11 . . . . . . . . . . 11 bits
3735, 36, 15smueq 14544 . . . . . . . . . 10 bits ..^ smul bits ..^ bits ..^ ..^ smul bits ..^ ..^
3834, 36, 15smueq 14544 . . . . . . . . . 10 bits smul bits ..^ bits ..^ smul bits ..^ ..^
3932, 37, 383eqtr4a 2531 . . . . . . . . 9 bits ..^ smul bits ..^ bits smul bits ..^
4020nnrpd 11362 . . . . . . . . . . 11
4110zred 11063 . . . . . . . . . . . 12
42 modabs2 12164 . . . . . . . . . . . 12
4341, 40, 42syl2anc 673 . . . . . . . . . . 11
44 eqidd 2472 . . . . . . . . . . 11
4522, 10, 11, 11, 40, 43, 44modmul12d 12178 . . . . . . . . . 10
4645fveq2d 5883 . . . . . . . . 9 bits bits
4726, 39, 463eqtr3d 2513 . . . . . . . 8 bits smul bits ..^ bits
4810, 11zmulcld 11069 . . . . . . . . 9
49 bitsmod 14489 . . . . . . . . 9 bits bits ..^
5048, 15, 49syl2anc 673 . . . . . . . 8 bits bits ..^
5147, 50eqtrd 2505 . . . . . . 7 bits smul bits ..^ bits ..^
5251eleq2d 2534 . . . . . 6 bits smul bits ..^ bits ..^
53 elin 3608 . . . . . 6 bits smul bits ..^ bits smul bits ..^
54 elin 3608 . . . . . 6 bits ..^ bits ..^
5552, 53, 543bitr3g 295 . . . . 5 bits smul bits ..^ bits ..^
56 nn0uz 11217 . . . . . . . . 9
5712, 56syl6eleq 2559 . . . . . . . 8
58 eluzfz2b 11834 . . . . . . . 8
5957, 58sylib 201 . . . . . . 7
6012nn0zd 11061 . . . . . . . 8
61 fzval3 12012 . . . . . . . 8 ..^
6260, 61syl 17 . . . . . . 7 ..^
6359, 62eleqtrd 2551 . . . . . 6 ..^
6463biantrud 515 . . . . 5 bits smul bits bits smul bits ..^
6563biantrud 515 . . . . 5 bits bits ..^
6655, 64, 653bitr4d 293 . . . 4 bits smul bits bits
6766ex 441 . . 3 bits smul bits bits
686, 9, 67pm5.21ndd 361 . 2 bits smul bits bits
6968eqrdv 2469 1 bits smul bits bits
 Colors of variables: wff setvar class Syntax hints:   wi 4   wb 189   wa 376   wceq 1452   wcel 1904   cin 3389   wss 3390  cfv 5589  (class class class)co 6308  cr 9556  cc0 9557  c1 9558   caddc 9560   cmul 9562  cn 10631  c2 10681  cn0 10893  cz 10961  cuz 11182  crp 11325  cfz 11810  ..^cfzo 11942   cmo 12129  cexp 12310  bitscbits 14471   smul csmu 14473 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1677  ax-4 1690  ax-5 1766  ax-6 1813  ax-7 1859  ax-8 1906  ax-9 1913  ax-10 1932  ax-11 1937  ax-12 1950  ax-13 2104  ax-ext 2451  ax-rep 4508  ax-sep 4518  ax-nul 4527  ax-pow 4579  ax-pr 4639  ax-un 6602  ax-inf2 8164  ax-cnex 9613  ax-resscn 9614  ax-1cn 9615  ax-icn 9616  ax-addcl 9617  ax-addrcl 9618  ax-mulcl 9619  ax-mulrcl 9620  ax-mulcom 9621  ax-addass 9622  ax-mulass 9623  ax-distr 9624  ax-i2m1 9625  ax-1ne0 9626  ax-1rid 9627  ax-rnegex 9628  ax-rrecex 9629  ax-cnre 9630  ax-pre-lttri 9631  ax-pre-lttrn 9632  ax-pre-ltadd 9633  ax-pre-mulgt0 9634  ax-pre-sup 9635 This theorem depends on definitions:  df-bi 190  df-or 377  df-an 378  df-3or 1008  df-3an 1009  df-xor 1431  df-tru 1455  df-fal 1458  df-had 1505  df-cad 1518  df-ex 1672  df-nf 1676  df-sb 1806  df-eu 2323  df-mo 2324  df-clab 2458  df-cleq 2464  df-clel 2467  df-nfc 2601  df-ne 2643  df-nel 2644  df-ral 2761  df-rex 2762  df-reu 2763  df-rmo 2764  df-rab 2765  df-v 3033  df-sbc 3256  df-csb 3350  df-dif 3393  df-un 3395  df-in 3397  df-ss 3404  df-pss 3406  df-nul 3723  df-if 3873  df-pw 3944  df-sn 3960  df-pr 3962  df-tp 3964  df-op 3966  df-uni 4191  df-int 4227  df-iun 4271  df-disj 4367  df-br 4396  df-opab 4455  df-mpt 4456  df-tr 4491  df-eprel 4750  df-id 4754  df-po 4760  df-so 4761  df-fr 4798  df-se 4799  df-we 4800  df-xp 4845  df-rel 4846  df-cnv 4847  df-co 4848  df-dm 4849  df-rn 4850  df-res 4851  df-ima 4852  df-pred 5387  df-ord 5433  df-on 5434  df-lim 5435  df-suc 5436  df-iota 5553  df-fun 5591  df-fn 5592  df-f 5593  df-f1 5594  df-fo 5595  df-f1o 5596  df-fv 5597  df-isom 5598  df-riota 6270  df-ov 6311  df-oprab 6312  df-mpt2 6313  df-om 6712  df-1st 6812  df-2nd 6813  df-wrecs 7046  df-recs 7108  df-rdg 7146  df-1o 7200  df-2o 7201  df-oadd 7204  df-er 7381  df-map 7492  df-pm 7493  df-en 7588  df-dom 7589  df-sdom 7590  df-fin 7591  df-sup 7974  df-inf 7975  df-oi 8043  df-card 8391  df-cda 8616  df-pnf 9695  df-mnf 9696  df-xr 9697  df-ltxr 9698  df-le 9699  df-sub 9882  df-neg 9883  df-div 10292  df-nn 10632  df-2 10690  df-3 10691  df-n0 10894  df-z 10962  df-uz 11183  df-rp 11326  df-fz 11811  df-fzo 11943  df-fl 12061  df-mod 12130  df-seq 12252  df-exp 12311  df-hash 12554  df-cj 13239  df-re 13240  df-im 13241  df-sqrt 13375  df-abs 13376  df-clim 13629  df-sum 13830  df-dvds 14383  df-bits 14474  df-sad 14504  df-smu 14529 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator