Step |
Hyp |
Ref |
Expression |
1 |
|
gcdabs |
|- ( ( A e. ZZ /\ B e. ZZ ) -> ( ( abs ` A ) gcd ( abs ` B ) ) = ( A gcd B ) ) |
2 |
1
|
3adant3 |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( abs ` A ) gcd ( abs ` B ) ) = ( A gcd B ) ) |
3 |
2
|
eqcomd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( A gcd B ) = ( ( abs ` A ) gcd ( abs ` B ) ) ) |
4 |
3
|
oveq1d |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( A gcd B ) ^ N ) = ( ( ( abs ` A ) gcd ( abs ` B ) ) ^ N ) ) |
5 |
|
nn0abscl |
|- ( A e. ZZ -> ( abs ` A ) e. NN0 ) |
6 |
|
nn0abscl |
|- ( B e. ZZ -> ( abs ` B ) e. NN0 ) |
7 |
|
id |
|- ( N e. NN0 -> N e. NN0 ) |
8 |
|
nn0expgcd |
|- ( ( ( abs ` A ) e. NN0 /\ ( abs ` B ) e. NN0 /\ N e. NN0 ) -> ( ( ( abs ` A ) gcd ( abs ` B ) ) ^ N ) = ( ( ( abs ` A ) ^ N ) gcd ( ( abs ` B ) ^ N ) ) ) |
9 |
5 6 7 8
|
syl3an |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( ( abs ` A ) gcd ( abs ` B ) ) ^ N ) = ( ( ( abs ` A ) ^ N ) gcd ( ( abs ` B ) ^ N ) ) ) |
10 |
|
zcn |
|- ( A e. ZZ -> A e. CC ) |
11 |
10
|
3ad2ant1 |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> A e. CC ) |
12 |
|
simp3 |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> N e. NN0 ) |
13 |
11 12
|
absexpd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( abs ` ( A ^ N ) ) = ( ( abs ` A ) ^ N ) ) |
14 |
13
|
eqcomd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( abs ` A ) ^ N ) = ( abs ` ( A ^ N ) ) ) |
15 |
|
zcn |
|- ( B e. ZZ -> B e. CC ) |
16 |
15
|
3ad2ant2 |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> B e. CC ) |
17 |
16 12
|
absexpd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( abs ` ( B ^ N ) ) = ( ( abs ` B ) ^ N ) ) |
18 |
17
|
eqcomd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( abs ` B ) ^ N ) = ( abs ` ( B ^ N ) ) ) |
19 |
14 18
|
oveq12d |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( ( abs ` A ) ^ N ) gcd ( ( abs ` B ) ^ N ) ) = ( ( abs ` ( A ^ N ) ) gcd ( abs ` ( B ^ N ) ) ) ) |
20 |
|
zexpcl |
|- ( ( A e. ZZ /\ N e. NN0 ) -> ( A ^ N ) e. ZZ ) |
21 |
20
|
3adant2 |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( A ^ N ) e. ZZ ) |
22 |
|
zexpcl |
|- ( ( B e. ZZ /\ N e. NN0 ) -> ( B ^ N ) e. ZZ ) |
23 |
22
|
3adant1 |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( B ^ N ) e. ZZ ) |
24 |
|
gcdabs |
|- ( ( ( A ^ N ) e. ZZ /\ ( B ^ N ) e. ZZ ) -> ( ( abs ` ( A ^ N ) ) gcd ( abs ` ( B ^ N ) ) ) = ( ( A ^ N ) gcd ( B ^ N ) ) ) |
25 |
21 23 24
|
syl2anc |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( abs ` ( A ^ N ) ) gcd ( abs ` ( B ^ N ) ) ) = ( ( A ^ N ) gcd ( B ^ N ) ) ) |
26 |
19 25
|
eqtrd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( ( abs ` A ) ^ N ) gcd ( ( abs ` B ) ^ N ) ) = ( ( A ^ N ) gcd ( B ^ N ) ) ) |
27 |
4 9 26
|
3eqtrd |
|- ( ( A e. ZZ /\ B e. ZZ /\ N e. NN0 ) -> ( ( A gcd B ) ^ N ) = ( ( A ^ N ) gcd ( B ^ N ) ) ) |