Metamath Proof Explorer


Theorem lgsqr

Description: The Legendre symbol for odd primes is 1 iff the number is not a multiple of the prime (in which case it is 0 , see lgsne0 ) and the number is a quadratic residue mod P (it is -u 1 for nonresidues by the process of elimination from lgsabs1 ). Given our definition of the Legendre symbol, this theorem is equivalent to Euler's criterion. (Contributed by Mario Carneiro, 15-Jun-2015)

Ref Expression
Assertion lgsqr A P 2 A / L P = 1 ¬ P A x P x 2 A

Proof

Step Hyp Ref Expression
1 eldifi P 2 P
2 1 adantl A P 2 P
3 prmz P P
4 2 3 syl A P 2 P
5 simpl A P 2 A
6 gcdcom P A P gcd A = A gcd P
7 4 5 6 syl2anc A P 2 P gcd A = A gcd P
8 7 eqeq1d A P 2 P gcd A = 1 A gcd P = 1
9 coprm P A ¬ P A P gcd A = 1
10 2 5 9 syl2anc A P 2 ¬ P A P gcd A = 1
11 lgsne0 A P A / L P 0 A gcd P = 1
12 5 4 11 syl2anc A P 2 A / L P 0 A gcd P = 1
13 8 10 12 3bitr4d A P 2 ¬ P A A / L P 0
14 13 necon4bbid A P 2 P A A / L P = 0
15 0ne1 0 1
16 neeq1 A / L P = 0 A / L P 1 0 1
17 15 16 mpbiri A / L P = 0 A / L P 1
18 14 17 syl6bi A P 2 P A A / L P 1
19 18 necon2bd A P 2 A / L P = 1 ¬ P A
20 lgsqrlem5 A P 2 A / L P = 1 x P x 2 A
21 20 3expia A P 2 A / L P = 1 x P x 2 A
22 19 21 jcad A P 2 A / L P = 1 ¬ P A x P x 2 A
23 simprl A P 2 ¬ P A x P x 2 A x
24 23 zred A P 2 ¬ P A x P x 2 A x
25 absresq x x 2 = x 2
26 24 25 syl A P 2 ¬ P A x P x 2 A x 2 = x 2
27 26 oveq1d A P 2 ¬ P A x P x 2 A x 2 / L P = x 2 / L P
28 simplr A P 2 ¬ P A x P x 2 A ¬ P A
29 1 ad3antlr A P 2 ¬ P A x P x 2 A P
30 29 3 syl A P 2 ¬ P A x P x 2 A P
31 zsqcl x x 2
32 23 31 syl A P 2 ¬ P A x P x 2 A x 2
33 simplll A P 2 ¬ P A x P x 2 A A
34 simprr A P 2 ¬ P A x P x 2 A P x 2 A
35 dvdssub2 P x 2 A P x 2 A P x 2 P A
36 30 32 33 34 35 syl31anc A P 2 ¬ P A x P x 2 A P x 2 P A
37 28 36 mtbird A P 2 ¬ P A x P x 2 A ¬ P x 2
38 2nn 2
39 38 a1i A P 2 ¬ P A x P x 2 A 2
40 prmdvdsexp P x 2 P x 2 P x
41 29 23 39 40 syl3anc A P 2 ¬ P A x P x 2 A P x 2 P x
42 37 41 mtbid A P 2 ¬ P A x P x 2 A ¬ P x
43 dvds0 P P 0
44 30 43 syl A P 2 ¬ P A x P x 2 A P 0
45 breq2 x = 0 P x P 0
46 44 45 syl5ibrcom A P 2 ¬ P A x P x 2 A x = 0 P x
47 46 necon3bd A P 2 ¬ P A x P x 2 A ¬ P x x 0
48 42 47 mpd A P 2 ¬ P A x P x 2 A x 0
49 nnabscl x x 0 x
50 23 48 49 syl2anc A P 2 ¬ P A x P x 2 A x
51 50 nnzd A P 2 ¬ P A x P x 2 A x
52 50 nnne0d A P 2 ¬ P A x P x 2 A x 0
53 gcdcom x P x gcd P = P gcd x
54 51 30 53 syl2anc A P 2 ¬ P A x P x 2 A x gcd P = P gcd x
55 dvdsabsb P x P x P x
56 30 23 55 syl2anc A P 2 ¬ P A x P x 2 A P x P x
57 42 56 mtbid A P 2 ¬ P A x P x 2 A ¬ P x
58 coprm P x ¬ P x P gcd x = 1
59 29 51 58 syl2anc A P 2 ¬ P A x P x 2 A ¬ P x P gcd x = 1
60 57 59 mpbid A P 2 ¬ P A x P x 2 A P gcd x = 1
61 54 60 eqtrd A P 2 ¬ P A x P x 2 A x gcd P = 1
62 lgssq x x 0 P x gcd P = 1 x 2 / L P = 1
63 51 52 30 61 62 syl211anc A P 2 ¬ P A x P x 2 A x 2 / L P = 1
64 prmnn P P
65 29 64 syl A P 2 ¬ P A x P x 2 A P
66 moddvds P x 2 A x 2 mod P = A mod P P x 2 A
67 65 32 33 66 syl3anc A P 2 ¬ P A x P x 2 A x 2 mod P = A mod P P x 2 A
68 34 67 mpbird A P 2 ¬ P A x P x 2 A x 2 mod P = A mod P
69 68 oveq1d A P 2 ¬ P A x P x 2 A x 2 mod P / L P = A mod P / L P
70 eldifsni P 2 P 2
71 70 ad3antlr A P 2 ¬ P A x P x 2 A P 2
72 71 necomd A P 2 ¬ P A x P x 2 A 2 P
73 2z 2
74 uzid 2 2 2
75 73 74 ax-mp 2 2
76 dvdsprm 2 2 P 2 P 2 = P
77 76 necon3bbid 2 2 P ¬ 2 P 2 P
78 75 29 77 sylancr A P 2 ¬ P A x P x 2 A ¬ 2 P 2 P
79 72 78 mpbird A P 2 ¬ P A x P x 2 A ¬ 2 P
80 lgsmod x 2 P ¬ 2 P x 2 mod P / L P = x 2 / L P
81 32 65 79 80 syl3anc A P 2 ¬ P A x P x 2 A x 2 mod P / L P = x 2 / L P
82 lgsmod A P ¬ 2 P A mod P / L P = A / L P
83 33 65 79 82 syl3anc A P 2 ¬ P A x P x 2 A A mod P / L P = A / L P
84 69 81 83 3eqtr3d A P 2 ¬ P A x P x 2 A x 2 / L P = A / L P
85 27 63 84 3eqtr3rd A P 2 ¬ P A x P x 2 A A / L P = 1
86 85 rexlimdvaa A P 2 ¬ P A x P x 2 A A / L P = 1
87 86 expimpd A P 2 ¬ P A x P x 2 A A / L P = 1
88 22 87 impbid A P 2 A / L P = 1 ¬ P A x P x 2 A