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

Theorem lcmgcd 16534
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 16855 or of Bézout's identity bezout 16470; see e.g., https://proofwiki.org/wiki/Product_of_GCD_and_LCM 16470 and https://math.stackexchange.com/a/470827 16470. 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 16521 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 16433 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) ∈ ℕ0)
21nn0cnd 12464 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) ∈ ℂ)
32mul02d 11331 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 · (𝑀 gcd 𝑁)) = 0)
4 0z 12499 . . . . . . . . . 10 0 ∈ ℤ
5 lcmcom 16520 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → (𝑁 lcm 0) = (0 lcm 𝑁))
64, 5mpan2 691 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑁 lcm 0) = (0 lcm 𝑁))
7 lcm0val 16521 . . . . . . . . 9 (𝑁 ∈ ℤ → (𝑁 lcm 0) = 0)
86, 7eqtr3d 2773 . . . . . . . 8 (𝑁 ∈ ℤ → (0 lcm 𝑁) = 0)
98adantl 481 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 lcm 𝑁) = 0)
109oveq1d 7373 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (0 · (𝑀 gcd 𝑁)))
11 zcn 12493 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
1211adantl 481 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑁 ∈ ℂ)
1312mul02d 11331 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 · 𝑁) = 0)
1413abs00bd 15214 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(0 · 𝑁)) = 0)
153, 10, 143eqtr4d 2781 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(0 · 𝑁)))
1615adantr 480 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((0 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(0 · 𝑁)))
17 simpr 484 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → 𝑀 = 0)
1817oveq1d 7373 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (𝑀 lcm 𝑁) = (0 lcm 𝑁))
1918oveq1d 7373 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = ((0 lcm 𝑁) · (𝑀 gcd 𝑁)))
2017oveq1d 7373 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (𝑀 · 𝑁) = (0 · 𝑁))
2120fveq2d 6838 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → (abs‘(𝑀 · 𝑁)) = (abs‘(0 · 𝑁)))
2216, 19, 213eqtr4d 2781 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
23 lcm0val 16521 . . . . . . . 8 (𝑀 ∈ ℤ → (𝑀 lcm 0) = 0)
2423adantr 480 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 lcm 0) = 0)
2524oveq1d 7373 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (0 · (𝑀 gcd 𝑁)))
26 zcn 12493 . . . . . . . . 9 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
2726adantr 480 . . . . . . . 8 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → 𝑀 ∈ ℂ)
2827mul01d 11332 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 · 0) = 0)
2928abs00bd 15214 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝑀 · 0)) = 0)
303, 25, 293eqtr4d 2781 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 0)))
3130adantr 480 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 0) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 0)))
32 simpr 484 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → 𝑁 = 0)
3332oveq2d 7374 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (𝑀 lcm 𝑁) = (𝑀 lcm 0))
3433oveq1d 7373 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = ((𝑀 lcm 0) · (𝑀 gcd 𝑁)))
3532oveq2d 7374 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (𝑀 · 𝑁) = (𝑀 · 0))
3635fveq2d 6838 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → (abs‘(𝑀 · 𝑁)) = (abs‘(𝑀 · 0)))
3731, 34, 363eqtr4d 2781 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 = 0) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
3822, 37jaodan 959 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∨ 𝑁 = 0)) → ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)) = (abs‘(𝑀 · 𝑁)))
39 neanior 3025 . . . . 5 ((𝑀 ≠ 0 ∧ 𝑁 ≠ 0) ↔ ¬ (𝑀 = 0 ∨ 𝑁 = 0))
40 nnabscl 15249 . . . . . . 7 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
41 nnabscl 15249 . . . . . . 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 16533 . . . . 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 16532 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) lcm (abs‘𝑁)) = (𝑀 lcm 𝑁))
49 gcdabs 16458 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) gcd (abs‘𝑁)) = (𝑀 gcd 𝑁))
5048, 49oveq12d 7376 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)))
5150adantr 480 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (((abs‘𝑀) lcm (abs‘𝑁)) · ((abs‘𝑀) gcd (abs‘𝑁))) = ((𝑀 lcm 𝑁) · (𝑀 gcd 𝑁)))
52 absidm 15247 . . . . . . 7 (𝑀 ∈ ℂ → (abs‘(abs‘𝑀)) = (abs‘𝑀))
53 absidm 15247 . . . . . . 7 (𝑁 ∈ ℂ → (abs‘(abs‘𝑁)) = (abs‘𝑁))
5452, 53oveqan12d 7377 . . . . . 6 ((𝑀 ∈ ℂ ∧ 𝑁 ∈ ℂ) → ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))) = ((abs‘𝑀) · (abs‘𝑁)))
5526, 11, 54syl2an 596 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))) = ((abs‘𝑀) · (abs‘𝑁)))
56 nn0abscl 15235 . . . . . . . 8 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℕ0)
5756nn0cnd 12464 . . . . . . 7 (𝑀 ∈ ℤ → (abs‘𝑀) ∈ ℂ)
5857adantr 480 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘𝑀) ∈ ℂ)
59 nn0abscl 15235 . . . . . . . 8 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℕ0)
6059nn0cnd 12464 . . . . . . 7 (𝑁 ∈ ℤ → (abs‘𝑁) ∈ ℂ)
6160adantl 481 . . . . . 6 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘𝑁) ∈ ℂ)
6258, 61absmuld 15380 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = ((abs‘(abs‘𝑀)) · (abs‘(abs‘𝑁))))
6327, 12absmuld 15380 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝑀 · 𝑁)) = ((abs‘𝑀) · (abs‘𝑁)))
6455, 62, 633eqtr4d 2781 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = (abs‘(𝑀 · 𝑁)))
6564adantr 480 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∨ 𝑁 = 0)) → (abs‘((abs‘𝑀) · (abs‘𝑁))) = (abs‘(𝑀 · 𝑁)))
6647, 51, 653eqtr3d 2779 . 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 1541  wcel 2113  wne 2932   class class class wbr 5098  cfv 6492  (class class class)co 7358  cc 11024  0cc0 11026   · cmul 11031  cn 12145  cz 12488  abscabs 15157  cdvds 16179   gcd cgcd 16421   lcm clcm 16515
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2115  ax-9 2123  ax-10 2146  ax-11 2162  ax-12 2184  ax-ext 2708  ax-sep 5241  ax-nul 5251  ax-pow 5310  ax-pr 5377  ax-un 7680  ax-cnex 11082  ax-resscn 11083  ax-1cn 11084  ax-icn 11085  ax-addcl 11086  ax-addrcl 11087  ax-mulcl 11088  ax-mulrcl 11089  ax-mulcom 11090  ax-addass 11091  ax-mulass 11092  ax-distr 11093  ax-i2m1 11094  ax-1ne0 11095  ax-1rid 11096  ax-rnegex 11097  ax-rrecex 11098  ax-cnre 11099  ax-pre-lttri 11100  ax-pre-lttrn 11101  ax-pre-ltadd 11102  ax-pre-mulgt0 11103  ax-pre-sup 11104
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2539  df-eu 2569  df-clab 2715  df-cleq 2728  df-clel 2811  df-nfc 2885  df-ne 2933  df-nel 3037  df-ral 3052  df-rex 3061  df-rmo 3350  df-reu 3351  df-rab 3400  df-v 3442  df-sbc 3741  df-csb 3850  df-dif 3904  df-un 3906  df-in 3908  df-ss 3918  df-pss 3921  df-nul 4286  df-if 4480  df-pw 4556  df-sn 4581  df-pr 4583  df-op 4587  df-uni 4864  df-iun 4948  df-br 5099  df-opab 5161  df-mpt 5180  df-tr 5206  df-id 5519  df-eprel 5524  df-po 5532  df-so 5533  df-fr 5577  df-we 5579  df-xp 5630  df-rel 5631  df-cnv 5632  df-co 5633  df-dm 5634  df-rn 5635  df-res 5636  df-ima 5637  df-pred 6259  df-ord 6320  df-on 6321  df-lim 6322  df-suc 6323  df-iota 6448  df-fun 6494  df-fn 6495  df-f 6496  df-f1 6497  df-fo 6498  df-f1o 6499  df-fv 6500  df-riota 7315  df-ov 7361  df-oprab 7362  df-mpo 7363  df-om 7809  df-2nd 7934  df-frecs 8223  df-wrecs 8254  df-recs 8303  df-rdg 8341  df-er 8635  df-en 8884  df-dom 8885  df-sdom 8886  df-sup 9345  df-inf 9346  df-pnf 11168  df-mnf 11169  df-xr 11170  df-ltxr 11171  df-le 11172  df-sub 11366  df-neg 11367  df-div 11795  df-nn 12146  df-2 12208  df-3 12209  df-n0 12402  df-z 12489  df-uz 12752  df-rp 12906  df-fl 13712  df-mod 13790  df-seq 13925  df-exp 13985  df-cj 15022  df-re 15023  df-im 15024  df-sqrt 15158  df-abs 15159  df-dvds 16180  df-gcd 16422  df-lcm 16517
This theorem is referenced by:  lcmid  16536  lcm1  16537  lcmgcdnn  16538  nzprmdif  44556
  Copyright terms: Public domain W3C validator