Metamath Proof Explorer


Theorem submodaddmod

Description: Subtraction and addition modulo a positive integer. (Contributed by AV, 7-Sep-2025)

Ref Expression
Assertion submodaddmod ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( ( 𝐴 + 𝐵 ) mod 𝑁 ) = ( ( 𝐴𝐶 ) mod 𝑁 ) ↔ ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) mod 𝑁 ) = ( 𝐴 mod 𝑁 ) ) )

Proof

Step Hyp Ref Expression
1 zcn ( 𝐴 ∈ ℤ → 𝐴 ∈ ℂ )
2 1 3ad2ant1 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → 𝐴 ∈ ℂ )
3 2 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → 𝐴 ∈ ℂ )
4 zcn ( 𝐵 ∈ ℤ → 𝐵 ∈ ℂ )
5 4 3ad2ant2 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → 𝐵 ∈ ℂ )
6 5 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → 𝐵 ∈ ℂ )
7 zcn ( 𝐶 ∈ ℤ → 𝐶 ∈ ℂ )
8 7 3ad2ant3 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → 𝐶 ∈ ℂ )
9 8 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → 𝐶 ∈ ℂ )
10 3 6 9 pnncand ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( 𝐴 + 𝐵 ) − ( 𝐴𝐶 ) ) = ( 𝐵 + 𝐶 ) )
11 zaddcl ( ( 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐵 + 𝐶 ) ∈ ℤ )
12 11 zcnd ( ( 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐵 + 𝐶 ) ∈ ℂ )
13 12 3adant1 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐵 + 𝐶 ) ∈ ℂ )
14 13 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( 𝐵 + 𝐶 ) ∈ ℂ )
15 3 14 pncan2d ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) − 𝐴 ) = ( 𝐵 + 𝐶 ) )
16 10 15 eqtr4d ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( 𝐴 + 𝐵 ) − ( 𝐴𝐶 ) ) = ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) − 𝐴 ) )
17 16 breq2d ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( 𝑁 ∥ ( ( 𝐴 + 𝐵 ) − ( 𝐴𝐶 ) ) ↔ 𝑁 ∥ ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) − 𝐴 ) ) )
18 simpl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → 𝑁 ∈ ℕ )
19 zaddcl ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ) → ( 𝐴 + 𝐵 ) ∈ ℤ )
20 19 3adant3 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐴 + 𝐵 ) ∈ ℤ )
21 20 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( 𝐴 + 𝐵 ) ∈ ℤ )
22 zsubcl ( ( 𝐴 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐴𝐶 ) ∈ ℤ )
23 22 3adant2 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐴𝐶 ) ∈ ℤ )
24 23 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( 𝐴𝐶 ) ∈ ℤ )
25 moddvds ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 + 𝐵 ) ∈ ℤ ∧ ( 𝐴𝐶 ) ∈ ℤ ) → ( ( ( 𝐴 + 𝐵 ) mod 𝑁 ) = ( ( 𝐴𝐶 ) mod 𝑁 ) ↔ 𝑁 ∥ ( ( 𝐴 + 𝐵 ) − ( 𝐴𝐶 ) ) ) )
26 18 21 24 25 syl3anc ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( ( 𝐴 + 𝐵 ) mod 𝑁 ) = ( ( 𝐴𝐶 ) mod 𝑁 ) ↔ 𝑁 ∥ ( ( 𝐴 + 𝐵 ) − ( 𝐴𝐶 ) ) ) )
27 simp1 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → 𝐴 ∈ ℤ )
28 simp2 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → 𝐵 ∈ ℤ )
29 simp3 ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → 𝐶 ∈ ℤ )
30 28 29 zaddcld ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐵 + 𝐶 ) ∈ ℤ )
31 27 30 zaddcld ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) → ( 𝐴 + ( 𝐵 + 𝐶 ) ) ∈ ℤ )
32 31 adantl ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( 𝐴 + ( 𝐵 + 𝐶 ) ) ∈ ℤ )
33 simpr1 ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → 𝐴 ∈ ℤ )
34 moddvds ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 + ( 𝐵 + 𝐶 ) ) ∈ ℤ ∧ 𝐴 ∈ ℤ ) → ( ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) mod 𝑁 ) = ( 𝐴 mod 𝑁 ) ↔ 𝑁 ∥ ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) − 𝐴 ) ) )
35 18 32 33 34 syl3anc ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) mod 𝑁 ) = ( 𝐴 mod 𝑁 ) ↔ 𝑁 ∥ ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) − 𝐴 ) ) )
36 17 26 35 3bitr4d ( ( 𝑁 ∈ ℕ ∧ ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ 𝐶 ∈ ℤ ) ) → ( ( ( 𝐴 + 𝐵 ) mod 𝑁 ) = ( ( 𝐴𝐶 ) mod 𝑁 ) ↔ ( ( 𝐴 + ( 𝐵 + 𝐶 ) ) mod 𝑁 ) = ( 𝐴 mod 𝑁 ) ) )