Metamath Proof Explorer


Theorem prmdiv

Description: Show an explicit expression for the modular inverse of A mod P . (Contributed by Mario Carneiro, 24-Jan-2015)

Ref Expression
Hypothesis prmdiv.1 โŠข ๐‘… = ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) mod ๐‘ƒ )
Assertion prmdiv ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘… โˆˆ ( 1 ... ( ๐‘ƒ โˆ’ 1 ) ) โˆง ๐‘ƒ โˆฅ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) ) )

Proof

Step Hyp Ref Expression
1 prmdiv.1 โŠข ๐‘… = ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) mod ๐‘ƒ )
2 nprmdvds1 โŠข ( ๐‘ƒ โˆˆ โ„™ โ†’ ยฌ ๐‘ƒ โˆฅ 1 )
3 2 3ad2ant1 โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ยฌ ๐‘ƒ โˆฅ 1 )
4 prmz โŠข ( ๐‘ƒ โˆˆ โ„™ โ†’ ๐‘ƒ โˆˆ โ„ค )
5 4 3ad2ant1 โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆˆ โ„ค )
6 simp2 โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐ด โˆˆ โ„ค )
7 phiprm โŠข ( ๐‘ƒ โˆˆ โ„™ โ†’ ( ฯ• โ€˜ ๐‘ƒ ) = ( ๐‘ƒ โˆ’ 1 ) )
8 7 3ad2ant1 โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ฯ• โ€˜ ๐‘ƒ ) = ( ๐‘ƒ โˆ’ 1 ) )
9 prmnn โŠข ( ๐‘ƒ โˆˆ โ„™ โ†’ ๐‘ƒ โˆˆ โ„• )
10 9 3ad2ant1 โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆˆ โ„• )
11 nnm1nn0 โŠข ( ๐‘ƒ โˆˆ โ„• โ†’ ( ๐‘ƒ โˆ’ 1 ) โˆˆ โ„•0 )
12 10 11 syl โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆ’ 1 ) โˆˆ โ„•0 )
13 8 12 eqeltrd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ฯ• โ€˜ ๐‘ƒ ) โˆˆ โ„•0 )
14 zexpcl โŠข ( ( ๐ด โˆˆ โ„ค โˆง ( ฯ• โ€˜ ๐‘ƒ ) โˆˆ โ„•0 ) โ†’ ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆˆ โ„ค )
15 6 13 14 syl2anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆˆ โ„ค )
16 1z โŠข 1 โˆˆ โ„ค
17 zsubcl โŠข ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆˆ โ„ค โˆง 1 โˆˆ โ„ค ) โ†’ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) โˆˆ โ„ค )
18 15 16 17 sylancl โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) โˆˆ โ„ค )
19 prmuz2 โŠข ( ๐‘ƒ โˆˆ โ„™ โ†’ ๐‘ƒ โˆˆ ( โ„คโ‰ฅ โ€˜ 2 ) )
20 19 3ad2ant1 โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆˆ ( โ„คโ‰ฅ โ€˜ 2 ) )
21 uznn0sub โŠข ( ๐‘ƒ โˆˆ ( โ„คโ‰ฅ โ€˜ 2 ) โ†’ ( ๐‘ƒ โˆ’ 2 ) โˆˆ โ„•0 )
22 20 21 syl โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆ’ 2 ) โˆˆ โ„•0 )
23 zexpcl โŠข ( ( ๐ด โˆˆ โ„ค โˆง ( ๐‘ƒ โˆ’ 2 ) โˆˆ โ„•0 ) โ†’ ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆˆ โ„ค )
24 6 22 23 syl2anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆˆ โ„ค )
25 24 zred โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆˆ โ„ )
26 25 10 nndivred โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) โˆˆ โ„ )
27 26 flcld โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) โˆˆ โ„ค )
28 6 27 zmulcld โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) โˆˆ โ„ค )
29 5 28 zmulcld โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) โˆˆ โ„ค )
30 6 5 gcdcomd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด gcd ๐‘ƒ ) = ( ๐‘ƒ gcd ๐ด ) )
31 coprm โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค ) โ†’ ( ยฌ ๐‘ƒ โˆฅ ๐ด โ†” ( ๐‘ƒ gcd ๐ด ) = 1 ) )
32 31 biimp3a โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ gcd ๐ด ) = 1 )
33 30 32 eqtrd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด gcd ๐‘ƒ ) = 1 )
34 eulerth โŠข ( ( ๐‘ƒ โˆˆ โ„• โˆง ๐ด โˆˆ โ„ค โˆง ( ๐ด gcd ๐‘ƒ ) = 1 ) โ†’ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) mod ๐‘ƒ ) = ( 1 mod ๐‘ƒ ) )
35 10 6 33 34 syl3anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) mod ๐‘ƒ ) = ( 1 mod ๐‘ƒ ) )
36 1zzd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ 1 โˆˆ โ„ค )
37 moddvds โŠข ( ( ๐‘ƒ โˆˆ โ„• โˆง ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆˆ โ„ค โˆง 1 โˆˆ โ„ค ) โ†’ ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) mod ๐‘ƒ ) = ( 1 mod ๐‘ƒ ) โ†” ๐‘ƒ โˆฅ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) ) )
38 10 15 36 37 syl3anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) mod ๐‘ƒ ) = ( 1 mod ๐‘ƒ ) โ†” ๐‘ƒ โˆฅ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) ) )
39 35 38 mpbid โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆฅ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) )
40 dvdsmul1 โŠข ( ( ๐‘ƒ โˆˆ โ„ค โˆง ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) โˆˆ โ„ค ) โ†’ ๐‘ƒ โˆฅ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) )
41 5 28 40 syl2anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆฅ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) )
42 5 18 29 39 41 dvds2subd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆฅ ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
43 6 zcnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐ด โˆˆ โ„‚ )
44 24 zcnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆˆ โ„‚ )
45 5 27 zmulcld โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) โˆˆ โ„ค )
46 45 zcnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) โˆˆ โ„‚ )
47 43 44 46 subdid โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด ยท ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆ’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) = ( ( ๐ด ยท ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) ) โˆ’ ( ๐ด ยท ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
48 10 nnrpd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆˆ โ„+ )
49 modval โŠข ( ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆˆ โ„ โˆง ๐‘ƒ โˆˆ โ„+ ) โ†’ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) mod ๐‘ƒ ) = ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆ’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) )
50 25 48 49 syl2anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) mod ๐‘ƒ ) = ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆ’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) )
51 1 50 eqtrid โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘… = ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆ’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) )
52 51 oveq2d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด ยท ๐‘… ) = ( ๐ด ยท ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆ’ ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
53 2m1e1 โŠข ( 2 โˆ’ 1 ) = 1
54 53 oveq2i โŠข ( ๐‘ƒ โˆ’ ( 2 โˆ’ 1 ) ) = ( ๐‘ƒ โˆ’ 1 )
55 8 54 eqtr4di โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ฯ• โ€˜ ๐‘ƒ ) = ( ๐‘ƒ โˆ’ ( 2 โˆ’ 1 ) ) )
56 10 nncnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆˆ โ„‚ )
57 2cnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ 2 โˆˆ โ„‚ )
58 1cnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ 1 โˆˆ โ„‚ )
59 56 57 58 subsubd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆ’ ( 2 โˆ’ 1 ) ) = ( ( ๐‘ƒ โˆ’ 2 ) + 1 ) )
60 55 59 eqtrd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ฯ• โ€˜ ๐‘ƒ ) = ( ( ๐‘ƒ โˆ’ 2 ) + 1 ) )
61 60 oveq2d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) = ( ๐ด โ†‘ ( ( ๐‘ƒ โˆ’ 2 ) + 1 ) ) )
62 43 22 expp1d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ( ๐‘ƒ โˆ’ 2 ) + 1 ) ) = ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) ยท ๐ด ) )
63 44 43 mulcomd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) ยท ๐ด ) = ( ๐ด ยท ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) ) )
64 61 62 63 3eqtrd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) = ( ๐ด ยท ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) ) )
65 27 zcnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) โˆˆ โ„‚ )
66 56 43 65 mul12d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) = ( ๐ด ยท ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) )
67 64 66 oveq12d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) = ( ( ๐ด ยท ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) ) โˆ’ ( ๐ด ยท ( ๐‘ƒ ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
68 47 52 67 3eqtr4d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด ยท ๐‘… ) = ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
69 68 oveq1d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) = ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) โˆ’ 1 ) )
70 15 zcnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆˆ โ„‚ )
71 29 zcnd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) โˆˆ โ„‚ )
72 70 71 58 sub32d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) โˆ’ 1 ) = ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
73 69 72 eqtrd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) = ( ( ( ๐ด โ†‘ ( ฯ• โ€˜ ๐‘ƒ ) ) โˆ’ 1 ) โˆ’ ( ๐‘ƒ ยท ( ๐ด ยท ( โŒŠ โ€˜ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) / ๐‘ƒ ) ) ) ) ) )
74 42 73 breqtrrd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘ƒ โˆฅ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) )
75 oveq2 โŠข ( ๐‘… = 0 โ†’ ( ๐ด ยท ๐‘… ) = ( ๐ด ยท 0 ) )
76 75 oveq1d โŠข ( ๐‘… = 0 โ†’ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) = ( ( ๐ด ยท 0 ) โˆ’ 1 ) )
77 76 breq2d โŠข ( ๐‘… = 0 โ†’ ( ๐‘ƒ โˆฅ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) โ†” ๐‘ƒ โˆฅ ( ( ๐ด ยท 0 ) โˆ’ 1 ) ) )
78 74 77 syl5ibcom โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘… = 0 โ†’ ๐‘ƒ โˆฅ ( ( ๐ด ยท 0 ) โˆ’ 1 ) ) )
79 43 mul01d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐ด ยท 0 ) = 0 )
80 79 oveq1d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด ยท 0 ) โˆ’ 1 ) = ( 0 โˆ’ 1 ) )
81 df-neg โŠข - 1 = ( 0 โˆ’ 1 )
82 80 81 eqtr4di โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด ยท 0 ) โˆ’ 1 ) = - 1 )
83 82 breq2d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆฅ ( ( ๐ด ยท 0 ) โˆ’ 1 ) โ†” ๐‘ƒ โˆฅ - 1 ) )
84 dvdsnegb โŠข ( ( ๐‘ƒ โˆˆ โ„ค โˆง 1 โˆˆ โ„ค ) โ†’ ( ๐‘ƒ โˆฅ 1 โ†” ๐‘ƒ โˆฅ - 1 ) )
85 5 16 84 sylancl โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆฅ 1 โ†” ๐‘ƒ โˆฅ - 1 ) )
86 83 85 bitr4d โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆฅ ( ( ๐ด ยท 0 ) โˆ’ 1 ) โ†” ๐‘ƒ โˆฅ 1 ) )
87 78 86 sylibd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘… = 0 โ†’ ๐‘ƒ โˆฅ 1 ) )
88 3 87 mtod โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ยฌ ๐‘… = 0 )
89 zmodfz โŠข ( ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) โˆˆ โ„ค โˆง ๐‘ƒ โˆˆ โ„• ) โ†’ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) mod ๐‘ƒ ) โˆˆ ( 0 ... ( ๐‘ƒ โˆ’ 1 ) ) )
90 24 10 89 syl2anc โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ( ๐ด โ†‘ ( ๐‘ƒ โˆ’ 2 ) ) mod ๐‘ƒ ) โˆˆ ( 0 ... ( ๐‘ƒ โˆ’ 1 ) ) )
91 1 90 eqeltrid โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘… โˆˆ ( 0 ... ( ๐‘ƒ โˆ’ 1 ) ) )
92 nn0uz โŠข โ„•0 = ( โ„คโ‰ฅ โ€˜ 0 )
93 12 92 eleqtrdi โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘ƒ โˆ’ 1 ) โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) )
94 elfzp12 โŠข ( ( ๐‘ƒ โˆ’ 1 ) โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) โ†’ ( ๐‘… โˆˆ ( 0 ... ( ๐‘ƒ โˆ’ 1 ) ) โ†” ( ๐‘… = 0 โˆจ ๐‘… โˆˆ ( ( 0 + 1 ) ... ( ๐‘ƒ โˆ’ 1 ) ) ) ) )
95 93 94 syl โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘… โˆˆ ( 0 ... ( ๐‘ƒ โˆ’ 1 ) ) โ†” ( ๐‘… = 0 โˆจ ๐‘… โˆˆ ( ( 0 + 1 ) ... ( ๐‘ƒ โˆ’ 1 ) ) ) ) )
96 91 95 mpbid โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘… = 0 โˆจ ๐‘… โˆˆ ( ( 0 + 1 ) ... ( ๐‘ƒ โˆ’ 1 ) ) ) )
97 96 ord โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ยฌ ๐‘… = 0 โ†’ ๐‘… โˆˆ ( ( 0 + 1 ) ... ( ๐‘ƒ โˆ’ 1 ) ) ) )
98 88 97 mpd โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘… โˆˆ ( ( 0 + 1 ) ... ( ๐‘ƒ โˆ’ 1 ) ) )
99 1e0p1 โŠข 1 = ( 0 + 1 )
100 99 oveq1i โŠข ( 1 ... ( ๐‘ƒ โˆ’ 1 ) ) = ( ( 0 + 1 ) ... ( ๐‘ƒ โˆ’ 1 ) )
101 98 100 eleqtrrdi โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ๐‘… โˆˆ ( 1 ... ( ๐‘ƒ โˆ’ 1 ) ) )
102 101 74 jca โŠข ( ( ๐‘ƒ โˆˆ โ„™ โˆง ๐ด โˆˆ โ„ค โˆง ยฌ ๐‘ƒ โˆฅ ๐ด ) โ†’ ( ๐‘… โˆˆ ( 1 ... ( ๐‘ƒ โˆ’ 1 ) ) โˆง ๐‘ƒ โˆฅ ( ( ๐ด ยท ๐‘… ) โˆ’ 1 ) ) )