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

Theorem addmodlteqALT 12112
Description: Two nonnegative integers less than the modulus are equal iff the sums of these integer with another integer are equal modulo the modulus. Shorter proof of addmodlteq 10541 based on the "divides" relation. (Contributed by AV, 14-Mar-2021.) (New usage is discouraged.) (Proof modification is discouraged.)
Assertion
Ref Expression
addmodlteqALT  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( ( ( I  +  S )  mod  N )  =  ( ( J  +  S )  mod  N
)  <->  I  =  J
) )

Proof of Theorem addmodlteqALT
StepHypRef Expression
1 elfzo0 10304 . . . . 5  |-  ( I  e.  ( 0..^ N )  <->  ( I  e. 
NN0  /\  N  e.  NN  /\  I  <  N
) )
2 elfzoelz 10268 . . . . . . . 8  |-  ( J  e.  ( 0..^ N )  ->  J  e.  ZZ )
3 simplrr 536 . . . . . . . . . 10  |-  ( ( ( J  e.  ZZ  /\  ( I  e.  NN0  /\  N  e.  NN ) )  /\  S  e.  ZZ )  ->  N  e.  NN )
4 nn0z 9391 . . . . . . . . . . . 12  |-  ( I  e.  NN0  ->  I  e.  ZZ )
54ad2antrl 490 . . . . . . . . . . 11  |-  ( ( J  e.  ZZ  /\  ( I  e.  NN0  /\  N  e.  NN ) )  ->  I  e.  ZZ )
6 zaddcl 9411 . . . . . . . . . . 11  |-  ( ( I  e.  ZZ  /\  S  e.  ZZ )  ->  ( I  +  S
)  e.  ZZ )
75, 6sylan 283 . . . . . . . . . 10  |-  ( ( ( J  e.  ZZ  /\  ( I  e.  NN0  /\  N  e.  NN ) )  /\  S  e.  ZZ )  ->  (
I  +  S )  e.  ZZ )
8 zaddcl 9411 . . . . . . . . . . 11  |-  ( ( J  e.  ZZ  /\  S  e.  ZZ )  ->  ( J  +  S
)  e.  ZZ )
98adantlr 477 . . . . . . . . . 10  |-  ( ( ( J  e.  ZZ  /\  ( I  e.  NN0  /\  N  e.  NN ) )  /\  S  e.  ZZ )  ->  ( J  +  S )  e.  ZZ )
103, 7, 93jca 1179 . . . . . . . . 9  |-  ( ( ( J  e.  ZZ  /\  ( I  e.  NN0  /\  N  e.  NN ) )  /\  S  e.  ZZ )  ->  ( N  e.  NN  /\  (
I  +  S )  e.  ZZ  /\  ( J  +  S )  e.  ZZ ) )
1110exp31 364 . . . . . . . 8  |-  ( J  e.  ZZ  ->  (
( I  e.  NN0  /\  N  e.  NN )  ->  ( S  e.  ZZ  ->  ( N  e.  NN  /\  ( I  +  S )  e.  ZZ  /\  ( J  +  S )  e.  ZZ ) ) ) )
122, 11syl 14 . . . . . . 7  |-  ( J  e.  ( 0..^ N )  ->  ( (
I  e.  NN0  /\  N  e.  NN )  ->  ( S  e.  ZZ  ->  ( N  e.  NN  /\  ( I  +  S
)  e.  ZZ  /\  ( J  +  S
)  e.  ZZ ) ) ) )
1312com12 30 . . . . . 6  |-  ( ( I  e.  NN0  /\  N  e.  NN )  ->  ( J  e.  ( 0..^ N )  -> 
( S  e.  ZZ  ->  ( N  e.  NN  /\  ( I  +  S
)  e.  ZZ  /\  ( J  +  S
)  e.  ZZ ) ) ) )
14133adant3 1019 . . . . 5  |-  ( ( I  e.  NN0  /\  N  e.  NN  /\  I  <  N )  ->  ( J  e.  ( 0..^ N )  ->  ( S  e.  ZZ  ->  ( N  e.  NN  /\  ( I  +  S
)  e.  ZZ  /\  ( J  +  S
)  e.  ZZ ) ) ) )
151, 14sylbi 121 . . . 4  |-  ( I  e.  ( 0..^ N )  ->  ( J  e.  ( 0..^ N )  ->  ( S  e.  ZZ  ->  ( N  e.  NN  /\  ( I  +  S )  e.  ZZ  /\  ( J  +  S )  e.  ZZ ) ) ) )
16153imp 1195 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( N  e.  NN  /\  ( I  +  S )  e.  ZZ  /\  ( J  +  S )  e.  ZZ ) )
17 moddvds 12052 . . 3  |-  ( ( N  e.  NN  /\  ( I  +  S
)  e.  ZZ  /\  ( J  +  S
)  e.  ZZ )  ->  ( ( ( I  +  S )  mod  N )  =  ( ( J  +  S )  mod  N
)  <->  N  ||  ( ( I  +  S )  -  ( J  +  S ) ) ) )
1816, 17syl 14 . 2  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( ( ( I  +  S )  mod  N )  =  ( ( J  +  S )  mod  N
)  <->  N  ||  ( ( I  +  S )  -  ( J  +  S ) ) ) )
19 elfzoel2 10267 . . . . 5  |-  ( I  e.  ( 0..^ N )  ->  N  e.  ZZ )
20 zcn 9376 . . . . . . 7  |-  ( N  e.  ZZ  ->  N  e.  CC )
2120subid1d 8371 . . . . . 6  |-  ( N  e.  ZZ  ->  ( N  -  0 )  =  N )
2221eqcomd 2210 . . . . 5  |-  ( N  e.  ZZ  ->  N  =  ( N  - 
0 ) )
2319, 22syl 14 . . . 4  |-  ( I  e.  ( 0..^ N )  ->  N  =  ( N  -  0
) )
24233ad2ant1 1020 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  N  =  ( N  -  0 ) )
25 elfzoelz 10268 . . . . 5  |-  ( I  e.  ( 0..^ N )  ->  I  e.  ZZ )
2625zcnd 9495 . . . 4  |-  ( I  e.  ( 0..^ N )  ->  I  e.  CC )
272zcnd 9495 . . . 4  |-  ( J  e.  ( 0..^ N )  ->  J  e.  CC )
28 zcn 9376 . . . 4  |-  ( S  e.  ZZ  ->  S  e.  CC )
29 pnpcan2 8311 . . . 4  |-  ( ( I  e.  CC  /\  J  e.  CC  /\  S  e.  CC )  ->  (
( I  +  S
)  -  ( J  +  S ) )  =  ( I  -  J ) )
3026, 27, 28, 29syl3an 1291 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( ( I  +  S )  -  ( J  +  S
) )  =  ( I  -  J ) )
3124, 30breq12d 4056 . 2  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( N  ||  ( ( I  +  S )  -  ( J  +  S )
)  <->  ( N  - 
0 )  ||  (
I  -  J ) ) )
32 fzocongeq 12111 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N ) )  ->  ( ( N  -  0 ) 
||  ( I  -  J )  <->  I  =  J ) )
33323adant3 1019 . 2  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( ( N  -  0 )  ||  ( I  -  J
)  <->  I  =  J
) )
3418, 31, 333bitrd 214 1  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( ( ( I  +  S )  mod  N )  =  ( ( J  +  S )  mod  N
)  <->  I  =  J
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    /\ w3a 980    = wceq 1372    e. wcel 2175   class class class wbr 4043  (class class class)co 5943   CCcc 7922   0cc0 7924    + caddc 7927    < clt 8106    - cmin 8242   NNcn 9035   NN0cn0 9294   ZZcz 9371  ..^cfzo 10263    mod cmo 10465    || cdvds 12040
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 710  ax-5 1469  ax-7 1470  ax-gen 1471  ax-ie1 1515  ax-ie2 1516  ax-8 1526  ax-10 1527  ax-11 1528  ax-i12 1529  ax-bndl 1531  ax-4 1532  ax-17 1548  ax-i9 1552  ax-ial 1556  ax-i5r 1557  ax-13 2177  ax-14 2178  ax-ext 2186  ax-coll 4158  ax-sep 4161  ax-nul 4169  ax-pow 4217  ax-pr 4252  ax-un 4479  ax-setind 4584  ax-iinf 4635  ax-cnex 8015  ax-resscn 8016  ax-1cn 8017  ax-1re 8018  ax-icn 8019  ax-addcl 8020  ax-addrcl 8021  ax-mulcl 8022  ax-mulrcl 8023  ax-addcom 8024  ax-mulcom 8025  ax-addass 8026  ax-mulass 8027  ax-distr 8028  ax-i2m1 8029  ax-0lt1 8030  ax-1rid 8031  ax-0id 8032  ax-rnegex 8033  ax-precex 8034  ax-cnre 8035  ax-pre-ltirr 8036  ax-pre-ltwlin 8037  ax-pre-lttrn 8038  ax-pre-apti 8039  ax-pre-ltadd 8040  ax-pre-mulgt0 8041  ax-pre-mulext 8042  ax-arch 8043  ax-caucvg 8044
This theorem depends on definitions:  df-bi 117  df-dc 836  df-3or 981  df-3an 982  df-tru 1375  df-fal 1378  df-nf 1483  df-sb 1785  df-eu 2056  df-mo 2057  df-clab 2191  df-cleq 2197  df-clel 2200  df-nfc 2336  df-ne 2376  df-nel 2471  df-ral 2488  df-rex 2489  df-reu 2490  df-rmo 2491  df-rab 2492  df-v 2773  df-sbc 2998  df-csb 3093  df-dif 3167  df-un 3169  df-in 3171  df-ss 3178  df-nul 3460  df-if 3571  df-pw 3617  df-sn 3638  df-pr 3639  df-op 3641  df-uni 3850  df-int 3885  df-iun 3928  df-br 4044  df-opab 4105  df-mpt 4106  df-tr 4142  df-id 4339  df-po 4342  df-iso 4343  df-iord 4412  df-on 4414  df-ilim 4415  df-suc 4417  df-iom 4638  df-xp 4680  df-rel 4681  df-cnv 4682  df-co 4683  df-dm 4684  df-rn 4685  df-res 4686  df-ima 4687  df-iota 5231  df-fun 5272  df-fn 5273  df-f 5274  df-f1 5275  df-fo 5276  df-f1o 5277  df-fv 5278  df-riota 5898  df-ov 5946  df-oprab 5947  df-mpo 5948  df-1st 6225  df-2nd 6226  df-recs 6390  df-frec 6476  df-pnf 8108  df-mnf 8109  df-xr 8110  df-ltxr 8111  df-le 8112  df-sub 8244  df-neg 8245  df-reap 8647  df-ap 8654  df-div 8745  df-inn 9036  df-2 9094  df-3 9095  df-4 9096  df-n0 9295  df-z 9372  df-uz 9648  df-q 9740  df-rp 9775  df-fz 10130  df-fzo 10264  df-fl 10411  df-mod 10466  df-seqfrec 10591  df-exp 10682  df-cj 11095  df-re 11096  df-im 11097  df-rsqrt 11251  df-abs 11252  df-dvds 12041
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator