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