Metamath Proof Explorer


Theorem dvdsmulcr

Description: Cancellation law for the divides relation. (Contributed by Paul Chapman, 21-Mar-2011)

Ref Expression
Assertion dvdsmulcr ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑀 · 𝐾 ) ∥ ( 𝑁 · 𝐾 ) ↔ 𝑀𝑁 ) )

Proof

Step Hyp Ref Expression
1 zmulcl ( ( 𝑀 ∈ ℤ ∧ 𝐾 ∈ ℤ ) → ( 𝑀 · 𝐾 ) ∈ ℤ )
2 1 3adant2 ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝐾 ∈ ℤ ) → ( 𝑀 · 𝐾 ) ∈ ℤ )
3 zmulcl ( ( 𝑁 ∈ ℤ ∧ 𝐾 ∈ ℤ ) → ( 𝑁 · 𝐾 ) ∈ ℤ )
4 3 3adant1 ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝐾 ∈ ℤ ) → ( 𝑁 · 𝐾 ) ∈ ℤ )
5 2 4 jca ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝐾 ∈ ℤ ) → ( ( 𝑀 · 𝐾 ) ∈ ℤ ∧ ( 𝑁 · 𝐾 ) ∈ ℤ ) )
6 5 3adant3r ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑀 · 𝐾 ) ∈ ℤ ∧ ( 𝑁 · 𝐾 ) ∈ ℤ ) )
7 3simpa ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ) )
8 simpr ( ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ∧ 𝑥 ∈ ℤ ) → 𝑥 ∈ ℤ )
9 zcn ( 𝑥 ∈ ℤ → 𝑥 ∈ ℂ )
10 zcn ( 𝑀 ∈ ℤ → 𝑀 ∈ ℂ )
11 9 10 anim12i ( ( 𝑥 ∈ ℤ ∧ 𝑀 ∈ ℤ ) → ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) )
12 zcn ( 𝑁 ∈ ℤ → 𝑁 ∈ ℂ )
13 zcn ( 𝐾 ∈ ℤ → 𝐾 ∈ ℂ )
14 13 anim1i ( ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) → ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) )
15 mulass ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ 𝐾 ∈ ℂ ) → ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑥 · ( 𝑀 · 𝐾 ) ) )
16 15 3expa ( ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) ∧ 𝐾 ∈ ℂ ) → ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑥 · ( 𝑀 · 𝐾 ) ) )
17 16 adantrr ( ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) ∧ ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑥 · ( 𝑀 · 𝐾 ) ) )
18 17 3adant2 ( ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) ∧ 𝑁 ∈ ℂ ∧ ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑥 · ( 𝑀 · 𝐾 ) ) )
19 18 eqeq1d ( ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) ∧ 𝑁 ∈ ℂ ∧ ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) ) → ( ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ) )
20 mulcl ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) → ( 𝑥 · 𝑀 ) ∈ ℂ )
21 mulcan2 ( ( ( 𝑥 · 𝑀 ) ∈ ℂ ∧ 𝑁 ∈ ℂ ∧ ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) ) → ( ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
22 20 21 syl3an1 ( ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) ∧ 𝑁 ∈ ℂ ∧ ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) ) → ( ( ( 𝑥 · 𝑀 ) · 𝐾 ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
23 19 22 bitr3d ( ( ( 𝑥 ∈ ℂ ∧ 𝑀 ∈ ℂ ) ∧ 𝑁 ∈ ℂ ∧ ( 𝐾 ∈ ℂ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
24 11 12 14 23 syl3an ( ( ( 𝑥 ∈ ℤ ∧ 𝑀 ∈ ℤ ) ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
25 24 3expb ( ( ( 𝑥 ∈ ℤ ∧ 𝑀 ∈ ℤ ) ∧ ( 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
26 25 3impa ( ( 𝑥 ∈ ℤ ∧ 𝑀 ∈ ℤ ∧ ( 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
27 26 3coml ( ( 𝑀 ∈ ℤ ∧ ( 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ∧ 𝑥 ∈ ℤ ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
28 27 3expia ( ( 𝑀 ∈ ℤ ∧ ( 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ) → ( 𝑥 ∈ ℤ → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) ) )
29 28 3impb ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( 𝑥 ∈ ℤ → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) ) )
30 29 imp ( ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ∧ 𝑥 ∈ ℤ ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) ↔ ( 𝑥 · 𝑀 ) = 𝑁 ) )
31 30 biimpd ( ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) ∧ 𝑥 ∈ ℤ ) → ( ( 𝑥 · ( 𝑀 · 𝐾 ) ) = ( 𝑁 · 𝐾 ) → ( 𝑥 · 𝑀 ) = 𝑁 ) )
32 6 7 8 31 dvds1lem ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑀 · 𝐾 ) ∥ ( 𝑁 · 𝐾 ) → 𝑀𝑁 ) )
33 dvdsmulc ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 𝐾 ∈ ℤ ) → ( 𝑀𝑁 → ( 𝑀 · 𝐾 ) ∥ ( 𝑁 · 𝐾 ) ) )
34 33 3adant3r ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( 𝑀𝑁 → ( 𝑀 · 𝐾 ) ∥ ( 𝑁 · 𝐾 ) ) )
35 32 34 impbid ( ( 𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ ( 𝐾 ∈ ℤ ∧ 𝐾 ≠ 0 ) ) → ( ( 𝑀 · 𝐾 ) ∥ ( 𝑁 · 𝐾 ) ↔ 𝑀𝑁 ) )