Metamath Proof Explorer


Theorem modvalp1

Description: The value of the modulo operation (expressed with sum of denominator and nominator). (Contributed by Alexander van der Vekens, 14-Apr-2018)

Ref Expression
Assertion modvalp1 ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ( 𝐴 + 𝐵 ) − ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) + 1 ) · 𝐵 ) ) = ( 𝐴 mod 𝐵 ) )

Proof

Step Hyp Ref Expression
1 recn ( 𝐴 ∈ ℝ → 𝐴 ∈ ℂ )
2 1 adantr ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → 𝐴 ∈ ℂ )
3 refldivcl ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) ∈ ℝ )
4 3 recnd ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) ∈ ℂ )
5 rpcn ( 𝐵 ∈ ℝ+𝐵 ∈ ℂ )
6 5 adantl ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → 𝐵 ∈ ℂ )
7 4 6 mulcld ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) · 𝐵 ) ∈ ℂ )
8 2 7 6 pnpcan2d ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ( 𝐴 + 𝐵 ) − ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) · 𝐵 ) + 𝐵 ) ) = ( 𝐴 − ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) · 𝐵 ) ) )
9 4 6 adddirp1d ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) + 1 ) · 𝐵 ) = ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) · 𝐵 ) + 𝐵 ) )
10 9 oveq2d ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ( 𝐴 + 𝐵 ) − ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) + 1 ) · 𝐵 ) ) = ( ( 𝐴 + 𝐵 ) − ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) · 𝐵 ) + 𝐵 ) ) )
11 modvalr ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( 𝐴 mod 𝐵 ) = ( 𝐴 − ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) · 𝐵 ) ) )
12 8 10 11 3eqtr4d ( ( 𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+ ) → ( ( 𝐴 + 𝐵 ) − ( ( ( ⌊ ‘ ( 𝐴 / 𝐵 ) ) + 1 ) · 𝐵 ) ) = ( 𝐴 mod 𝐵 ) )