let p be Prime; for fp being FinSequence of NAT st p > 2 & ( for d being Nat st d in dom fp holds
(fp . d) gcd p = 1 ) holds
ex fr being FinSequence of INT st
( len fr = len fp & ( for d being Nat st d in dom fr holds
fr . d = Lege ((fp . d),p) ) & Lege ((Product fp),p) = Product fr )
let fp be FinSequence of NAT ; ( p > 2 & ( for d being Nat st d in dom fp holds
(fp . d) gcd p = 1 ) implies ex fr being FinSequence of INT st
( len fr = len fp & ( for d being Nat st d in dom fr holds
fr . d = Lege ((fp . d),p) ) & Lege ((Product fp),p) = Product fr ) )
assume A1:
p > 2
; ( ex d being Nat st
( d in dom fp & not (fp . d) gcd p = 1 ) or ex fr being FinSequence of INT st
( len fr = len fp & ( for d being Nat st d in dom fr holds
fr . d = Lege ((fp . d),p) ) & Lege ((Product fp),p) = Product fr ) )
deffunc H1( Nat) -> Integer = Lege ((fp . $1),p);
set k = (p -' 1) div 2;
assume A2:
for d being Nat st d in dom fp holds
(fp . d) gcd p = 1
; ex fr being FinSequence of INT st
( len fr = len fp & ( for d being Nat st d in dom fr holds
fr . d = Lege ((fp . d),p) ) & Lege ((Product fp),p) = Product fr )
set f = fp |^ ((p -' 1) div 2);
reconsider f = fp |^ ((p -' 1) div 2) as FinSequence of INT by FINSEQ_2:24, NUMBERS:17;
consider fr being FinSequence such that
A3:
( len fr = len fp & ( for d being Nat st d in dom fr holds
fr . d = H1(d) ) )
from FINSEQ_1:sch 2();
for d being Nat st d in dom fr holds
fr . d in INT
then reconsider fr = fr as FinSequence of INT by FINSEQ_2:12;
A4:
fp is FinSequence of REAL
by FINSEQ_2:24, NUMBERS:19;
A5:
len f = len fp
by NAT_3:def 1;
for d being Nat st d in dom fr holds
fr . d,f . d are_congruent_mod p
proof
let d be
Nat;
( d in dom fr implies fr . d,f . d are_congruent_mod p )
assume A6:
d in dom fr
;
fr . d,f . d are_congruent_mod p
then
d in dom fp
by A3, FINSEQ_3:29;
then
(fp . d) gcd p = 1
by A2;
then
Lege (
(fp . d),
p),
(fp . d) |^ ((p -' 1) div 2) are_congruent_mod p
by A1, Th28;
then A7:
fr . d,
(fp . d) |^ ((p -' 1) div 2) are_congruent_mod p
by A3, A6;
d in dom f
by A3, A5, A6, FINSEQ_3:29;
hence
fr . d,
f . d are_congruent_mod p
by A7, NAT_3:def 1;
verum
end;
then A8:
Product f, Product fr are_congruent_mod p
by A3, A5, Th32, INT_1:14;
(Product fp) gcd p = 1
by A2, WSIERP_1:36;
then
Lege ((Product fp),p),(Product fp) |^ ((p -' 1) div 2) are_congruent_mod p
by A1, Th28;
then
Lege ((Product fp),p), Product f are_congruent_mod p
by A4, NAT_3:15;
then
Lege ((Product fp),p), Product fr are_congruent_mod p
by A8, INT_1:15;
then A9:
p divides (Lege ((Product fp),p)) - (Product fr)
;
take
fr
; ( len fr = len fp & ( for d being Nat st d in dom fr holds
fr . d = Lege ((fp . d),p) ) & Lege ((Product fp),p) = Product fr )
A10:
for d being Nat holds
( not d in dom fr or fr . d = 1 or fr . d = 0 or fr . d = - 1 )