Metamath Proof Explorer


Theorem 4sqlem5

Description: Lemma for 4sq . (Contributed by Mario Carneiro, 15-Jul-2014)

Ref Expression
Hypotheses 4sqlem5.2 ( 𝜑𝐴 ∈ ℤ )
4sqlem5.3 ( 𝜑𝑀 ∈ ℕ )
4sqlem5.4 𝐵 = ( ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) − ( 𝑀 / 2 ) )
Assertion 4sqlem5 ( 𝜑 → ( 𝐵 ∈ ℤ ∧ ( ( 𝐴𝐵 ) / 𝑀 ) ∈ ℤ ) )

Proof

Step Hyp Ref Expression
1 4sqlem5.2 ( 𝜑𝐴 ∈ ℤ )
2 4sqlem5.3 ( 𝜑𝑀 ∈ ℕ )
3 4sqlem5.4 𝐵 = ( ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) − ( 𝑀 / 2 ) )
4 1 zcnd ( 𝜑𝐴 ∈ ℂ )
5 1 zred ( 𝜑𝐴 ∈ ℝ )
6 2 nnred ( 𝜑𝑀 ∈ ℝ )
7 6 rehalfcld ( 𝜑 → ( 𝑀 / 2 ) ∈ ℝ )
8 5 7 readdcld ( 𝜑 → ( 𝐴 + ( 𝑀 / 2 ) ) ∈ ℝ )
9 2 nnrpd ( 𝜑𝑀 ∈ ℝ+ )
10 8 9 modcld ( 𝜑 → ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ∈ ℝ )
11 10 recnd ( 𝜑 → ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ∈ ℂ )
12 7 recnd ( 𝜑 → ( 𝑀 / 2 ) ∈ ℂ )
13 11 12 subcld ( 𝜑 → ( ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) − ( 𝑀 / 2 ) ) ∈ ℂ )
14 3 13 eqeltrid ( 𝜑𝐵 ∈ ℂ )
15 4 14 nncand ( 𝜑 → ( 𝐴 − ( 𝐴𝐵 ) ) = 𝐵 )
16 4 14 subcld ( 𝜑 → ( 𝐴𝐵 ) ∈ ℂ )
17 6 recnd ( 𝜑𝑀 ∈ ℂ )
18 2 nnne0d ( 𝜑𝑀 ≠ 0 )
19 16 17 18 divcan1d ( 𝜑 → ( ( ( 𝐴𝐵 ) / 𝑀 ) · 𝑀 ) = ( 𝐴𝐵 ) )
20 3 oveq2i ( 𝐴𝐵 ) = ( 𝐴 − ( ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) − ( 𝑀 / 2 ) ) )
21 4 11 12 subsub3d ( 𝜑 → ( 𝐴 − ( ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) − ( 𝑀 / 2 ) ) ) = ( ( 𝐴 + ( 𝑀 / 2 ) ) − ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ) )
22 20 21 eqtrid ( 𝜑 → ( 𝐴𝐵 ) = ( ( 𝐴 + ( 𝑀 / 2 ) ) − ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ) )
23 22 oveq1d ( 𝜑 → ( ( 𝐴𝐵 ) / 𝑀 ) = ( ( ( 𝐴 + ( 𝑀 / 2 ) ) − ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ) / 𝑀 ) )
24 moddifz ( ( ( 𝐴 + ( 𝑀 / 2 ) ) ∈ ℝ ∧ 𝑀 ∈ ℝ+ ) → ( ( ( 𝐴 + ( 𝑀 / 2 ) ) − ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ) / 𝑀 ) ∈ ℤ )
25 8 9 24 syl2anc ( 𝜑 → ( ( ( 𝐴 + ( 𝑀 / 2 ) ) − ( ( 𝐴 + ( 𝑀 / 2 ) ) mod 𝑀 ) ) / 𝑀 ) ∈ ℤ )
26 23 25 eqeltrd ( 𝜑 → ( ( 𝐴𝐵 ) / 𝑀 ) ∈ ℤ )
27 2 nnzd ( 𝜑𝑀 ∈ ℤ )
28 26 27 zmulcld ( 𝜑 → ( ( ( 𝐴𝐵 ) / 𝑀 ) · 𝑀 ) ∈ ℤ )
29 19 28 eqeltrrd ( 𝜑 → ( 𝐴𝐵 ) ∈ ℤ )
30 1 29 zsubcld ( 𝜑 → ( 𝐴 − ( 𝐴𝐵 ) ) ∈ ℤ )
31 15 30 eqeltrrd ( 𝜑𝐵 ∈ ℤ )
32 31 26 jca ( 𝜑 → ( 𝐵 ∈ ℤ ∧ ( ( 𝐴𝐵 ) / 𝑀 ) ∈ ℤ ) )