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

Theorem mulcanpi 9481
Description: Multiplication cancellation law for positive integers. (Contributed by NM, 4-Feb-1996.) (Revised by Mario Carneiro, 10-May-2013.) (New usage is discouraged.)
Assertion
Ref Expression
mulcanpi ((𝐴N𝐵N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) ↔ 𝐵 = 𝐶))

Proof of Theorem mulcanpi
StepHypRef Expression
1 mulclpi 9474 . . . . . . . . . 10 ((𝐴N𝐵N) → (𝐴 ·N 𝐵) ∈ N)
2 eleq1 2580 . . . . . . . . . 10 ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → ((𝐴 ·N 𝐵) ∈ N ↔ (𝐴 ·N 𝐶) ∈ N))
31, 2syl5ib 232 . . . . . . . . 9 ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → ((𝐴N𝐵N) → (𝐴 ·N 𝐶) ∈ N))
43imp 443 . . . . . . . 8 (((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) ∧ (𝐴N𝐵N)) → (𝐴 ·N 𝐶) ∈ N)
5 dmmulpi 9472 . . . . . . . . 9 dom ·N = (N × N)
6 0npi 9463 . . . . . . . . 9 ¬ ∅ ∈ N
75, 6ndmovrcl 6599 . . . . . . . 8 ((𝐴 ·N 𝐶) ∈ N → (𝐴N𝐶N))
8 simpr 475 . . . . . . . 8 ((𝐴N𝐶N) → 𝐶N)
94, 7, 83syl 18 . . . . . . 7 (((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) ∧ (𝐴N𝐵N)) → 𝐶N)
10 mulpiord 9466 . . . . . . . . . 10 ((𝐴N𝐵N) → (𝐴 ·N 𝐵) = (𝐴 ·𝑜 𝐵))
1110adantr 479 . . . . . . . . 9 (((𝐴N𝐵N) ∧ 𝐶N) → (𝐴 ·N 𝐵) = (𝐴 ·𝑜 𝐵))
12 mulpiord 9466 . . . . . . . . . 10 ((𝐴N𝐶N) → (𝐴 ·N 𝐶) = (𝐴 ·𝑜 𝐶))
1312adantlr 746 . . . . . . . . 9 (((𝐴N𝐵N) ∧ 𝐶N) → (𝐴 ·N 𝐶) = (𝐴 ·𝑜 𝐶))
1411, 13eqeq12d 2529 . . . . . . . 8 (((𝐴N𝐵N) ∧ 𝐶N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) ↔ (𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶)))
15 pinn 9459 . . . . . . . . . . . . 13 (𝐴N𝐴 ∈ ω)
16 pinn 9459 . . . . . . . . . . . . 13 (𝐵N𝐵 ∈ ω)
17 pinn 9459 . . . . . . . . . . . . 13 (𝐶N𝐶 ∈ ω)
18 elni2 9458 . . . . . . . . . . . . . . . 16 (𝐴N ↔ (𝐴 ∈ ω ∧ ∅ ∈ 𝐴))
1918simprbi 478 . . . . . . . . . . . . . . 15 (𝐴N → ∅ ∈ 𝐴)
20 nnmcan 7481 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) ∧ ∅ ∈ 𝐴) → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) ↔ 𝐵 = 𝐶))
2120biimpd 217 . . . . . . . . . . . . . . 15 (((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) ∧ ∅ ∈ 𝐴) → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶))
2219, 21sylan2 489 . . . . . . . . . . . . . 14 (((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) ∧ 𝐴N) → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶))
2322ex 448 . . . . . . . . . . . . 13 ((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) → (𝐴N → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶)))
2415, 16, 17, 23syl3an 1359 . . . . . . . . . . . 12 ((𝐴N𝐵N𝐶N) → (𝐴N → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶)))
25243exp 1255 . . . . . . . . . . 11 (𝐴N → (𝐵N → (𝐶N → (𝐴N → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶)))))
2625com4r 91 . . . . . . . . . 10 (𝐴N → (𝐴N → (𝐵N → (𝐶N → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶)))))
2726pm2.43i 49 . . . . . . . . 9 (𝐴N → (𝐵N → (𝐶N → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶))))
2827imp31 446 . . . . . . . 8 (((𝐴N𝐵N) ∧ 𝐶N) → ((𝐴 ·𝑜 𝐵) = (𝐴 ·𝑜 𝐶) → 𝐵 = 𝐶))
2914, 28sylbid 228 . . . . . . 7 (((𝐴N𝐵N) ∧ 𝐶N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → 𝐵 = 𝐶))
309, 29sylan2 489 . . . . . 6 (((𝐴N𝐵N) ∧ ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) ∧ (𝐴N𝐵N))) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → 𝐵 = 𝐶))
3130exp32 628 . . . . 5 ((𝐴N𝐵N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → ((𝐴N𝐵N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → 𝐵 = 𝐶))))
3231imp4b 610 . . . 4 (((𝐴N𝐵N) ∧ (𝐴 ·N 𝐵) = (𝐴 ·N 𝐶)) → (((𝐴N𝐵N) ∧ (𝐴 ·N 𝐵) = (𝐴 ·N 𝐶)) → 𝐵 = 𝐶))
3332pm2.43i 49 . . 3 (((𝐴N𝐵N) ∧ (𝐴 ·N 𝐵) = (𝐴 ·N 𝐶)) → 𝐵 = 𝐶)
3433ex 448 . 2 ((𝐴N𝐵N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) → 𝐵 = 𝐶))
35 oveq2 6439 . 2 (𝐵 = 𝐶 → (𝐴 ·N 𝐵) = (𝐴 ·N 𝐶))
3634, 35impbid1 213 1 ((𝐴N𝐵N) → ((𝐴 ·N 𝐵) = (𝐴 ·N 𝐶) ↔ 𝐵 = 𝐶))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 194  wa 382  w3a 1030   = wceq 1474  wcel 1938  c0 3777  (class class class)co 6431  ωcom 6838   ·𝑜 comu 7325  Ncnpi 9425   ·N cmi 9427
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1700  ax-4 1713  ax-5 1793  ax-6 1838  ax-7 1885  ax-8 1940  ax-9 1947  ax-10 1966  ax-11 1971  ax-12 1983  ax-13 2137  ax-ext 2494  ax-sep 4607  ax-nul 4616  ax-pow 4668  ax-pr 4732  ax-un 6728
This theorem depends on definitions:  df-bi 195  df-or 383  df-an 384  df-3or 1031  df-3an 1032  df-tru 1477  df-ex 1695  df-nf 1699  df-sb 1831  df-eu 2366  df-mo 2367  df-clab 2501  df-cleq 2507  df-clel 2510  df-nfc 2644  df-ne 2686  df-ral 2805  df-rex 2806  df-reu 2807  df-rab 2809  df-v 3079  df-sbc 3307  df-csb 3404  df-dif 3447  df-un 3449  df-in 3451  df-ss 3458  df-pss 3460  df-nul 3778  df-if 3940  df-pw 4013  df-sn 4029  df-pr 4031  df-tp 4033  df-op 4035  df-uni 4271  df-iun 4355  df-br 4482  df-opab 4542  df-mpt 4543  df-tr 4579  df-eprel 4843  df-id 4847  df-po 4853  df-so 4854  df-fr 4891  df-we 4893  df-xp 4938  df-rel 4939  df-cnv 4940  df-co 4941  df-dm 4942  df-rn 4943  df-res 4944  df-ima 4945  df-pred 5487  df-ord 5533  df-on 5534  df-lim 5535  df-suc 5536  df-iota 5658  df-fun 5696  df-fn 5697  df-f 5698  df-f1 5699  df-fo 5700  df-f1o 5701  df-fv 5702  df-ov 6434  df-oprab 6435  df-mpt2 6436  df-om 6839  df-1st 6939  df-2nd 6940  df-wrecs 7174  df-recs 7235  df-rdg 7273  df-oadd 7331  df-omul 7332  df-ni 9453  df-mi 9455
This theorem is referenced by:  enqer  9502  nqereu  9510  adderpqlem  9535  mulerpqlem  9536
  Copyright terms: Public domain W3C validator