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

Theorem addmodlteqALT 11868
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 10401 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 10185 . . . . 5  |-  ( I  e.  ( 0..^ N )  <->  ( I  e. 
NN0  /\  N  e.  NN  /\  I  <  N
) )
2 elfzoelz 10150 . . . . . . . 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 9276 . . . . . . . . . . . 12  |-  ( I  e.  NN0  ->  I  e.  ZZ )
54ad2antrl 490 . . . . . . . . . . 11  |-  ( ( J  e.  ZZ  /\  ( I  e.  NN0  /\  N  e.  NN ) )  ->  I  e.  ZZ )
6 zaddcl 9296 . . . . . . . . . . 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 9296 . . . . . . . . . . 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 1177 . . . . . . . . 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 1017 . . . . 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 1193 . . 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 11809 . . 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 10149 . . . . 5  |-  ( I  e.  ( 0..^ N )  ->  N  e.  ZZ )
20 zcn 9261 . . . . . . 7  |-  ( N  e.  ZZ  ->  N  e.  CC )
2120subid1d 8260 . . . . . 6  |-  ( N  e.  ZZ  ->  ( N  -  0 )  =  N )
2221eqcomd 2183 . . . . 5  |-  ( N  e.  ZZ  ->  N  =  ( N  - 
0 ) )
2319, 22syl 14 . . . 4  |-  ( I  e.  ( 0..^ N )  ->  N  =  ( N  -  0
) )
24233ad2ant1 1018 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  N  =  ( N  -  0 ) )
25 elfzoelz 10150 . . . . 5  |-  ( I  e.  ( 0..^ N )  ->  I  e.  ZZ )
2625zcnd 9379 . . . 4  |-  ( I  e.  ( 0..^ N )  ->  I  e.  CC )
272zcnd 9379 . . . 4  |-  ( J  e.  ( 0..^ N )  ->  J  e.  CC )
28 zcn 9261 . . . 4  |-  ( S  e.  ZZ  ->  S  e.  CC )
29 pnpcan2 8200 . . . 4  |-  ( ( I  e.  CC  /\  J  e.  CC  /\  S  e.  CC )  ->  (
( I  +  S
)  -  ( J  +  S ) )  =  ( I  -  J ) )
3026, 27, 28, 29syl3an 1280 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( ( I  +  S )  -  ( J  +  S
) )  =  ( I  -  J ) )
3124, 30breq12d 4018 . 2  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N )  /\  S  e.  ZZ )  ->  ( N  ||  ( ( I  +  S )  -  ( J  +  S )
)  <->  ( N  - 
0 )  ||  (
I  -  J ) ) )
32 fzocongeq 11867 . . 3  |-  ( ( I  e.  ( 0..^ N )  /\  J  e.  ( 0..^ N ) )  ->  ( ( N  -  0 ) 
||  ( I  -  J )  <->  I  =  J ) )
33323adant3 1017 . 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 978    = wceq 1353    e. wcel 2148   class class class wbr 4005  (class class class)co 5878   CCcc 7812   0cc0 7814    + caddc 7817    < clt 7995    - cmin 8131   NNcn 8922   NN0cn0 9179   ZZcz 9256  ..^cfzo 10145    mod cmo 10325    || cdvds 11797
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 614  ax-in2 615  ax-io 709  ax-5 1447  ax-7 1448  ax-gen 1449  ax-ie1 1493  ax-ie2 1494  ax-8 1504  ax-10 1505  ax-11 1506  ax-i12 1507  ax-bndl 1509  ax-4 1510  ax-17 1526  ax-i9 1530  ax-ial 1534  ax-i5r 1535  ax-13 2150  ax-14 2151  ax-ext 2159  ax-coll 4120  ax-sep 4123  ax-nul 4131  ax-pow 4176  ax-pr 4211  ax-un 4435  ax-setind 4538  ax-iinf 4589  ax-cnex 7905  ax-resscn 7906  ax-1cn 7907  ax-1re 7908  ax-icn 7909  ax-addcl 7910  ax-addrcl 7911  ax-mulcl 7912  ax-mulrcl 7913  ax-addcom 7914  ax-mulcom 7915  ax-addass 7916  ax-mulass 7917  ax-distr 7918  ax-i2m1 7919  ax-0lt1 7920  ax-1rid 7921  ax-0id 7922  ax-rnegex 7923  ax-precex 7924  ax-cnre 7925  ax-pre-ltirr 7926  ax-pre-ltwlin 7927  ax-pre-lttrn 7928  ax-pre-apti 7929  ax-pre-ltadd 7930  ax-pre-mulgt0 7931  ax-pre-mulext 7932  ax-arch 7933  ax-caucvg 7934
This theorem depends on definitions:  df-bi 117  df-dc 835  df-3or 979  df-3an 980  df-tru 1356  df-fal 1359  df-nf 1461  df-sb 1763  df-eu 2029  df-mo 2030  df-clab 2164  df-cleq 2170  df-clel 2173  df-nfc 2308  df-ne 2348  df-nel 2443  df-ral 2460  df-rex 2461  df-reu 2462  df-rmo 2463  df-rab 2464  df-v 2741  df-sbc 2965  df-csb 3060  df-dif 3133  df-un 3135  df-in 3137  df-ss 3144  df-nul 3425  df-if 3537  df-pw 3579  df-sn 3600  df-pr 3601  df-op 3603  df-uni 3812  df-int 3847  df-iun 3890  df-br 4006  df-opab 4067  df-mpt 4068  df-tr 4104  df-id 4295  df-po 4298  df-iso 4299  df-iord 4368  df-on 4370  df-ilim 4371  df-suc 4373  df-iom 4592  df-xp 4634  df-rel 4635  df-cnv 4636  df-co 4637  df-dm 4638  df-rn 4639  df-res 4640  df-ima 4641  df-iota 5180  df-fun 5220  df-fn 5221  df-f 5222  df-f1 5223  df-fo 5224  df-f1o 5225  df-fv 5226  df-riota 5834  df-ov 5881  df-oprab 5882  df-mpo 5883  df-1st 6144  df-2nd 6145  df-recs 6309  df-frec 6395  df-pnf 7997  df-mnf 7998  df-xr 7999  df-ltxr 8000  df-le 8001  df-sub 8133  df-neg 8134  df-reap 8535  df-ap 8542  df-div 8633  df-inn 8923  df-2 8981  df-3 8982  df-4 8983  df-n0 9180  df-z 9257  df-uz 9532  df-q 9623  df-rp 9657  df-fz 10012  df-fzo 10146  df-fl 10273  df-mod 10326  df-seqfrec 10449  df-exp 10523  df-cj 10854  df-re 10855  df-im 10856  df-rsqrt 11010  df-abs 11011  df-dvds 11798
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator