Step |
Hyp |
Ref |
Expression |
1 |
|
zre |
⊢ ( 𝐴 ∈ ℤ → 𝐴 ∈ ℝ ) |
2 |
|
modelico |
⊢ ( ( 𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+ ) → ( 𝐴 mod 𝑀 ) ∈ ( 0 [,) 𝑀 ) ) |
3 |
1 2
|
sylan |
⊢ ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) → ( 𝐴 mod 𝑀 ) ∈ ( 0 [,) 𝑀 ) ) |
4 |
3
|
adantr |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ ( 𝐴 mod 𝑀 ) = 𝐵 ) → ( 𝐴 mod 𝑀 ) ∈ ( 0 [,) 𝑀 ) ) |
5 |
|
eleq1 |
⊢ ( ( 𝐴 mod 𝑀 ) = 𝐵 → ( ( 𝐴 mod 𝑀 ) ∈ ( 0 [,) 𝑀 ) ↔ 𝐵 ∈ ( 0 [,) 𝑀 ) ) ) |
6 |
5
|
adantl |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ ( 𝐴 mod 𝑀 ) = 𝐵 ) → ( ( 𝐴 mod 𝑀 ) ∈ ( 0 [,) 𝑀 ) ↔ 𝐵 ∈ ( 0 [,) 𝑀 ) ) ) |
7 |
4 6
|
mpbid |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ ( 𝐴 mod 𝑀 ) = 𝐵 ) → 𝐵 ∈ ( 0 [,) 𝑀 ) ) |
8 |
|
simpll |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ 𝐵 ∈ ( 0 [,) 𝑀 ) ) → 𝐴 ∈ ℤ ) |
9 |
|
simpr |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ 𝐵 ∈ ( 0 [,) 𝑀 ) ) → 𝐵 ∈ ( 0 [,) 𝑀 ) ) |
10 |
|
simpr |
⊢ ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) → 𝑀 ∈ ℝ+ ) |
11 |
10
|
adantr |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ 𝐵 ∈ ( 0 [,) 𝑀 ) ) → 𝑀 ∈ ℝ+ ) |
12 |
|
modmuladd |
⊢ ( ( 𝐴 ∈ ℤ ∧ 𝐵 ∈ ( 0 [,) 𝑀 ) ∧ 𝑀 ∈ ℝ+ ) → ( ( 𝐴 mod 𝑀 ) = 𝐵 ↔ ∃ 𝑘 ∈ ℤ 𝐴 = ( ( 𝑘 · 𝑀 ) + 𝐵 ) ) ) |
13 |
8 9 11 12
|
syl3anc |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ 𝐵 ∈ ( 0 [,) 𝑀 ) ) → ( ( 𝐴 mod 𝑀 ) = 𝐵 ↔ ∃ 𝑘 ∈ ℤ 𝐴 = ( ( 𝑘 · 𝑀 ) + 𝐵 ) ) ) |
14 |
13
|
biimpd |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ 𝐵 ∈ ( 0 [,) 𝑀 ) ) → ( ( 𝐴 mod 𝑀 ) = 𝐵 → ∃ 𝑘 ∈ ℤ 𝐴 = ( ( 𝑘 · 𝑀 ) + 𝐵 ) ) ) |
15 |
14
|
impancom |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ ( 𝐴 mod 𝑀 ) = 𝐵 ) → ( 𝐵 ∈ ( 0 [,) 𝑀 ) → ∃ 𝑘 ∈ ℤ 𝐴 = ( ( 𝑘 · 𝑀 ) + 𝐵 ) ) ) |
16 |
7 15
|
mpd |
⊢ ( ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) ∧ ( 𝐴 mod 𝑀 ) = 𝐵 ) → ∃ 𝑘 ∈ ℤ 𝐴 = ( ( 𝑘 · 𝑀 ) + 𝐵 ) ) |
17 |
16
|
ex |
⊢ ( ( 𝐴 ∈ ℤ ∧ 𝑀 ∈ ℝ+ ) → ( ( 𝐴 mod 𝑀 ) = 𝐵 → ∃ 𝑘 ∈ ℤ 𝐴 = ( ( 𝑘 · 𝑀 ) + 𝐵 ) ) ) |