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

Theorem lcmgcd 16483
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 16799 or of Bézout's identity bezout 16424; see e.g., https://proofwiki.org/wiki/Product_of_GCD_and_LCM 16424 and https://math.stackexchange.com/a/470827 16424. 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 16470 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 16386 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) ∈ ℕ0)
21nn0cnd 12475 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) ∈ ℂ)
32mul02d 11353 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 · (𝑀 gcd 𝑁)) = 0)
4 0z 12510 . . . . . . . . . 10 0 ∈ ℤ
5 lcmcom 16469 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → (𝑁 lcm 0) = (0 lcm 𝑁))
64, 5mpan2 689 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑁 lcm 0) = (0 lcm 𝑁))
7 lcm0val 16470 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑁 lcm 0) = 0)
86, 7eqtr3d 2778 . . . . . . . 8 (𝑁 ∈ ℤ → (0 lcm 𝑁) = 0)
98adantl 482 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 lcm 𝑁) = 0)
109oveq1d 7372 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (0 · (𝑀 gcd 𝑁)))
11 zcn 12504 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
1211adantl 482 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑁 ∈ ℂ)
1312mul02d 11353 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 · 𝑁) = 0)
1413abs00bd 15176 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(0 · 𝑁)) = 0)
153, 10, 143eqtr4d 2786 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(0 · 𝑁)))
1615adantr 481 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(0 · 𝑁)))
17 simpr 485 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → 𝑀 = 0)
1817oveq1d 7372 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (𝑀 lcm 𝑁) = (0 lcm 𝑁))
1918oveq1d 7372 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = ((0 lcm 𝑁) · (𝑀 gcd 𝑁)))
2017oveq1d 7372 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (𝑀 · 𝑁) = (0 · 𝑁))
2120fveq2d 6846 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (abs‘(𝑀 · 𝑁)) = (abs‘(0 · 𝑁)))
2216, 19, 213eqtr4d 2786 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
23 lcm0val 16470 . . . . . . . 8 (𝑀 ∈ ℤ → (𝑀 lcm 0) = 0)
2423adantr 481 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 lcm 0) = 0)
2524oveq1d 7372 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (0 · (𝑀 gcd 𝑁)))
26 zcn 12504 . . . . . . . . 9 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
2726adantr 481 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑀 ∈ ℂ)
2827mul01d 11354 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 · 0) = 0)
2928abs00bd 15176 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝑀 · 0)) = 0)
303, 25, 293eqtr4d 2786 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 0)))
3130adantr 481 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 0)))
32 simpr 485 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → 𝑁 = 0)
3332oveq2d 7373 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (𝑀 lcm 𝑁) = (𝑀 lcm 0))
3433oveq1d 7372 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = ((𝑀 lcm 0) · (𝑀 gcd 𝑁)))
3532oveq2d 7373 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (𝑀 · 𝑁) = (𝑀 · 0))
3635fveq2d 6846 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (abs‘(𝑀 · 𝑁)) = (abs‘(𝑀 · 0)))
3731, 34, 363eqtr4d 2786 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
3822, 37jaodan 956 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∨ 𝑁 = 0)) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
39 neanior 3037 . . . . 5 ((𝑀 ≠ 0 ∧ 𝑁 ≠ 0) ↔ ¬ (𝑀 = 0 ∨ 𝑁 = 0))
40 nnabscl 15210 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
41 nnabscl 15210 . . . . . . 7 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ∈ ℕ)
4240, 41anim12i 613 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ))
4342an4s 658 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 ≠ 0 ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ))
4439, 43sylan2br 595 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → ((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ))
45 lcmgcdlem 16482 . . . . 5 (((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ) → ((((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = (abs‘((abs‘𝑀) · (abs‘𝑁))) ∧ ((0 ∈ ℕ ∧ ((abs‘𝑀) ∥ 0 ∧ (abs‘𝑁) ∥ 0)) → ((abs‘𝑀) lcm (abs‘𝑁)) ∥ 0)))
4645simpld 495 . . . 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 16481 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) lcm (abs‘𝑁)) = (𝑀 lcm 𝑁))
49 gcdabs 16411 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) gcd (abs‘𝑁)) = (𝑀 gcd 𝑁))
5048, 49oveq12d 7375 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)))
5150adantr 481 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)))
52 absidm 15208 . . . . . . 7 (𝑀 ∈ ℂ → (abs‘(abs‘𝑀)) = (abs‘𝑀))
53 absidm 15208 . . . . . . 7 (𝑁 ∈ ℂ → (abs‘(abs‘𝑁)) = (abs‘𝑁))
5452, 53oveqan12d 7376 . . . . . 6 ((𝑀 ∈ ℂ ∧ 𝑁 ∈ ℂ) → ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))) = ((abs‘𝑀) · (abs‘𝑁)))
5526, 11, 54syl2an 596 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))) = ((abs‘𝑀) · (abs‘𝑁)))
56 nn0abscl 15197 . . . . . . . 8 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℕ0)
5756nn0cnd 12475 . . . . . . 7 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℂ)
5857adantr 481 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘𝑀) ∈ ℂ)
59 nn0abscl 15197 . . . . . . . 8 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℕ0)
6059nn0cnd 12475 . . . . . . 7 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℂ)
6160adantl 482 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘𝑁) ∈ ℂ)
6258, 61absmuld 15339 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))))
6327, 12absmuld 15339 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝑀 · 𝑁)) = ((abs‘𝑀) · (abs‘𝑁)))
6455, 62, 633eqtr4d 2786 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = (abs‘(𝑀 · 𝑁)))
6564adantr 481 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = (abs‘(𝑀 · 𝑁)))
6647, 51, 653eqtr3d 2784 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
6738, 66pm2.61dan 811 1 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 396  wo 845   = wceq 1541  wcel 2106  wne 2943   class class class wbr 5105  cfv 6496  (class class class)co 7357  cc 11049  0cc0 11051   · cmul 11056  cn 12153  cz 12499  abscabs 15119  cdvds 16136   gcd cgcd 16374   lcm clcm 16464
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2707  ax-sep 5256  ax-nul 5263  ax-pow 5320  ax-pr 5384  ax-un 7672  ax-cnex 11107  ax-resscn 11108  ax-1cn 11109  ax-icn 11110  ax-addcl 11111  ax-addrcl 11112  ax-mulcl 11113  ax-mulrcl 11114  ax-mulcom 11115  ax-addass 11116  ax-mulass 11117  ax-distr 11118  ax-i2m1 11119  ax-1ne0 11120  ax-1rid 11121  ax-rnegex 11122  ax-rrecex 11123  ax-cnre 11124  ax-pre-lttri 11125  ax-pre-lttrn 11126  ax-pre-ltadd 11127  ax-pre-mulgt0 11128  ax-pre-sup 11129
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2889  df-ne 2944  df-nel 3050  df-ral 3065  df-rex 3074  df-rmo 3353  df-reu 3354  df-rab 3408  df-v 3447  df-sbc 3740  df-csb 3856  df-dif 3913  df-un 3915  df-in 3917  df-ss 3927  df-pss 3929  df-nul 4283  df-if 4487  df-pw 4562  df-sn 4587  df-pr 4589  df-op 4593  df-uni 4866  df-iun 4956  df-br 5106  df-opab 5168  df-mpt 5189  df-tr 5223  df-id 5531  df-eprel 5537  df-po 5545  df-so 5546  df-fr 5588  df-we 5590  df-xp 5639  df-rel 5640  df-cnv 5641  df-co 5642  df-dm 5643  df-rn 5644  df-res 5645  df-ima 5646  df-pred 6253  df-ord 6320  df-on 6321  df-lim 6322  df-suc 6323  df-iota 6448  df-fun 6498  df-fn 6499  df-f 6500  df-f1 6501  df-fo 6502  df-f1o 6503  df-fv 6504  df-riota 7313  df-ov 7360  df-oprab 7361  df-mpo 7362  df-om 7803  df-2nd 7922  df-frecs 8212  df-wrecs 8243  df-recs 8317  df-rdg 8356  df-er 8648  df-en 8884  df-dom 8885  df-sdom 8886  df-sup 9378  df-inf 9379  df-pnf 11191  df-mnf 11192  df-xr 11193  df-ltxr 11194  df-le 11195  df-sub 11387  df-neg 11388  df-div 11813  df-nn 12154  df-2 12216  df-3 12217  df-n0 12414  df-z 12500  df-uz 12764  df-rp 12916  df-fl 13697  df-mod 13775  df-seq 13907  df-exp 13968  df-cj 14984  df-re 14985  df-im 14986  df-sqrt 15120  df-abs 15121  df-dvds 16137  df-gcd 16375  df-lcm 16466
This theorem is referenced by:  lcmid  16485  lcm1  16486  lcmgcdnn  16487  nzprmdif  42589
  Copyright terms: Public domain W3C validator