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 37986
Description: In a unital ring a left invertible element is not a zero divisor. See also ringinvnzdiv 20217. (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 7354 . . . . . . 7 ((𝐴𝐻𝐵) = 𝑍 → (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍))
2 simpl1 1192 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝑅 ∈ RingOps)
3 simpr1 1195 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝑎𝑋)
4 simpr3 1197 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝐴𝑋)
5 simpl3 1194 . . . . . . . . . 10 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝐵𝑋)
6 zerdivempx.1 . . . . . . . . . . 11 𝐺 = (1st𝑅)
7 zerdivempx.2 . . . . . . . . . . 11 𝐻 = (2nd𝑅)
8 zerdivempx.4 . . . . . . . . . . 11 𝑋 = ran 𝐺
96, 7, 8rngoass 37945 . . . . . . . . . 10 ((𝑅 ∈ RingOps ∧ (𝑎𝑋𝐴𝑋𝐵𝑋)) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)))
102, 3, 4, 5, 9syl13anc 1374 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)))
11 eqtr 2751 . . . . . . . . . . . . 13 ((((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍)) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍))
1211ex 412 . . . . . . . . . . . 12 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍)))
13 eqtr 2751 . . . . . . . . . . . . . . . . . . 19 (((𝑈𝐻𝐵) = ((𝑎𝐻𝐴)𝐻𝐵) ∧ ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍)) → (𝑈𝐻𝐵) = (𝑎𝐻𝑍))
14 zerdivempx.3 . . . . . . . . . . . . . . . . . . . . . . . . 25 𝑍 = (GId‘𝐺)
1514, 8, 6, 7rngorz 37962 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑅 ∈ RingOps ∧ 𝑎𝑋) → (𝑎𝐻𝑍) = 𝑍)
16153adant3 1132 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑅 ∈ RingOps ∧ 𝑎𝑋𝐵𝑋) → (𝑎𝐻𝑍) = 𝑍)
176rneqi 5877 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ran 𝐺 = ran (1st𝑅)
188, 17eqtri 2754 . . . . . . . . . . . . . . . . . . . . . . . . 25 𝑋 = ran (1st𝑅)
19 zerdivempx.5 . . . . . . . . . . . . . . . . . . . . . . . . 25 𝑈 = (GId‘𝐻)
207, 18, 19rngolidm 37976 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑅 ∈ RingOps ∧ 𝐵𝑋) → (𝑈𝐻𝐵) = 𝐵)
21203adant2 1131 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑅 ∈ RingOps ∧ 𝑎𝑋𝐵𝑋) → (𝑈𝐻𝐵) = 𝐵)
22 simp1 1136 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝑈𝐻𝐵) = (𝑎𝐻𝑍))
23 simp2 1137 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝑈𝐻𝐵) = 𝐵)
24 simp3 1138 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝑎𝐻𝑍) = 𝑍)
2522, 23, 243eqtr3d 2774 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → 𝐵 = 𝑍)
2625a1d 25 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑈𝐻𝐵) = (𝑎𝐻𝑍) ∧ (𝑈𝐻𝐵) = 𝐵 ∧ (𝑎𝐻𝑍) = 𝑍) → (𝐴𝑋𝐵 = 𝑍))
27263exp 1119 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → ((𝑈𝐻𝐵) = 𝐵 → ((𝑎𝐻𝑍) = 𝑍 → (𝐴𝑋𝐵 = 𝑍))))
2827com14 96 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝐴𝑋 → ((𝑈𝐻𝐵) = 𝐵 → ((𝑎𝐻𝑍) = 𝑍 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍))))
2928com13 88 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑎𝐻𝑍) = 𝑍 → ((𝑈𝐻𝐵) = 𝐵 → (𝐴𝑋 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍))))
3016, 21, 29sylc 65 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑅 ∈ RingOps ∧ 𝑎𝑋𝐵𝑋) → (𝐴𝑋 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍)))
31303exp 1119 . . . . . . . . . . . . . . . . . . . . 21 (𝑅 ∈ RingOps → (𝑎𝑋 → (𝐵𝑋 → (𝐴𝑋 → ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → 𝐵 = 𝑍)))))
3231com15 101 . . . . . . . . . . . . . . . . . . . 20 ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → (𝑎𝑋 → (𝐵𝑋 → (𝐴𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
3332com24 95 . . . . . . . . . . . . . . . . . . 19 ((𝑈𝐻𝐵) = (𝑎𝐻𝑍) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
3413, 33syl 17 . . . . . . . . . . . . . . . . . 18 (((𝑈𝐻𝐵) = ((𝑎𝐻𝐴)𝐻𝐵) ∧ ((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍)) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
3534ex 412 . . . . . . . . . . . . . . . . 17 ((𝑈𝐻𝐵) = ((𝑎𝐻𝐴)𝐻𝐵) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
3635eqcoms 2739 . . . . . . . . . . . . . . . 16 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑈𝐻𝐵) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝐴𝑋 → (𝐵𝑋 → (𝑎𝑋 → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
3736com25 99 . . . . . . . . . . . . . . 15 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑈𝐻𝐵) → (𝑎𝑋 → (𝐴𝑋 → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
38 oveq1 7353 . . . . . . . . . . . . . . 15 ((𝑎𝐻𝐴) = 𝑈 → ((𝑎𝐻𝐴)𝐻𝐵) = (𝑈𝐻𝐵))
3937, 38syl11 33 . . . . . . . . . . . . . 14 (𝑎𝑋 → ((𝑎𝐻𝐴) = 𝑈 → (𝐴𝑋 → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))))
40393imp 1110 . . . . . . . . . . . . 13 ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝐵𝑋 → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))
4140com13 88 . . . . . . . . . . . 12 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝑅 ∈ RingOps → 𝐵 = 𝑍))))
4212, 41syl6 35 . . . . . . . . . . 11 (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝑅 ∈ RingOps → 𝐵 = 𝑍)))))
4342com15 101 . . . . . . . . . 10 (𝑅 ∈ RingOps → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → 𝐵 = 𝑍)))))
44433imp1 1348 . . . . . . . . 9 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → (((𝑎𝐻𝐴)𝐻𝐵) = (𝑎𝐻(𝐴𝐻𝐵)) → 𝐵 = 𝑍))
4510, 44mpd 15 . . . . . . . 8 (((𝑅 ∈ RingOps ∧ (𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) ∧ 𝐵𝑋) ∧ (𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋)) → 𝐵 = 𝑍)
46453exp1 1353 . . . . . . 7 (𝑅 ∈ RingOps → ((𝑎𝐻(𝐴𝐻𝐵)) = (𝑎𝐻𝑍) → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → 𝐵 = 𝑍))))
471, 46syl5com 31 . . . . . 6 ((𝐴𝐻𝐵) = 𝑍 → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → 𝐵 = 𝑍))))
4847com14 96 . . . . 5 ((𝑎𝑋 ∧ (𝑎𝐻𝐴) = 𝑈𝐴𝑋) → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍))))
49483exp 1119 . . . 4 (𝑎𝑋 → ((𝑎𝐻𝐴) = 𝑈 → (𝐴𝑋 → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍))))))
5049rexlimiv 3126 . . 3 (∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈 → (𝐴𝑋 → (𝑅 ∈ RingOps → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))))
5150com13 88 . 2 (𝑅 ∈ RingOps → (𝐴𝑋 → (∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈 → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))))
52513imp 1110 1 ((𝑅 ∈ RingOps ∧ 𝐴𝑋 ∧ ∃𝑎𝑋 (𝑎𝐻𝐴) = 𝑈) → (𝐵𝑋 → ((𝐴𝐻𝐵) = 𝑍𝐵 = 𝑍)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  w3a 1086   = wceq 1541  wcel 2111  wrex 3056  ran crn 5617  cfv 6481  (class class class)co 7346  1st c1st 7919  2nd c2nd 7920  GIdcgi 30465  RingOpscrngo 37933
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-sep 5234  ax-nul 5244  ax-pr 5370  ax-un 7668
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-ral 3048  df-rex 3057  df-rmo 3346  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3742  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-nul 4284  df-if 4476  df-sn 4577  df-pr 4579  df-op 4583  df-uni 4860  df-iun 4943  df-br 5092  df-opab 5154  df-mpt 5173  df-id 5511  df-xp 5622  df-rel 5623  df-cnv 5624  df-co 5625  df-dm 5626  df-rn 5627  df-iota 6437  df-fun 6483  df-fn 6484  df-f 6485  df-fo 6487  df-fv 6489  df-riota 7303  df-ov 7349  df-1st 7921  df-2nd 7922  df-grpo 30468  df-gid 30469  df-ablo 30520  df-ass 37882  df-exid 37884  df-mgmOLD 37888  df-sgrOLD 37900  df-mndo 37906  df-rngo 37934
This theorem is referenced by:  isdrngo2  37997
  Copyright terms: Public domain W3C validator