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

Theorem grprcan 19101
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 19071 . . . 4 ((𝐺 ∈ Grp ∧ 𝑍𝐵) → ∃𝑦𝐵 (𝑦 + 𝑍) = (0g𝐺))
543ad2antr3 1209 . . 3 ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ∃𝑦𝐵 (𝑦 + 𝑍) = (0g𝐺))
6 simprr 785 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + 𝑍) = (𝑌 + 𝑍))
76oveq1d 7431 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → ((𝑋 + 𝑍) + 𝑦) = ((𝑌 + 𝑍) + 𝑦))
8 simpll 779 . . . . . . . . 9 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝐺 ∈ Grp)
91, 2grpass 19070 . . . . . . . . 9 ((𝐺 ∈ Grp ∧ (𝑢𝐵𝑣𝐵𝑤𝐵)) → ((𝑢 + 𝑣) + 𝑤) = (𝑢 + (𝑣 + 𝑤)))
108, 9sylan 592 . . . . . . . 8 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ (𝑢𝐵𝑣𝐵𝑤𝐵)) → ((𝑢 + 𝑣) + 𝑤) = (𝑢 + (𝑣 + 𝑤)))
11 simplr1 1234 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑋𝐵)
12 simplr3 1236 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑍𝐵)
13 simprll 791 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑦𝐵)
1410, 11, 12, 13caovassd 7616 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → ((𝑋 + 𝑍) + 𝑦) = (𝑋 + (𝑍 + 𝑦)))
15 simplr2 1235 . . . . . . . 8 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑌𝐵)
1610, 15, 12, 13caovassd 7616 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → ((𝑌 + 𝑍) + 𝑦) = (𝑌 + (𝑍 + 𝑦)))
177, 14, 163eqtr3d 2805 . . . . . 6 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (𝑍 + 𝑦)) = (𝑌 + (𝑍 + 𝑦)))
181, 2grpcl 19069 . . . . . . . . . 10 ((𝐺 ∈ Grp ∧ 𝑢𝐵𝑣𝐵) → (𝑢 + 𝑣) ∈ 𝐵)
198, 18syl3an1 1181 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑢𝐵𝑣𝐵) → (𝑢 + 𝑣) ∈ 𝐵)
201, 3grpidcl 19093 . . . . . . . . . 10 (𝐺 ∈ Grp → (0g𝐺) ∈ 𝐵)
218, 20syl 18 . . . . . . . . 9 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (0g𝐺) ∈ 𝐵)
221, 2, 3grplid 19095 . . . . . . . . . 10 ((𝐺 ∈ Grp ∧ 𝑢𝐵) → ((0g𝐺) + 𝑢) = 𝑢)
238, 22sylan 592 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑢𝐵) → ((0g𝐺) + 𝑢) = 𝑢)
241, 2, 3grpinvex 19071 . . . . . . . . . 10 ((𝐺 ∈ Grp ∧ 𝑢𝐵) → ∃𝑣𝐵 (𝑣 + 𝑢) = (0g𝐺))
258, 24sylan 592 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑢𝐵) → ∃𝑣𝐵 (𝑣 + 𝑢) = (0g𝐺))
26 simpr 490 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → 𝑍𝐵)
2713adantr 486 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → 𝑦𝐵)
28 simprlr 792 . . . . . . . . . 10 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑦 + 𝑍) = (0g𝐺))
2928adantr 486 . . . . . . . . 9 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → (𝑦 + 𝑍) = (0g𝐺))
3019, 21, 23, 10, 25, 26, 27, 29grpinva 18772 . . . . . . . 8 ((((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) ∧ 𝑍𝐵) → (𝑍 + 𝑦) = (0g𝐺))
3112, 30mpdan 700 . . . . . . 7 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑍 + 𝑦) = (0g𝐺))
3231oveq2d 7432 . . . . . 6 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (𝑍 + 𝑦)) = (𝑋 + (0g𝐺)))
3331oveq2d 7432 . . . . . 6 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑌 + (𝑍 + 𝑦)) = (𝑌 + (0g𝐺)))
3417, 32, 333eqtr3d 2805 . . . . 5 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (0g𝐺)) = (𝑌 + (0g𝐺)))
351, 2, 3, 8, 11grpridd 19098 . . . . 5 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑋 + (0g𝐺)) = 𝑋)
361, 2, 3, 8, 15grpridd 19098 . . . . 5 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → (𝑌 + (0g𝐺)) = 𝑌)
3734, 35, 363eqtr3d 2805 . . . 4 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ ((𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺)) ∧ (𝑋 + 𝑍) = (𝑌 + 𝑍))) → 𝑋 = 𝑌)
3837expr 462 . . 3 (((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) ∧ (𝑦𝐵 ∧ (𝑦 + 𝑍) = (0g𝐺))) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) → 𝑋 = 𝑌))
395, 38rexlimddv 3171 . 2 ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) → 𝑋 = 𝑌))
40 oveq1 7423 . 2 (𝑋 = 𝑌 → (𝑋 + 𝑍) = (𝑌 + 𝑍))
4139, 40impbid1 228 1 ((𝐺 ∈ Grp ∧ (𝑋𝐵𝑌𝐵𝑍𝐵)) → ((𝑋 + 𝑍) = (𝑌 + 𝑍) ↔ 𝑋 = 𝑌))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2145  wrex 3088  cfv 6537  (class class class)co 7416  Basecbs 17305  +gcplusg 17346  0gc0g 17528  Grpcgrp 19061
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-sep 5255  ax-nul 5267  ax-pr 5402
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  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 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-nul 4283  df-if 4486  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-br 5108  df-opab 5172  df-mpt 5191  df-id 5554  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-iota 6493  df-fun 6539  df-fv 6545  df-riota 7373  df-ov 7419  df-0g 17530  df-mgm 18734  df-sgrp 18825  df-mnd 18841  df-grp 19064
This theorem is used by:  grpinveu  19102  grpid  19103  grpidlcan  19132  grpraddf1o  19141  grpinvssd  19144  grpsubrcan  19148  grpsubadd  19155  sylow1lem4  19732  ogrpaddlt  20269  rngrz  20305  ringcom  20425  rhmunitinv  20675  lmodcom  21096  r1pid2  26392  cntrval2  33613  ply1dg1rt  33992  grpcominv1  43398  isnumbasgrplem2  43947  grptcepi  50522
  Copyright terms: Public domain W3C validator