Step |
Hyp |
Ref |
Expression |
1 |
|
2m1e1 |
|- ( 2 - 1 ) = 1 |
2 |
1
|
a1i |
|- ( P e. Prime -> ( 2 - 1 ) = 1 ) |
3 |
2
|
eqcomd |
|- ( P e. Prime -> 1 = ( 2 - 1 ) ) |
4 |
3
|
oveq2d |
|- ( P e. Prime -> ( P - 1 ) = ( P - ( 2 - 1 ) ) ) |
5 |
|
prmz |
|- ( P e. Prime -> P e. ZZ ) |
6 |
5
|
zcnd |
|- ( P e. Prime -> P e. CC ) |
7 |
|
2cnd |
|- ( P e. Prime -> 2 e. CC ) |
8 |
|
1cnd |
|- ( P e. Prime -> 1 e. CC ) |
9 |
6 7 8
|
subsubd |
|- ( P e. Prime -> ( P - ( 2 - 1 ) ) = ( ( P - 2 ) + 1 ) ) |
10 |
4 9
|
eqtrd |
|- ( P e. Prime -> ( P - 1 ) = ( ( P - 2 ) + 1 ) ) |
11 |
10
|
3ad2ant1 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( P - 1 ) = ( ( P - 2 ) + 1 ) ) |
12 |
11
|
oveq2d |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( A ^ ( P - 1 ) ) = ( A ^ ( ( P - 2 ) + 1 ) ) ) |
13 |
|
zcn |
|- ( A e. ZZ -> A e. CC ) |
14 |
13
|
3ad2ant2 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> A e. CC ) |
15 |
|
prmm2nn0 |
|- ( P e. Prime -> ( P - 2 ) e. NN0 ) |
16 |
15
|
3ad2ant1 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( P - 2 ) e. NN0 ) |
17 |
14 16
|
expp1d |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( A ^ ( ( P - 2 ) + 1 ) ) = ( ( A ^ ( P - 2 ) ) x. A ) ) |
18 |
12 17
|
eqtrd |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( A ^ ( P - 1 ) ) = ( ( A ^ ( P - 2 ) ) x. A ) ) |
19 |
18
|
oveq1d |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( A ^ ( P - 1 ) ) mod P ) = ( ( ( A ^ ( P - 2 ) ) x. A ) mod P ) ) |
20 |
15
|
anim1i |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( ( P - 2 ) e. NN0 /\ A e. ZZ ) ) |
21 |
20
|
ancomd |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( A e. ZZ /\ ( P - 2 ) e. NN0 ) ) |
22 |
|
zexpcl |
|- ( ( A e. ZZ /\ ( P - 2 ) e. NN0 ) -> ( A ^ ( P - 2 ) ) e. ZZ ) |
23 |
21 22
|
syl |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( A ^ ( P - 2 ) ) e. ZZ ) |
24 |
23
|
zred |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( A ^ ( P - 2 ) ) e. RR ) |
25 |
24
|
3adant3 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( A ^ ( P - 2 ) ) e. RR ) |
26 |
|
simp2 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> A e. ZZ ) |
27 |
|
prmnn |
|- ( P e. Prime -> P e. NN ) |
28 |
27
|
nnrpd |
|- ( P e. Prime -> P e. RR+ ) |
29 |
28
|
3ad2ant1 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> P e. RR+ ) |
30 |
|
modmulmod |
|- ( ( ( A ^ ( P - 2 ) ) e. RR /\ A e. ZZ /\ P e. RR+ ) -> ( ( ( ( A ^ ( P - 2 ) ) mod P ) x. A ) mod P ) = ( ( ( A ^ ( P - 2 ) ) x. A ) mod P ) ) |
31 |
25 26 29 30
|
syl3anc |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( ( ( A ^ ( P - 2 ) ) mod P ) x. A ) mod P ) = ( ( ( A ^ ( P - 2 ) ) x. A ) mod P ) ) |
32 |
|
zre |
|- ( A e. ZZ -> A e. RR ) |
33 |
32
|
adantl |
|- ( ( P e. Prime /\ A e. ZZ ) -> A e. RR ) |
34 |
15
|
adantr |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( P - 2 ) e. NN0 ) |
35 |
33 34
|
reexpcld |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( A ^ ( P - 2 ) ) e. RR ) |
36 |
28
|
adantr |
|- ( ( P e. Prime /\ A e. ZZ ) -> P e. RR+ ) |
37 |
35 36
|
modcld |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( ( A ^ ( P - 2 ) ) mod P ) e. RR ) |
38 |
37
|
recnd |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( ( A ^ ( P - 2 ) ) mod P ) e. CC ) |
39 |
13
|
adantl |
|- ( ( P e. Prime /\ A e. ZZ ) -> A e. CC ) |
40 |
38 39
|
mulcomd |
|- ( ( P e. Prime /\ A e. ZZ ) -> ( ( ( A ^ ( P - 2 ) ) mod P ) x. A ) = ( A x. ( ( A ^ ( P - 2 ) ) mod P ) ) ) |
41 |
40
|
3adant3 |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( ( A ^ ( P - 2 ) ) mod P ) x. A ) = ( A x. ( ( A ^ ( P - 2 ) ) mod P ) ) ) |
42 |
41
|
oveq1d |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( ( ( A ^ ( P - 2 ) ) mod P ) x. A ) mod P ) = ( ( A x. ( ( A ^ ( P - 2 ) ) mod P ) ) mod P ) ) |
43 |
19 31 42
|
3eqtr2d |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( A ^ ( P - 1 ) ) mod P ) = ( ( A x. ( ( A ^ ( P - 2 ) ) mod P ) ) mod P ) ) |
44 |
|
eqid |
|- ( ( A ^ ( P - 2 ) ) mod P ) = ( ( A ^ ( P - 2 ) ) mod P ) |
45 |
44
|
modprminv |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( ( A ^ ( P - 2 ) ) mod P ) e. ( 1 ... ( P - 1 ) ) /\ ( ( A x. ( ( A ^ ( P - 2 ) ) mod P ) ) mod P ) = 1 ) ) |
46 |
45
|
simprd |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( A x. ( ( A ^ ( P - 2 ) ) mod P ) ) mod P ) = 1 ) |
47 |
43 46
|
eqtrd |
|- ( ( P e. Prime /\ A e. ZZ /\ -. P || A ) -> ( ( A ^ ( P - 1 ) ) mod P ) = 1 ) |