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

Theorem grprcan 19046
Description: Right cancellation law for groups. (Contributed by NM, 24-Aug-2011.) (Proof shortened by Mario Carneiro, 6-Jan-2015.)
Hypotheses
Ref Expression
grprcan.b 𝐵 = (Base‘𝐺)
grprcan.p + = (+g𝐺)
Assertion
Ref Expression
grprcan ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) ↔ 𝑋 = 𝑌))

Proof of Theorem grprcan
Dummy variables 𝑣 𝑢 𝑤 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 grprcan.b . . . . 5 𝐵 = (Base‘𝐺)
2 grprcan.p . . . . 5 + = (+g𝐺)
3 eqid 2762 . . . . 5 (0g𝐺) = (0g𝐺)
41, 2, 3grpinvex 19016 . . . 4 ((𝐺 ∈ Grp ∧ 𝑍𝐵) → ∃𝑦𝐵 (𝑦 + 𝑍) = (0g𝐺))
543ad2antr3 1208 . . 3 ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ∃𝑦𝐵 (𝑦 + 𝑍) = (0g𝐺))
6 simprr 784 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + 𝑍) = (𝑌 + 𝑍))
76oveq1d 7427 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → ((𝑋 + 𝑍) + 𝑦) = ((𝑌 + 𝑍) + 𝑦))
8 simpll 778 . . . . . . . . 9 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝐺 ∈ Grp)
91, 2grpass 19015 . . . . . . . . 9 ((𝐺 ∈ Grp ∧ (𝑢𝐵𝑣𝐵𝑤𝐵)) → ((𝑢 + 𝑣) + 𝑤) = (𝑢 + (𝑣 + 𝑤)))
108, 9sylan 591 . . . . . . . 8 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ (𝑢𝐵𝑣𝐵𝑤𝐵)) → ((𝑢 + 𝑣) + 𝑤) = (𝑢 + (𝑣 + 𝑤)))
11 simplr1 1233 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑋𝐵)
12 simplr3 1235 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑍𝐵)
13 simprll 790 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑦𝐵)
1410, 11, 12, 13caovassd 7611 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → ((𝑋 + 𝑍) + 𝑦) = (𝑋 + (𝑍 + 𝑦)))
15 simplr2 1234 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑌𝐵)
1610, 15, 12, 13caovassd 7611 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → ((𝑌 + 𝑍) + 𝑦) = (𝑌 + (𝑍 + 𝑦)))
177, 14, 163eqtr3d 2805 . . . . . 6 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (𝑍 + 𝑦)) = (𝑌 + (𝑍 + 𝑦)))
181, 2grpcl 19014 . . . . . . . . . 10 ((𝐺 ∈ Grp ∧ 𝑢𝐵𝑣𝐵) → (𝑢 + 𝑣) ∈ 𝐵)
198, 18syl3an1 1180 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑢𝐵𝑣𝐵) → (𝑢 + 𝑣) ∈ 𝐵)
201, 3grpidcl 19038 . . . . . . . . . 10 (𝐺 ∈ Grp → (0g𝐺) ∈ 𝐵)
218, 20syl 18 . . . . . . . . 9 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (0g𝐺) ∈ 𝐵)
221, 2, 3grplid 19040 . . . . . . . . . 10 ((𝐺 ∈ Grp ∧ 𝑢𝐵) → ((0g𝐺) + 𝑢) = 𝑢)
238, 22sylan 591 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑢𝐵) → ((0g𝐺) + 𝑢) = 𝑢)
241, 2, 3grpinvex 19016 . . . . . . . . . 10 ((𝐺 ∈ Grp ∧ 𝑢𝐵) → ∃𝑣𝐵 (𝑣 + 𝑢) = (0g𝐺))
258, 24sylan 591 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑢𝐵) → ∃𝑣𝐵 (𝑣 + 𝑢) = (0g𝐺))
26 simpr 489 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → 𝑍𝐵)
2713adantr 485 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → 𝑦𝐵)
28 simprlr 791 . . . . . . . . . 10 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑦 + 𝑍) = (0g𝐺))
2928adantr 485 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → (𝑦 + 𝑍) = (0g𝐺))
3019, 21, 23, 10, 25, 26, 27, 29grpinva 18738 . . . . . . . 8 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → (𝑍 + 𝑦) = (0g𝐺))
3112, 30mpdan 699 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑍 + 𝑦) = (0g𝐺))
3231oveq2d 7428 . . . . . 6 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (𝑍 + 𝑦)) = (𝑋 + (0g𝐺)))
3331oveq2d 7428 . . . . . 6 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑌 + (𝑍 + 𝑦)) = (𝑌 + (0g𝐺)))
3417, 32, 333eqtr3d 2805 . . . . 5 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (0g𝐺)) = (𝑌 + (0g𝐺)))
351, 2, 3, 8, 11grpridd 19043 . . . . 5 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (0g𝐺)) = 𝑋)
361, 2, 3, 8, 15grpridd 19043 . . . . 5 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑌 + (0g𝐺)) = 𝑌)
3734, 35, 363eqtr3d 2805 . . . 4 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑋 = 𝑌)
3837expr 461 . . 3 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ (𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺))) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) → 𝑋 = 𝑌))
395, 38rexlimddv 3171 . 2 ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) → 𝑋 = 𝑌))
40 oveq1 7419 . 2 (𝑋 = 𝑌 → (𝑋 + 𝑍) = (𝑌 + 𝑍))
4139, 40impbid1 228 1 ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) ↔ 𝑋 = 𝑌))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 400  w3a 1102   = wceq 1569  wcel 2142  wrex 3088  cfv 6536  (class class class)co 7412  Basecbs 17275  +gcplusg 17316  0gc0g 17498  Grpcgrp 19006
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-sep 5256  ax-nul 5268  ax-pr 5403
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-ral 3079  df-rex 3089  df-rmo 3368  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-nul 4286  df-if 4487  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-br 5109  df-opab 5173  df-mpt 5192  df-id 5555  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-iota 6492  df-fun 6538  df-fv 6544  df-riota 7369  df-ov 7415  df-0g 17500  df-mgm 18704  df-sgrp 18783  df-mnd 18799  df-grp 19009
This theorem is used by:  grpinveu  19047  grpid  19048  grpidlcan  19077  grpraddf1o  19086  grpinvssd  19089  grpsubrcan  19093  grpsubadd  19100  sylow1lem4  19677  ogrpaddlt  20214  rngrz  20250  ringcom  20370  rhmunitinv  20619  lmodcom  21040  r1pid2  26330  cntrval2  33500  ply1dg1rt  33879  grpcominv1  43310  isnumbasgrplem2  43859  grptcepi  50400
  Copyright terms: Public domain W3C validator