Metamath Proof Explorer


Theorem moddiffl

Description: Value of the modulo operation rewritten to give two ways of expressing the quotient when " A is divided by B using Euclidean division." Multiplying both sides by B , this implies that A mod B differs from A by an integer multiple of B . (Contributed by Jeff Madsen, 17-Jun-2010) (Revised by Mario Carneiro, 6-Sep-2016)

Ref Expression
Assertion moddiffl ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ( ๐ด โˆ’ ( ๐ด mod ๐ต ) ) / ๐ต ) = ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) )

Proof

Step Hyp Ref Expression
1 modval โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ๐ด mod ๐ต ) = ( ๐ด โˆ’ ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) ) )
2 1 oveq2d โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ๐ด โˆ’ ( ๐ด mod ๐ต ) ) = ( ๐ด โˆ’ ( ๐ด โˆ’ ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) ) ) )
3 simpl โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ๐ด โˆˆ โ„ )
4 3 recnd โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ๐ด โˆˆ โ„‚ )
5 rpcn โŠข ( ๐ต โˆˆ โ„+ โ†’ ๐ต โˆˆ โ„‚ )
6 5 adantl โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ๐ต โˆˆ โ„‚ )
7 rerpdivcl โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ๐ด / ๐ต ) โˆˆ โ„ )
8 7 flcld โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) โˆˆ โ„ค )
9 8 zcnd โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) โˆˆ โ„‚ )
10 6 9 mulcld โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) โˆˆ โ„‚ )
11 4 10 nncand โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ๐ด โˆ’ ( ๐ด โˆ’ ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) ) ) = ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) )
12 2 11 eqtrd โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ๐ด โˆ’ ( ๐ด mod ๐ต ) ) = ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) )
13 12 oveq1d โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ( ๐ด โˆ’ ( ๐ด mod ๐ต ) ) / ๐ต ) = ( ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) / ๐ต ) )
14 rpne0 โŠข ( ๐ต โˆˆ โ„+ โ†’ ๐ต โ‰  0 )
15 14 adantl โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ๐ต โ‰  0 )
16 9 6 15 divcan3d โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ( ๐ต ยท ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) ) / ๐ต ) = ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) )
17 13 16 eqtrd โŠข ( ( ๐ด โˆˆ โ„ โˆง ๐ต โˆˆ โ„+ ) โ†’ ( ( ๐ด โˆ’ ( ๐ด mod ๐ต ) ) / ๐ต ) = ( โŒŠ โ€˜ ( ๐ด / ๐ต ) ) )