Step |
Hyp |
Ref |
Expression |
1 |
|
nnz |
|- ( C e. NN -> C e. ZZ ) |
2 |
1
|
3ad2ant3 |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> C e. ZZ ) |
3 |
|
simp1 |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> A e. ZZ ) |
4 |
|
divides |
|- ( ( C e. ZZ /\ A e. ZZ ) -> ( C || A <-> E. a e. ZZ ( a x. C ) = A ) ) |
5 |
2 3 4
|
syl2anc |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> ( C || A <-> E. a e. ZZ ( a x. C ) = A ) ) |
6 |
|
simp2 |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> B e. ZZ ) |
7 |
|
divides |
|- ( ( C e. ZZ /\ B e. ZZ ) -> ( C || B <-> E. b e. ZZ ( b x. C ) = B ) ) |
8 |
2 6 7
|
syl2anc |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> ( C || B <-> E. b e. ZZ ( b x. C ) = B ) ) |
9 |
5 8
|
anbi12d |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> ( ( C || A /\ C || B ) <-> ( E. a e. ZZ ( a x. C ) = A /\ E. b e. ZZ ( b x. C ) = B ) ) ) |
10 |
|
reeanv |
|- ( E. a e. ZZ E. b e. ZZ ( ( a x. C ) = A /\ ( b x. C ) = B ) <-> ( E. a e. ZZ ( a x. C ) = A /\ E. b e. ZZ ( b x. C ) = B ) ) |
11 |
9 10
|
bitr4di |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> ( ( C || A /\ C || B ) <-> E. a e. ZZ E. b e. ZZ ( ( a x. C ) = A /\ ( b x. C ) = B ) ) ) |
12 |
|
gcdcl |
|- ( ( a e. ZZ /\ b e. ZZ ) -> ( a gcd b ) e. NN0 ) |
13 |
12
|
nn0cnd |
|- ( ( a e. ZZ /\ b e. ZZ ) -> ( a gcd b ) e. CC ) |
14 |
13
|
3adant3 |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( a gcd b ) e. CC ) |
15 |
|
nncn |
|- ( C e. NN -> C e. CC ) |
16 |
15
|
3ad2ant3 |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> C e. CC ) |
17 |
|
nnne0 |
|- ( C e. NN -> C =/= 0 ) |
18 |
17
|
3ad2ant3 |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> C =/= 0 ) |
19 |
14 16 18
|
divcan4d |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( ( a gcd b ) x. C ) / C ) = ( a gcd b ) ) |
20 |
|
nnnn0 |
|- ( C e. NN -> C e. NN0 ) |
21 |
|
mulgcdr |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN0 ) -> ( ( a x. C ) gcd ( b x. C ) ) = ( ( a gcd b ) x. C ) ) |
22 |
20 21
|
syl3an3 |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( a x. C ) gcd ( b x. C ) ) = ( ( a gcd b ) x. C ) ) |
23 |
22
|
oveq1d |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( ( a x. C ) gcd ( b x. C ) ) / C ) = ( ( ( a gcd b ) x. C ) / C ) ) |
24 |
|
zcn |
|- ( a e. ZZ -> a e. CC ) |
25 |
24
|
3ad2ant1 |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> a e. CC ) |
26 |
25 16 18
|
divcan4d |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( a x. C ) / C ) = a ) |
27 |
|
zcn |
|- ( b e. ZZ -> b e. CC ) |
28 |
27
|
3ad2ant2 |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> b e. CC ) |
29 |
28 16 18
|
divcan4d |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( b x. C ) / C ) = b ) |
30 |
26 29
|
oveq12d |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( ( a x. C ) / C ) gcd ( ( b x. C ) / C ) ) = ( a gcd b ) ) |
31 |
19 23 30
|
3eqtr4d |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( ( a x. C ) gcd ( b x. C ) ) / C ) = ( ( ( a x. C ) / C ) gcd ( ( b x. C ) / C ) ) ) |
32 |
|
oveq12 |
|- ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( a x. C ) gcd ( b x. C ) ) = ( A gcd B ) ) |
33 |
32
|
oveq1d |
|- ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( ( a x. C ) gcd ( b x. C ) ) / C ) = ( ( A gcd B ) / C ) ) |
34 |
|
oveq1 |
|- ( ( a x. C ) = A -> ( ( a x. C ) / C ) = ( A / C ) ) |
35 |
|
oveq1 |
|- ( ( b x. C ) = B -> ( ( b x. C ) / C ) = ( B / C ) ) |
36 |
34 35
|
oveqan12d |
|- ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( ( a x. C ) / C ) gcd ( ( b x. C ) / C ) ) = ( ( A / C ) gcd ( B / C ) ) ) |
37 |
33 36
|
eqeq12d |
|- ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( ( ( a x. C ) gcd ( b x. C ) ) / C ) = ( ( ( a x. C ) / C ) gcd ( ( b x. C ) / C ) ) <-> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) |
38 |
31 37
|
syl5ibcom |
|- ( ( a e. ZZ /\ b e. ZZ /\ C e. NN ) -> ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) |
39 |
38
|
3expa |
|- ( ( ( a e. ZZ /\ b e. ZZ ) /\ C e. NN ) -> ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) |
40 |
39
|
expcom |
|- ( C e. NN -> ( ( a e. ZZ /\ b e. ZZ ) -> ( ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) ) |
41 |
40
|
rexlimdvv |
|- ( C e. NN -> ( E. a e. ZZ E. b e. ZZ ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) |
42 |
41
|
3ad2ant3 |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> ( E. a e. ZZ E. b e. ZZ ( ( a x. C ) = A /\ ( b x. C ) = B ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) |
43 |
11 42
|
sylbid |
|- ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) -> ( ( C || A /\ C || B ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) ) |
44 |
43
|
imp |
|- ( ( ( A e. ZZ /\ B e. ZZ /\ C e. NN ) /\ ( C || A /\ C || B ) ) -> ( ( A gcd B ) / C ) = ( ( A / C ) gcd ( B / C ) ) ) |