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

Theorem smumul 14143
 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 14101, whose correctness is verified in sadadd 14117. Outside this range, the sequences cannot be representing integers, but the 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

Proof of Theorem smumul
Dummy variable is distinct from all other variables.
StepHypRef Expression
1 bitsss 14076 . . . . . 6
2 bitsss 14076 . . . . . 6
3 smucl 14134 . . . . . 6
41, 2, 3mp2an 672 . . . . 5
54sseli 3499 . . . 4
65a1i 11 . . 3
7 bitsss 14076 . . . . 5
87sseli 3499 . . . 4
98a1i 11 . . 3
10 simpll 753 . . . . . . . . . . . 12
11 simplr 755 . . . . . . . . . . . 12
12 simpr 461 . . . . . . . . . . . . 13
13 1nn0 10836 . . . . . . . . . . . . . 14
1413a1i 11 . . . . . . . . . . . . 13
1512, 14nn0addcld 10881 . . . . . . . . . . . 12
1610, 11, 15smumullem 14142 . . . . . . . . . . 11
1716ineq1d 3698 . . . . . . . . . 10
18 2nn 10718 . . . . . . . . . . . . . . . 16
1918a1i 11 . . . . . . . . . . . . . . 15
2019, 15nnexpcld 12331 . . . . . . . . . . . . . 14
2110, 20zmodcld 12016 . . . . . . . . . . . . 13
2221nn0zd 10992 . . . . . . . . . . . 12
2322, 11zmulcld 11000 . . . . . . . . . . 11
24 bitsmod 14086 . . . . . . . . . . 11
2523, 15, 24syl2anc 661 . . . . . . . . . 10
2617, 25eqtr4d 2501 . . . . . . . . 9
27 inass 3707 . . . . . . . . . . . . 13
28 inidm 3706 . . . . . . . . . . . . . 14
2928ineq2i 3696 . . . . . . . . . . . . 13
3027, 29eqtri 2486 . . . . . . . . . . . 12
3130oveq1i 6306 . . . . . . . . . . 11
3231ineq1i 3695 . . . . . . . . . 10
33 inss1 3717 . . . . . . . . . . . 12
341a1i 11 . . . . . . . . . . . 12
3533, 34syl5ss 3514 . . . . . . . . . . 11
362a1i 11 . . . . . . . . . . 11
3735, 36, 15smueq 14141 . . . . . . . . . 10
3834, 36, 15smueq 14141 . . . . . . . . . 10
3932, 37, 383eqtr4a 2524 . . . . . . . . 9
4020nnrpd 11284 . . . . . . . . . . 11
4110zred 10994 . . . . . . . . . . . 12
42 modabs2 12030 . . . . . . . . . . . 12
4341, 40, 42syl2anc 661 . . . . . . . . . . 11
44 eqidd 2458 . . . . . . . . . . 11
4522, 10, 11, 11, 40, 43, 44modmul12d 12041 . . . . . . . . . 10
4645fveq2d 5875 . . . . . . . . 9
4726, 39, 463eqtr3d 2506 . . . . . . . 8
4810, 11zmulcld 11000 . . . . . . . . 9
49 bitsmod 14086 . . . . . . . . 9
5048, 15, 49syl2anc 661 . . . . . . . 8
5147, 50eqtrd 2498 . . . . . . 7
5251eleq2d 2527 . . . . . 6
53 elin 3686 . . . . . 6
54 elin 3686 . . . . . 6
5552, 53, 543bitr3g 287 . . . . 5
56 nn0uz 11144 . . . . . . . . 9
5712, 56syl6eleq 2555 . . . . . . . 8
58 eluzfz2b 11724 . . . . . . . 8
5957, 58sylib 196 . . . . . . 7
6012nn0zd 10992 . . . . . . . 8
61 fzval3 11885 . . . . . . . 8
6260, 61syl 16 . . . . . . 7
6359, 62eleqtrd 2547 . . . . . 6
6463biantrud 507 . . . . 5
6563biantrud 507 . . . . 5
6655, 64, 653bitr4d 285 . . . 4
6766ex 434 . . 3
686, 9, 67pm5.21ndd 354 . 2
6968eqrdv 2454 1
 Colors of variables: wff setvar class Syntax hints:  ->wi 4  <->wb 184  /\wa 369  =wceq 1395  e.wcel 1818  i^icin 3474  C_wss 3475  cfv 5593  (class class class)co 6296   cr 9512  0cc0 9513  1c1 9514   caddc 9516   cmul 9518   cn 10561  2`c2 10610   cn0 10820   cz 10889   cuz 11110   crp 11249   cfz 11701   cfzo 11824   cmo 11996   cexp 12166   cbits 14069   csmu 14071 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1618  ax-4 1631  ax-5 1704  ax-6 1747  ax-7 1790  ax-8 1820  ax-9 1822  ax-10 1837  ax-11 1842  ax-12 1854  ax-13 1999  ax-ext 2435  ax-rep 4563  ax-sep 4573  ax-nul 4581  ax-pow 4630  ax-pr 4691  ax-un 6592  ax-inf2 8079  ax-cnex 9569  ax-resscn 9570  ax-1cn 9571  ax-icn 9572  ax-addcl 9573  ax-addrcl 9574  ax-mulcl 9575  ax-mulrcl 9576  ax-mulcom 9577  ax-addass 9578  ax-mulass 9579  ax-distr 9580  ax-i2m1 9581  ax-1ne0 9582  ax-1rid 9583  ax-rnegex 9584  ax-rrecex 9585  ax-cnre 9586  ax-pre-lttri 9587  ax-pre-lttrn 9588  ax-pre-ltadd 9589  ax-pre-mulgt0 9590  ax-pre-sup 9591 This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 974  df-3an 975  df-xor 1364  df-tru 1398  df-fal 1401  df-had 1447  df-cad 1448  df-ex 1613  df-nf 1617  df-sb 1740  df-eu 2286  df-mo 2287  df-clab 2443  df-cleq 2449  df-clel 2452  df-nfc 2607  df-ne 2654  df-nel 2655  df-ral 2812  df-rex 2813  df-reu 2814  df-rmo 2815  df-rab 2816  df-v 3111  df-sbc 3328  df-csb 3435  df-dif 3478  df-un 3480  df-in 3482  df-ss 3489  df-pss 3491  df-nul 3785  df-if 3942  df-pw 4014  df-sn 4030  df-pr 4032  df-tp 4034  df-op 4036  df-uni 4250  df-int 4287  df-iun 4332  df-disj 4423  df-br 4453  df-opab 4511  df-mpt 4512  df-tr 4546  df-eprel 4796  df-id 4800  df-po 4805  df-so 4806  df-fr 4843  df-se 4844  df-we 4845  df-ord 4886  df-on 4887  df-lim 4888  df-suc 4889  df-xp 5010  df-rel 5011  df-cnv 5012  df-co 5013  df-dm 5014  df-rn 5015  df-res 5016  df-ima 5017  df-iota 5556  df-fun 5595  df-fn 5596  df-f 5597  df-f1 5598  df-fo 5599  df-f1o 5600  df-fv 5601  df-isom 5602  df-riota 6257  df-ov 6299  df-oprab 6300  df-mpt2 6301  df-om 6701  df-1st 6800  df-2nd 6801  df-recs 7061  df-rdg 7095  df-1o 7149  df-2o 7150  df-oadd 7153  df-er 7330  df-map 7441  df-pm 7442  df-en 7537  df-dom 7538  df-sdom 7539  df-fin 7540  df-sup 7921  df-oi 7956  df-card 8341  df-cda 8569  df-pnf 9651  df-mnf 9652  df-xr 9653  df-ltxr 9654  df-le 9655  df-sub 9830  df-neg 9831  df-div 10232  df-nn 10562  df-2 10619  df-3 10620  df-n0 10821  df-z 10890  df-uz 11111  df-rp 11250  df-fz 11702  df-fzo 11825  df-fl 11929  df-mod 11997  df-seq 12108  df-exp 12167  df-hash 12406  df-cj 12932  df-re 12933  df-im 12934  df-sqrt 13068  df-abs 13069  df-clim 13311  df-sum 13509  df-dvds 13987  df-bits 14072  df-sad 14101  df-smu 14126
 Copyright terms: Public domain W3C validator