| Step | Hyp | Ref | Expression | 
						
							| 1 |  | dvrdir.b |  |-  B = ( Base ` R ) | 
						
							| 2 |  | dvrdir.u |  |-  U = ( Unit ` R ) | 
						
							| 3 |  | dvrdir.p |  |-  .+ = ( +g ` R ) | 
						
							| 4 |  | dvrdir.t |  |-  ./ = ( /r ` R ) | 
						
							| 5 |  | rdivmuldivd.p |  |-  .x. = ( .r ` R ) | 
						
							| 6 |  | rdivmuldivd.r |  |-  ( ph -> R e. CRing ) | 
						
							| 7 |  | rdivmuldivd.a |  |-  ( ph -> X e. B ) | 
						
							| 8 |  | rdivmuldivd.b |  |-  ( ph -> Y e. U ) | 
						
							| 9 |  | rdivmuldivd.c |  |-  ( ph -> Z e. B ) | 
						
							| 10 |  | rdivmuldivd.d |  |-  ( ph -> W e. U ) | 
						
							| 11 |  | eqid |  |-  ( invr ` R ) = ( invr ` R ) | 
						
							| 12 | 1 5 2 11 4 | dvrval |  |-  ( ( X e. B /\ Y e. U ) -> ( X ./ Y ) = ( X .x. ( ( invr ` R ) ` Y ) ) ) | 
						
							| 13 | 12 | oveq1d |  |-  ( ( X e. B /\ Y e. U ) -> ( ( X ./ Y ) .x. ( Z ./ W ) ) = ( ( X .x. ( ( invr ` R ) ` Y ) ) .x. ( Z ./ W ) ) ) | 
						
							| 14 | 7 8 13 | syl2anc |  |-  ( ph -> ( ( X ./ Y ) .x. ( Z ./ W ) ) = ( ( X .x. ( ( invr ` R ) ` Y ) ) .x. ( Z ./ W ) ) ) | 
						
							| 15 |  | crngring |  |-  ( R e. CRing -> R e. Ring ) | 
						
							| 16 | 6 15 | syl |  |-  ( ph -> R e. Ring ) | 
						
							| 17 | 1 2 | unitss |  |-  U C_ B | 
						
							| 18 | 2 11 | unitinvcl |  |-  ( ( R e. Ring /\ Y e. U ) -> ( ( invr ` R ) ` Y ) e. U ) | 
						
							| 19 | 16 8 18 | syl2anc |  |-  ( ph -> ( ( invr ` R ) ` Y ) e. U ) | 
						
							| 20 | 17 19 | sselid |  |-  ( ph -> ( ( invr ` R ) ` Y ) e. B ) | 
						
							| 21 | 1 2 4 | dvrcl |  |-  ( ( R e. Ring /\ Z e. B /\ W e. U ) -> ( Z ./ W ) e. B ) | 
						
							| 22 | 16 9 10 21 | syl3anc |  |-  ( ph -> ( Z ./ W ) e. B ) | 
						
							| 23 | 1 5 | ringass |  |-  ( ( R e. Ring /\ ( X e. B /\ ( ( invr ` R ) ` Y ) e. B /\ ( Z ./ W ) e. B ) ) -> ( ( X .x. ( ( invr ` R ) ` Y ) ) .x. ( Z ./ W ) ) = ( X .x. ( ( ( invr ` R ) ` Y ) .x. ( Z ./ W ) ) ) ) | 
						
							| 24 | 16 7 20 22 23 | syl13anc |  |-  ( ph -> ( ( X .x. ( ( invr ` R ) ` Y ) ) .x. ( Z ./ W ) ) = ( X .x. ( ( ( invr ` R ) ` Y ) .x. ( Z ./ W ) ) ) ) | 
						
							| 25 | 1 5 | crngcom |  |-  ( ( R e. CRing /\ ( ( invr ` R ) ` Y ) e. B /\ ( Z ./ W ) e. B ) -> ( ( ( invr ` R ) ` Y ) .x. ( Z ./ W ) ) = ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) | 
						
							| 26 | 6 20 22 25 | syl3anc |  |-  ( ph -> ( ( ( invr ` R ) ` Y ) .x. ( Z ./ W ) ) = ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) | 
						
							| 27 | 26 | oveq2d |  |-  ( ph -> ( X .x. ( ( ( invr ` R ) ` Y ) .x. ( Z ./ W ) ) ) = ( X .x. ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 28 | 14 24 27 | 3eqtrd |  |-  ( ph -> ( ( X ./ Y ) .x. ( Z ./ W ) ) = ( X .x. ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 29 |  | eqid |  |-  ( ( mulGrp ` R ) |`s U ) = ( ( mulGrp ` R ) |`s U ) | 
						
							| 30 | 2 29 | unitgrp |  |-  ( R e. Ring -> ( ( mulGrp ` R ) |`s U ) e. Grp ) | 
						
							| 31 | 16 30 | syl |  |-  ( ph -> ( ( mulGrp ` R ) |`s U ) e. Grp ) | 
						
							| 32 | 2 29 | unitgrpbas |  |-  U = ( Base ` ( ( mulGrp ` R ) |`s U ) ) | 
						
							| 33 |  | eqid |  |-  ( +g ` ( ( mulGrp ` R ) |`s U ) ) = ( +g ` ( ( mulGrp ` R ) |`s U ) ) | 
						
							| 34 | 2 29 11 | invrfval |  |-  ( invr ` R ) = ( invg ` ( ( mulGrp ` R ) |`s U ) ) | 
						
							| 35 | 32 33 34 | grpinvadd |  |-  ( ( ( ( mulGrp ` R ) |`s U ) e. Grp /\ Y e. U /\ W e. U ) -> ( ( invr ` R ) ` ( Y ( +g ` ( ( mulGrp ` R ) |`s U ) ) W ) ) = ( ( ( invr ` R ) ` W ) ( +g ` ( ( mulGrp ` R ) |`s U ) ) ( ( invr ` R ) ` Y ) ) ) | 
						
							| 36 | 31 8 10 35 | syl3anc |  |-  ( ph -> ( ( invr ` R ) ` ( Y ( +g ` ( ( mulGrp ` R ) |`s U ) ) W ) ) = ( ( ( invr ` R ) ` W ) ( +g ` ( ( mulGrp ` R ) |`s U ) ) ( ( invr ` R ) ` Y ) ) ) | 
						
							| 37 |  | eqid |  |-  ( mulGrp ` ( R |`s U ) ) = ( mulGrp ` ( R |`s U ) ) | 
						
							| 38 | 2 | fvexi |  |-  U e. _V | 
						
							| 39 |  | eqid |  |-  ( R |`s U ) = ( R |`s U ) | 
						
							| 40 | 39 5 | ressmulr |  |-  ( U e. _V -> .x. = ( .r ` ( R |`s U ) ) ) | 
						
							| 41 | 38 40 | ax-mp |  |-  .x. = ( .r ` ( R |`s U ) ) | 
						
							| 42 | 37 41 | mgpplusg |  |-  .x. = ( +g ` ( mulGrp ` ( R |`s U ) ) ) | 
						
							| 43 |  | eqid |  |-  ( mulGrp ` R ) = ( mulGrp ` R ) | 
						
							| 44 | 39 43 | mgpress |  |-  ( ( R e. Ring /\ U e. _V ) -> ( ( mulGrp ` R ) |`s U ) = ( mulGrp ` ( R |`s U ) ) ) | 
						
							| 45 | 16 38 44 | sylancl |  |-  ( ph -> ( ( mulGrp ` R ) |`s U ) = ( mulGrp ` ( R |`s U ) ) ) | 
						
							| 46 | 45 | fveq2d |  |-  ( ph -> ( +g ` ( ( mulGrp ` R ) |`s U ) ) = ( +g ` ( mulGrp ` ( R |`s U ) ) ) ) | 
						
							| 47 | 42 46 | eqtr4id |  |-  ( ph -> .x. = ( +g ` ( ( mulGrp ` R ) |`s U ) ) ) | 
						
							| 48 | 47 | oveqd |  |-  ( ph -> ( Y .x. W ) = ( Y ( +g ` ( ( mulGrp ` R ) |`s U ) ) W ) ) | 
						
							| 49 | 48 | fveq2d |  |-  ( ph -> ( ( invr ` R ) ` ( Y .x. W ) ) = ( ( invr ` R ) ` ( Y ( +g ` ( ( mulGrp ` R ) |`s U ) ) W ) ) ) | 
						
							| 50 | 47 | oveqd |  |-  ( ph -> ( ( ( invr ` R ) ` W ) .x. ( ( invr ` R ) ` Y ) ) = ( ( ( invr ` R ) ` W ) ( +g ` ( ( mulGrp ` R ) |`s U ) ) ( ( invr ` R ) ` Y ) ) ) | 
						
							| 51 | 36 49 50 | 3eqtr4d |  |-  ( ph -> ( ( invr ` R ) ` ( Y .x. W ) ) = ( ( ( invr ` R ) ` W ) .x. ( ( invr ` R ) ` Y ) ) ) | 
						
							| 52 | 51 | oveq2d |  |-  ( ph -> ( ( X .x. Z ) .x. ( ( invr ` R ) ` ( Y .x. W ) ) ) = ( ( X .x. Z ) .x. ( ( ( invr ` R ) ` W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 53 | 1 5 | ringcl |  |-  ( ( R e. Ring /\ X e. B /\ Z e. B ) -> ( X .x. Z ) e. B ) | 
						
							| 54 | 16 7 9 53 | syl3anc |  |-  ( ph -> ( X .x. Z ) e. B ) | 
						
							| 55 | 2 5 | unitmulcl |  |-  ( ( R e. Ring /\ Y e. U /\ W e. U ) -> ( Y .x. W ) e. U ) | 
						
							| 56 | 16 8 10 55 | syl3anc |  |-  ( ph -> ( Y .x. W ) e. U ) | 
						
							| 57 | 1 5 2 11 4 | dvrval |  |-  ( ( ( X .x. Z ) e. B /\ ( Y .x. W ) e. U ) -> ( ( X .x. Z ) ./ ( Y .x. W ) ) = ( ( X .x. Z ) .x. ( ( invr ` R ) ` ( Y .x. W ) ) ) ) | 
						
							| 58 | 54 56 57 | syl2anc |  |-  ( ph -> ( ( X .x. Z ) ./ ( Y .x. W ) ) = ( ( X .x. Z ) .x. ( ( invr ` R ) ` ( Y .x. W ) ) ) ) | 
						
							| 59 | 2 11 | unitinvcl |  |-  ( ( R e. Ring /\ W e. U ) -> ( ( invr ` R ) ` W ) e. U ) | 
						
							| 60 | 16 10 59 | syl2anc |  |-  ( ph -> ( ( invr ` R ) ` W ) e. U ) | 
						
							| 61 | 17 60 | sselid |  |-  ( ph -> ( ( invr ` R ) ` W ) e. B ) | 
						
							| 62 | 1 5 | ringass |  |-  ( ( R e. Ring /\ ( X e. B /\ Z e. B /\ ( ( invr ` R ) ` W ) e. B ) ) -> ( ( X .x. Z ) .x. ( ( invr ` R ) ` W ) ) = ( X .x. ( Z .x. ( ( invr ` R ) ` W ) ) ) ) | 
						
							| 63 | 16 7 9 61 62 | syl13anc |  |-  ( ph -> ( ( X .x. Z ) .x. ( ( invr ` R ) ` W ) ) = ( X .x. ( Z .x. ( ( invr ` R ) ` W ) ) ) ) | 
						
							| 64 | 1 5 2 11 4 | dvrval |  |-  ( ( Z e. B /\ W e. U ) -> ( Z ./ W ) = ( Z .x. ( ( invr ` R ) ` W ) ) ) | 
						
							| 65 | 9 10 64 | syl2anc |  |-  ( ph -> ( Z ./ W ) = ( Z .x. ( ( invr ` R ) ` W ) ) ) | 
						
							| 66 | 65 | oveq2d |  |-  ( ph -> ( X .x. ( Z ./ W ) ) = ( X .x. ( Z .x. ( ( invr ` R ) ` W ) ) ) ) | 
						
							| 67 | 63 66 | eqtr4d |  |-  ( ph -> ( ( X .x. Z ) .x. ( ( invr ` R ) ` W ) ) = ( X .x. ( Z ./ W ) ) ) | 
						
							| 68 | 67 | oveq1d |  |-  ( ph -> ( ( ( X .x. Z ) .x. ( ( invr ` R ) ` W ) ) .x. ( ( invr ` R ) ` Y ) ) = ( ( X .x. ( Z ./ W ) ) .x. ( ( invr ` R ) ` Y ) ) ) | 
						
							| 69 | 1 5 | ringass |  |-  ( ( R e. Ring /\ ( ( X .x. Z ) e. B /\ ( ( invr ` R ) ` W ) e. B /\ ( ( invr ` R ) ` Y ) e. B ) ) -> ( ( ( X .x. Z ) .x. ( ( invr ` R ) ` W ) ) .x. ( ( invr ` R ) ` Y ) ) = ( ( X .x. Z ) .x. ( ( ( invr ` R ) ` W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 70 | 16 54 61 20 69 | syl13anc |  |-  ( ph -> ( ( ( X .x. Z ) .x. ( ( invr ` R ) ` W ) ) .x. ( ( invr ` R ) ` Y ) ) = ( ( X .x. Z ) .x. ( ( ( invr ` R ) ` W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 71 | 1 5 | ringass |  |-  ( ( R e. Ring /\ ( X e. B /\ ( Z ./ W ) e. B /\ ( ( invr ` R ) ` Y ) e. B ) ) -> ( ( X .x. ( Z ./ W ) ) .x. ( ( invr ` R ) ` Y ) ) = ( X .x. ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 72 | 16 7 22 20 71 | syl13anc |  |-  ( ph -> ( ( X .x. ( Z ./ W ) ) .x. ( ( invr ` R ) ` Y ) ) = ( X .x. ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 73 | 68 70 72 | 3eqtr3rd |  |-  ( ph -> ( X .x. ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) = ( ( X .x. Z ) .x. ( ( ( invr ` R ) ` W ) .x. ( ( invr ` R ) ` Y ) ) ) ) | 
						
							| 74 | 52 58 73 | 3eqtr4rd |  |-  ( ph -> ( X .x. ( ( Z ./ W ) .x. ( ( invr ` R ) ` Y ) ) ) = ( ( X .x. Z ) ./ ( Y .x. W ) ) ) | 
						
							| 75 | 28 74 | eqtrd |  |-  ( ph -> ( ( X ./ Y ) .x. ( Z ./ W ) ) = ( ( X .x. Z ) ./ ( Y .x. W ) ) ) |