Users' Mathboxes Mathbox for Jeff Madsen < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  zerdivemp1x Structured version   Visualization version   GIF version

Theorem zerdivemp1x 32916
Description: In a unitary ring a left invertible element is not a zero divisor. See also ringinvnzdiv 18416. (Contributed by Jeff Madsen, 18-Apr-2010.)
Hypotheses
Ref Expression
zerdivempx.1 𝐺 = (1st𝑅)
zerdivempx.2 𝐻 = (2nd𝑅)
zerdivempx.3 𝑍 = (GId‘𝐺)
zerdivempx.4 𝑋 = ran 𝐺
zerdivempx.5 𝑈 = (GId‘𝐻)
Assertion
Ref Expression
zerdivemp1x ((𝑅 ∈ RingOps ∧ 𝐴𝑋 ∧ ∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈) → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))
Distinct variable groups:   𝐴,𝑎   𝐵,𝑎   𝐻,𝑎   𝑅,𝑎   𝑋,𝑎   𝑍,𝑎
Allowed substitution hints:   𝑈(𝑎)   𝐺(𝑎)

Proof of Theorem zerdivemp1x
StepHypRef Expression
1 oveq2 6557 . . . . . . 7 ((𝐴𝐻𝐵) = 𝑍 → (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍))
2 simpl1 1057 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝑅 ∈ RingOps)
3 simpr1 1060 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝑎𝑋)
4 simpr3 1062 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝐴𝑋)
5 simpl3 1059 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝐵𝑋)
6 zerdivempx.1 . . . . . . . . . . 11 𝐺 = (1st𝑅)
7 zerdivempx.2 . . . . . . . . . . 11 𝐻 = (2nd𝑅)
8 zerdivempx.4 . . . . . . . . . . 11 𝑋 = ran 𝐺
96, 7, 8rngoass 32875 . . . . . . . . . 10 ((𝑅 ∈ RingOps ∧ (𝑎𝑋𝐴𝑋𝐵𝑋)) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)))
102, 3, 4, 5, 9syl13anc 1320 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)))
11 eqtr 2629 . . . . . . . . . . . . 13 ((((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍)) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍))
1211ex 449 . . . . . . . . . . . 12 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍)))
13 oveq1 6556 . . . . . . . . . . . . . . . 16 ((𝑎𝐻𝐴) = 𝑈 → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑈𝐻𝐵))
14 eqtr 2629 . . . . . . . . . . . . . . . . . . . 20 (((𝑈𝐻𝐵) = ((𝑎𝐻𝐴)𝐻𝐵) ∧ ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍)) → (𝑈𝐻𝐵) = (𝑎𝐻𝑍))
15 zerdivempx.3 . . . . . . . . . . . . . . . . . . . . . . . . . 26 𝑍 = (GId‘𝐺)
1615, 8, 6, 7rngorz 32892 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑅 ∈ RingOps ∧ 𝑎𝑋) → (𝑎𝐻𝑍) = 𝑍)
17163adant3 1074 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑅 ∈ RingOps ∧ 𝑎𝑋𝐵𝑋) → (𝑎𝐻𝑍) = 𝑍)
186rneqi 5273 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ran 𝐺 = ran (1st𝑅)
198, 18eqtri 2632 . . . . . . . . . . . . . . . . . . . . . . . . . 26 𝑋 = ran (1st𝑅)
20 zerdivempx.5 . . . . . . . . . . . . . . . . . . . . . . . . . 26 𝑈 = (GId‘𝐻)
217, 19, 20rngolidm 32906 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑅 ∈ RingOps ∧ 𝐵𝑋) → (𝑈𝐻𝐵) = 𝐵)
22213adant2 1073 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑅 ∈ RingOps ∧ 𝑎𝑋𝐵𝑋) → (𝑈𝐻𝐵) = 𝐵)
23 simp1 1054 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝑈𝐻𝐵) = (𝑎𝐻𝑍))
24 simp2 1055 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝑈𝐻𝐵) = 𝐵)
25 simp3 1056 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝑎𝐻𝑍) = 𝑍)
2623, 24, 253eqtr3d 2652 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → 𝐵 = 𝑍)
2726a1d 25 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝐴𝑋𝐵 = 𝑍))
28273exp 1256 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → ((𝑈𝐻𝐵) = 𝐵 → ((𝑎𝐻𝑍) = 𝑍 → (𝐴𝑋𝐵 = 𝑍))))
2928com14 94 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝐴𝑋 → ((𝑈𝐻𝐵) = 𝐵 → ((𝑎𝐻𝑍) = 𝑍 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍))))
3029com13 86 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑎𝐻𝑍) = 𝑍 → ((𝑈𝐻𝐵) = 𝐵 → (𝐴𝑋 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍))))
3117, 22, 30sylc 63 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑅 ∈ RingOps ∧ 𝑎𝑋𝐵𝑋) → (𝐴𝑋 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍)))
32313exp 1256 . . . . . . . . . . . . . . . . . . . . . 22 (𝑅 ∈ RingOps → (𝑎𝑋 → (𝐵𝑋 → (𝐴𝑋 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍)))))
3332com15 99 . . . . . . . . . . . . . . . . . . . . 21 ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → (𝑎𝑋 → (𝐵𝑋 → (𝐴𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
3433com24 93 . . . . . . . . . . . . . . . . . . . 20 ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
3514, 34syl 17 . . . . . . . . . . . . . . . . . . 19 (((𝑈𝐻𝐵) = ((𝑎𝐻𝐴)𝐻𝐵) ∧ ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍)) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
3635ex 449 . . . . . . . . . . . . . . . . . 18 ((𝑈𝐻𝐵) = ((𝑎𝐻𝐴)𝐻𝐵) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
3736eqcoms 2618 . . . . . . . . . . . . . . . . 17 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑈𝐻𝐵) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
3837com25 97 . . . . . . . . . . . . . . . 16 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑈𝐻𝐵) → (𝑎𝑋 → (𝐴𝑋 → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
3913, 38syl 17 . . . . . . . . . . . . . . 15 ((𝑎𝐻𝐴) = 𝑈 → (𝑎𝑋 → (𝐴𝑋 → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
4039com12 32 . . . . . . . . . . . . . 14 (𝑎𝑋 → ((𝑎𝐻𝐴) = 𝑈 → (𝐴𝑋 → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
41403imp 1249 . . . . . . . . . . . . 13 ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))
4241com13 86 . . . . . . . . . . . 12 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))
4312, 42syl6 34 . . . . . . . . . . 11 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
4443com15 99 . . . . . . . . . 10 (𝑅 ∈ RingOps → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → 𝐵 = 𝑍)))))
45443imp1 1272 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → 𝐵 = 𝑍))
4610, 45mpd 15 . . . . . . . 8 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝐵 = 𝑍)
47463exp1 1275 . . . . . . 7 (𝑅 ∈ RingOps → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → 𝐵 = 𝑍))))
481, 47syl5com 31 . . . . . 6 ((𝐴𝐻𝐵) = 𝑍 → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → 𝐵 = 𝑍))))
4948com14 94 . . . . 5 ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍))))
50493exp 1256 . . . 4 (𝑎𝑋 → ((𝑎𝐻𝐴) = 𝑈 → (𝐴𝑋 → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍))))))
5150rexlimiv 3009 . . 3 (∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈 → (𝐴𝑋 → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))))
5251com13 86 . 2 (𝑅 ∈ RingOps → (𝐴𝑋 → (∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈 → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))))
53523imp 1249 1 ((𝑅 ∈ RingOps ∧ 𝐴𝑋 ∧ ∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈) → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 383  w3a 1031   = wceq 1475  wcel 1977  wrex 2897  ran crn 5039  cfv 5804  (class class class)co 6549  1st c1st 7057  2nd c2nd 7058  GIdcgi 26728  RingOpscrngo 32863
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-id 4953  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-fo 5810  df-fv 5812  df-riota 6511  df-ov 6552  df-1st 7059  df-2nd 7060  df-grpo 26731  df-gid 26732  df-ablo 26783  df-ass 32812  df-exid 32814  df-mgmOLD 32818  df-sgrOLD 32830  df-mndo 32836  df-rngo 32864
This theorem is referenced by:  isdrngo2  32927
  Copyright terms: Public domain W3C validator