MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  lcmgcd Structured version   Visualization version   GIF version

Theorem lcmgcd 16584
Description: The product of two numbers' least common multiple and greatest common divisor is the absolute value of the product of the two numbers. In particular, that absolute value is the least common multiple of two coprime numbers, for which (𝑀 gcd 𝑁) = 1.

Multiple methods exist for proving this, and it is often proven either as a consequence of the fundamental theorem of arithmetic 1arith 16905 or of Bézout's identity bezout 16520; see e.g., https://proofwiki.org/wiki/Product_of_GCD_and_LCM 16520 and https://math.stackexchange.com/a/470827 16520. This proof uses the latter to first confirm it for positive integers 𝑀 and 𝑁 (the "Second Proof" in the above Stack Exchange page), then shows that implies it for all nonzero integer inputs, then finally uses lcm0val 16571 to show it applies when either or both inputs are zero. (Contributed by Steve Rodriguez, 20-Jan-2020.)

Assertion
Ref Expression
lcmgcd ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))

Proof of Theorem lcmgcd
StepHypRef Expression
1 gcdcl 16483 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) ∈ ℕ0)
21nn0cnd 12512 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) ∈ ℂ)
32mul02d 11379 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 · (𝑀 gcd 𝑁)) = 0)
4 0z 12547 . . . . . . . . . 10 0 ∈ ℤ
5 lcmcom 16570 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → (𝑁 lcm 0) = (0 lcm 𝑁))
64, 5mpan2 691 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑁 lcm 0) = (0 lcm 𝑁))
7 lcm0val 16571 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑁 lcm 0) = 0)
86, 7eqtr3d 2767 . . . . . . . 8 (𝑁 ∈ ℤ → (0 lcm 𝑁) = 0)
98adantl 481 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 lcm 𝑁) = 0)
109oveq1d 7405 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (0 · (𝑀 gcd 𝑁)))
11 zcn 12541 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
1211adantl 481 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑁 ∈ ℂ)
1312mul02d 11379 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 · 𝑁) = 0)
1413abs00bd 15264 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(0 · 𝑁)) = 0)
153, 10, 143eqtr4d 2775 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(0 · 𝑁)))
1615adantr 480 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(0 · 𝑁)))
17 simpr 484 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → 𝑀 = 0)
1817oveq1d 7405 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (𝑀 lcm 𝑁) = (0 lcm 𝑁))
1918oveq1d 7405 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = ((0 lcm 𝑁) · (𝑀 gcd 𝑁)))
2017oveq1d 7405 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (𝑀 · 𝑁) = (0 · 𝑁))
2120fveq2d 6865 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (abs‘(𝑀 · 𝑁)) = (abs‘(0 · 𝑁)))
2216, 19, 213eqtr4d 2775 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
23 lcm0val 16571 . . . . . . . 8 (𝑀 ∈ ℤ → (𝑀 lcm 0) = 0)
2423adantr 480 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 lcm 0) = 0)
2524oveq1d 7405 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (0 · (𝑀 gcd 𝑁)))
26 zcn 12541 . . . . . . . . 9 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
2726adantr 480 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑀 ∈ ℂ)
2827mul01d 11380 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 · 0) = 0)
2928abs00bd 15264 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝑀 · 0)) = 0)
303, 25, 293eqtr4d 2775 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 0)))
3130adantr 480 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 0)))
32 simpr 484 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → 𝑁 = 0)
3332oveq2d 7406 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (𝑀 lcm 𝑁) = (𝑀 lcm 0))
3433oveq1d 7405 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = ((𝑀 lcm 0) · (𝑀 gcd 𝑁)))
3532oveq2d 7406 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (𝑀 · 𝑁) = (𝑀 · 0))
3635fveq2d 6865 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (abs‘(𝑀 · 𝑁)) = (abs‘(𝑀 · 0)))
3731, 34, 363eqtr4d 2775 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
3822, 37jaodan 959 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∨ 𝑁 = 0)) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
39 neanior 3019 . . . . 5 ((𝑀 ≠ 0 ∧ 𝑁 ≠ 0) ↔ ¬ (𝑀 = 0 ∨ 𝑁 = 0))
40 nnabscl 15299 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
41 nnabscl 15299 . . . . . . 7 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ∈ ℕ)
4240, 41anim12i 613 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ))
4342an4s 660 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 ≠ 0 ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ))
4439, 43sylan2br 595 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → ((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ))
45 lcmgcdlem 16583 . . . . 5 (((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ) → ((((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = (abs‘((abs‘𝑀) · (abs‘𝑁))) ∧ ((0 ∈ ℕ ∧ ((abs‘𝑀) ∥ 0 ∧ (abs‘𝑁) ∥ 0)) → ((abs‘𝑀) lcm (abs‘𝑁)) ∥ 0)))
4645simpld 494 . . . 4 (((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = (abs‘((abs‘𝑀) · (abs‘𝑁))))
4744, 46syl 17 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = (abs‘((abs‘𝑀) · (abs‘𝑁))))
48 lcmabs 16582 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) lcm (abs‘𝑁)) = (𝑀 lcm 𝑁))
49 gcdabs 16508 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) gcd (abs‘𝑁)) = (𝑀 gcd 𝑁))
5048, 49oveq12d 7408 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)))
5150adantr 480 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)))
52 absidm 15297 . . . . . . 7 (𝑀 ∈ ℂ → (abs‘(abs‘𝑀)) = (abs‘𝑀))
53 absidm 15297 . . . . . . 7 (𝑁 ∈ ℂ → (abs‘(abs‘𝑁)) = (abs‘𝑁))
5452, 53oveqan12d 7409 . . . . . 6 ((𝑀 ∈ ℂ ∧ 𝑁 ∈ ℂ) → ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))) = ((abs‘𝑀) · (abs‘𝑁)))
5526, 11, 54syl2an 596 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))) = ((abs‘𝑀) · (abs‘𝑁)))
56 nn0abscl 15285 . . . . . . . 8 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℕ0)
5756nn0cnd 12512 . . . . . . 7 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℂ)
5857adantr 480 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘𝑀) ∈ ℂ)
59 nn0abscl 15285 . . . . . . . 8 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℕ0)
6059nn0cnd 12512 . . . . . . 7 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℂ)
6160adantl 481 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘𝑁) ∈ ℂ)
6258, 61absmuld 15430 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))))
6327, 12absmuld 15430 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝑀 · 𝑁)) = ((abs‘𝑀) · (abs‘𝑁)))
6455, 62, 633eqtr4d 2775 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = (abs‘(𝑀 · 𝑁)))
6564adantr 480 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = (abs‘(𝑀 · 𝑁)))
6647, 51, 653eqtr3d 2773 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
6738, 66pm2.61dan 812 1 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 395  wo 847   = wceq 1540  wcel 2109  wne 2926   class class class wbr 5110  cfv 6514  (class class class)co 7390  cc 11073  0cc0 11075   · cmul 11080  cn 12193  cz 12536  abscabs 15207  cdvds 16229   gcd cgcd 16471   lcm clcm 16565
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2702  ax-sep 5254  ax-nul 5264  ax-pow 5323  ax-pr 5390  ax-un 7714  ax-cnex 11131  ax-resscn 11132  ax-1cn 11133  ax-icn 11134  ax-addcl 11135  ax-addrcl 11136  ax-mulcl 11137  ax-mulrcl 11138  ax-mulcom 11139  ax-addass 11140  ax-mulass 11141  ax-distr 11142  ax-i2m1 11143  ax-1ne0 11144  ax-1rid 11145  ax-rnegex 11146  ax-rrecex 11147  ax-cnre 11148  ax-pre-lttri 11149  ax-pre-lttrn 11150  ax-pre-ltadd 11151  ax-pre-mulgt0 11152  ax-pre-sup 11153
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2534  df-eu 2563  df-clab 2709  df-cleq 2722  df-clel 2804  df-nfc 2879  df-ne 2927  df-nel 3031  df-ral 3046  df-rex 3055  df-rmo 3356  df-reu 3357  df-rab 3409  df-v 3452  df-sbc 3757  df-csb 3866  df-dif 3920  df-un 3922  df-in 3924  df-ss 3934  df-pss 3937  df-nul 4300  df-if 4492  df-pw 4568  df-sn 4593  df-pr 4595  df-op 4599  df-uni 4875  df-iun 4960  df-br 5111  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5536  df-eprel 5541  df-po 5549  df-so 5550  df-fr 5594  df-we 5596  df-xp 5647  df-rel 5648  df-cnv 5649  df-co 5650  df-dm 5651  df-rn 5652  df-res 5653  df-ima 5654  df-pred 6277  df-ord 6338  df-on 6339  df-lim 6340  df-suc 6341  df-iota 6467  df-fun 6516  df-fn 6517  df-f 6518  df-f1 6519  df-fo 6520  df-f1o 6521  df-fv 6522  df-riota 7347  df-ov 7393  df-oprab 7394  df-mpo 7395  df-om 7846  df-2nd 7972  df-frecs 8263  df-wrecs 8294  df-recs 8343  df-rdg 8381  df-er 8674  df-en 8922  df-dom 8923  df-sdom 8924  df-sup 9400  df-inf 9401  df-pnf 11217  df-mnf 11218  df-xr 11219  df-ltxr 11220  df-le 11221  df-sub 11414  df-neg 11415  df-div 11843  df-nn 12194  df-2 12256  df-3 12257  df-n0 12450  df-z 12537  df-uz 12801  df-rp 12959  df-fl 13761  df-mod 13839  df-seq 13974  df-exp 14034  df-cj 15072  df-re 15073  df-im 15074  df-sqrt 15208  df-abs 15209  df-dvds 16230  df-gcd 16472  df-lcm 16567
This theorem is referenced by:  lcmid  16586  lcm1  16587  lcmgcdnn  16588  nzprmdif  44315
  Copyright terms: Public domain W3C validator