ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  lgsdirprm Unicode version

Theorem lgsdirprm 16153
Description: The Legendre symbol is completely multiplicative at the primes. See theorem 9.3 in [ApostolNT] p. 180. (Contributed by Mario Carneiro, 4-Feb-2015.) (Proof shortened by AV, 18-Mar-2022.)
Assertion
Ref Expression
lgsdirprm  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  ->  (
( A  x.  B
)  /L P )  =  ( ( A  /L P )  x.  ( B  /L P ) ) )

Proof of Theorem lgsdirprm
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 simpl1 1031 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  A  e.  ZZ )
2 simpl2 1032 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  B  e.  ZZ )
3 lgsdir2 16152 . . . 4  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ )  ->  ( ( A  x.  B )  /L 2 )  =  ( ( A  /L 2 )  x.  ( B  /L 2 ) ) )
41, 2, 3syl2anc 415 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  ( ( A  x.  B )  /L 2 )  =  ( ( A  /L 2 )  x.  ( B  /L 2 ) ) )
5 simpr 110 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  P  =  2 )
65oveq2d 6101 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  ( ( A  x.  B )  /L P )  =  ( ( A  x.  B )  /L 2 ) )
75oveq2d 6101 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  ( A  /L P )  =  ( A  /L 2 ) )
85oveq2d 6101 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  ( B  /L P )  =  ( B  /L 2 ) )
97, 8oveq12d 6103 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  ( ( A  /L P )  x.  ( B  /L P ) )  =  ( ( A  /L 2 )  x.  ( B  /L 2 ) ) )
104, 6, 93eqtr4d 2281 . 2  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =  2 )  ->  ( ( A  x.  B )  /L P )  =  ( ( A  /L P )  x.  ( B  /L
P ) ) )
11 simpl1 1031 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  A  e.  ZZ )
12 simpl2 1032 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  B  e.  ZZ )
1311, 12zmulcld 9774 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A  x.  B
)  e.  ZZ )
14 simpl3 1033 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  e.  Prime )
15 prmz 12889 . . . . . 6  |-  ( P  e.  Prime  ->  P  e.  ZZ )
1614, 15syl 14 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  e.  ZZ )
17 lgscl 16133 . . . . 5  |-  ( ( ( A  x.  B
)  e.  ZZ  /\  P  e.  ZZ )  ->  ( ( A  x.  B )  /L
P )  e.  ZZ )
1813, 16, 17syl2anc 415 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  x.  B )  /L
P )  e.  ZZ )
1918zcnd 9769 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  x.  B )  /L
P )  e.  CC )
20 lgscl 16133 . . . . . 6  |-  ( ( A  e.  ZZ  /\  P  e.  ZZ )  ->  ( A  /L
P )  e.  ZZ )
2111, 16, 20syl2anc 415 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A  /L
P )  e.  ZZ )
22 lgscl 16133 . . . . . 6  |-  ( ( B  e.  ZZ  /\  P  e.  ZZ )  ->  ( B  /L
P )  e.  ZZ )
2312, 16, 22syl2anc 415 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B  /L
P )  e.  ZZ )
2421, 23zmulcld 9774 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  /L P )  x.  ( B  /L
P ) )  e.  ZZ )
2524zcnd 9769 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  /L P )  x.  ( B  /L
P ) )  e.  CC )
2619, 25subcld 8637 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) )  e.  CC )
2718, 24zsubcld 9773 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) )  e.  ZZ )
28 zabscl 11852 . . . . . . 7  |-  ( ( ( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) )  e.  ZZ  ->  ( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  e.  ZZ )
29 zq 10026 . . . . . . 7  |-  ( ( abs `  ( ( ( A  x.  B
)  /L P )  -  ( ( A  /L P )  x.  ( B  /L P ) ) ) )  e.  ZZ  ->  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) ) )  e.  QQ )
3027, 28, 293syl 17 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  e.  QQ )
31 prmnn 12888 . . . . . . 7  |-  ( P  e.  Prime  ->  P  e.  NN )
32 nnq 10033 . . . . . . 7  |-  ( P  e.  NN  ->  P  e.  QQ )
3314, 31, 323syl 17 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  e.  QQ )
3426absge0d 11950 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
0  <_  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) ) ) )
3526abscld 11947 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  e.  RR )
36 2re 9374 . . . . . . . 8  |-  2  e.  RR
3736a1i 9 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
2  e.  RR )
3814, 31syl 14 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  e.  NN )
3938nnred 9317 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  e.  RR )
4019abscld 11947 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( A  x.  B
)  /L P ) )  e.  RR )
4125abscld 11947 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( A  /L
P )  x.  ( B  /L P ) ) )  e.  RR )
4240, 41readdcld 8355 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( abs `  (
( A  x.  B
)  /L P ) )  +  ( abs `  ( ( A  /L P )  x.  ( B  /L P ) ) ) )  e.  RR )
4319, 25abs2dif2d 11964 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  <_ 
( ( abs `  (
( A  x.  B
)  /L P ) )  +  ( abs `  ( ( A  /L P )  x.  ( B  /L P ) ) ) ) )
44 1red 8341 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
1  e.  RR )
45 lgsle1 16134 . . . . . . . . . . 11  |-  ( ( ( A  x.  B
)  e.  ZZ  /\  P  e.  ZZ )  ->  ( abs `  (
( A  x.  B
)  /L P ) )  <_  1
)
4613, 16, 45syl2anc 415 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( A  x.  B
)  /L P ) )  <_  1
)
47 eqid 2238 . . . . . . . . . . . . . 14  |-  { x  e.  ZZ  |  ( abs `  x )  <_  1 }  =  { x  e.  ZZ  |  ( abs `  x )  <_  1 }
4847lgscl2 16131 . . . . . . . . . . . . 13  |-  ( ( A  e.  ZZ  /\  P  e.  ZZ )  ->  ( A  /L
P )  e.  {
x  e.  ZZ  | 
( abs `  x
)  <_  1 }
)
4911, 16, 48syl2anc 415 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A  /L
P )  e.  {
x  e.  ZZ  | 
( abs `  x
)  <_  1 }
)
5047lgscl2 16131 . . . . . . . . . . . . 13  |-  ( ( B  e.  ZZ  /\  P  e.  ZZ )  ->  ( B  /L
P )  e.  {
x  e.  ZZ  | 
( abs `  x
)  <_  1 }
)
5112, 16, 50syl2anc 415 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B  /L
P )  e.  {
x  e.  ZZ  | 
( abs `  x
)  <_  1 }
)
5247lgslem3 16121 . . . . . . . . . . . 12  |-  ( ( ( A  /L
P )  e.  {
x  e.  ZZ  | 
( abs `  x
)  <_  1 }  /\  ( B  /L
P )  e.  {
x  e.  ZZ  | 
( abs `  x
)  <_  1 }
)  ->  ( ( A  /L P )  x.  ( B  /L P ) )  e.  { x  e.  ZZ  |  ( abs `  x )  <_  1 } )
5349, 51, 52syl2anc 415 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  /L P )  x.  ( B  /L
P ) )  e. 
{ x  e.  ZZ  |  ( abs `  x
)  <_  1 }
)
54 fveq2 5695 . . . . . . . . . . . . . 14  |-  ( x  =  ( ( A  /L P )  x.  ( B  /L P ) )  ->  ( abs `  x
)  =  ( abs `  ( ( A  /L P )  x.  ( B  /L
P ) ) ) )
5554breq1d 4140 . . . . . . . . . . . . 13  |-  ( x  =  ( ( A  /L P )  x.  ( B  /L P ) )  ->  ( ( abs `  x )  <_  1  <->  ( abs `  ( ( A  /L P )  x.  ( B  /L P ) ) )  <_  1
) )
5655elrab 2982 . . . . . . . . . . . 12  |-  ( ( ( A  /L
P )  x.  ( B  /L P ) )  e.  { x  e.  ZZ  |  ( abs `  x )  <_  1 } 
<->  ( ( ( A  /L P )  x.  ( B  /L P ) )  e.  ZZ  /\  ( abs `  ( ( A  /L P )  x.  ( B  /L P ) ) )  <_  1 ) )
5756simprbi 275 . . . . . . . . . . 11  |-  ( ( ( A  /L
P )  x.  ( B  /L P ) )  e.  { x  e.  ZZ  |  ( abs `  x )  <_  1 }  ->  ( abs `  (
( A  /L
P )  x.  ( B  /L P ) ) )  <_  1
)
5853, 57syl 14 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( A  /L
P )  x.  ( B  /L P ) ) )  <_  1
)
5940, 41, 44, 44, 46, 58le2addd 8891 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( abs `  (
( A  x.  B
)  /L P ) )  +  ( abs `  ( ( A  /L P )  x.  ( B  /L P ) ) ) )  <_ 
( 1  +  1 ) )
60 df-2 9363 . . . . . . . . 9  |-  2  =  ( 1  +  1 )
6159, 60breqtrrdi 4172 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( abs `  (
( A  x.  B
)  /L P ) )  +  ( abs `  ( ( A  /L P )  x.  ( B  /L P ) ) ) )  <_ 
2 )
6235, 42, 37, 43, 61letrd 8450 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  <_ 
2 )
63 prmuz2 12909 . . . . . . . . 9  |-  ( P  e.  Prime  ->  P  e.  ( ZZ>= `  2 )
)
64 eluzle 9934 . . . . . . . . 9  |-  ( P  e.  ( ZZ>= `  2
)  ->  2  <_  P )
6514, 63, 643syl 17 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
2  <_  P )
66 simpr 110 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  =/=  2 )
67 2z 9672 . . . . . . . . 9  |-  2  e.  ZZ
68 zltlen 9724 . . . . . . . . 9  |-  ( ( 2  e.  ZZ  /\  P  e.  ZZ )  ->  ( 2  <  P  <->  ( 2  <_  P  /\  P  =/=  2 ) ) )
6967, 16, 68sylancr 418 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( 2  <  P  <->  ( 2  <_  P  /\  P  =/=  2 ) ) )
7065, 66, 69mpbir2and 957 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
2  <  P )
7135, 37, 39, 62, 70lelttrd 8451 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  < 
P )
72 modqid 10786 . . . . . 6  |-  ( ( ( ( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  e.  QQ  /\  P  e.  QQ )  /\  (
0  <_  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) ) )  /\  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) ) )  <  P ) )  ->  ( ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L P ) ) ) )  mod  P
)  =  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) ) ) )
7330, 33, 34, 71, 72syl22anc 1279 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  mod 
P )  =  ( abs `  ( ( ( A  x.  B
)  /L P )  -  ( ( A  /L P )  x.  ( B  /L P ) ) ) ) )
7411zcnd 9769 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  A  e.  CC )
7512zcnd 9769 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  B  e.  CC )
76 eldifsn 3841 . . . . . . . . . . . . . . 15  |-  ( P  e.  ( Prime  \  {
2 } )  <->  ( P  e.  Prime  /\  P  =/=  2 ) )
7714, 66, 76sylanbrc 421 . . . . . . . . . . . . . 14  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  e.  ( Prime  \  { 2 } ) )
78 oddprm 13038 . . . . . . . . . . . . . 14  |-  ( P  e.  ( Prime  \  {
2 } )  -> 
( ( P  - 
1 )  /  2
)  e.  NN )
7977, 78syl 14 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( P  - 
1 )  /  2
)  e.  NN )
8079nnnn0d 9620 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( P  - 
1 )  /  2
)  e.  NN0 )
8174, 75, 80mulexpd 11126 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  x.  B ) ^ (
( P  -  1 )  /  2 ) )  =  ( ( A ^ ( ( P  -  1 )  /  2 ) )  x.  ( B ^
( ( P  - 
1 )  /  2
) ) ) )
82 zexpcl 10991 . . . . . . . . . . . . . 14  |-  ( ( A  e.  ZZ  /\  ( ( P  - 
1 )  /  2
)  e.  NN0 )  ->  ( A ^ (
( P  -  1 )  /  2 ) )  e.  ZZ )
8311, 80, 82syl2anc 415 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A ^ (
( P  -  1 )  /  2 ) )  e.  ZZ )
8483zcnd 9769 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A ^ (
( P  -  1 )  /  2 ) )  e.  CC )
85 zexpcl 10991 . . . . . . . . . . . . . 14  |-  ( ( B  e.  ZZ  /\  ( ( P  - 
1 )  /  2
)  e.  NN0 )  ->  ( B ^ (
( P  -  1 )  /  2 ) )  e.  ZZ )
8612, 80, 85syl2anc 415 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B ^ (
( P  -  1 )  /  2 ) )  e.  ZZ )
8786zcnd 9769 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B ^ (
( P  -  1 )  /  2 ) )  e.  CC )
8884, 87mulcomd 8347 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A ^
( ( P  - 
1 )  /  2
) )  x.  ( B ^ ( ( P  -  1 )  / 
2 ) ) )  =  ( ( B ^ ( ( P  -  1 )  / 
2 ) )  x.  ( A ^ (
( P  -  1 )  /  2 ) ) ) )
8981, 88eqtrd 2271 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  x.  B ) ^ (
( P  -  1 )  /  2 ) )  =  ( ( B ^ ( ( P  -  1 )  /  2 ) )  x.  ( A ^
( ( P  - 
1 )  /  2
) ) ) )
9089oveq1d 6100 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  x.  B ) ^
( ( P  - 
1 )  /  2
) )  mod  P
)  =  ( ( ( B ^ (
( P  -  1 )  /  2 ) )  x.  ( A ^ ( ( P  -  1 )  / 
2 ) ) )  mod  P ) )
91 lgsvalmod 16138 . . . . . . . . . 10  |-  ( ( ( A  x.  B
)  e.  ZZ  /\  P  e.  ( Prime  \  { 2 } ) )  ->  ( (
( A  x.  B
)  /L P )  mod  P )  =  ( ( ( A  x.  B ) ^ ( ( P  -  1 )  / 
2 ) )  mod 
P ) )
9213, 77, 91syl2anc 415 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  x.  B )  /L P )  mod 
P )  =  ( ( ( A  x.  B ) ^ (
( P  -  1 )  /  2 ) )  mod  P ) )
93 zq 10026 . . . . . . . . . . . 12  |-  ( ( A  /L P )  e.  ZZ  ->  ( A  /L P )  e.  QQ )
9421, 93syl 14 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A  /L
P )  e.  QQ )
95 zq 10026 . . . . . . . . . . . 12  |-  ( ( A ^ ( ( P  -  1 )  /  2 ) )  e.  ZZ  ->  ( A ^ ( ( P  -  1 )  / 
2 ) )  e.  QQ )
9683, 95syl 14 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( A ^ (
( P  -  1 )  /  2 ) )  e.  QQ )
9738nngt0d 9348 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
0  <  P )
98 lgsvalmod 16138 . . . . . . . . . . . 12  |-  ( ( A  e.  ZZ  /\  P  e.  ( Prime  \  { 2 } ) )  ->  ( ( A  /L P )  mod  P )  =  ( ( A ^
( ( P  - 
1 )  /  2
) )  mod  P
) )
9911, 77, 98syl2anc 415 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  /L P )  mod 
P )  =  ( ( A ^ (
( P  -  1 )  /  2 ) )  mod  P ) )
10094, 96, 23, 33, 97, 99modqmul1 10814 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  /L P )  x.  ( B  /L P ) )  mod  P )  =  ( ( ( A ^ ( ( P  -  1 )  / 
2 ) )  x.  ( B  /L
P ) )  mod 
P ) )
10123zcnd 9769 . . . . . . . . . . . 12  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B  /L
P )  e.  CC )
10284, 101mulcomd 8347 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A ^
( ( P  - 
1 )  /  2
) )  x.  ( B  /L P ) )  =  ( ( B  /L P )  x.  ( A ^ ( ( P  -  1 )  / 
2 ) ) ) )
103102oveq1d 6100 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A ^ ( ( P  -  1 )  / 
2 ) )  x.  ( B  /L
P ) )  mod 
P )  =  ( ( ( B  /L P )  x.  ( A ^ (
( P  -  1 )  /  2 ) ) )  mod  P
) )
104 zq 10026 . . . . . . . . . . . 12  |-  ( ( B  /L P )  e.  ZZ  ->  ( B  /L P )  e.  QQ )
10523, 104syl 14 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B  /L
P )  e.  QQ )
106 zq 10026 . . . . . . . . . . . 12  |-  ( ( B ^ ( ( P  -  1 )  /  2 ) )  e.  ZZ  ->  ( B ^ ( ( P  -  1 )  / 
2 ) )  e.  QQ )
10786, 106syl 14 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( B ^ (
( P  -  1 )  /  2 ) )  e.  QQ )
108 lgsvalmod 16138 . . . . . . . . . . . 12  |-  ( ( B  e.  ZZ  /\  P  e.  ( Prime  \  { 2 } ) )  ->  ( ( B  /L P )  mod  P )  =  ( ( B ^
( ( P  - 
1 )  /  2
) )  mod  P
) )
10912, 77, 108syl2anc 415 . . . . . . . . . . 11  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( B  /L P )  mod 
P )  =  ( ( B ^ (
( P  -  1 )  /  2 ) )  mod  P ) )
110105, 107, 83, 33, 97, 109modqmul1 10814 . . . . . . . . . 10  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( B  /L P )  x.  ( A ^
( ( P  - 
1 )  /  2
) ) )  mod 
P )  =  ( ( ( B ^
( ( P  - 
1 )  /  2
) )  x.  ( A ^ ( ( P  -  1 )  / 
2 ) ) )  mod  P ) )
111100, 103, 1103eqtrd 2275 . . . . . . . . 9  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  /L P )  x.  ( B  /L P ) )  mod  P )  =  ( ( ( B ^ ( ( P  -  1 )  / 
2 ) )  x.  ( A ^ (
( P  -  1 )  /  2 ) ) )  mod  P
) )
11290, 92, 1113eqtr4d 2281 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  x.  B )  /L P )  mod 
P )  =  ( ( ( A  /L P )  x.  ( B  /L
P ) )  mod 
P ) )
113 moddvds 12566 . . . . . . . . 9  |-  ( ( P  e.  NN  /\  ( ( A  x.  B )  /L
P )  e.  ZZ  /\  ( ( A  /L P )  x.  ( B  /L
P ) )  e.  ZZ )  ->  (
( ( ( A  x.  B )  /L P )  mod 
P )  =  ( ( ( A  /L P )  x.  ( B  /L
P ) )  mod 
P )  <->  P  ||  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) ) )
11438, 18, 24, 113syl3anc 1278 . . . . . . . 8  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( ( A  x.  B )  /L P )  mod  P )  =  ( ( ( A  /L P )  x.  ( B  /L P ) )  mod  P )  <->  P  ||  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) ) )
115112, 114mpbid 147 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  ||  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L P ) ) ) )
116 dvdsabsb 12577 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) )  e.  ZZ )  -> 
( P  ||  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) )  <->  P  ||  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L P ) ) ) ) ) )
11716, 27, 116syl2anc 415 . . . . . . 7  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( P  ||  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) )  <->  P  ||  ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L P ) ) ) ) ) )
118115, 117mpbid 147 . . . . . 6  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  ->  P  ||  ( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) ) )
119 dvdsmod0 12560 . . . . . 6  |-  ( ( P  e.  NN  /\  P  ||  ( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) ) )  ->  ( ( abs `  ( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) ) )  mod  P )  =  0 )
12038, 118, 119syl2anc 415 . . . . 5  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  mod 
P )  =  0 )
12173, 120eqtr3d 2273 . . . 4  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( abs `  (
( ( A  x.  B )  /L
P )  -  (
( A  /L
P )  x.  ( B  /L P ) ) ) )  =  0 )
12226, 121abs00d 11952 . . 3  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( ( A  x.  B )  /L P )  -  ( ( A  /L P )  x.  ( B  /L
P ) ) )  =  0 )
12319, 25, 122subeq0d 8645 . 2  |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  /\  P  =/=  2 )  -> 
( ( A  x.  B )  /L
P )  =  ( ( A  /L
P )  x.  ( B  /L P ) ) )
124153ad2ant3 1051 . . . 4  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  ->  P  e.  ZZ )
12567a1i 9 . . . 4  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  ->  2  e.  ZZ )
126 zdceq 9720 . . . 4  |-  ( ( P  e.  ZZ  /\  2  e.  ZZ )  -> DECID  P  =  2 )
127124, 125, 126syl2anc 415 . . 3  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  -> DECID  P  =  2
)
128 dcne 2431 . . 3  |-  (DECID  P  =  2  <->  ( P  =  2  \/  P  =/=  2 ) )
129127, 128sylib 122 . 2  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  ->  ( P  =  2  \/  P  =/=  2 ) )
13010, 123, 129mpjaodan 810 1  |-  ( ( A  e.  ZZ  /\  B  e.  ZZ  /\  P  e.  Prime )  ->  (
( A  x.  B
)  /L P )  =  ( ( A  /L P )  x.  ( B  /L P ) ) )
Colors of variables:    wff set class
This proof depends on syntax axioms:    -> wi 4    /\ wa 104    <-> wb 105    \/ wo 720  DECID wdc 846    /\ w3a 1009    = wceq 1402    e. wcel 2209    =/= wne 2420   {crab 2532    \ cdif 3217   {csn 3709   class class class wbr 4130   ` cfv 5377  (class class class)co 6085   RRcr 8178   0cc0 8179   1c1 8180    + caddc 8182    x. cmul 8184    < clt 8360    <_ cle 8361    - cmin 8497    / cdiv 9002   NNcn 9304   2c2 9355   NN0cn0 9563   ZZcz 9644   ZZ>=cuz 9921   QQcq 10019    mod cmo 10759   ^cexp 10975   abscabs 11763    || cdvds 12554   Primecprime 12885    /Lclgs 16116
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-coll 4246  ax-sep 4249  ax-nul 4259  ax-pow 4311  ax-pr 4346  ax-un 4578  ax-setind 4684  ax-iinf 4735  ax-cnex 8270  ax-resscn 8271  ax-1cn 8272  ax-1re 8273  ax-icn 8274  ax-addcl 8275  ax-addrcl 8276  ax-mulcl 8277  ax-mulrcl 8278  ax-addcom 8279  ax-mulcom 8280  ax-addass 8281  ax-mulass 8282  ax-distr 8283  ax-i2m1 8284  ax-0lt1 8285  ax-1rid 8286  ax-0id 8287  ax-rnegex 8288  ax-precex 8289  ax-cnre 8290  ax-pre-ltirr 8291  ax-pre-ltwlin 8292  ax-pre-lttrn 8293  ax-pre-apti 8294  ax-pre-ltadd 8295  ax-pre-mulgt0 8296  ax-pre-mulext 8297  ax-arch 8298  ax-caucvg 8299
This proof depends on definitions:  df-bi 117  df-stab 843  df-dc 847  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-xor 1425  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rmo 2536  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-if 3639  df-pw 3690  df-sn 3715  df-pr 3716  df-op 3718  df-uni 3936  df-int 3971  df-iun 4014  df-br 4131  df-opab 4193  df-mpt 4194  df-tr 4230  df-id 4438  df-po 4441  df-iso 4442  df-iord 4511  df-on 4513  df-ilim 4514  df-suc 4516  df-iom 4738  df-xp 4780  df-rel 4781  df-cnv 4782  df-co 4783  df-dm 4784  df-rn 4785  df-res 4786  df-ima 4787  df-iota 5337  df-fun 5379  df-fn 5380  df-f 5381  df-f1 5382  df-fo 5383  df-f1o 5384  df-fv 5385  df-isom 5386  df-riota 6038  df-ov 6088  df-oprab 6089  df-mpo 6090  df-1st 6374  df-2nd 6375  df-recs 6576  df-irdg 6641  df-frec 6662  df-1o 6687  df-2o 6688  df-oadd 6691  df-er 6807  df-en 7023  df-dom 7024  df-fin 7025  df-sup 7324  df-inf 7325  df-pnf 8362  df-mnf 8363  df-xr 8364  df-ltxr 8365  df-le 8366  df-sub 8499  df-neg 8500  df-reap 8903  df-ap 8910  df-div 9003  df-inn 9305  df-2 9363  df-3 9364  df-4 9365  df-5 9366  df-6 9367  df-7 9368  df-8 9369  df-9 9370  df-n0 9564  df-z 9645  df-uz 9922  df-q 10020  df-rp 10055  df-fz 10412  df-fzo 10550  df-fl 10705  df-mod 10760  df-seqfrec 10885  df-exp 10976  df-ihash 11215  df-cj 11607  df-re 11608  df-im 11609  df-rsqrt 11764  df-abs 11765  df-clim 12045  df-proddc 12318  df-dvds 12555  df-gcd 12731  df-prm 12886  df-phi 12989  df-pc 13064  df-lgs 16117
This theorem is used by:  lgsdir  16154
  Copyright terms: Public domain W3C validator