| Step |
Hyp |
Ref |
Expression |
| 1 |
|
zringfrac.1 |
|- Q = ( CCfld |`s QQ ) |
| 2 |
|
zringfrac.2 |
|- .~ = ( ZZring ~RL ( ZZ \ { 0 } ) ) |
| 3 |
|
zringfrac.3 |
|- F = ( q e. QQ |-> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) |
| 4 |
1
|
qdrng |
|- Q e. DivRing |
| 5 |
|
drngring |
|- ( Q e. DivRing -> Q e. Ring ) |
| 6 |
4 5
|
ax-mp |
|- Q e. Ring |
| 7 |
|
zringidom |
|- ZZring e. IDomn |
| 8 |
|
id |
|- ( ZZring e. IDomn -> ZZring e. IDomn ) |
| 9 |
8
|
fracfld |
|- ( ZZring e. IDomn -> ( Frac ` ZZring ) e. Field ) |
| 10 |
9
|
fldcrngd |
|- ( ZZring e. IDomn -> ( Frac ` ZZring ) e. CRing ) |
| 11 |
10
|
crngringd |
|- ( ZZring e. IDomn -> ( Frac ` ZZring ) e. Ring ) |
| 12 |
7 11
|
ax-mp |
|- ( Frac ` ZZring ) e. Ring |
| 13 |
6 12
|
pm3.2i |
|- ( Q e. Ring /\ ( Frac ` ZZring ) e. Ring ) |
| 14 |
|
ringgrp |
|- ( Q e. Ring -> Q e. Grp ) |
| 15 |
6 14
|
ax-mp |
|- Q e. Grp |
| 16 |
|
ringgrp |
|- ( ( Frac ` ZZring ) e. Ring -> ( Frac ` ZZring ) e. Grp ) |
| 17 |
12 16
|
ax-mp |
|- ( Frac ` ZZring ) e. Grp |
| 18 |
15 17
|
pm3.2i |
|- ( Q e. Grp /\ ( Frac ` ZZring ) e. Grp ) |
| 19 |
|
qnumcl |
|- ( q e. QQ -> ( numer ` q ) e. ZZ ) |
| 20 |
|
qdencl |
|- ( q e. QQ -> ( denom ` q ) e. NN ) |
| 21 |
20
|
nnzd |
|- ( q e. QQ -> ( denom ` q ) e. ZZ ) |
| 22 |
20
|
nnne0d |
|- ( q e. QQ -> ( denom ` q ) =/= 0 ) |
| 23 |
21 22
|
eldifsnd |
|- ( q e. QQ -> ( denom ` q ) e. ( ZZ \ { 0 } ) ) |
| 24 |
19 23
|
opelxpd |
|- ( q e. QQ -> <. ( numer ` q ) , ( denom ` q ) >. e. ( ZZ X. ( ZZ \ { 0 } ) ) ) |
| 25 |
2
|
ovexi |
|- .~ e. _V |
| 26 |
25
|
ecelqsi |
|- ( <. ( numer ` q ) , ( denom ` q ) >. e. ( ZZ X. ( ZZ \ { 0 } ) ) -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. ( ( ZZ X. ( ZZ \ { 0 } ) ) /. .~ ) ) |
| 27 |
24 26
|
syl |
|- ( q e. QQ -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. ( ( ZZ X. ( ZZ \ { 0 } ) ) /. .~ ) ) |
| 28 |
|
zringbas |
|- ZZ = ( Base ` ZZring ) |
| 29 |
|
zring0 |
|- 0 = ( 0g ` ZZring ) |
| 30 |
|
zringmulr |
|- x. = ( .r ` ZZring ) |
| 31 |
|
eqid |
|- ( -g ` ZZring ) = ( -g ` ZZring ) |
| 32 |
|
eqid |
|- ( ZZ X. ( ZZ \ { 0 } ) ) = ( ZZ X. ( ZZ \ { 0 } ) ) |
| 33 |
|
fracval |
|- ( Frac ` ZZring ) = ( ZZring RLocal ( RLReg ` ZZring ) ) |
| 34 |
8
|
idomdomd |
|- ( ZZring e. IDomn -> ZZring e. Domn ) |
| 35 |
7 34
|
ax-mp |
|- ZZring e. Domn |
| 36 |
|
eqid |
|- ( RLReg ` ZZring ) = ( RLReg ` ZZring ) |
| 37 |
28 36 29
|
isdomn6 |
|- ( ZZring e. Domn <-> ( ZZring e. NzRing /\ ( ZZ \ { 0 } ) = ( RLReg ` ZZring ) ) ) |
| 38 |
35 37
|
mpbi |
|- ( ZZring e. NzRing /\ ( ZZ \ { 0 } ) = ( RLReg ` ZZring ) ) |
| 39 |
38
|
simpri |
|- ( ZZ \ { 0 } ) = ( RLReg ` ZZring ) |
| 40 |
39
|
oveq2i |
|- ( ZZring RLocal ( ZZ \ { 0 } ) ) = ( ZZring RLocal ( RLReg ` ZZring ) ) |
| 41 |
33 40
|
eqtr4i |
|- ( Frac ` ZZring ) = ( ZZring RLocal ( ZZ \ { 0 } ) ) |
| 42 |
7
|
a1i |
|- ( T. -> ZZring e. IDomn ) |
| 43 |
|
difssd |
|- ( T. -> ( ZZ \ { 0 } ) C_ ZZ ) |
| 44 |
28 29 30 31 32 41 2 42 43
|
rlocbas |
|- ( T. -> ( ( ZZ X. ( ZZ \ { 0 } ) ) /. .~ ) = ( Base ` ( Frac ` ZZring ) ) ) |
| 45 |
44
|
mptru |
|- ( ( ZZ X. ( ZZ \ { 0 } ) ) /. .~ ) = ( Base ` ( Frac ` ZZring ) ) |
| 46 |
27 45
|
eleqtrdi |
|- ( q e. QQ -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. ( Base ` ( Frac ` ZZring ) ) ) |
| 47 |
3 46
|
fmpti |
|- F : QQ --> ( Base ` ( Frac ` ZZring ) ) |
| 48 |
|
ecexg |
|- ( .~ e. _V -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. _V ) |
| 49 |
25 48
|
ax-mp |
|- [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. _V |
| 50 |
3
|
fvmpt2 |
|- ( ( q e. QQ /\ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. _V ) -> ( F ` q ) = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) |
| 51 |
49 50
|
mpan2 |
|- ( q e. QQ -> ( F ` q ) = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) |
| 52 |
51
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( F ` q ) = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) |
| 53 |
|
fveq2 |
|- ( q = p -> ( numer ` q ) = ( numer ` p ) ) |
| 54 |
|
fveq2 |
|- ( q = p -> ( denom ` q ) = ( denom ` p ) ) |
| 55 |
53 54
|
opeq12d |
|- ( q = p -> <. ( numer ` q ) , ( denom ` q ) >. = <. ( numer ` p ) , ( denom ` p ) >. ) |
| 56 |
55
|
eceq1d |
|- ( q = p -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) |
| 57 |
56 3 27
|
fvmpt3 |
|- ( p e. QQ -> ( F ` p ) = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) |
| 58 |
57
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( F ` p ) = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) |
| 59 |
52 58
|
oveq12d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( F ` q ) ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) ( F ` p ) ) = ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) ) |
| 60 |
41
|
fveq2i |
|- ( +g ` ( Frac ` ZZring ) ) = ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) |
| 61 |
60
|
oveqi |
|- ( ( F ` q ) ( +g ` ( Frac ` ZZring ) ) ( F ` p ) ) = ( ( F ` q ) ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) ( F ` p ) ) |
| 62 |
61
|
a1i |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( F ` q ) ( +g ` ( Frac ` ZZring ) ) ( F ` p ) ) = ( ( F ` q ) ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) ( F ` p ) ) ) |
| 63 |
|
fveq2 |
|- ( q = u -> ( numer ` q ) = ( numer ` u ) ) |
| 64 |
|
fveq2 |
|- ( q = u -> ( denom ` q ) = ( denom ` u ) ) |
| 65 |
63 64
|
opeq12d |
|- ( q = u -> <. ( numer ` q ) , ( denom ` q ) >. = <. ( numer ` u ) , ( denom ` u ) >. ) |
| 66 |
65
|
eceq1d |
|- ( q = u -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` u ) , ( denom ` u ) >. ] .~ ) |
| 67 |
66
|
cbvmptv |
|- ( q e. QQ |-> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) = ( u e. QQ |-> [ <. ( numer ` u ) , ( denom ` u ) >. ] .~ ) |
| 68 |
3 67
|
eqtri |
|- F = ( u e. QQ |-> [ <. ( numer ` u ) , ( denom ` u ) >. ] .~ ) |
| 69 |
|
zring1 |
|- 1 = ( 1r ` ZZring ) |
| 70 |
7
|
a1i |
|- ( ( q e. QQ /\ p e. QQ ) -> ZZring e. IDomn ) |
| 71 |
70
|
idomcringd |
|- ( ( q e. QQ /\ p e. QQ ) -> ZZring e. CRing ) |
| 72 |
35
|
a1i |
|- ( ( q e. QQ /\ p e. QQ ) -> ZZring e. Domn ) |
| 73 |
|
eqid |
|- ( mulGrp ` ZZring ) = ( mulGrp ` ZZring ) |
| 74 |
28 29 73
|
isdomn3 |
|- ( ZZring e. Domn <-> ( ZZring e. Ring /\ ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) ) |
| 75 |
72 74
|
sylib |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ZZring e. Ring /\ ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) ) |
| 76 |
75
|
simprd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) |
| 77 |
28 29 69 30 31 32 2 71 76
|
erler |
|- ( ( q e. QQ /\ p e. QQ ) -> .~ Er ( ZZ X. ( ZZ \ { 0 } ) ) ) |
| 78 |
|
qcn |
|- ( q e. QQ -> q e. CC ) |
| 79 |
78
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> q e. CC ) |
| 80 |
|
qcn |
|- ( p e. QQ -> p e. CC ) |
| 81 |
80
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> p e. CC ) |
| 82 |
79 81
|
addcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( q + p ) e. CC ) |
| 83 |
|
qaddcl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( q + p ) e. QQ ) |
| 84 |
|
qdencl |
|- ( ( q + p ) e. QQ -> ( denom ` ( q + p ) ) e. NN ) |
| 85 |
83 84
|
syl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q + p ) ) e. NN ) |
| 86 |
85
|
nncnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q + p ) ) e. CC ) |
| 87 |
20
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` q ) e. NN ) |
| 88 |
87
|
nncnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` q ) e. CC ) |
| 89 |
|
qdencl |
|- ( p e. QQ -> ( denom ` p ) e. NN ) |
| 90 |
89
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` p ) e. NN ) |
| 91 |
90
|
nncnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` p ) e. CC ) |
| 92 |
88 91
|
mulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` q ) x. ( denom ` p ) ) e. CC ) |
| 93 |
82 86 92
|
mul32d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q + p ) x. ( denom ` ( q + p ) ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( ( q + p ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) x. ( denom ` ( q + p ) ) ) ) |
| 94 |
|
qmuldeneqnum |
|- ( ( q + p ) e. QQ -> ( ( q + p ) x. ( denom ` ( q + p ) ) ) = ( numer ` ( q + p ) ) ) |
| 95 |
83 94
|
syl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q + p ) x. ( denom ` ( q + p ) ) ) = ( numer ` ( q + p ) ) ) |
| 96 |
95
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q + p ) x. ( denom ` ( q + p ) ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( numer ` ( q + p ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) |
| 97 |
79 88 91
|
mulassd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q x. ( denom ` q ) ) x. ( denom ` p ) ) = ( q x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) |
| 98 |
|
qmuldeneqnum |
|- ( q e. QQ -> ( q x. ( denom ` q ) ) = ( numer ` q ) ) |
| 99 |
98
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( q x. ( denom ` q ) ) = ( numer ` q ) ) |
| 100 |
99
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q x. ( denom ` q ) ) x. ( denom ` p ) ) = ( ( numer ` q ) x. ( denom ` p ) ) ) |
| 101 |
97 100
|
eqtr3d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( q x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( numer ` q ) x. ( denom ` p ) ) ) |
| 102 |
81 91 88
|
mulassd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( p x. ( denom ` p ) ) x. ( denom ` q ) ) = ( p x. ( ( denom ` p ) x. ( denom ` q ) ) ) ) |
| 103 |
|
qmuldeneqnum |
|- ( p e. QQ -> ( p x. ( denom ` p ) ) = ( numer ` p ) ) |
| 104 |
103
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( p x. ( denom ` p ) ) = ( numer ` p ) ) |
| 105 |
104
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( p x. ( denom ` p ) ) x. ( denom ` q ) ) = ( ( numer ` p ) x. ( denom ` q ) ) ) |
| 106 |
91 88
|
mulcomd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` p ) x. ( denom ` q ) ) = ( ( denom ` q ) x. ( denom ` p ) ) ) |
| 107 |
106
|
oveq2d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( p x. ( ( denom ` p ) x. ( denom ` q ) ) ) = ( p x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) |
| 108 |
102 105 107
|
3eqtr3rd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( p x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( numer ` p ) x. ( denom ` q ) ) ) |
| 109 |
101 108
|
oveq12d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q x. ( ( denom ` q ) x. ( denom ` p ) ) ) + ( p x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) = ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) ) |
| 110 |
79 92 81 109
|
joinlmuladdmuld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q + p ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) ) |
| 111 |
110
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q + p ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) x. ( denom ` ( q + p ) ) ) = ( ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) x. ( denom ` ( q + p ) ) ) ) |
| 112 |
93 96 111
|
3eqtr3d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( numer ` ( q + p ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) x. ( denom ` ( q + p ) ) ) ) |
| 113 |
39
|
oveq2i |
|- ( ZZring ~RL ( ZZ \ { 0 } ) ) = ( ZZring ~RL ( RLReg ` ZZring ) ) |
| 114 |
2 113
|
eqtri |
|- .~ = ( ZZring ~RL ( RLReg ` ZZring ) ) |
| 115 |
|
qnumcl |
|- ( ( q + p ) e. QQ -> ( numer ` ( q + p ) ) e. ZZ ) |
| 116 |
83 115
|
syl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( numer ` ( q + p ) ) e. ZZ ) |
| 117 |
19
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( numer ` q ) e. ZZ ) |
| 118 |
89
|
nnzd |
|- ( p e. QQ -> ( denom ` p ) e. ZZ ) |
| 119 |
118
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` p ) e. ZZ ) |
| 120 |
117 119
|
zmulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( numer ` q ) x. ( denom ` p ) ) e. ZZ ) |
| 121 |
|
qnumcl |
|- ( p e. QQ -> ( numer ` p ) e. ZZ ) |
| 122 |
121
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( numer ` p ) e. ZZ ) |
| 123 |
21
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` q ) e. ZZ ) |
| 124 |
122 123
|
zmulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( numer ` p ) x. ( denom ` q ) ) e. ZZ ) |
| 125 |
120 124
|
zaddcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) e. ZZ ) |
| 126 |
85
|
nnzd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q + p ) ) e. ZZ ) |
| 127 |
85
|
nnne0d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q + p ) ) =/= 0 ) |
| 128 |
126 127
|
eldifsnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q + p ) ) e. ( ZZ \ { 0 } ) ) |
| 129 |
128 39
|
eleqtrdi |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q + p ) ) e. ( RLReg ` ZZring ) ) |
| 130 |
123 119
|
zmulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` q ) x. ( denom ` p ) ) e. ZZ ) |
| 131 |
87 90
|
nnmulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` q ) x. ( denom ` p ) ) e. NN ) |
| 132 |
131
|
nnne0d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` q ) x. ( denom ` p ) ) =/= 0 ) |
| 133 |
130 132
|
eldifsnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` q ) x. ( denom ` p ) ) e. ( ZZ \ { 0 } ) ) |
| 134 |
133 39
|
eleqtrdi |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( denom ` q ) x. ( denom ` p ) ) e. ( RLReg ` ZZring ) ) |
| 135 |
28 30 114 71 116 125 129 134
|
fracerl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. .~ <. ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. <-> ( ( numer ` ( q + p ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) x. ( denom ` ( q + p ) ) ) ) ) |
| 136 |
112 135
|
mpbird |
|- ( ( q e. QQ /\ p e. QQ ) -> <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. .~ <. ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. ) |
| 137 |
77 136
|
erthi |
|- ( ( q e. QQ /\ p e. QQ ) -> [ <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. ] .~ = [ <. ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. ] .~ ) |
| 138 |
137
|
adantr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> [ <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. ] .~ = [ <. ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. ] .~ ) |
| 139 |
|
fveq2 |
|- ( u = ( q + p ) -> ( numer ` u ) = ( numer ` ( q + p ) ) ) |
| 140 |
|
fveq2 |
|- ( u = ( q + p ) -> ( denom ` u ) = ( denom ` ( q + p ) ) ) |
| 141 |
139 140
|
opeq12d |
|- ( u = ( q + p ) -> <. ( numer ` u ) , ( denom ` u ) >. = <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. ) |
| 142 |
141
|
adantl |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> <. ( numer ` u ) , ( denom ` u ) >. = <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. ) |
| 143 |
142
|
eceq1d |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> [ <. ( numer ` u ) , ( denom ` u ) >. ] .~ = [ <. ( numer ` ( q + p ) ) , ( denom ` ( q + p ) ) >. ] .~ ) |
| 144 |
|
zringplusg |
|- + = ( +g ` ZZring ) |
| 145 |
|
eqid |
|- ( ZZring RLocal ( ZZ \ { 0 } ) ) = ( ZZring RLocal ( ZZ \ { 0 } ) ) |
| 146 |
|
zringcrng |
|- ZZring e. CRing |
| 147 |
146
|
a1i |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ZZring e. CRing ) |
| 148 |
35 74
|
mpbi |
|- ( ZZring e. Ring /\ ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) |
| 149 |
148
|
simpri |
|- ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) |
| 150 |
149
|
a1i |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) |
| 151 |
117
|
adantr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ( numer ` q ) e. ZZ ) |
| 152 |
122
|
adantr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ( numer ` p ) e. ZZ ) |
| 153 |
23
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` q ) e. ( ZZ \ { 0 } ) ) |
| 154 |
153
|
adantr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ( denom ` q ) e. ( ZZ \ { 0 } ) ) |
| 155 |
89
|
nnne0d |
|- ( p e. QQ -> ( denom ` p ) =/= 0 ) |
| 156 |
118 155
|
eldifsnd |
|- ( p e. QQ -> ( denom ` p ) e. ( ZZ \ { 0 } ) ) |
| 157 |
156
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` p ) e. ( ZZ \ { 0 } ) ) |
| 158 |
157
|
adantr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ( denom ` p ) e. ( ZZ \ { 0 } ) ) |
| 159 |
|
eqid |
|- ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) = ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) |
| 160 |
28 30 144 145 2 147 150 151 152 154 158 159
|
rlocaddval |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) = [ <. ( ( ( numer ` q ) x. ( denom ` p ) ) + ( ( numer ` p ) x. ( denom ` q ) ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. ] .~ ) |
| 161 |
138 143 160
|
3eqtr4d |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ u = ( q + p ) ) -> [ <. ( numer ` u ) , ( denom ` u ) >. ] .~ = ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) ) |
| 162 |
|
ovexd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) e. _V ) |
| 163 |
68 161 83 162
|
fvmptd2 |
|- ( ( q e. QQ /\ p e. QQ ) -> ( F ` ( q + p ) ) = ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( +g ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) ) |
| 164 |
59 62 163
|
3eqtr4rd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( F ` ( q + p ) ) = ( ( F ` q ) ( +g ` ( Frac ` ZZring ) ) ( F ` p ) ) ) |
| 165 |
164
|
rgen2 |
|- A. q e. QQ A. p e. QQ ( F ` ( q + p ) ) = ( ( F ` q ) ( +g ` ( Frac ` ZZring ) ) ( F ` p ) ) |
| 166 |
47 165
|
pm3.2i |
|- ( F : QQ --> ( Base ` ( Frac ` ZZring ) ) /\ A. q e. QQ A. p e. QQ ( F ` ( q + p ) ) = ( ( F ` q ) ( +g ` ( Frac ` ZZring ) ) ( F ` p ) ) ) |
| 167 |
1
|
qrngbas |
|- QQ = ( Base ` Q ) |
| 168 |
|
eqid |
|- ( Base ` ( Frac ` ZZring ) ) = ( Base ` ( Frac ` ZZring ) ) |
| 169 |
|
qex |
|- QQ e. _V |
| 170 |
|
cnfldadd |
|- + = ( +g ` CCfld ) |
| 171 |
1 170
|
ressplusg |
|- ( QQ e. _V -> + = ( +g ` Q ) ) |
| 172 |
169 171
|
ax-mp |
|- + = ( +g ` Q ) |
| 173 |
|
eqid |
|- ( +g ` ( Frac ` ZZring ) ) = ( +g ` ( Frac ` ZZring ) ) |
| 174 |
167 168 172 173
|
isghm |
|- ( F e. ( Q GrpHom ( Frac ` ZZring ) ) <-> ( ( Q e. Grp /\ ( Frac ` ZZring ) e. Grp ) /\ ( F : QQ --> ( Base ` ( Frac ` ZZring ) ) /\ A. q e. QQ A. p e. QQ ( F ` ( q + p ) ) = ( ( F ` q ) ( +g ` ( Frac ` ZZring ) ) ( F ` p ) ) ) ) ) |
| 175 |
18 166 174
|
mpbir2an |
|- F e. ( Q GrpHom ( Frac ` ZZring ) ) |
| 176 |
|
eqid |
|- ( mulGrp ` Q ) = ( mulGrp ` Q ) |
| 177 |
176
|
ringmgp |
|- ( Q e. Ring -> ( mulGrp ` Q ) e. Mnd ) |
| 178 |
6 177
|
ax-mp |
|- ( mulGrp ` Q ) e. Mnd |
| 179 |
|
eqid |
|- ( mulGrp ` ( Frac ` ZZring ) ) = ( mulGrp ` ( Frac ` ZZring ) ) |
| 180 |
179
|
ringmgp |
|- ( ( Frac ` ZZring ) e. Ring -> ( mulGrp ` ( Frac ` ZZring ) ) e. Mnd ) |
| 181 |
12 180
|
ax-mp |
|- ( mulGrp ` ( Frac ` ZZring ) ) e. Mnd |
| 182 |
178 181
|
pm3.2i |
|- ( ( mulGrp ` Q ) e. Mnd /\ ( mulGrp ` ( Frac ` ZZring ) ) e. Mnd ) |
| 183 |
|
eqid |
|- ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) = ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) |
| 184 |
28 30 144 145 2 71 76 117 122 153 157 183
|
rlocmulval |
|- ( ( q e. QQ /\ p e. QQ ) -> ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) = [ <. ( ( numer ` q ) x. ( numer ` p ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. ] .~ ) |
| 185 |
79 81
|
mulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( q x. p ) e. CC ) |
| 186 |
|
qmulcl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( q x. p ) e. QQ ) |
| 187 |
|
qdencl |
|- ( ( q x. p ) e. QQ -> ( denom ` ( q x. p ) ) e. NN ) |
| 188 |
186 187
|
syl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q x. p ) ) e. NN ) |
| 189 |
188
|
nncnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q x. p ) ) e. CC ) |
| 190 |
185 189 92
|
mul32d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q x. p ) x. ( denom ` ( q x. p ) ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( ( q x. p ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) x. ( denom ` ( q x. p ) ) ) ) |
| 191 |
79 81 88 91
|
mul4d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q x. p ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( q x. ( denom ` q ) ) x. ( p x. ( denom ` p ) ) ) ) |
| 192 |
191
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q x. p ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) x. ( denom ` ( q x. p ) ) ) = ( ( ( q x. ( denom ` q ) ) x. ( p x. ( denom ` p ) ) ) x. ( denom ` ( q x. p ) ) ) ) |
| 193 |
190 192
|
eqtrd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q x. p ) x. ( denom ` ( q x. p ) ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( ( q x. ( denom ` q ) ) x. ( p x. ( denom ` p ) ) ) x. ( denom ` ( q x. p ) ) ) ) |
| 194 |
|
qmuldeneqnum |
|- ( ( q x. p ) e. QQ -> ( ( q x. p ) x. ( denom ` ( q x. p ) ) ) = ( numer ` ( q x. p ) ) ) |
| 195 |
186 194
|
syl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q x. p ) x. ( denom ` ( q x. p ) ) ) = ( numer ` ( q x. p ) ) ) |
| 196 |
195
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q x. p ) x. ( denom ` ( q x. p ) ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) = ( ( numer ` ( q x. p ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) |
| 197 |
99 104
|
oveq12d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( q x. ( denom ` q ) ) x. ( p x. ( denom ` p ) ) ) = ( ( numer ` q ) x. ( numer ` p ) ) ) |
| 198 |
197
|
oveq1d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( q x. ( denom ` q ) ) x. ( p x. ( denom ` p ) ) ) x. ( denom ` ( q x. p ) ) ) = ( ( ( numer ` q ) x. ( numer ` p ) ) x. ( denom ` ( q x. p ) ) ) ) |
| 199 |
193 196 198
|
3eqtr3rd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( numer ` q ) x. ( numer ` p ) ) x. ( denom ` ( q x. p ) ) ) = ( ( numer ` ( q x. p ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) |
| 200 |
117 122
|
zmulcld |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( numer ` q ) x. ( numer ` p ) ) e. ZZ ) |
| 201 |
|
qnumcl |
|- ( ( q x. p ) e. QQ -> ( numer ` ( q x. p ) ) e. ZZ ) |
| 202 |
186 201
|
syl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( numer ` ( q x. p ) ) e. ZZ ) |
| 203 |
188
|
nnzd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q x. p ) ) e. ZZ ) |
| 204 |
188
|
nnne0d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q x. p ) ) =/= 0 ) |
| 205 |
203 204
|
eldifsnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q x. p ) ) e. ( ZZ \ { 0 } ) ) |
| 206 |
205 39
|
eleqtrdi |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` ( q x. p ) ) e. ( RLReg ` ZZring ) ) |
| 207 |
28 30 114 71 200 202 134 206
|
fracerl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( <. ( ( numer ` q ) x. ( numer ` p ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. .~ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. <-> ( ( ( numer ` q ) x. ( numer ` p ) ) x. ( denom ` ( q x. p ) ) ) = ( ( numer ` ( q x. p ) ) x. ( ( denom ` q ) x. ( denom ` p ) ) ) ) ) |
| 208 |
199 207
|
mpbird |
|- ( ( q e. QQ /\ p e. QQ ) -> <. ( ( numer ` q ) x. ( numer ` p ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. .~ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ) |
| 209 |
77 208
|
erthi |
|- ( ( q e. QQ /\ p e. QQ ) -> [ <. ( ( numer ` q ) x. ( numer ` p ) ) , ( ( denom ` q ) x. ( denom ` p ) ) >. ] .~ = [ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ] .~ ) |
| 210 |
184 209
|
eqtrd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) = [ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ] .~ ) |
| 211 |
41
|
fveq2i |
|- ( .r ` ( Frac ` ZZring ) ) = ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) |
| 212 |
211
|
a1i |
|- ( ( q e. QQ /\ p e. QQ ) -> ( .r ` ( Frac ` ZZring ) ) = ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) ) |
| 213 |
212 52 58
|
oveq123d |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( F ` q ) ( .r ` ( Frac ` ZZring ) ) ( F ` p ) ) = ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ( .r ` ( ZZring RLocal ( ZZ \ { 0 } ) ) ) [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) ) |
| 214 |
|
fveq2 |
|- ( u = ( q x. p ) -> ( numer ` u ) = ( numer ` ( q x. p ) ) ) |
| 215 |
|
fveq2 |
|- ( u = ( q x. p ) -> ( denom ` u ) = ( denom ` ( q x. p ) ) ) |
| 216 |
214 215
|
opeq12d |
|- ( u = ( q x. p ) -> <. ( numer ` u ) , ( denom ` u ) >. = <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ) |
| 217 |
216
|
eceq1d |
|- ( u = ( q x. p ) -> [ <. ( numer ` u ) , ( denom ` u ) >. ] .~ = [ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ] .~ ) |
| 218 |
|
ecexg |
|- ( .~ e. _V -> [ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ] .~ e. _V ) |
| 219 |
25 218
|
mp1i |
|- ( ( q e. QQ /\ p e. QQ ) -> [ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ] .~ e. _V ) |
| 220 |
68 217 186 219
|
fvmptd3 |
|- ( ( q e. QQ /\ p e. QQ ) -> ( F ` ( q x. p ) ) = [ <. ( numer ` ( q x. p ) ) , ( denom ` ( q x. p ) ) >. ] .~ ) |
| 221 |
210 213 220
|
3eqtr4rd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( F ` ( q x. p ) ) = ( ( F ` q ) ( .r ` ( Frac ` ZZring ) ) ( F ` p ) ) ) |
| 222 |
221
|
rgen2 |
|- A. q e. QQ A. p e. QQ ( F ` ( q x. p ) ) = ( ( F ` q ) ( .r ` ( Frac ` ZZring ) ) ( F ` p ) ) |
| 223 |
|
zssq |
|- ZZ C_ QQ |
| 224 |
|
1z |
|- 1 e. ZZ |
| 225 |
223 224
|
sselii |
|- 1 e. QQ |
| 226 |
|
fveq2 |
|- ( q = 1 -> ( numer ` q ) = ( numer ` 1 ) ) |
| 227 |
|
1zzd |
|- ( ZZring e. IDomn -> 1 e. ZZ ) |
| 228 |
227
|
znumd |
|- ( ZZring e. IDomn -> ( numer ` 1 ) = 1 ) |
| 229 |
7 228
|
ax-mp |
|- ( numer ` 1 ) = 1 |
| 230 |
226 229
|
eqtrdi |
|- ( q = 1 -> ( numer ` q ) = 1 ) |
| 231 |
|
fveq2 |
|- ( q = 1 -> ( denom ` q ) = ( denom ` 1 ) ) |
| 232 |
227
|
zdend |
|- ( ZZring e. IDomn -> ( denom ` 1 ) = 1 ) |
| 233 |
7 232
|
ax-mp |
|- ( denom ` 1 ) = 1 |
| 234 |
231 233
|
eqtrdi |
|- ( q = 1 -> ( denom ` q ) = 1 ) |
| 235 |
230 234
|
opeq12d |
|- ( q = 1 -> <. ( numer ` q ) , ( denom ` q ) >. = <. 1 , 1 >. ) |
| 236 |
235
|
eceq1d |
|- ( q = 1 -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. 1 , 1 >. ] .~ ) |
| 237 |
236 3 49
|
fvmpt3i |
|- ( 1 e. QQ -> ( F ` 1 ) = [ <. 1 , 1 >. ] .~ ) |
| 238 |
225 237
|
ax-mp |
|- ( F ` 1 ) = [ <. 1 , 1 >. ] .~ |
| 239 |
47 222 238
|
3pm3.2i |
|- ( F : QQ --> ( Base ` ( Frac ` ZZring ) ) /\ A. q e. QQ A. p e. QQ ( F ` ( q x. p ) ) = ( ( F ` q ) ( .r ` ( Frac ` ZZring ) ) ( F ` p ) ) /\ ( F ` 1 ) = [ <. 1 , 1 >. ] .~ ) |
| 240 |
176 167
|
mgpbas |
|- QQ = ( Base ` ( mulGrp ` Q ) ) |
| 241 |
179 168
|
mgpbas |
|- ( Base ` ( Frac ` ZZring ) ) = ( Base ` ( mulGrp ` ( Frac ` ZZring ) ) ) |
| 242 |
|
cnfldmul |
|- x. = ( .r ` CCfld ) |
| 243 |
1 242
|
ressmulr |
|- ( QQ e. _V -> x. = ( .r ` Q ) ) |
| 244 |
169 243
|
ax-mp |
|- x. = ( .r ` Q ) |
| 245 |
176 244
|
mgpplusg |
|- x. = ( +g ` ( mulGrp ` Q ) ) |
| 246 |
|
eqid |
|- ( .r ` ( Frac ` ZZring ) ) = ( .r ` ( Frac ` ZZring ) ) |
| 247 |
179 246
|
mgpplusg |
|- ( .r ` ( Frac ` ZZring ) ) = ( +g ` ( mulGrp ` ( Frac ` ZZring ) ) ) |
| 248 |
1
|
qrng1 |
|- 1 = ( 1r ` Q ) |
| 249 |
176 248
|
ringidval |
|- 1 = ( 0g ` ( mulGrp ` Q ) ) |
| 250 |
146
|
a1i |
|- ( ZZring e. IDomn -> ZZring e. CRing ) |
| 251 |
149
|
a1i |
|- ( ZZring e. IDomn -> ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) |
| 252 |
|
eqid |
|- [ <. 1 , 1 >. ] .~ = [ <. 1 , 1 >. ] .~ |
| 253 |
29 69 41 2 250 251 252
|
rloc1r |
|- ( ZZring e. IDomn -> [ <. 1 , 1 >. ] .~ = ( 1r ` ( Frac ` ZZring ) ) ) |
| 254 |
7 253
|
ax-mp |
|- [ <. 1 , 1 >. ] .~ = ( 1r ` ( Frac ` ZZring ) ) |
| 255 |
179 254
|
ringidval |
|- [ <. 1 , 1 >. ] .~ = ( 0g ` ( mulGrp ` ( Frac ` ZZring ) ) ) |
| 256 |
240 241 245 247 249 255
|
ismhm |
|- ( F e. ( ( mulGrp ` Q ) MndHom ( mulGrp ` ( Frac ` ZZring ) ) ) <-> ( ( ( mulGrp ` Q ) e. Mnd /\ ( mulGrp ` ( Frac ` ZZring ) ) e. Mnd ) /\ ( F : QQ --> ( Base ` ( Frac ` ZZring ) ) /\ A. q e. QQ A. p e. QQ ( F ` ( q x. p ) ) = ( ( F ` q ) ( .r ` ( Frac ` ZZring ) ) ( F ` p ) ) /\ ( F ` 1 ) = [ <. 1 , 1 >. ] .~ ) ) ) |
| 257 |
182 239 256
|
mpbir2an |
|- F e. ( ( mulGrp ` Q ) MndHom ( mulGrp ` ( Frac ` ZZring ) ) ) |
| 258 |
175 257
|
pm3.2i |
|- ( F e. ( Q GrpHom ( Frac ` ZZring ) ) /\ F e. ( ( mulGrp ` Q ) MndHom ( mulGrp ` ( Frac ` ZZring ) ) ) ) |
| 259 |
176 179
|
isrhm |
|- ( F e. ( Q RingHom ( Frac ` ZZring ) ) <-> ( ( Q e. Ring /\ ( Frac ` ZZring ) e. Ring ) /\ ( F e. ( Q GrpHom ( Frac ` ZZring ) ) /\ F e. ( ( mulGrp ` Q ) MndHom ( mulGrp ` ( Frac ` ZZring ) ) ) ) ) ) |
| 260 |
13 258 259
|
mpbir2an |
|- F e. ( Q RingHom ( Frac ` ZZring ) ) |
| 261 |
46
|
rgen |
|- A. q e. QQ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. ( Base ` ( Frac ` ZZring ) ) |
| 262 |
117
|
zcnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( numer ` q ) e. CC ) |
| 263 |
122
|
zcnd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( numer ` p ) e. CC ) |
| 264 |
22
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` q ) =/= 0 ) |
| 265 |
155
|
adantl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` p ) =/= 0 ) |
| 266 |
262 88 263 91 264 265
|
divmuleqd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( ( ( numer ` q ) / ( denom ` q ) ) = ( ( numer ` p ) / ( denom ` p ) ) <-> ( ( numer ` q ) x. ( denom ` p ) ) = ( ( numer ` p ) x. ( denom ` q ) ) ) ) |
| 267 |
153 39
|
eleqtrdi |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` q ) e. ( RLReg ` ZZring ) ) |
| 268 |
157 39
|
eleqtrdi |
|- ( ( q e. QQ /\ p e. QQ ) -> ( denom ` p ) e. ( RLReg ` ZZring ) ) |
| 269 |
28 30 114 71 117 122 267 268
|
fracerl |
|- ( ( q e. QQ /\ p e. QQ ) -> ( <. ( numer ` q ) , ( denom ` q ) >. .~ <. ( numer ` p ) , ( denom ` p ) >. <-> ( ( numer ` q ) x. ( denom ` p ) ) = ( ( numer ` p ) x. ( denom ` q ) ) ) ) |
| 270 |
24
|
adantr |
|- ( ( q e. QQ /\ p e. QQ ) -> <. ( numer ` q ) , ( denom ` q ) >. e. ( ZZ X. ( ZZ \ { 0 } ) ) ) |
| 271 |
77 270
|
erth |
|- ( ( q e. QQ /\ p e. QQ ) -> ( <. ( numer ` q ) , ( denom ` q ) >. .~ <. ( numer ` p ) , ( denom ` p ) >. <-> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) ) |
| 272 |
266 269 271
|
3bitr2rd |
|- ( ( q e. QQ /\ p e. QQ ) -> ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ <-> ( ( numer ` q ) / ( denom ` q ) ) = ( ( numer ` p ) / ( denom ` p ) ) ) ) |
| 273 |
272
|
biimpa |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) -> ( ( numer ` q ) / ( denom ` q ) ) = ( ( numer ` p ) / ( denom ` p ) ) ) |
| 274 |
|
qeqnumdivden |
|- ( q e. QQ -> q = ( ( numer ` q ) / ( denom ` q ) ) ) |
| 275 |
274
|
ad2antrr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) -> q = ( ( numer ` q ) / ( denom ` q ) ) ) |
| 276 |
|
qeqnumdivden |
|- ( p e. QQ -> p = ( ( numer ` p ) / ( denom ` p ) ) ) |
| 277 |
276
|
ad2antlr |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) -> p = ( ( numer ` p ) / ( denom ` p ) ) ) |
| 278 |
273 275 277
|
3eqtr4d |
|- ( ( ( q e. QQ /\ p e. QQ ) /\ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ ) -> q = p ) |
| 279 |
278
|
ex |
|- ( ( q e. QQ /\ p e. QQ ) -> ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ -> q = p ) ) |
| 280 |
279
|
rgen2 |
|- A. q e. QQ A. p e. QQ ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ -> q = p ) |
| 281 |
3 56
|
f1mpt |
|- ( F : QQ -1-1-> ( Base ` ( Frac ` ZZring ) ) <-> ( A. q e. QQ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. ( Base ` ( Frac ` ZZring ) ) /\ A. q e. QQ A. p e. QQ ( [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` p ) , ( denom ` p ) >. ] .~ -> q = p ) ) ) |
| 282 |
261 280 281
|
mpbir2an |
|- F : QQ -1-1-> ( Base ` ( Frac ` ZZring ) ) |
| 283 |
|
fveq2 |
|- ( q = ( a / b ) -> ( numer ` q ) = ( numer ` ( a / b ) ) ) |
| 284 |
|
fveq2 |
|- ( q = ( a / b ) -> ( denom ` q ) = ( denom ` ( a / b ) ) ) |
| 285 |
283 284
|
opeq12d |
|- ( q = ( a / b ) -> <. ( numer ` q ) , ( denom ` q ) >. = <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ) |
| 286 |
285
|
eceq1d |
|- ( q = ( a / b ) -> [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ = [ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ] .~ ) |
| 287 |
286
|
eqeq2d |
|- ( q = ( a / b ) -> ( z = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ <-> z = [ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ] .~ ) ) |
| 288 |
|
simpllr |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> a e. ZZ ) |
| 289 |
223 288
|
sselid |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> a e. QQ ) |
| 290 |
|
simplr |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> b e. ( ZZ \ { 0 } ) ) |
| 291 |
290
|
eldifad |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> b e. ZZ ) |
| 292 |
223 291
|
sselid |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> b e. QQ ) |
| 293 |
|
eldifsni |
|- ( b e. ( ZZ \ { 0 } ) -> b =/= 0 ) |
| 294 |
290 293
|
syl |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> b =/= 0 ) |
| 295 |
|
qdivcl |
|- ( ( a e. QQ /\ b e. QQ /\ b =/= 0 ) -> ( a / b ) e. QQ ) |
| 296 |
289 292 294 295
|
syl3anc |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> ( a / b ) e. QQ ) |
| 297 |
|
simpr |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> z = [ <. a , b >. ] .~ ) |
| 298 |
146
|
a1i |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> ZZring e. CRing ) |
| 299 |
149
|
a1i |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> ( ZZ \ { 0 } ) e. ( SubMnd ` ( mulGrp ` ZZring ) ) ) |
| 300 |
28 29 69 30 31 32 2 298 299
|
erler |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> .~ Er ( ZZ X. ( ZZ \ { 0 } ) ) ) |
| 301 |
|
simpl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> a e. ZZ ) |
| 302 |
301
|
zcnd |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> a e. CC ) |
| 303 |
|
eldifi |
|- ( b e. ( ZZ \ { 0 } ) -> b e. ZZ ) |
| 304 |
303
|
adantl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> b e. ZZ ) |
| 305 |
304
|
zcnd |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> b e. CC ) |
| 306 |
293
|
adantl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> b =/= 0 ) |
| 307 |
302 305 306
|
divcld |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( a / b ) e. CC ) |
| 308 |
223 301
|
sselid |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> a e. QQ ) |
| 309 |
223 304
|
sselid |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> b e. QQ ) |
| 310 |
308 309 306 295
|
syl3anc |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( a / b ) e. QQ ) |
| 311 |
|
qdencl |
|- ( ( a / b ) e. QQ -> ( denom ` ( a / b ) ) e. NN ) |
| 312 |
310 311
|
syl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( denom ` ( a / b ) ) e. NN ) |
| 313 |
312
|
nncnd |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( denom ` ( a / b ) ) e. CC ) |
| 314 |
307 313 305
|
mul32d |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( ( ( a / b ) x. ( denom ` ( a / b ) ) ) x. b ) = ( ( ( a / b ) x. b ) x. ( denom ` ( a / b ) ) ) ) |
| 315 |
|
qmuldeneqnum |
|- ( ( a / b ) e. QQ -> ( ( a / b ) x. ( denom ` ( a / b ) ) ) = ( numer ` ( a / b ) ) ) |
| 316 |
310 315
|
syl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( ( a / b ) x. ( denom ` ( a / b ) ) ) = ( numer ` ( a / b ) ) ) |
| 317 |
316
|
oveq1d |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( ( ( a / b ) x. ( denom ` ( a / b ) ) ) x. b ) = ( ( numer ` ( a / b ) ) x. b ) ) |
| 318 |
302 305 306
|
divcan1d |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( ( a / b ) x. b ) = a ) |
| 319 |
318
|
oveq1d |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( ( ( a / b ) x. b ) x. ( denom ` ( a / b ) ) ) = ( a x. ( denom ` ( a / b ) ) ) ) |
| 320 |
314 317 319
|
3eqtr3rd |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( a x. ( denom ` ( a / b ) ) ) = ( ( numer ` ( a / b ) ) x. b ) ) |
| 321 |
146
|
a1i |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ZZring e. CRing ) |
| 322 |
|
qnumcl |
|- ( ( a / b ) e. QQ -> ( numer ` ( a / b ) ) e. ZZ ) |
| 323 |
310 322
|
syl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( numer ` ( a / b ) ) e. ZZ ) |
| 324 |
|
simpr |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> b e. ( ZZ \ { 0 } ) ) |
| 325 |
324 39
|
eleqtrdi |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> b e. ( RLReg ` ZZring ) ) |
| 326 |
312
|
nnzd |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( denom ` ( a / b ) ) e. ZZ ) |
| 327 |
312
|
nnne0d |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( denom ` ( a / b ) ) =/= 0 ) |
| 328 |
326 327
|
eldifsnd |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( denom ` ( a / b ) ) e. ( ZZ \ { 0 } ) ) |
| 329 |
328 39
|
eleqtrdi |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( denom ` ( a / b ) ) e. ( RLReg ` ZZring ) ) |
| 330 |
28 30 114 321 301 323 325 329
|
fracerl |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> ( <. a , b >. .~ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. <-> ( a x. ( denom ` ( a / b ) ) ) = ( ( numer ` ( a / b ) ) x. b ) ) ) |
| 331 |
320 330
|
mpbird |
|- ( ( a e. ZZ /\ b e. ( ZZ \ { 0 } ) ) -> <. a , b >. .~ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ) |
| 332 |
331
|
ad4ant23 |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> <. a , b >. .~ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ) |
| 333 |
300 332
|
erthi |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> [ <. a , b >. ] .~ = [ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ] .~ ) |
| 334 |
297 333
|
eqtrd |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> z = [ <. ( numer ` ( a / b ) ) , ( denom ` ( a / b ) ) >. ] .~ ) |
| 335 |
287 296 334
|
rspcedvdw |
|- ( ( ( ( z e. ( Base ` ( Frac ` ZZring ) ) /\ a e. ZZ ) /\ b e. ( ZZ \ { 0 } ) ) /\ z = [ <. a , b >. ] .~ ) -> E. q e. QQ z = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) |
| 336 |
45
|
eleq2i |
|- ( z e. ( ( ZZ X. ( ZZ \ { 0 } ) ) /. .~ ) <-> z e. ( Base ` ( Frac ` ZZring ) ) ) |
| 337 |
336
|
biimpri |
|- ( z e. ( Base ` ( Frac ` ZZring ) ) -> z e. ( ( ZZ X. ( ZZ \ { 0 } ) ) /. .~ ) ) |
| 338 |
337
|
elrlocbasi |
|- ( z e. ( Base ` ( Frac ` ZZring ) ) -> E. a e. ZZ E. b e. ( ZZ \ { 0 } ) z = [ <. a , b >. ] .~ ) |
| 339 |
335 338
|
r19.29vva |
|- ( z e. ( Base ` ( Frac ` ZZring ) ) -> E. q e. QQ z = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) |
| 340 |
339
|
rgen |
|- A. z e. ( Base ` ( Frac ` ZZring ) ) E. q e. QQ z = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ |
| 341 |
3
|
fompt |
|- ( F : QQ -onto-> ( Base ` ( Frac ` ZZring ) ) <-> ( A. q e. QQ [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ e. ( Base ` ( Frac ` ZZring ) ) /\ A. z e. ( Base ` ( Frac ` ZZring ) ) E. q e. QQ z = [ <. ( numer ` q ) , ( denom ` q ) >. ] .~ ) ) |
| 342 |
261 340 341
|
mpbir2an |
|- F : QQ -onto-> ( Base ` ( Frac ` ZZring ) ) |
| 343 |
|
df-f1o |
|- ( F : QQ -1-1-onto-> ( Base ` ( Frac ` ZZring ) ) <-> ( F : QQ -1-1-> ( Base ` ( Frac ` ZZring ) ) /\ F : QQ -onto-> ( Base ` ( Frac ` ZZring ) ) ) ) |
| 344 |
282 342 343
|
mpbir2an |
|- F : QQ -1-1-onto-> ( Base ` ( Frac ` ZZring ) ) |
| 345 |
167 168
|
isrim |
|- ( F e. ( Q RingIso ( Frac ` ZZring ) ) <-> ( F e. ( Q RingHom ( Frac ` ZZring ) ) /\ F : QQ -1-1-onto-> ( Base ` ( Frac ` ZZring ) ) ) ) |
| 346 |
260 344 345
|
mpbir2an |
|- F e. ( Q RingIso ( Frac ` ZZring ) ) |