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

Theorem modaddmodlo 10331
Description: The sum of an integer modulo a positive integer and another integer equals the sum of the two integers modulo the positive integer if the other integer is in the lower part of the range between 0 and the positive integer. (Contributed by AV, 30-Oct-2018.)
Assertion
Ref Expression
modaddmodlo ((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) → (𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀))) → (𝐵 + (𝐴 mod 𝑀)) = ((𝐵 + 𝐴) mod 𝑀)))

Proof of Theorem modaddmodlo
StepHypRef Expression
1 elfzoelz 10090 . . . . . . 7 (𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀))) → 𝐵 ∈ ℤ)
21adantl 275 . . . . . 6 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝐵 ∈ ℤ)
3 zq 9572 . . . . . 6 (𝐵 ∈ ℤ → 𝐵 ∈ ℚ)
42, 3syl 14 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝐵 ∈ ℚ)
5 zmodcl 10287 . . . . . . . 8 ((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) → (𝐴 mod 𝑀) ∈ ℕ0)
65adantr 274 . . . . . . 7 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐴 mod 𝑀) ∈ ℕ0)
76nn0zd 9319 . . . . . 6 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐴 mod 𝑀) ∈ ℤ)
8 zq 9572 . . . . . 6 ((𝐴 mod 𝑀) ∈ ℤ → (𝐴 mod 𝑀) ∈ ℚ)
97, 8syl 14 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐴 mod 𝑀) ∈ ℚ)
10 qaddcl 9581 . . . . 5 ((𝐵 ∈ ℚ ∧ (𝐴 mod 𝑀) ∈ ℚ) → (𝐵 + (𝐴 mod 𝑀)) ∈ ℚ)
114, 9, 10syl2anc 409 . . . 4 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐵 + (𝐴 mod 𝑀)) ∈ ℚ)
12 simplr 525 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝑀 ∈ ℕ)
13 nnq 9579 . . . . 5 (𝑀 ∈ ℕ → 𝑀 ∈ ℚ)
1412, 13syl 14 . . . 4 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝑀 ∈ ℚ)
152zred 9321 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝐵 ∈ ℝ)
166nn0red 9176 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐴 mod 𝑀) ∈ ℝ)
17 elfzole1 10098 . . . . . 6 (𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀))) → 0 ≤ 𝐵)
1817adantl 275 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 0 ≤ 𝐵)
196nn0ge0d 9178 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 0 ≤ (𝐴 mod 𝑀))
2015, 16, 18, 19addge0d 8428 . . . 4 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 0 ≤ (𝐵 + (𝐴 mod 𝑀)))
21 elfzolt2 10099 . . . . . 6 (𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀))) → 𝐵 < (𝑀 − (𝐴 mod 𝑀)))
2221adantl 275 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝐵 < (𝑀 − (𝐴 mod 𝑀)))
2312nnred 8878 . . . . . 6 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝑀 ∈ ℝ)
2415, 16, 23ltaddsubd 8451 . . . . 5 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → ((𝐵 + (𝐴 mod 𝑀)) < 𝑀𝐵 < (𝑀 − (𝐴 mod 𝑀))))
2522, 24mpbird 166 . . . 4 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐵 + (𝐴 mod 𝑀)) < 𝑀)
26 modqid 10292 . . . 4 ((((𝐵 + (𝐴 mod 𝑀)) ∈ ℚ ∧ 𝑀 ∈ ℚ) ∧ (0 ≤ (𝐵 + (𝐴 mod 𝑀)) ∧ (𝐵 + (𝐴 mod 𝑀)) < 𝑀)) → ((𝐵 + (𝐴 mod 𝑀)) mod 𝑀) = (𝐵 + (𝐴 mod 𝑀)))
2711, 14, 20, 25, 26syl22anc 1234 . . 3 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → ((𝐵 + (𝐴 mod 𝑀)) mod 𝑀) = (𝐵 + (𝐴 mod 𝑀)))
28 zq 9572 . . . . 5 (𝐴 ∈ ℤ → 𝐴 ∈ ℚ)
2928ad2antrr 485 . . . 4 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 𝐴 ∈ ℚ)
3012nngt0d 8909 . . . 4 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → 0 < 𝑀)
31 modqadd2mod 10317 . . . 4 (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → ((𝐵 + (𝐴 mod 𝑀)) mod 𝑀) = ((𝐵 + 𝐴) mod 𝑀))
3229, 4, 14, 30, 31syl22anc 1234 . . 3 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → ((𝐵 + (𝐴 mod 𝑀)) mod 𝑀) = ((𝐵 + 𝐴) mod 𝑀))
3327, 32eqtr3d 2205 . 2 (((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) ∧ 𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀)))) → (𝐵 + (𝐴 mod 𝑀)) = ((𝐵 + 𝐴) mod 𝑀))
3433ex 114 1 ((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) → (𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀))) → (𝐵 + (𝐴 mod 𝑀)) = ((𝐵 + 𝐴) mod 𝑀)))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 103   = wceq 1348  wcel 2141   class class class wbr 3987  (class class class)co 5850  0cc0 7761   + caddc 7764   < clt 7941  cle 7942  cmin 8077  cn 8865  0cn0 9122  cz 9199  cq 9565  ..^cfzo 10085   mod cmo 10265
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 609  ax-in2 610  ax-io 704  ax-5 1440  ax-7 1441  ax-gen 1442  ax-ie1 1486  ax-ie2 1487  ax-8 1497  ax-10 1498  ax-11 1499  ax-i12 1500  ax-bndl 1502  ax-4 1503  ax-17 1519  ax-i9 1523  ax-ial 1527  ax-i5r 1528  ax-13 2143  ax-14 2144  ax-ext 2152  ax-sep 4105  ax-pow 4158  ax-pr 4192  ax-un 4416  ax-setind 4519  ax-cnex 7852  ax-resscn 7853  ax-1cn 7854  ax-1re 7855  ax-icn 7856  ax-addcl 7857  ax-addrcl 7858  ax-mulcl 7859  ax-mulrcl 7860  ax-addcom 7861  ax-mulcom 7862  ax-addass 7863  ax-mulass 7864  ax-distr 7865  ax-i2m1 7866  ax-0lt1 7867  ax-1rid 7868  ax-0id 7869  ax-rnegex 7870  ax-precex 7871  ax-cnre 7872  ax-pre-ltirr 7873  ax-pre-ltwlin 7874  ax-pre-lttrn 7875  ax-pre-apti 7876  ax-pre-ltadd 7877  ax-pre-mulgt0 7878  ax-pre-mulext 7879  ax-arch 7880
This theorem depends on definitions:  df-bi 116  df-3or 974  df-3an 975  df-tru 1351  df-fal 1354  df-nf 1454  df-sb 1756  df-eu 2022  df-mo 2023  df-clab 2157  df-cleq 2163  df-clel 2166  df-nfc 2301  df-ne 2341  df-nel 2436  df-ral 2453  df-rex 2454  df-reu 2455  df-rmo 2456  df-rab 2457  df-v 2732  df-sbc 2956  df-csb 3050  df-dif 3123  df-un 3125  df-in 3127  df-ss 3134  df-pw 3566  df-sn 3587  df-pr 3588  df-op 3590  df-uni 3795  df-int 3830  df-iun 3873  df-br 3988  df-opab 4049  df-mpt 4050  df-id 4276  df-po 4279  df-iso 4280  df-xp 4615  df-rel 4616  df-cnv 4617  df-co 4618  df-dm 4619  df-rn 4620  df-res 4621  df-ima 4622  df-iota 5158  df-fun 5198  df-fn 5199  df-f 5200  df-fv 5204  df-riota 5806  df-ov 5853  df-oprab 5854  df-mpo 5855  df-1st 6116  df-2nd 6117  df-pnf 7943  df-mnf 7944  df-xr 7945  df-ltxr 7946  df-le 7947  df-sub 8079  df-neg 8080  df-reap 8481  df-ap 8488  df-div 8577  df-inn 8866  df-n0 9123  df-z 9200  df-uz 9475  df-q 9566  df-rp 9598  df-fz 9953  df-fzo 10086  df-fl 10213  df-mod 10266
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator