Metamath Proof Explorer


Theorem modmuladdim

Description: Implication of a decomposition of an integer into a multiple of a modulus and a remainder. (Contributed by AV, 14-Jul-2021)

Ref Expression
Assertion modmuladdim ⊢ A ∈ ℤ ∧ M ∈ ℝ + → A mod M = B → ∃ k ∈ ℤ A = k ⋅ M + B

Proof

Step Hyp Ref Expression
1 zre ⊢ A ∈ ℤ → A ∈ ℝ
2 modelico ⊢ A ∈ ℝ ∧ M ∈ ℝ + → A mod M ∈ 0 M
3 1 2 sylan ⊢ A ∈ ℤ ∧ M ∈ ℝ + → A mod M ∈ 0 M
4 3 adantr ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ A mod M = B → A mod M ∈ 0 M
5 eleq1 ⊢ A mod M = B → A mod M ∈ 0 M ↔ B ∈ 0 M
6 5 adantl ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ A mod M = B → A mod M ∈ 0 M ↔ B ∈ 0 M
7 4 6 mpbid ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ A mod M = B → B ∈ 0 M
8 simpll ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ B ∈ 0 M → A ∈ ℤ
9 simpr ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ B ∈ 0 M → B ∈ 0 M
10 simpr ⊢ A ∈ ℤ ∧ M ∈ ℝ + → M ∈ ℝ +
11 10 adantr ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ B ∈ 0 M → M ∈ ℝ +
12 modmuladd ⊢ A ∈ ℤ ∧ B ∈ 0 M ∧ M ∈ ℝ + → A mod M = B ↔ ∃ k ∈ ℤ A = k ⋅ M + B
13 8 9 11 12 syl3anc ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ B ∈ 0 M → A mod M = B ↔ ∃ k ∈ ℤ A = k ⋅ M + B
14 13 biimpd ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ B ∈ 0 M → A mod M = B → ∃ k ∈ ℤ A = k ⋅ M + B
15 14 impancom ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ A mod M = B → B ∈ 0 M → ∃ k ∈ ℤ A = k ⋅ M + B
16 7 15 mpd ⊢ A ∈ ℤ ∧ M ∈ ℝ + ∧ A mod M = B → ∃ k ∈ ℤ A = k ⋅ M + B
17 16 ex ⊢ A ∈ ℤ ∧ M ∈ ℝ + → A mod M = B → ∃ k ∈ ℤ A = k ⋅ M + B