Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > addmodid | Structured version Visualization version GIF version |
Description: The sum of a positive integer and a nonnegative integer less than the positive integer is equal to the nonnegative integer modulo the positive integer. (Contributed by Alexander van der Vekens, 30-Oct-2018.) (Proof shortened by AV, 5-Jul-2020.) |
Ref | Expression |
---|---|
addmodid | ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → ((𝑀 + 𝐴) mod 𝑀) = 𝐴) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | nncn 11717 | . . . . . . 7 ⊢ (𝑀 ∈ ℕ → 𝑀 ∈ ℂ) | |
2 | 1 | mulid2d 10730 | . . . . . 6 ⊢ (𝑀 ∈ ℕ → (1 · 𝑀) = 𝑀) |
3 | 2 | 3ad2ant2 1135 | . . . . 5 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → (1 · 𝑀) = 𝑀) |
4 | 3 | eqcomd 2744 | . . . 4 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 𝑀 = (1 · 𝑀)) |
5 | 4 | oveq1d 7179 | . . 3 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → (𝑀 + 𝐴) = ((1 · 𝑀) + 𝐴)) |
6 | 5 | oveq1d 7179 | . 2 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → ((𝑀 + 𝐴) mod 𝑀) = (((1 · 𝑀) + 𝐴) mod 𝑀)) |
7 | 1zzd 12087 | . . 3 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 1 ∈ ℤ) | |
8 | nnrp 12476 | . . . 4 ⊢ (𝑀 ∈ ℕ → 𝑀 ∈ ℝ+) | |
9 | 8 | 3ad2ant2 1135 | . . 3 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 𝑀 ∈ ℝ+) |
10 | nn0re 11978 | . . . . . 6 ⊢ (𝐴 ∈ ℕ0 → 𝐴 ∈ ℝ) | |
11 | 10 | rexrd 10762 | . . . . 5 ⊢ (𝐴 ∈ ℕ0 → 𝐴 ∈ ℝ*) |
12 | 11 | 3ad2ant1 1134 | . . . 4 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 𝐴 ∈ ℝ*) |
13 | nn0ge0 11994 | . . . . 5 ⊢ (𝐴 ∈ ℕ0 → 0 ≤ 𝐴) | |
14 | 13 | 3ad2ant1 1134 | . . . 4 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 0 ≤ 𝐴) |
15 | simp3 1139 | . . . 4 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 𝐴 < 𝑀) | |
16 | 0xr 10759 | . . . . 5 ⊢ 0 ∈ ℝ* | |
17 | nnre 11716 | . . . . . . 7 ⊢ (𝑀 ∈ ℕ → 𝑀 ∈ ℝ) | |
18 | 17 | rexrd 10762 | . . . . . 6 ⊢ (𝑀 ∈ ℕ → 𝑀 ∈ ℝ*) |
19 | 18 | 3ad2ant2 1135 | . . . . 5 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 𝑀 ∈ ℝ*) |
20 | elico1 12857 | . . . . 5 ⊢ ((0 ∈ ℝ* ∧ 𝑀 ∈ ℝ*) → (𝐴 ∈ (0[,)𝑀) ↔ (𝐴 ∈ ℝ* ∧ 0 ≤ 𝐴 ∧ 𝐴 < 𝑀))) | |
21 | 16, 19, 20 | sylancr 590 | . . . 4 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → (𝐴 ∈ (0[,)𝑀) ↔ (𝐴 ∈ ℝ* ∧ 0 ≤ 𝐴 ∧ 𝐴 < 𝑀))) |
22 | 12, 14, 15, 21 | mpbir3and 1343 | . . 3 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → 𝐴 ∈ (0[,)𝑀)) |
23 | muladdmodid 13363 | . . 3 ⊢ ((1 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ∧ 𝐴 ∈ (0[,)𝑀)) → (((1 · 𝑀) + 𝐴) mod 𝑀) = 𝐴) | |
24 | 7, 9, 22, 23 | syl3anc 1372 | . 2 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → (((1 · 𝑀) + 𝐴) mod 𝑀) = 𝐴) |
25 | 6, 24 | eqtrd 2773 | 1 ⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → ((𝑀 + 𝐴) mod 𝑀) = 𝐴) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ↔ wb 209 ∧ w3a 1088 = wceq 1542 ∈ wcel 2113 class class class wbr 5027 (class class class)co 7164 0cc0 10608 1c1 10609 + caddc 10611 · cmul 10613 ℝ*cxr 10745 < clt 10746 ≤ cle 10747 ℕcn 11709 ℕ0cn0 11969 ℤcz 12055 ℝ+crp 12465 [,)cico 12816 mod cmo 13321 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1802 ax-4 1816 ax-5 1916 ax-6 1974 ax-7 2019 ax-8 2115 ax-9 2123 ax-10 2144 ax-11 2161 ax-12 2178 ax-ext 2710 ax-sep 5164 ax-nul 5171 ax-pow 5229 ax-pr 5293 ax-un 7473 ax-cnex 10664 ax-resscn 10665 ax-1cn 10666 ax-icn 10667 ax-addcl 10668 ax-addrcl 10669 ax-mulcl 10670 ax-mulrcl 10671 ax-mulcom 10672 ax-addass 10673 ax-mulass 10674 ax-distr 10675 ax-i2m1 10676 ax-1ne0 10677 ax-1rid 10678 ax-rnegex 10679 ax-rrecex 10680 ax-cnre 10681 ax-pre-lttri 10682 ax-pre-lttrn 10683 ax-pre-ltadd 10684 ax-pre-mulgt0 10685 ax-pre-sup 10686 |
This theorem depends on definitions: df-bi 210 df-an 400 df-or 847 df-3or 1089 df-3an 1090 df-tru 1545 df-fal 1555 df-ex 1787 df-nf 1791 df-sb 2074 df-mo 2540 df-eu 2570 df-clab 2717 df-cleq 2730 df-clel 2811 df-nfc 2881 df-ne 2935 df-nel 3039 df-ral 3058 df-rex 3059 df-reu 3060 df-rmo 3061 df-rab 3062 df-v 3399 df-sbc 3680 df-csb 3789 df-dif 3844 df-un 3846 df-in 3848 df-ss 3858 df-pss 3860 df-nul 4210 df-if 4412 df-pw 4487 df-sn 4514 df-pr 4516 df-tp 4518 df-op 4520 df-uni 4794 df-iun 4880 df-br 5028 df-opab 5090 df-mpt 5108 df-tr 5134 df-id 5425 df-eprel 5430 df-po 5438 df-so 5439 df-fr 5478 df-we 5480 df-xp 5525 df-rel 5526 df-cnv 5527 df-co 5528 df-dm 5529 df-rn 5530 df-res 5531 df-ima 5532 df-pred 6123 df-ord 6169 df-on 6170 df-lim 6171 df-suc 6172 df-iota 6291 df-fun 6335 df-fn 6336 df-f 6337 df-f1 6338 df-fo 6339 df-f1o 6340 df-fv 6341 df-riota 7121 df-ov 7167 df-oprab 7168 df-mpo 7169 df-om 7594 df-wrecs 7969 df-recs 8030 df-rdg 8068 df-er 8313 df-en 8549 df-dom 8550 df-sdom 8551 df-sup 8972 df-inf 8973 df-pnf 10748 df-mnf 10749 df-xr 10750 df-ltxr 10751 df-le 10752 df-sub 10943 df-neg 10944 df-div 11369 df-nn 11710 df-n0 11970 df-z 12056 df-uz 12318 df-rp 12466 df-ico 12820 df-fl 13246 df-mod 13322 |
This theorem is referenced by: addmodidr 13372 cshwidxn 14253 eucrctshift 28172 ex-mod 28378 |
Copyright terms: Public domain | W3C validator |