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

Theorem grpolcan 31189
Description: Left cancellation law for groups. (Contributed by NM, 27-Oct-2006.) (New usage is discouraged.)
Hypothesis
Ref Expression
grplcan.1 𝑋 = ran 𝐺
Assertion
Ref Expression
grpolcan ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((𝐶𝐺𝐴) = (𝐶𝐺𝐵) ↔ 𝐴 = 𝐵))

Proof of Theorem grpolcan
StepHypRef Expression
1 oveq2 7459 . . . . . 6 ((𝐶𝐺𝐴) = (𝐶𝐺𝐵) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)))
21adantl 487 . . . . 5 ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝐶𝐺𝐴) = (𝐶𝐺𝐵)) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)))
3 grplcan.1 . . . . . . . . . . 11 𝑋 = ran 𝐺
4 eqid 2763 . . . . . . . . . . 11 (GId‘𝐺) = (GId‘𝐺)
5 eqid 2763 . . . . . . . . . . 11 (inv‘𝐺) = (inv‘𝐺)
63, 4, 5grpolinv 31185 . . . . . . . . . 10 ((𝐺 ∈ GrpOp ∧ 𝐶 ∈ 𝑋) → (((inv‘𝐺)‘𝐶)𝐺𝐶) = (GId‘𝐺))
76adantlr 728 . . . . . . . . 9 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ 𝐶 ∈ 𝑋) → (((inv‘𝐺)‘𝐶)𝐺𝐶) = (GId‘𝐺))
87oveq1d 7466 . . . . . . . 8 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ 𝐶 ∈ 𝑋) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐴) = ((GId‘𝐺)𝐺𝐴))
93, 5grpoinvcl 31183 . . . . . . . . . . . 12 ((𝐺 ∈ GrpOp ∧ 𝐶 ∈ 𝑋) → ((inv‘𝐺)‘𝐶) ∈ 𝑋)
109adantrl 729 . . . . . . . . . . 11 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((inv‘𝐺)‘𝐶) ∈ 𝑋)
11 simprr 785 . . . . . . . . . . 11 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → 𝐶 ∈ 𝑋)
12 simprl 783 . . . . . . . . . . 11 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → 𝐴 ∈ 𝑋)
1310, 11, 123jca 1146 . . . . . . . . . 10 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (((inv‘𝐺)‘𝐶) ∈ 𝑋 ∧ 𝐶 ∈ 𝑋 ∧ 𝐴 ∈ 𝑋))
143grpoass 31162 . . . . . . . . . 10 ((𝐺 ∈ GrpOp ∧ (((inv‘𝐺)‘𝐶) ∈ 𝑋 ∧ 𝐶 ∈ 𝑋 ∧ 𝐴 ∈ 𝑋)) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐴) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)))
1513, 14syldan 603 . . . . . . . . 9 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐴) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)))
1615anassrs 473 . . . . . . . 8 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ 𝐶 ∈ 𝑋) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐴) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)))
173, 4grpolid 31175 . . . . . . . . 9 ((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) → ((GId‘𝐺)𝐺𝐴) = 𝐴)
1817adantr 486 . . . . . . . 8 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ 𝐶 ∈ 𝑋) → ((GId‘𝐺)𝐺𝐴) = 𝐴)
198, 16, 183eqtr3d 2806 . . . . . . 7 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ 𝐶 ∈ 𝑋) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)) = 𝐴)
2019adantrl 729 . . . . . 6 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)) = 𝐴)
2120adantr 486 . . . . 5 ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝐶𝐺𝐴) = (𝐶𝐺𝐵)) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐴)) = 𝐴)
226adantrl 729 . . . . . . . . 9 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (((inv‘𝐺)‘𝐶)𝐺𝐶) = (GId‘𝐺))
2322oveq1d 7466 . . . . . . . 8 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐵) = ((GId‘𝐺)𝐺𝐵))
249adantrl 729 . . . . . . . . . 10 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((inv‘𝐺)‘𝐶) ∈ 𝑋)
25 simprr 785 . . . . . . . . . 10 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → 𝐶 ∈ 𝑋)
26 simprl 783 . . . . . . . . . 10 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → 𝐵 ∈ 𝑋)
2724, 25, 263jca 1146 . . . . . . . . 9 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (((inv‘𝐺)‘𝐶) ∈ 𝑋 ∧ 𝐶 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋))
283grpoass 31162 . . . . . . . . 9 ((𝐺 ∈ GrpOp ∧ (((inv‘𝐺)‘𝐶) ∈ 𝑋 ∧ 𝐶 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋)) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐵) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)))
2927, 28syldan 603 . . . . . . . 8 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((((inv‘𝐺)‘𝐶)𝐺𝐶)𝐺𝐵) = (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)))
303, 4grpolid 31175 . . . . . . . . 9 ((𝐺 ∈ GrpOp ∧ 𝐵 ∈ 𝑋) → ((GId‘𝐺)𝐺𝐵) = 𝐵)
3130adantrr 730 . . . . . . . 8 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((GId‘𝐺)𝐺𝐵) = 𝐵)
3223, 29, 313eqtr3d 2806 . . . . . . 7 ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)) = 𝐵)
3332adantlr 728 . . . . . 6 (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)) = 𝐵)
3433adantr 486 . . . . 5 ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝐶𝐺𝐴) = (𝐶𝐺𝐵)) → (((inv‘𝐺)‘𝐶)𝐺(𝐶𝐺𝐵)) = 𝐵)
352, 21, 343eqtr3d 2806 . . . 4 ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝐶𝐺𝐴) = (𝐶𝐺𝐵)) → 𝐴 = 𝐵)
3635exp53 453 . . 3 (𝐺 ∈ GrpOp → (𝐴 ∈ 𝑋 → (𝐵 ∈ 𝑋 → (𝐶 ∈ 𝑋 → ((𝐶𝐺𝐴) = (𝐶𝐺𝐵) → 𝐴 = 𝐵)))))
37363imp2 1368 . 2 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((𝐶𝐺𝐴) = (𝐶𝐺𝐵) → 𝐴 = 𝐵))
38 oveq2 7459 . 2 (𝐴 = 𝐵 → (𝐶𝐺𝐴) = (𝐶𝐺𝐵))
3937, 38impbid1 228 1 ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((𝐶𝐺𝐴) = (𝐶𝐺𝐵) ↔ 𝐴 = 𝐵))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147  ran crn 5659  ‘cfv 6566  (class class class)co 7451  GrpOpcgr 31148  GIdcgi 31149  invcgn 31150
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pr 5398  ax-un 7783
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-id 5553  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-riota 7408  df-ov 7454  df-grpo 31152  df-gid 31153  df-ginv 31154
This theorem is used by:  grpo2inv  31190  vclcan  31230  rngolcan  39118  rngolz  39122
  Copyright terms: Public domain W3C validator