Metamath Proof Explorer


Theorem lgsdilem

Description: Lemma for lgsdi and lgsdir : the sign part of the Legendre symbol is multiplicative. (Contributed by Mario Carneiro, 4-Feb-2015)

Ref Expression
Assertion lgsdilem ABNA0B0ifN<0AB<011=ifN<0A<011ifN<0B<011

Proof

Step Hyp Ref Expression
1 simplrr ABNA0B0A<0B0
2 1 biantrud ABNA0B0A<00B0BB0
3 0re 0
4 simpl2 ABNA0B0B
5 4 zred ABNA0B0B
6 5 adantr ABNA0B0A<0B
7 ltlen 0B0<B0BB0
8 3 6 7 sylancr ABNA0B0A<00<B0BB0
9 simpl1 ABNA0B0A
10 9 zred ABNA0B0A
11 10 adantr ABNA0B0A<0A
12 11 renegcld ABNA0B0A<0A
13 12 recnd ABNA0B0A<0A
14 13 mul01d ABNA0B0A<0A0=0
15 11 recnd ABNA0B0A<0A
16 6 recnd ABNA0B0A<0B
17 15 16 mulneg1d ABNA0B0A<0AB=AB
18 14 17 breq12d ABNA0B0A<0A0<AB0<AB
19 0red ABNA0B0A<00
20 10 lt0neg1d ABNA0B0A<00<A
21 20 biimpa ABNA0B0A<00<A
22 ltmul2 0BA0<A0<BA0<AB
23 19 6 12 21 22 syl112anc ABNA0B0A<00<BA0<AB
24 10 5 remulcld ABNA0B0AB
25 24 adantr ABNA0B0A<0AB
26 25 lt0neg1d ABNA0B0A<0AB<00<AB
27 18 23 26 3bitr4d ABNA0B0A<00<BAB<0
28 2 8 27 3bitr2rd ABNA0B0A<0AB<00B
29 lenlt 0B0B¬B<0
30 3 6 29 sylancr ABNA0B0A<00B¬B<0
31 28 30 bitrd ABNA0B0A<0AB<0¬B<0
32 31 ifbid ABNA0B0A<0ifAB<011=if¬B<011
33 oveq2 ifB<011=1-1ifB<011=-1-1
34 neg1mulneg1e1 -1-1=1
35 33 34 eqtrdi ifB<011=1-1ifB<011=1
36 oveq2 ifB<011=1-1ifB<011=-11
37 ax-1cn 1
38 37 mulm1i -11=1
39 36 38 eqtrdi ifB<011=1-1ifB<011=1
40 35 39 ifsb -1ifB<011=ifB<011
41 ifnot if¬B<011=ifB<011
42 40 41 eqtr4i -1ifB<011=if¬B<011
43 32 42 eqtr4di ABNA0B0A<0ifAB<011=-1ifB<011
44 iftrue A<0ifA<011=1
45 44 adantl ABNA0B0A<0ifA<011=1
46 45 oveq1d ABNA0B0A<0ifA<011ifB<011=-1ifB<011
47 43 46 eqtr4d ABNA0B0A<0ifAB<011=ifA<011ifB<011
48 iffalse ¬A<0ifA<011=1
49 48 adantl ABNA0B0¬A<0ifA<011=1
50 49 oveq1d ABNA0B0¬A<0ifA<011ifB<011=1ifB<011
51 neg1cn 1
52 51 37 ifcli ifB<011
53 52 mullidi 1ifB<011=ifB<011
54 5 adantr ABNA0B0¬A<0B
55 0red ABNA0B0¬A<00
56 10 adantr ABNA0B0¬A<0A
57 lenlt 0A0A¬A<0
58 3 10 57 sylancr ABNA0B00A¬A<0
59 58 biimpar ABNA0B0¬A<00A
60 simplrl ABNA0B0¬A<0A0
61 56 59 60 ne0gt0d ABNA0B0¬A<00<A
62 ltmul2 B0A0<AB<0AB<A0
63 54 55 56 61 62 syl112anc ABNA0B0¬A<0B<0AB<A0
64 56 recnd ABNA0B0¬A<0A
65 64 mul01d ABNA0B0¬A<0A0=0
66 65 breq2d ABNA0B0¬A<0AB<A0AB<0
67 63 66 bitrd ABNA0B0¬A<0B<0AB<0
68 67 ifbid ABNA0B0¬A<0ifB<011=ifAB<011
69 53 68 eqtrid ABNA0B0¬A<01ifB<011=ifAB<011
70 50 69 eqtr2d ABNA0B0¬A<0ifAB<011=ifA<011ifB<011
71 47 70 pm2.61dan ABNA0B0ifAB<011=ifA<011ifB<011
72 71 adantr ABNA0B0N<0ifAB<011=ifA<011ifB<011
73 simpr ABNA0B0N<0N<0
74 73 biantrurd ABNA0B0N<0AB<0N<0AB<0
75 74 ifbid ABNA0B0N<0ifAB<011=ifN<0AB<011
76 73 biantrurd ABNA0B0N<0A<0N<0A<0
77 76 ifbid ABNA0B0N<0ifA<011=ifN<0A<011
78 73 biantrurd ABNA0B0N<0B<0N<0B<0
79 78 ifbid ABNA0B0N<0ifB<011=ifN<0B<011
80 77 79 oveq12d ABNA0B0N<0ifA<011ifB<011=ifN<0A<011ifN<0B<011
81 72 75 80 3eqtr3d ABNA0B0N<0ifN<0AB<011=ifN<0A<011ifN<0B<011
82 simpr ABNA0B0¬N<0¬N<0
83 82 intnanrd ABNA0B0¬N<0¬N<0AB<0
84 83 iffalsed ABNA0B0¬N<0ifN<0AB<011=1
85 1t1e1 11=1
86 84 85 eqtr4di ABNA0B0¬N<0ifN<0AB<011=11
87 82 intnanrd ABNA0B0¬N<0¬N<0A<0
88 87 iffalsed ABNA0B0¬N<0ifN<0A<011=1
89 82 intnanrd ABNA0B0¬N<0¬N<0B<0
90 89 iffalsed ABNA0B0¬N<0ifN<0B<011=1
91 88 90 oveq12d ABNA0B0¬N<0ifN<0A<011ifN<0B<011=11
92 86 91 eqtr4d ABNA0B0¬N<0ifN<0AB<011=ifN<0A<011ifN<0B<011
93 81 92 pm2.61dan ABNA0B0ifN<0AB<011=ifN<0A<011ifN<0B<011