ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  moddvds Unicode version

Theorem moddvds 12582
Description: Two ways to say  A  ==  B (mod  N), see also definition in [ApostolNT] p. 106. (Contributed by Mario Carneiro, 18-Feb-2014.)
Assertion
Ref Expression
moddvds  |-  ( ( N  e.  NN  /\  A  e.  ZZ  /\  B  e.  ZZ )  ->  (
( A  mod  N
)  =  ( B  mod  N )  <->  N  ||  ( A  -  B )
) )

Proof of Theorem moddvds
StepHypRef Expression
1 nnq 10042 . . . . . 6  |-  ( N  e.  NN  ->  N  e.  QQ )
21adantr 276 . . . . 5  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  N  e.  QQ )
3 nngt0 9331 . . . . . 6  |-  ( N  e.  NN  ->  0  <  N )
43adantr 276 . . . . 5  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  0  <  N )
5 q0mod 10805 . . . . 5  |-  ( ( N  e.  QQ  /\  0  <  N )  -> 
( 0  mod  N
)  =  0 )
62, 4, 5syl2anc 415 . . . 4  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( 0  mod  N )  =  0 )
76eqeq2d 2250 . . 3  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
( A  -  B
)  mod  N )  =  ( 0  mod 
N )  <->  ( ( A  -  B )  mod  N )  =  0 ) )
8 zq 10035 . . . . . . . . 9  |-  ( A  e.  ZZ  ->  A  e.  QQ )
98ad2antrl 494 . . . . . . . 8  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  A  e.  QQ )
109adantr 276 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  A  e.  QQ )
11 zq 10035 . . . . . . . . 9  |-  ( B  e.  ZZ  ->  B  e.  QQ )
1211ad2antll 495 . . . . . . . 8  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  B  e.  QQ )
1312adantr 276 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  B  e.  QQ )
14 qnegcl 10045 . . . . . . . 8  |-  ( B  e.  QQ  ->  -u B  e.  QQ )
1513, 14syl 14 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  -u B  e.  QQ )
162adantr 276 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  N  e.  QQ )
174adantr 276 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  0  <  N )
18 simpr 110 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  ( A  mod  N )  =  ( B  mod  N
) )
1910, 13, 15, 16, 17, 18modqadd1 10811 . . . . . 6  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( A  mod  N )  =  ( B  mod  N
) )  ->  (
( A  +  -u B )  mod  N
)  =  ( ( B  +  -u B
)  mod  N )
)
2019ex 115 . . . . 5  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( A  mod  N )  =  ( B  mod  N
)  ->  ( ( A  +  -u B )  mod  N )  =  ( ( B  +  -u B )  mod  N
) ) )
21 simprl 535 . . . . . . . . 9  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  A  e.  ZZ )
2221zcnd 9773 . . . . . . . 8  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  A  e.  CC )
23 simprr 537 . . . . . . . . 9  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  B  e.  ZZ )
2423zcnd 9773 . . . . . . . 8  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  B  e.  CC )
2522, 24negsubd 8644 . . . . . . 7  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( A  +  -u B )  =  ( A  -  B
) )
2625oveq1d 6100 . . . . . 6  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( A  +  -u B )  mod  N )  =  ( ( A  -  B )  mod  N
) )
2724negidd 8628 . . . . . . 7  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( B  +  -u B )  =  0 )
2827oveq1d 6100 . . . . . 6  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( B  +  -u B )  mod  N )  =  ( 0  mod  N
) )
2926, 28eqeq12d 2253 . . . . 5  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
( A  +  -u B )  mod  N
)  =  ( ( B  +  -u B
)  mod  N )  <->  ( ( A  -  B
)  mod  N )  =  ( 0  mod 
N ) ) )
3020, 29sylibd 149 . . . 4  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( A  mod  N )  =  ( B  mod  N
)  ->  ( ( A  -  B )  mod  N )  =  ( 0  mod  N ) ) )
319adantr 276 . . . . . . . 8  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  A  e.  QQ )
3212adantr 276 . . . . . . . 8  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  B  e.  QQ )
33 qsubcl 10047 . . . . . . . 8  |-  ( ( A  e.  QQ  /\  B  e.  QQ )  ->  ( A  -  B
)  e.  QQ )
3431, 32, 33syl2anc 415 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  ( A  -  B )  e.  QQ )
35 0z 9659 . . . . . . . 8  |-  0  e.  ZZ
36 zq 10035 . . . . . . . 8  |-  ( 0  e.  ZZ  ->  0  e.  QQ )
3735, 36mp1i 10 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  0  e.  QQ )
382adantr 276 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  N  e.  QQ )
394adantr 276 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  0  <  N )
40 simpr 110 . . . . . . 7  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  (
( A  -  B
)  mod  N )  =  ( 0  mod 
N ) )
4134, 37, 32, 38, 39, 40modqadd1 10811 . . . . . 6  |-  ( ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  /\  ( ( A  -  B )  mod  N )  =  ( 0  mod  N
) )  ->  (
( ( A  -  B )  +  B
)  mod  N )  =  ( ( 0  +  B )  mod 
N ) )
4241ex 115 . . . . 5  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
( A  -  B
)  mod  N )  =  ( 0  mod 
N )  ->  (
( ( A  -  B )  +  B
)  mod  N )  =  ( ( 0  +  B )  mod 
N ) ) )
4322, 24npcand 8642 . . . . . . 7  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( A  -  B )  +  B )  =  A )
4443oveq1d 6100 . . . . . 6  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
( A  -  B
)  +  B )  mod  N )  =  ( A  mod  N
) )
4524addlidd 8477 . . . . . . 7  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( 0  +  B )  =  B )
4645oveq1d 6100 . . . . . 6  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
0  +  B )  mod  N )  =  ( B  mod  N
) )
4744, 46eqeq12d 2253 . . . . 5  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
( ( A  -  B )  +  B
)  mod  N )  =  ( ( 0  +  B )  mod 
N )  <->  ( A  mod  N )  =  ( B  mod  N ) ) )
4842, 47sylibd 149 . . . 4  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( (
( A  -  B
)  mod  N )  =  ( 0  mod 
N )  ->  ( A  mod  N )  =  ( B  mod  N
) ) )
4930, 48impbid 129 . . 3  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( A  mod  N )  =  ( B  mod  N
)  <->  ( ( A  -  B )  mod 
N )  =  ( 0  mod  N ) ) )
50 zsubcl 9689 . . . 4  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( A  -  B
)  e.  ZZ )
51 dvdsval3 12574 . . . 4  |-  ( ( N  e.  NN  /\  ( A  -  B
)  e.  ZZ )  ->  ( N  ||  ( A  -  B
)  <->  ( ( A  -  B )  mod 
N )  =  0 ) )
5250, 51sylan2 286 . . 3  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( N  ||  ( A  -  B
)  <->  ( ( A  -  B )  mod 
N )  =  0 ) )
537, 49, 523bitr4d 220 . 2  |-  ( ( N  e.  NN  /\  ( A  e.  ZZ  /\  B  e.  ZZ ) )  ->  ( ( A  mod  N )  =  ( B  mod  N
)  <->  N  ||  ( A  -  B ) ) )
54533impb 1230 1  |-  ( ( N  e.  NN  /\  A  e.  ZZ  /\  B  e.  ZZ )  ->  (
( A  mod  N
)  =  ( B  mod  N )  <->  N  ||  ( A  -  B )
) )
Colors of variables:    wff set class
This proof depends on syntax axioms:    -> wi 4    /\ wa 104    <-> wb 105    /\ w3a 1009    = wceq 1402    e. wcel 2209   class class class wbr 4130  (class class class)co 6085   0cc0 8179    + caddc 8182    < clt 8360    - cmin 8498   -ucneg 8499   NNcn 9306   ZZcz 9648   QQcq 10028    mod cmo 10772    || cdvds 12570
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-sep 4249  ax-pow 4311  ax-pr 4346  ax-un 4578  ax-setind 4684  ax-cnex 8270  ax-resscn 8271  ax-1cn 8272  ax-1re 8273  ax-icn 8274  ax-addcl 8275  ax-addrcl 8276  ax-mulcl 8277  ax-mulrcl 8278  ax-addcom 8279  ax-mulcom 8280  ax-addass 8281  ax-mulass 8282  ax-distr 8283  ax-i2m1 8284  ax-0lt1 8285  ax-1rid 8286  ax-0id 8287  ax-rnegex 8288  ax-precex 8289  ax-cnre 8290  ax-pre-ltirr 8291  ax-pre-ltwlin 8292  ax-pre-lttrn 8293  ax-pre-apti 8294  ax-pre-ltadd 8295  ax-pre-mulgt0 8296  ax-pre-mulext 8297  ax-arch 8298
This proof depends on definitions:  df-bi 117  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rmo 2536  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-pw 3690  df-sn 3715  df-pr 3716  df-op 3718  df-uni 3936  df-int 3971  df-iun 4014  df-br 4131  df-opab 4193  df-mpt 4194  df-id 4438  df-po 4441  df-iso 4442  df-xp 4780  df-rel 4781  df-cnv 4782  df-co 4783  df-dm 4784  df-rn 4785  df-res 4786  df-ima 4787  df-iota 5337  df-fun 5379  df-fn 5380  df-f 5381  df-fv 5385  df-riota 6038  df-ov 6088  df-oprab 6089  df-mpo 6090  df-1st 6374  df-2nd 6375  df-pnf 8362  df-mnf 8363  df-xr 8364  df-ltxr 8365  df-le 8366  df-sub 8500  df-neg 8501  df-reap 8905  df-ap 8912  df-div 9005  df-inn 9307  df-n0 9568  df-z 9649  df-q 10029  df-rp 10065  df-fl 10715  df-mod 10773  df-dvds 12571
This theorem is used by:  modm1div  12583  summodnegmod  12605  modmulconst  12606  addmodlteqALT  12642  dvdsmod  12645  congr  12894  cncongr1  12897  cncongr2  12898  crth  13022  eulerthlemh  13029  eulerthlemth  13030  prmdiv  13033  prmdiveq  13034  odzcllem  13041  odzdvds  13044  odzphi  13045  pockthlem  13155  4sqlem11  13200  4sqlem12  13201  znf1o  15035  wilthlem1  16151  ppiqub  16212  lgslem1  16238  lgsmod  16264  lgsdirprm  16272  lgseisenlem2  16309  lgseisenlem3  16310  lgseisenlem4  16311  m1lgs  16323
  Copyright terms: Public domain W3C validator