This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Properties that characterize a division ring among rings: it should be nonzero, have no nonzero zero-divisors, and every nonzero element x should have a left-inverse I ( x ) . See isdrngrd for the characterization using right-inverses. (Contributed by NM, 2-Aug-2013) Remove hypothesis. (Revised by SN, 19-Feb-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | isdrngd.b | |- ( ph -> B = ( Base ` R ) ) |
|
| isdrngd.t | |- ( ph -> .x. = ( .r ` R ) ) |
||
| isdrngd.z | |- ( ph -> .0. = ( 0g ` R ) ) |
||
| isdrngd.u | |- ( ph -> .1. = ( 1r ` R ) ) |
||
| isdrngd.r | |- ( ph -> R e. Ring ) |
||
| isdrngd.n | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) /\ ( y e. B /\ y =/= .0. ) ) -> ( x .x. y ) =/= .0. ) |
||
| isdrngd.o | |- ( ph -> .1. =/= .0. ) |
||
| isdrngd.i | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> I e. B ) |
||
| isdrngd.k | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> ( I .x. x ) = .1. ) |
||
| Assertion | isdrngd | |- ( ph -> R e. DivRing ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | isdrngd.b | |- ( ph -> B = ( Base ` R ) ) |
|
| 2 | isdrngd.t | |- ( ph -> .x. = ( .r ` R ) ) |
|
| 3 | isdrngd.z | |- ( ph -> .0. = ( 0g ` R ) ) |
|
| 4 | isdrngd.u | |- ( ph -> .1. = ( 1r ` R ) ) |
|
| 5 | isdrngd.r | |- ( ph -> R e. Ring ) |
|
| 6 | isdrngd.n | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) /\ ( y e. B /\ y =/= .0. ) ) -> ( x .x. y ) =/= .0. ) |
|
| 7 | isdrngd.o | |- ( ph -> .1. =/= .0. ) |
|
| 8 | isdrngd.i | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> I e. B ) |
|
| 9 | isdrngd.k | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> ( I .x. x ) = .1. ) |
|
| 10 | difss | |- ( B \ { .0. } ) C_ B |
|
| 11 | 10 1 | sseqtrid | |- ( ph -> ( B \ { .0. } ) C_ ( Base ` R ) ) |
| 12 | eqid | |- ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) = ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) |
|
| 13 | eqid | |- ( mulGrp ` R ) = ( mulGrp ` R ) |
|
| 14 | eqid | |- ( Base ` R ) = ( Base ` R ) |
|
| 15 | 13 14 | mgpbas | |- ( Base ` R ) = ( Base ` ( mulGrp ` R ) ) |
| 16 | 12 15 | ressbas2 | |- ( ( B \ { .0. } ) C_ ( Base ` R ) -> ( B \ { .0. } ) = ( Base ` ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) ) ) |
| 17 | 11 16 | syl | |- ( ph -> ( B \ { .0. } ) = ( Base ` ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) ) ) |
| 18 | fvex | |- ( Base ` R ) e. _V |
|
| 19 | 1 18 | eqeltrdi | |- ( ph -> B e. _V ) |
| 20 | difexg | |- ( B e. _V -> ( B \ { .0. } ) e. _V ) |
|
| 21 | eqid | |- ( .r ` R ) = ( .r ` R ) |
|
| 22 | 13 21 | mgpplusg | |- ( .r ` R ) = ( +g ` ( mulGrp ` R ) ) |
| 23 | 12 22 | ressplusg | |- ( ( B \ { .0. } ) e. _V -> ( .r ` R ) = ( +g ` ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) ) ) |
| 24 | 19 20 23 | 3syl | |- ( ph -> ( .r ` R ) = ( +g ` ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) ) ) |
| 25 | 2 24 | eqtrd | |- ( ph -> .x. = ( +g ` ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) ) ) |
| 26 | eldifsn | |- ( x e. ( B \ { .0. } ) <-> ( x e. B /\ x =/= .0. ) ) |
|
| 27 | eldifsn | |- ( y e. ( B \ { .0. } ) <-> ( y e. B /\ y =/= .0. ) ) |
|
| 28 | 14 21 | ringcl | |- ( ( R e. Ring /\ x e. ( Base ` R ) /\ y e. ( Base ` R ) ) -> ( x ( .r ` R ) y ) e. ( Base ` R ) ) |
| 29 | 5 28 | syl3an1 | |- ( ( ph /\ x e. ( Base ` R ) /\ y e. ( Base ` R ) ) -> ( x ( .r ` R ) y ) e. ( Base ` R ) ) |
| 30 | 29 | 3expib | |- ( ph -> ( ( x e. ( Base ` R ) /\ y e. ( Base ` R ) ) -> ( x ( .r ` R ) y ) e. ( Base ` R ) ) ) |
| 31 | 1 | eleq2d | |- ( ph -> ( x e. B <-> x e. ( Base ` R ) ) ) |
| 32 | 1 | eleq2d | |- ( ph -> ( y e. B <-> y e. ( Base ` R ) ) ) |
| 33 | 31 32 | anbi12d | |- ( ph -> ( ( x e. B /\ y e. B ) <-> ( x e. ( Base ` R ) /\ y e. ( Base ` R ) ) ) ) |
| 34 | 2 | oveqd | |- ( ph -> ( x .x. y ) = ( x ( .r ` R ) y ) ) |
| 35 | 34 1 | eleq12d | |- ( ph -> ( ( x .x. y ) e. B <-> ( x ( .r ` R ) y ) e. ( Base ` R ) ) ) |
| 36 | 30 33 35 | 3imtr4d | |- ( ph -> ( ( x e. B /\ y e. B ) -> ( x .x. y ) e. B ) ) |
| 37 | 36 | 3impib | |- ( ( ph /\ x e. B /\ y e. B ) -> ( x .x. y ) e. B ) |
| 38 | 37 | 3adant2r | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) /\ y e. B ) -> ( x .x. y ) e. B ) |
| 39 | 38 | 3adant3r | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) /\ ( y e. B /\ y =/= .0. ) ) -> ( x .x. y ) e. B ) |
| 40 | eldifsn | |- ( ( x .x. y ) e. ( B \ { .0. } ) <-> ( ( x .x. y ) e. B /\ ( x .x. y ) =/= .0. ) ) |
|
| 41 | 39 6 40 | sylanbrc | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) /\ ( y e. B /\ y =/= .0. ) ) -> ( x .x. y ) e. ( B \ { .0. } ) ) |
| 42 | 27 41 | syl3an3b | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) /\ y e. ( B \ { .0. } ) ) -> ( x .x. y ) e. ( B \ { .0. } ) ) |
| 43 | 26 42 | syl3an2b | |- ( ( ph /\ x e. ( B \ { .0. } ) /\ y e. ( B \ { .0. } ) ) -> ( x .x. y ) e. ( B \ { .0. } ) ) |
| 44 | 14 21 | ringass | |- ( ( R e. Ring /\ ( x e. ( Base ` R ) /\ y e. ( Base ` R ) /\ z e. ( Base ` R ) ) ) -> ( ( x ( .r ` R ) y ) ( .r ` R ) z ) = ( x ( .r ` R ) ( y ( .r ` R ) z ) ) ) |
| 45 | 44 | ex | |- ( R e. Ring -> ( ( x e. ( Base ` R ) /\ y e. ( Base ` R ) /\ z e. ( Base ` R ) ) -> ( ( x ( .r ` R ) y ) ( .r ` R ) z ) = ( x ( .r ` R ) ( y ( .r ` R ) z ) ) ) ) |
| 46 | 5 45 | syl | |- ( ph -> ( ( x e. ( Base ` R ) /\ y e. ( Base ` R ) /\ z e. ( Base ` R ) ) -> ( ( x ( .r ` R ) y ) ( .r ` R ) z ) = ( x ( .r ` R ) ( y ( .r ` R ) z ) ) ) ) |
| 47 | 1 | eleq2d | |- ( ph -> ( z e. B <-> z e. ( Base ` R ) ) ) |
| 48 | 31 32 47 | 3anbi123d | |- ( ph -> ( ( x e. B /\ y e. B /\ z e. B ) <-> ( x e. ( Base ` R ) /\ y e. ( Base ` R ) /\ z e. ( Base ` R ) ) ) ) |
| 49 | eqidd | |- ( ph -> z = z ) |
|
| 50 | 2 34 49 | oveq123d | |- ( ph -> ( ( x .x. y ) .x. z ) = ( ( x ( .r ` R ) y ) ( .r ` R ) z ) ) |
| 51 | eqidd | |- ( ph -> x = x ) |
|
| 52 | 2 | oveqd | |- ( ph -> ( y .x. z ) = ( y ( .r ` R ) z ) ) |
| 53 | 2 51 52 | oveq123d | |- ( ph -> ( x .x. ( y .x. z ) ) = ( x ( .r ` R ) ( y ( .r ` R ) z ) ) ) |
| 54 | 50 53 | eqeq12d | |- ( ph -> ( ( ( x .x. y ) .x. z ) = ( x .x. ( y .x. z ) ) <-> ( ( x ( .r ` R ) y ) ( .r ` R ) z ) = ( x ( .r ` R ) ( y ( .r ` R ) z ) ) ) ) |
| 55 | 46 48 54 | 3imtr4d | |- ( ph -> ( ( x e. B /\ y e. B /\ z e. B ) -> ( ( x .x. y ) .x. z ) = ( x .x. ( y .x. z ) ) ) ) |
| 56 | eldifi | |- ( x e. ( B \ { .0. } ) -> x e. B ) |
|
| 57 | eldifi | |- ( y e. ( B \ { .0. } ) -> y e. B ) |
|
| 58 | eldifi | |- ( z e. ( B \ { .0. } ) -> z e. B ) |
|
| 59 | 56 57 58 | 3anim123i | |- ( ( x e. ( B \ { .0. } ) /\ y e. ( B \ { .0. } ) /\ z e. ( B \ { .0. } ) ) -> ( x e. B /\ y e. B /\ z e. B ) ) |
| 60 | 55 59 | impel | |- ( ( ph /\ ( x e. ( B \ { .0. } ) /\ y e. ( B \ { .0. } ) /\ z e. ( B \ { .0. } ) ) ) -> ( ( x .x. y ) .x. z ) = ( x .x. ( y .x. z ) ) ) |
| 61 | eqid | |- ( 1r ` R ) = ( 1r ` R ) |
|
| 62 | 14 61 | ringidcl | |- ( R e. Ring -> ( 1r ` R ) e. ( Base ` R ) ) |
| 63 | 5 62 | syl | |- ( ph -> ( 1r ` R ) e. ( Base ` R ) ) |
| 64 | 63 4 1 | 3eltr4d | |- ( ph -> .1. e. B ) |
| 65 | eldifsn | |- ( .1. e. ( B \ { .0. } ) <-> ( .1. e. B /\ .1. =/= .0. ) ) |
|
| 66 | 64 7 65 | sylanbrc | |- ( ph -> .1. e. ( B \ { .0. } ) ) |
| 67 | 14 21 61 | ringlidm | |- ( ( R e. Ring /\ x e. ( Base ` R ) ) -> ( ( 1r ` R ) ( .r ` R ) x ) = x ) |
| 68 | 67 | ex | |- ( R e. Ring -> ( x e. ( Base ` R ) -> ( ( 1r ` R ) ( .r ` R ) x ) = x ) ) |
| 69 | 5 68 | syl | |- ( ph -> ( x e. ( Base ` R ) -> ( ( 1r ` R ) ( .r ` R ) x ) = x ) ) |
| 70 | 2 4 51 | oveq123d | |- ( ph -> ( .1. .x. x ) = ( ( 1r ` R ) ( .r ` R ) x ) ) |
| 71 | 70 | eqeq1d | |- ( ph -> ( ( .1. .x. x ) = x <-> ( ( 1r ` R ) ( .r ` R ) x ) = x ) ) |
| 72 | 69 31 71 | 3imtr4d | |- ( ph -> ( x e. B -> ( .1. .x. x ) = x ) ) |
| 73 | 72 | imp | |- ( ( ph /\ x e. B ) -> ( .1. .x. x ) = x ) |
| 74 | 73 | adantrr | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> ( .1. .x. x ) = x ) |
| 75 | 26 74 | sylan2b | |- ( ( ph /\ x e. ( B \ { .0. } ) ) -> ( .1. .x. x ) = x ) |
| 76 | 7 | adantr | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> .1. =/= .0. ) |
| 77 | simpr | |- ( ( ( ph /\ ( x e. B /\ x =/= .0. ) ) /\ I = .0. ) -> I = .0. ) |
|
| 78 | 77 | oveq1d | |- ( ( ( ph /\ ( x e. B /\ x =/= .0. ) ) /\ I = .0. ) -> ( I .x. x ) = ( .0. .x. x ) ) |
| 79 | 9 | adantr | |- ( ( ( ph /\ ( x e. B /\ x =/= .0. ) ) /\ I = .0. ) -> ( I .x. x ) = .1. ) |
| 80 | 31 | biimpa | |- ( ( ph /\ x e. B ) -> x e. ( Base ` R ) ) |
| 81 | 80 | adantrr | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> x e. ( Base ` R ) ) |
| 82 | eqid | |- ( 0g ` R ) = ( 0g ` R ) |
|
| 83 | 14 21 82 | ringlz | |- ( ( R e. Ring /\ x e. ( Base ` R ) ) -> ( ( 0g ` R ) ( .r ` R ) x ) = ( 0g ` R ) ) |
| 84 | 5 81 83 | syl2an2r | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> ( ( 0g ` R ) ( .r ` R ) x ) = ( 0g ` R ) ) |
| 85 | 2 3 51 | oveq123d | |- ( ph -> ( .0. .x. x ) = ( ( 0g ` R ) ( .r ` R ) x ) ) |
| 86 | 85 | adantr | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> ( .0. .x. x ) = ( ( 0g ` R ) ( .r ` R ) x ) ) |
| 87 | 3 | adantr | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> .0. = ( 0g ` R ) ) |
| 88 | 84 86 87 | 3eqtr4d | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> ( .0. .x. x ) = .0. ) |
| 89 | 88 | adantr | |- ( ( ( ph /\ ( x e. B /\ x =/= .0. ) ) /\ I = .0. ) -> ( .0. .x. x ) = .0. ) |
| 90 | 78 79 89 | 3eqtr3d | |- ( ( ( ph /\ ( x e. B /\ x =/= .0. ) ) /\ I = .0. ) -> .1. = .0. ) |
| 91 | 76 90 | mteqand | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> I =/= .0. ) |
| 92 | eldifsn | |- ( I e. ( B \ { .0. } ) <-> ( I e. B /\ I =/= .0. ) ) |
|
| 93 | 8 91 92 | sylanbrc | |- ( ( ph /\ ( x e. B /\ x =/= .0. ) ) -> I e. ( B \ { .0. } ) ) |
| 94 | 26 93 | sylan2b | |- ( ( ph /\ x e. ( B \ { .0. } ) ) -> I e. ( B \ { .0. } ) ) |
| 95 | 26 9 | sylan2b | |- ( ( ph /\ x e. ( B \ { .0. } ) ) -> ( I .x. x ) = .1. ) |
| 96 | 17 25 43 60 66 75 94 95 | isgrpd | |- ( ph -> ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) e. Grp ) |
| 97 | 3 | sneqd | |- ( ph -> { .0. } = { ( 0g ` R ) } ) |
| 98 | 1 97 | difeq12d | |- ( ph -> ( B \ { .0. } ) = ( ( Base ` R ) \ { ( 0g ` R ) } ) ) |
| 99 | 98 | oveq2d | |- ( ph -> ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) = ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) ) |
| 100 | 99 | eleq1d | |- ( ph -> ( ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) e. Grp <-> ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) e. Grp ) ) |
| 101 | 100 | anbi2d | |- ( ph -> ( ( R e. Ring /\ ( ( mulGrp ` R ) |`s ( B \ { .0. } ) ) e. Grp ) <-> ( R e. Ring /\ ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) e. Grp ) ) ) |
| 102 | 5 96 101 | mpbi2and | |- ( ph -> ( R e. Ring /\ ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) e. Grp ) ) |
| 103 | eqid | |- ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) = ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) |
|
| 104 | 14 82 103 | isdrng2 | |- ( R e. DivRing <-> ( R e. Ring /\ ( ( mulGrp ` R ) |`s ( ( Base ` R ) \ { ( 0g ` R ) } ) ) e. Grp ) ) |
| 105 | 102 104 | sylibr | |- ( ph -> R e. DivRing ) |