uniroots.miz
begin
Lm1: for k be
Element of
NAT holds k is non
zero iff 1
<= k
proof
let k be
Element of
NAT ;
hereby
assume k is non
zero;
then (
0
+ 1)
<= k by
NAT_1: 13;
hence 1
<= k;
end;
assume 1
<= k;
hence thesis;
end;
scheme ::
UNIROOTS:sch1
CompIndNE { P[ non
zero
Nat] } :
for k be non
zero
Element of
NAT holds P[k]
provided
A1: for k be non
zero
Element of
NAT st for n be non
zero
Element of
NAT st n
< k holds P[n] holds P[k];
let k be non
zero
Element of
NAT ;
defpred
R[
Nat] means ex m be non
zero
Element of
NAT st m
= $1 & P[m];
A2:
now
let k be
Nat such that
A3: k
>= 1 and
A4: for n be
Nat st n
>= 1 & n
< k holds
R[n];
reconsider m = k as non
zero
Element of
NAT by
A3,
ORDINAL1:def 12;
now
let n be non
zero
Element of
NAT such that
A5: n
< m;
n
>= 1 by
Lm1;
then
R[n] by
A4,
A5;
hence P[n];
end;
then P[m] by
A1;
hence
R[k];
end;
A6: for k be
Nat st k
>= 1 holds
R[k] from
NAT_1:sch 9(
A2);
k
>= 1 by
Lm1;
then ex m be non
zero
Element of
NAT st m
= k & P[m] by
A6;
hence thesis;
end;
theorem ::
UNIROOTS:1
Th1: for f be
FinSequence st 1
<= (
len f) holds (f
| (
Seg 1))
=
<*(f
. 1)*>
proof
let f be
FinSequence;
assume 1
<= (
len f);
then (
Seg 1)
c= (
Seg (
len f)) by
FINSEQ_1: 5;
then
A1: (
Seg 1)
c= (
dom f) by
FINSEQ_1:def 3;
reconsider f1 = (f
| (
Seg 1)) as
FinSequence by
FINSEQ_1: 15;
(
0
+ 1)
in (
Seg 1) by
FINSEQ_1: 4;
then
A2: ((f
| (
Seg 1))
. 1)
= (f
. 1) by
FUNCT_1: 49;
(
dom f1)
= (
Seg 1) by
A1,
RELAT_1: 62;
then (
len f1)
= 1 by
FINSEQ_1:def 3;
hence thesis by
A2,
FINSEQ_1: 40;
end;
Lm2: for f be
FinSequence, n,i be
Element of
NAT st i
<= n holds ((f
| (
Seg n))
| (
Seg i))
= (f
| (
Seg i)) by
FINSEQ_1: 5,
RELAT_1: 74;
theorem ::
UNIROOTS:2
Th2: for f be
FinSequence of
F_Complex , g be
FinSequence of
REAL st (
len f)
= (
len g) & for i be
Element of
NAT st i
in (
dom f) holds
|.(f
/. i).|
= (g
. i) holds
|.(
Product f).|
= (
Product g)
proof
defpred
P[
Nat] means for f be
FinSequence of
F_Complex , g be
FinSequence of
REAL st (
len f)
= (
len g) & (for i be
Element of
NAT st i
in (
dom f) holds
|.(f
/. i).|
= (g
. i)) & $1
= (
len f) holds
|.(
Product f).|
= (
Product g);
set FC =
F_Complex ;
set cFC = the
carrier of FC;
A1: for i be
Nat st
P[i] holds
P[(i
+ 1)]
proof
let i be
Nat such that
A2:
P[i];
let f be
FinSequence of FC, g be
FinSequence of
REAL such that
A3: (
len f)
= (
len g) and
A4: for i be
Element of
NAT st i
in (
dom f) holds
|.(f
/. i).|
= (g
. i) and
A5: (i
+ 1)
= (
len f);
consider g1 be
FinSequence of
REAL , r be
Element of
REAL such that
A6: g
= (g1
^
<*r*>) by
A3,
A5,
FINSEQ_2: 19;
A7: (
len g)
= ((
len g1)
+ (
len
<*r*>)) by
A6,
FINSEQ_1: 22
.= ((
len g1)
+ 1) by
FINSEQ_1: 39;
then
A8: (g
. (
len f))
= r by
A3,
A6,
FINSEQ_1: 42;
consider f1 be
FinSequence of FC, c be
Element of cFC such that
A9: f
= (f1
^
<*c*>) by
A5,
FINSEQ_2: 19;
A10: (
len f)
= ((
len f1)
+ (
len
<*c*>)) by
A9,
FINSEQ_1: 22
.= ((
len f1)
+ 1) by
FINSEQ_1: 39;
then
A11: (
dom f1)
= (
dom g1) by
A3,
A7,
FINSEQ_3: 29;
A12:
now
let i be
Element of
NAT ;
A13: (
dom f1)
c= (
dom f) by
A9,
FINSEQ_1: 26;
assume
A14: i
in (
dom f1);
then (f1
/. i)
= (f1
. i) by
PARTFUN1:def 6
.= (f
. i) by
A9,
A14,
FINSEQ_1:def 7
.= (f
/. i) by
A14,
A13,
PARTFUN1:def 6;
hence
|.(f1
/. i).|
= (g
. i) by
A4,
A14,
A13
.= (g1
. i) by
A6,
A11,
A14,
FINSEQ_1:def 7;
end;
reconsider Pf1 = (
Product f1) as
Element of
COMPLEX by
COMPLFLD:def 1;
A15: (
Product g)
= ((
Product g1)
* r) by
A6,
RVSUM_1: 96;
reconsider cc = c as
Element of
COMPLEX by
COMPLFLD:def 1;
f
<>
{} by
A5;
then
A16: (
len f)
in (
dom f) by
FINSEQ_5: 6;
then (f
/. (
len f))
= (f
. (
len f)) by
PARTFUN1:def 6
.= c by
A9,
A10,
FINSEQ_1: 42;
then
A17:
|.cc.|
= r by
A4,
A16,
A8;
(
Product f)
= ((
Product f1)
* c) by
A9,
GROUP_4: 6;
hence
|.(
Product f).|
= (
|.Pf1.|
*
|.cc.|) by
COMPLEX1: 65
.= (
Product g) by
A2,
A3,
A5,
A15,
A10,
A7,
A12,
A17;
end;
A18:
P[
0 ]
proof
let f be
FinSequence of
F_Complex , g be
FinSequence of
REAL such that
A19: (
len f)
= (
len g) and for i be
Element of
NAT st i
in (
dom f) holds
|.(f
/. i).|
= (g
. i) and
A20:
0
= (
len f);
A21: f
= (
<*> the
carrier of
F_Complex ) by
A20;
then
A22: g
= (
<*> the
carrier of
F_Complex ) by
A19;
(
Product f)
=
1r by
A21,
COMPLFLD: 8,
GROUP_4: 8;
hence thesis by
A22,
COMPLEX1: 48,
RVSUM_1: 94;
end;
A23: for i be
Nat holds
P[i] from
NAT_1:sch 2(
A18,
A1);
let f be
FinSequence of
F_Complex , g be
FinSequence of
REAL ;
assume (
len f)
= (
len g) & for i be
Element of
NAT st i
in (
dom f) holds
|.(f
/. i).|
= (g
. i);
hence thesis by
A23;
end;
theorem ::
UNIROOTS:3
Th3: for s be non
empty
finite
Subset of
F_Complex , x be
Element of
F_Complex , r be
FinSequence of
REAL st (
len r)
= (
card s) & for i be
Element of
NAT , c be
Element of
F_Complex st i
in (
dom r) & c
= ((
canFS s)
. i) holds (r
. i)
=
|.(x
- c).| holds
|.(
eval ((
poly_with_roots ((s,1)
-bag )),x)).|
= (
Product r)
proof
set FC =
F_Complex ;
let s be non
empty
finite
Subset of FC, x be
Element of FC, r be
FinSequence of
REAL such that
A1: (
len r)
= (
card s) and
A2: for i be
Element of
NAT , c be
Element of FC st i
in (
dom r) & c
= ((
canFS s)
. i) holds (r
. i)
=
|.(x
- c).|;
defpred
P[
set,
set] means ex c be
Element of FC st c
= ((
canFS s)
. $1) & $2
= (
eval (
<%(
- c), (
1_
F_Complex )%>,x));
(
len (
canFS s))
= (
card s) by
FINSEQ_1: 93;
then
A3: (
dom (
canFS s))
= (
Seg (
card s)) by
FINSEQ_1:def 3;
A4: for k be
Nat st k
in (
Seg (
card s)) holds ex y be
Element of FC st
P[k, y]
proof
let k be
Nat such that
A5: k
in (
Seg (
card s));
set c = ((
canFS s)
. k);
c
in s by
A3,
A5,
FINSEQ_2: 11;
then
reconsider c as
Element of FC;
reconsider fi = (
eval (
<%(
- c), (
1_
F_Complex )%>,x)) as
Element of FC;
take fi, c;
thus thesis;
end;
consider f be
FinSequence of FC such that
A6: (
dom f)
= (
Seg (
card s)) and
A7: for k be
Nat st k
in (
Seg (
card s)) holds
P[k, (f
/. k)] from
RECDEF_1:sch 17(
A4);
A8:
now
let i be
Element of
NAT , c be
Element of FC such that
A9: i
in (
dom f) and
A10: c
= ((
canFS s)
. i);
ex c1 be
Element of FC st c1
= ((
canFS s)
. i) & (f
/. i)
= (
eval (
<%(
- c1), (
1_
F_Complex )%>,x)) by
A6,
A7,
A9;
hence (f
. i)
= (
eval (
<%(
- c), (
1_
F_Complex )%>,x)) by
A9,
A10,
PARTFUN1:def 6;
end;
A11: (
dom r)
= (
Seg (
card s)) by
A1,
FINSEQ_1:def 3;
A12: for i be
Element of
NAT st i
in (
dom f) holds
|.(f
/. i).|
= (r
. i)
proof
let i be
Element of
NAT ;
set c = ((
canFS s)
. i);
assume
A13: i
in (
dom f);
then c
in s by
A3,
A6,
FINSEQ_2: 11;
then
reconsider c = ((
canFS s)
. i) as
Element of FC;
A14: (f
. i)
= (
eval (
<%(
- c), (
1_
F_Complex )%>,x)) by
A8,
A13;
(f
/. i)
= (f
. i) by
A13,
PARTFUN1:def 6
.= ((
- c)
+ x) by
A14,
POLYNOM5: 47
.= (x
- c);
hence thesis by
A2,
A11,
A6,
A13;
end;
A15: (
len f)
= (
len r) by
A1,
A6,
FINSEQ_1:def 3;
then (
eval ((
poly_with_roots ((s,1)
-bag )),x))
= (
Product f) by
A1,
A8,
UPROOTS: 67;
hence thesis by
A15,
A12,
Th2;
end;
theorem ::
UNIROOTS:4
Th4: for f be
FinSequence of
F_Complex st for i be
Element of
NAT st i
in (
dom f) holds (f
. i) is
integer holds (
Sum f) is
integer
proof
set FC =
F_Complex ;
let f be
FinSequence of FC;
assume
A1: for i be
Element of
NAT st i
in (
dom f) holds (f
. i) is
integer;
defpred
P[
Nat] means for f be
FinSequence of FC st (
len f)
= $1 & for i be
Element of
NAT st i
in (
dom f) holds (f
. i) is
integer holds (
Sum f) is
integer;
A2: for n be
Nat st
P[n] holds
P[(n
+ 1)]
proof
let n be
Nat such that
A3:
P[n];
let f be
FinSequence of FC;
assume that
A4: (
len f)
= (n
+ 1) and
A5: for i be
Element of
NAT st i
in (
dom f) holds (f
. i) is
integer;
consider g be
FinSequence of FC, c be
Element of FC such that
A6: f
= (g
^
<*c*>) by
A4,
FINSEQ_2: 19;
A7:
now
let i be
Element of
NAT ;
A8: (
dom g)
c= (
dom f) by
A6,
FINSEQ_1: 26;
assume
A9: i
in (
dom g);
then (f
. i)
= (g
. i) by
A6,
FINSEQ_1:def 7;
hence (g
. i) is
integer by
A5,
A9,
A8;
end;
(
0
+ 1)
<= (
len f) by
A4,
NAT_1: 13;
then (
len f)
in (
dom f) by
FINSEQ_3: 25;
then
A10: (f
. (
len f)) is
integer by
A5;
reconsider Sgc = (
Sum g), cc = c as
Element of
COMPLEX by
COMPLFLD:def 1;
(
len f)
= ((
len g)
+ (
len
<*c*>)) by
A6,
FINSEQ_1: 22
.= ((
len g)
+ 1) by
FINSEQ_1: 40;
then
reconsider Sgi = Sgc, ci = cc as
Integer by
A3,
A4,
A6,
A7,
A10,
FINSEQ_1: 42;
(
Sum f)
= ((
Sum g)
+ (
Sum
<*c*>)) by
A6,
RLVECT_1: 41
.= (Sgi
+ ci) by
RLVECT_1: 44;
hence thesis;
end;
A11: (
len f) is
Element of
NAT ;
A12:
P[
0 ]
proof
let f be
FinSequence of FC;
assume (
len f)
=
0 ;
then f
= (
<*> the
carrier of
F_Complex );
hence thesis by
COMPLFLD: 7,
RLVECT_1: 43;
end;
for n be
Nat holds
P[n] from
NAT_1:sch 2(
A12,
A2);
hence thesis by
A1,
A11;
end;
theorem ::
UNIROOTS:5
for x,y be
Element of
F_Complex , r1,r2 be
Real st r1
= x & r2
= y holds (r1
* r2)
= (x
* y) & (r1
+ r2)
= (x
+ y);
theorem ::
UNIROOTS:6
Th6: for q be
Real st q
>
0 holds for r be
Element of
F_Complex st
|.r.|
= 1 & r
<>
[**1,
0 **] holds
|.(
[**q,
0 **]
- r).|
> (q
- 1)
proof
let q be
Real such that
A1: q
>
0 ;
let r be
Element of
F_Complex such that
A2:
|.r.|
= 1 and
A3: r
<>
[**1,
0 **];
set b = (
Im r);
set a = (
Re r);
A4: ((a
^2 )
+ (b
^2 ))
= (1
^2 ) by
A2,
COMPTRIG: 3;
A5:
now
assume
A6: a
= 1;
then b
=
0 by
A4;
hence contradiction by
A3,
A6,
COMPLEX1: 13;
end;
a
<= 1 by
A2,
COMPLEX1: 54;
then a
< 1 by
A5,
XXREAL_0: 1;
then (2
* q)
> ((2
* q)
* a) by
A1,
XREAL_1: 157;
then (
- ((2
* q)
* a))
> (
- (2
* q)) by
XREAL_1: 24;
then ((
- (2
* q))
+ (q
^2 ))
< ((
- ((2
* q)
* a))
+ (q
^2 )) by
XREAL_1: 8;
then
A7: (((q
^2 )
- ((2
* q)
* a))
+ 1)
> (((q
^2 )
- (2
* q))
+ 1) by
XREAL_1: 8;
reconsider qc =
[**q,
0 **] as
Element of
F_Complex ;
A8: (
Re
[**(q
- a), (
- b)**])
= (q
- a) & (
Im
[**(q
- a), (
- b)**])
= (
- b) by
COMPLEX1: 12;
(
|.(qc
- r).|
^2 )
= (
|.(
[**q,
0 **]
-
[**a, b**]).|
^2 ) by
COMPLEX1: 13
.= (
|.
[**(q
- a), (
0
- b)**].|
^2 ) by
POLYNOM5: 6
.= (((q
- a)
^2 )
+ (b
^2 )) by
A8,
COMPTRIG: 3
.= (((q
^2 )
- ((2
* q)
* a))
+ 1) by
A4;
then
|.(qc
- r).|
>=
0 & (
|.(qc
- r).|
^2 )
> ((q
- 1)
^2 ) by
A7,
COMPLEX1: 46;
hence thesis by
SQUARE_1: 48;
end;
theorem ::
UNIROOTS:7
Th7: for ps be non
empty
FinSequence of
REAL , x be
Real st x
>= 1 & for i be
Element of
NAT st i
in (
dom ps) holds (ps
. i)
> x holds (
Product ps)
> x
proof
let ps be non
empty
FinSequence of
REAL , x be
Real such that
A1: x
>= 1 and
A2: for j be
Element of
NAT st j
in (
dom ps) holds (ps
. j)
> x;
consider ps1 be
FinSequence, y be
object such that
A3: ps
= (ps1
^
<*y*>) by
FINSEQ_1: 46;
<*y*> is
FinSequence of
REAL by
A3,
FINSEQ_1: 36;
then (
rng
<*y*>)
c=
REAL by
FINSEQ_1:def 4;
then
{y}
c=
REAL by
FINSEQ_1: 38;
then
reconsider y2 = y as
Element of
REAL by
ZFMISC_1: 31;
defpred
P[
Nat] means for f be
FinSequence of
REAL st (
len f)
= $1 & for j be
Element of
NAT st j
in (
dom f) holds (f
. j)
> x holds ((
Product f)
* y2)
> x;
A4: for k be
Nat st
P[k] holds
P[(k
+ 1)]
proof
let k be
Nat such that
A5:
P[k];
let f be
FinSequence of
REAL such that
A6: (
len f)
= (k
+ 1) and
A7: for j be
Element of
NAT st j
in (
dom f) holds (f
. j)
> x;
f
<>
{} by
A6;
then
consider v be
FinSequence, w be
object such that
A8: f
= (v
^
<*w*>) by
FINSEQ_1: 46;
reconsider f1 = v, f2 =
<*w*> as
FinSequence of
REAL by
A8,
FINSEQ_1: 36;
(
rng f2)
c=
REAL ;
then
{w}
c=
REAL by
FINSEQ_1: 38;
then
reconsider m = w as
Element of
REAL by
ZFMISC_1: 31;
(k
+ 1)
= ((
len f1)
+ (
len f2)) by
A6,
A8,
FINSEQ_1: 22;
then
A9: (k
+ 1)
= ((
len f1)
+ 1) by
FINSEQ_1: 39;
then
A10: (f
. (
len f))
= m by
A6,
A8,
FINSEQ_1: 42;
(
len f)
in (
Seg (
len f)) by
A6,
FINSEQ_1: 3;
then
A11: (
len f)
in (
dom f) by
FINSEQ_1:def 3;
then m
> 1 by
A1,
A7,
A10,
XXREAL_0: 2;
then
A12: (x
* m)
> x by
A1,
XREAL_1: 155;
A13: for j be
Element of
NAT st j
in (
dom f1) holds (f1
. j)
> x
proof
A14: (
dom f1)
c= (
dom f) by
A8,
FINSEQ_1: 26;
let j be
Element of
NAT such that
A15: j
in (
dom f1);
(f
. j)
= (f1
. j) by
A8,
A15,
FINSEQ_1:def 7;
hence thesis by
A7,
A15,
A14;
end;
(
Product f)
= ((
Product f1)
* m) by
A8,
RVSUM_1: 96;
then
A16: ((
Product f)
* y2)
= (((
Product f1)
* y2)
* m);
m
> x by
A7,
A10,
A11;
then ((
Product f)
* y2)
> (x
* m) by
A1,
A5,
A9,
A13,
A16,
XREAL_1: 68;
hence thesis by
A12,
XXREAL_0: 2;
end;
(
len ps)
in (
Seg (
len ps)) by
FINSEQ_1: 3;
then
A17: (
len ps)
in (
dom ps) by
FINSEQ_1:def 3;
reconsider q = ps1 as
FinSequence of
REAL by
A3,
FINSEQ_1: 36;
A18: for j be
Element of
NAT st j
in (
dom q) holds (q
. j)
> x
proof
A19: (
dom q)
c= (
dom ps) by
A3,
FINSEQ_1: 26;
let j be
Element of
NAT such that
A20: j
in (
dom q);
(ps
. j)
= (q
. j) by
A3,
A20,
FINSEQ_1:def 7;
hence thesis by
A2,
A20,
A19;
end;
A21: (
len q)
= (
len q);
(
len ps)
= ((
len ps1)
+ (
len
<*y*>)) by
A3,
FINSEQ_1: 22;
then (
len ps)
= ((
len ps1)
+ 1) by
FINSEQ_1: 39;
then
A22: (ps
. (
len ps))
= y2 by
A3,
FINSEQ_1: 42;
A23:
P[
0 ]
proof
let f be
FinSequence of
REAL such that
A24: (
len f)
=
0 and for j be
Element of
NAT st j
in (
dom f) holds (f
. j)
> x;
f
= (
<*>
REAL ) by
A24;
then (
Product f)
= 1 by
RVSUM_1: 94;
hence thesis by
A2,
A22,
A17;
end;
for k be
Nat holds
P[k] from
NAT_1:sch 2(
A23,
A4);
then ((
Product q)
* y2)
> x by
A18,
A21;
hence thesis by
A3,
RVSUM_1: 96;
end;
theorem ::
UNIROOTS:8
Th8: for n be
Element of
NAT holds (
1_
F_Complex )
= ((
power
F_Complex )
. ((
1_
F_Complex ),n))
proof
let n be
Element of
NAT ;
(
1_
F_Complex )
=
[**1,
0 **] by
COMPLFLD: 8;
then ((
power
F_Complex )
. ((
1_
F_Complex ),n))
=
[**(1
to_power n),
0 **] by
HAHNBAN1: 29
.= (
1_
F_Complex ) by
COMPLFLD: 8;
hence thesis;
end;
theorem ::
UNIROOTS:9
Th9: for n,i be
Nat holds (
cos (((2
*
PI )
* i)
/ n))
= (
cos (((2
*
PI )
* (i
mod n))
/ n)) & (
sin (((2
*
PI )
* i)
/ n))
= (
sin (((2
*
PI )
* (i
mod n))
/ n))
proof
let n,i be
Nat;
set j = (i
div n);
per cases ;
suppose
A1: n
<>
0 ;
then i
= ((n
* j)
+ (i
mod n)) by
NAT_D: 2;
then
A2: (((2
*
PI )
* i)
/ n)
= ((((2
*
PI )
* (n
* j))
+ ((2
*
PI )
* (i
mod n)))
/ n)
.= ((((2
*
PI )
* (n
* j))
/ (n
* 1))
+ (((2
*
PI )
* (i
mod n))
/ n)) by
XCMPLX_1: 62
.= (((((2
*
PI )
/ n)
* (n
* j))
/ 1)
+ (((2
*
PI )
* (i
mod n))
/ n)) by
XCMPLX_1: 83
.= ((((2
*
PI )
* (1
/ n))
* (n
* j))
+ (((2
*
PI )
* (i
mod n))
/ n)) by
XCMPLX_1: 99
.= (((2
*
PI )
* ((1
/ n)
* (j
* n)))
+ (((2
*
PI )
* (i
mod n))
/ n))
.= (((2
*
PI )
* (j
* 1))
+ (((2
*
PI )
* (i
mod n))
/ n)) by
A1,
XCMPLX_1: 90
.= (((2
*
PI )
* j)
+ (((2
*
PI )
* (i
mod n))
/ n));
then
A3: (
sin (((2
*
PI )
* i)
/ n))
= (((
sin (((2
*
PI )
* j)
+
0 ))
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
+ ((
cos (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS: 75
.= (((
sin
. (((2
*
PI )
* j)
+
0 ))
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
+ ((
cos (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS:def 17
.= (((
sin
. (((2
*
PI )
* j)
+
0 ))
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
+ ((
cos
. (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS:def 19
.= (((
sin
.
0 )
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
+ ((
cos
. (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS2: 10
.= (((
sin
.
0 )
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
+ ((
cos
.
0 )
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS2: 11
.= (
sin (((2
*
PI )
* (i
mod n))
/ n)) by
SIN_COS: 30;
(
cos (((2
*
PI )
* i)
/ n))
= (((
cos (((2
*
PI )
* j)
+
0 ))
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
- ((
sin (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
A2,
SIN_COS: 75
.= (((
cos
. (((2
*
PI )
* j)
+
0 ))
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
- ((
sin (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS:def 19
.= (((
cos
. (((2
*
PI )
* j)
+
0 ))
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
- ((
sin
. (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS:def 17
.= (((
cos
.
0 )
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
- ((
sin
. (((2
*
PI )
* j)
+
0 ))
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS2: 11
.= (((
cos
.
0 )
* (
cos (((2
*
PI )
* (i
mod n))
/ n)))
- ((
sin
.
0 )
* (
sin (((2
*
PI )
* (i
mod n))
/ n)))) by
SIN_COS2: 10
.= (
cos (((2
*
PI )
* (i
mod n))
/ n)) by
SIN_COS: 30;
hence thesis by
A3;
end;
suppose
A4: n
=
0 ;
then (((2
*
PI )
* i)
/ n)
=
0 by
XCMPLX_1: 49;
hence thesis by
A4,
XCMPLX_1: 49;
end;
end;
theorem ::
UNIROOTS:10
Th10: for n,i be
Nat holds
[**(
cos (((2
*
PI )
* i)
/ n)), (
sin (((2
*
PI )
* i)
/ n))**]
=
[**(
cos (((2
*
PI )
* (i
mod n))
/ n)), (
sin (((2
*
PI )
* (i
mod n))
/ n))**]
proof
let n,i be
Nat;
[**(
cos (((2
*
PI )
* i)
/ n)), (
sin (((2
*
PI )
* i)
/ n))**]
=
[**(
cos (((2
*
PI )
* (i
mod n))
/ n)), (
sin (((2
*
PI )
* i)
/ n))**] by
Th9
.=
[**(
cos (((2
*
PI )
* (i
mod n))
/ n)), (
sin (((2
*
PI )
* (i
mod n))
/ n))**] by
Th9;
hence thesis;
end;
theorem ::
UNIROOTS:11
Th11: for n,i,j be
Element of
NAT holds (
[**(
cos (((2
*
PI )
* i)
/ n)), (
sin (((2
*
PI )
* i)
/ n))**]
*
[**(
cos (((2
*
PI )
* j)
/ n)), (
sin (((2
*
PI )
* j)
/ n))**])
=
[**(
cos (((2
*
PI )
* ((i
+ j)
mod n))
/ n)), (
sin (((2
*
PI )
* ((i
+ j)
mod n))
/ n))**]
proof
let n,i,j be
Element of
NAT ;
((((2
*
PI )
* i)
/ n)
+ (((2
*
PI )
* j)
/ n))
= ((((2
*
PI )
* i)
+ ((2
*
PI )
* j))
/ n) by
XCMPLX_1: 62
.= (((2
*
PI )
* (i
+ j))
/ n);
then (((
cos (((2
*
PI )
* i)
/ n))
* (
cos (((2
*
PI )
* j)
/ n)))
- ((
sin (((2
*
PI )
* i)
/ n))
* (
sin (((2
*
PI )
* j)
/ n))))
= (
cos (((2
*
PI )
* (i
+ j))
/ n)) & (((
cos (((2
*
PI )
* i)
/ n))
* (
sin (((2
*
PI )
* j)
/ n)))
+ ((
cos (((2
*
PI )
* j)
/ n))
* (
sin (((2
*
PI )
* i)
/ n))))
= (
sin (((2
*
PI )
* (i
+ j))
/ n)) by
SIN_COS: 75;
then (
[**(
cos (((2
*
PI )
* i)
/ n)), (
sin (((2
*
PI )
* i)
/ n))**]
*
[**(
cos (((2
*
PI )
* j)
/ n)), (
sin (((2
*
PI )
* j)
/ n))**])
=
[**(
cos (((2
*
PI )
* (i
+ j))
/ n)), (
sin (((2
*
PI )
* (i
+ j))
/ n))**]
.=
[**(
cos (((2
*
PI )
* ((i
+ j)
mod n))
/ n)), (
sin (((2
*
PI )
* ((i
+ j)
mod n))
/ n))**] by
Th10;
hence thesis;
end;
theorem ::
UNIROOTS:12
Th12: for L be
unital
associative non
empty
multMagma, x be
Element of L, n,m be
Nat holds ((
power L)
. (x,(n
* m)))
= ((
power L)
. (((
power L)
. (x,n)),m))
proof
let L be
unital
associative non
empty
multMagma, x be
Element of L, n be
Nat;
defpred
P[
Nat] means ((
power L)
. (x,(n
* $1)))
= ((
power L)
. (((
power L)
. (x,n)),$1));
set pL = (
power L);
reconsider nn = n as
Element of
NAT by
ORDINAL1:def 12;
A1: for m be
Nat st
P[m] holds
P[(m
+ 1)]
proof
let m be
Nat such that
A2:
P[m];
reconsider nm = (n
* m), mm = m as
Element of
NAT by
ORDINAL1:def 12;
(pL
. (x,(n
* (m
+ 1))))
= (pL
. (x,((n
* m)
+ (n
* 1))))
.= ((pL
. (x,nm))
* (pL
. (x,nn))) by
POLYNOM2: 1
.= (pL
. ((pL
. (x,nn)),(mm
+ 1))) by
A2,
GROUP_1:def 7;
hence thesis;
end;
(pL
. (x,(n
*
0 qua
Nat)))
= (
1_ L) by
GROUP_1:def 7
.= (pL
. ((pL
. (x,nn)),
0 )) by
GROUP_1:def 7;
then
A3:
P[
0 ];
thus for m be
Nat holds
P[m] from
NAT_1:sch 2(
A3,
A1);
end;
theorem ::
UNIROOTS:13
Th13: for n be
Element of
NAT , x be
Element of
F_Complex st x is
Integer holds ((
power
F_Complex )
. (x,n)) is
Integer
proof
let n be
Element of
NAT , x be
Element of
F_Complex such that
A1: x is
Integer;
defpred
P[
Nat] means ((
power
F_Complex )
. (x,$1)) is
Integer;
A2:
now
reconsider i1 = x as
Integer by
A1;
let k be
Nat;
reconsider kk = k as
Element of
NAT by
ORDINAL1:def 12;
assume
P[k];
then
reconsider i2 = ((
power
F_Complex )
. (x,k)) as
Integer;
(((
power
F_Complex )
. (x,kk))
* x)
= (i1
* i2);
hence
P[(k
+ 1)] by
GROUP_1:def 7;
end;
A3:
P[
0 ] by
COMPLFLD: 8,
GROUP_1:def 7;
for k be
Nat holds
P[k] from
NAT_1:sch 2(
A3,
A2);
hence thesis;
end;
theorem ::
UNIROOTS:14
Th14: for F be
FinSequence of
F_Complex st for i be
Element of
NAT st i
in (
dom F) holds (F
. i) is
Integer holds (
Sum F) is
Integer
proof
defpred
P[
Nat] means for F be
FinSequence of
F_Complex st (
len F)
= $1 & for i be
Element of
NAT st i
in (
dom F) holds (F
. i) is
Integer holds (
Sum F) is
Integer;
let G be
FinSequence of
F_Complex such that
A1: for i be
Element of
NAT st i
in (
dom G) holds (G
. i) is
Integer;
A2: for k be
Nat st
P[k] holds
P[(k
+ 1)]
proof
let k be
Nat such that
A3:
P[k];
let F be
FinSequence of
F_Complex such that
A4: (
len F)
= (k
+ 1) and
A5: for i be
Element of
NAT st i
in (
dom F) holds (F
. i) is
Integer;
F
<>
{} by
A4;
then
consider G be
FinSequence, x be
object such that
A6: F
= (G
^
<*x*>) by
FINSEQ_1: 46;
(
len F)
in (
Seg (
len F)) by
A4,
FINSEQ_1: 3;
then
A7: (
len F)
in (
dom F) by
FINSEQ_1:def 3;
reconsider f2 =
<*x*> as
FinSequence of
F_Complex by
A6,
FINSEQ_1: 36;
reconsider f1 = G as
FinSequence of
F_Complex by
A6,
FINSEQ_1: 36;
(
rng f2)
c= the
carrier of
F_Complex by
FINSEQ_1:def 4;
then
{x}
c= the
carrier of
F_Complex by
FINSEQ_1: 38;
then
reconsider m = x as
Element of
F_Complex by
ZFMISC_1: 31;
(k
+ 1)
= ((
len f1)
+ (
len f2)) by
A4,
A6,
FINSEQ_1: 22;
then
A8: (k
+ 1)
= ((
len f1)
+ 1) by
FINSEQ_1: 39;
then (F
. (
len F))
= m by
A4,
A6,
FINSEQ_1: 42;
then
reconsider i2 = m as
Integer by
A5,
A7;
for j be
Element of
NAT st j
in (
dom f1) holds (f1
. j) is
Integer
proof
A9: (
dom f1)
c= (
dom F) by
A6,
FINSEQ_1: 26;
let j be
Element of
NAT such that
A10: j
in (
dom f1);
(F
. j)
= (f1
. j) by
A6,
A10,
FINSEQ_1:def 7;
hence thesis by
A5,
A10,
A9;
end;
then
reconsider i1 = (
Sum f1) as
Integer by
A3,
A8;
(
Sum F)
= ((
Sum f1)
+ m) by
A6,
FVSUM_1: 71;
then (
Sum F)
= (i1
+ i2);
hence thesis;
end;
A11:
P[
0 ]
proof
let F be
FinSequence of
F_Complex such that
A12: (
len F)
=
0 and for i be
Element of
NAT st i
in (
dom F) holds (F
. i) is
Integer;
(
0
-tuples_on the
carrier of
F_Complex )
=
{
{} } & F
=
{} by
A12,
COMPUT_1: 5;
then F is
Element of (
0
-tuples_on the
carrier of
F_Complex ) by
TARSKI:def 1;
hence thesis by
COMPLFLD: 7,
FVSUM_1: 74;
end;
A13: for k be
Nat holds
P[k] from
NAT_1:sch 2(
A11,
A2);
(
len G)
= (
len G);
hence thesis by
A1,
A13;
end;
Lm3:
Z_3 is
finite by
MOD_2:def 20;
registration
cluster
finite for
Field;
existence by
Lm3,
MOD_2: 27;
cluster
finite for
Skew-Field;
existence by
Lm3,
MOD_2: 27;
end
begin
definition
let R be
Skew-Field;
::
UNIROOTS:def1
func
MultGroup R ->
strict
Group means
:
Def1: the
carrier of it
= (
NonZero R) & the
multF of it
= (the
multF of R
|| the
carrier of it );
existence
proof
set ccs = (
NonZero R);
set cR = the
carrier of R;
reconsider ccs as non
empty
set;
set mcs = (the
multF of R
|| ccs);
[:ccs, ccs:]
c=
[:cR, cR:]
proof
let x be
object;
assume x
in
[:ccs, ccs:];
then ex a,b be
object st a
in ccs & b
in ccs & x
=
[a, b] by
ZFMISC_1:def 2;
hence thesis by
ZFMISC_1:def 2;
end;
then
reconsider mcs as
Function of
[:ccs, ccs:], cR by
FUNCT_2: 32;
(
rng mcs)
c= ccs
proof
let y be
object;
assume y
in (
rng mcs);
then
consider x be
object such that
A1: x
in (
dom mcs) and
A2: y
= (mcs
. x) by
FUNCT_1:def 3;
A3: (
dom mcs)
=
[:ccs, ccs:] by
FUNCT_2:def 1;
then
consider a,b be
object such that
A4: a
in ccs and
A5: b
in ccs and
A6: x
=
[a, b] by
A1,
ZFMISC_1:def 2;
reconsider a, b as
Element of cR by
A4,
A5;
not b
in
{(
0. R)} by
A5,
XBOOLE_0:def 5;
then
A7: b
<> (
0. R) by
TARSKI:def 1;
not a
in
{(
0. R)} by
A4,
XBOOLE_0:def 5;
then a
<> (
0. R) by
TARSKI:def 1;
then (a
* b)
<> (
0. R) by
A7,
VECTSP_2: 12;
then
A8: not (a
* b)
in
{(
0. R)} by
TARSKI:def 1;
(mcs
. x)
= (a
* b) by
A1,
A3,
A6,
FUNCT_1: 49;
hence thesis by
A2,
A8,
XBOOLE_0:def 5;
end;
then
reconsider mcs as
BinOp of ccs by
FUNCT_2: 6;
reconsider cs =
multMagma (# ccs, mcs #) as non
empty
multMagma;
set ccs1 = the
carrier of cs;
A9:
now
let a,b be
Element of cR, c,d be
Element of ccs1 such that
A10: a
= c & b
= d;
[c, d]
in
[:ccs, ccs:] by
ZFMISC_1:def 2;
hence (a
* b)
= (c
* d) by
A10,
FUNCT_1: 49;
end;
A11: not (
1_ R)
in
{(
0. R)} by
TARSKI:def 1;
A12: cs is
Group-like
proof
reconsider e = (
1_ R) as
Element of ccs1 by
A11,
XBOOLE_0:def 5;
take e;
let h be
Element of ccs1;
h
in ccs;
then
reconsider h9 = h as
Scalar of R;
thus (h
* e)
= (h9
* (
1_ R)) by
A9
.= h;
thus (e
* h)
= ((
1_ R)
* h9) by
A9
.= h;
not h
in
{(
0. R)} by
XBOOLE_0:def 5;
then
A13: h
<> (
0. R) by
TARSKI:def 1;
then (h9
" )
<> (
0. R) by
VECTSP_2: 13;
then not (h9
" )
in
{(
0. R)} by
TARSKI:def 1;
then
reconsider g = (h9
" ) as
Element of ccs1 by
XBOOLE_0:def 5;
take g;
thus (h
* g)
= (h9
* (h9
" )) by
A9
.= e by
A13,
VECTSP_2: 9;
thus (g
* h)
= ((h9
" )
* h9) by
A9
.= e by
A13,
VECTSP_2: 9;
end;
cs is
associative
proof
let x,y,z be
Element of ccs1;
A14: z
in ccs1;
x
in ccs1 & y
in ccs1;
then
reconsider x9 = x, y9 = y, z9 = z as
Element of cR by
A14;
A15: (y9
* z9)
= (y
* z) by
A9;
(x9
* y9)
= (x
* y) by
A9;
hence ((x
* y)
* z)
= ((x9
* y9)
* z9) by
A9
.= (x9
* (y9
* z9)) by
GROUP_1:def 3
.= (x
* (y
* z)) by
A9,
A15;
end;
hence thesis by
A12;
end;
uniqueness ;
end
theorem ::
UNIROOTS:15
for R be
Skew-Field holds the
carrier of R
= (the
carrier of (
MultGroup R)
\/
{(
0. R)})
proof
let R be
Skew-Field;
(
NonZero R)
= the
carrier of (
MultGroup R) by
Def1;
hence thesis by
XBOOLE_1: 45;
end;
theorem ::
UNIROOTS:16
Th16: for R be
Skew-Field, a,b be
Element of R, c,d be
Element of (
MultGroup R) st a
= c & b
= d holds (c
* d)
= (a
* b)
proof
let R be
Skew-Field, a,b be
Element of R, c,d be
Element of (
MultGroup R) such that
A1: a
= c & b
= d;
set cMGR = the
carrier of (
MultGroup R);
A2:
[c, d]
in
[:cMGR, cMGR:] by
ZFMISC_1:def 2;
thus (c
* d)
= ((the
multF of R
|| cMGR)
. (c,d)) by
Def1
.= (a
* b) by
A1,
A2,
FUNCT_1: 49;
end;
theorem ::
UNIROOTS:17
Th17: for R be
Skew-Field holds (
1_ R)
= (
1_ (
MultGroup R))
proof
let R be
Skew-Field;
A1: the
carrier of (
MultGroup R)
= (
NonZero R) by
Def1;
not (
1_ R)
in
{(
0. R)} by
TARSKI:def 1;
then
reconsider uR = (
1_ R) as
Element of (
MultGroup R) by
A1,
XBOOLE_0:def 5;
now
let h be
Element of (
MultGroup R);
reconsider g = h as
Element of R by
A1,
XBOOLE_0:def 5;
(g
* (
1_ R))
= g;
hence (h
* uR)
= h by
Th16;
((
1_ R)
* g)
= g;
hence (uR
* h)
= h by
Th16;
end;
hence thesis by
GROUP_1:def 4;
end;
registration
let R be
finite
Skew-Field;
cluster (
MultGroup R) ->
finite;
correctness
proof
the
carrier of (
MultGroup R)
= (
NonZero R) by
Def1;
hence thesis;
end;
end
theorem ::
UNIROOTS:18
for R be
finite
Skew-Field holds (
card (
MultGroup R))
= ((
card R)
- 1)
proof
let R be
finite
Skew-Field;
set G = (
MultGroup R);
the
carrier of G
= (
NonZero R) by
Def1;
then (
card the
carrier of G)
= ((
card R)
- (
card
{(
0. R)})) by
CARD_2: 44;
hence thesis by
CARD_1: 30;
end;
theorem ::
UNIROOTS:19
Th19: for R be
Skew-Field, s be
set st s
in the
carrier of (
MultGroup R) holds s
in the
carrier of R
proof
let R be
Skew-Field, s be
set;
assume s
in the
carrier of (
MultGroup R);
then s
in (
NonZero R) by
Def1;
hence thesis;
end;
theorem ::
UNIROOTS:20
for R be
Skew-Field holds the
carrier of (
MultGroup R)
c= the
carrier of R
proof
let R be
Skew-Field, s be
object;
assume s
in the
carrier of (
MultGroup R);
then s
in (
NonZero R) by
Def1;
hence thesis;
end;
begin
definition
let n be non
zero
Element of
NAT ;
::
UNIROOTS:def2
func n
-roots_of_1 ->
Subset of
F_Complex equals { x where x be
Element of
F_Complex : x is
CRoot of n, (
1_
F_Complex ) };
coherence
proof
set H = { x where x be
Element of
F_Complex : x is
CRoot of n, (
1_
F_Complex ) };
for x be
object st x
in H holds x
in the
carrier of
F_Complex
proof
let x be
object;
assume x
in H;
then ex y be
Element of
F_Complex st y
= x & y is
CRoot of n, (
1_
F_Complex );
hence thesis;
end;
hence thesis by
TARSKI:def 3;
end;
end
theorem ::
UNIROOTS:21
Th21: for n be non
zero
Element of
NAT , x be
Element of
F_Complex holds x
in (n
-roots_of_1 ) iff x is
CRoot of n, (
1_
F_Complex )
proof
let n be non
zero
Element of
NAT , x be
Element of
F_Complex ;
hereby
assume x
in (n
-roots_of_1 );
then ex y be
Element of
F_Complex st y
= x & y is
CRoot of n, (
1_
F_Complex );
hence x is
CRoot of n, (
1_
F_Complex );
end;
thus thesis;
end;
theorem ::
UNIROOTS:22
Th22: for n be non
zero
Element of
NAT holds (
1_
F_Complex )
in (n
-roots_of_1 )
proof
let n be non
zero
Element of
NAT ;
(
1_
F_Complex )
= ((
power
F_Complex )
. ((
1_
F_Complex ),n)) by
Th8;
then (
1_
F_Complex ) is
CRoot of n, (
1_
F_Complex ) by
COMPLFLD:def 2;
hence thesis;
end;
theorem ::
UNIROOTS:23
Th23: for n be non
zero
Element of
NAT , x be
Element of
F_Complex st x
in (n
-roots_of_1 ) holds
|.x.|
= 1
proof
let n be non
zero
Element of
NAT , x be
Element of
F_Complex such that
A1: x
in (n
-roots_of_1 );
A2:
now
assume x
= (
0.
F_Complex );
then ((
power
F_Complex )
. (x,n))
<> (
1_
F_Complex ) by
VECTSP_1: 36;
then not x is
CRoot of n, (
1_
F_Complex ) by
COMPLFLD:def 2;
hence contradiction by
A1,
Th21;
end;
then
A3:
|.x.|
>
0 by
COMPLFLD: 59;
x is
CRoot of n, (
1_
F_Complex ) by
A1,
Th21;
then (
power (x,n))
= (
1_
F_Complex ) by
COMPLFLD:def 2;
then
A4: 1
= (
|.x.|
to_power n) by
A2,
COMPLFLD: 60,
POLYNOM5: 7;
assume
A5:
|.x.|
<> 1;
per cases by
A5,
XXREAL_0: 1;
suppose
A6:
|.x.|
< 1;
reconsider n9 = n as
Rational;
(
|.x.|
#Q n9)
< 1 by
A3,
A6,
PREPOWER: 65;
hence contradiction by
A4,
A3,
PREPOWER: 49;
end;
suppose
|.x.|
> 1;
hence contradiction by
A4,
POWER: 35;
end;
end;
theorem ::
UNIROOTS:24
Th24: for n be non
zero
Element of
NAT holds for x be
Element of
F_Complex holds x
in (n
-roots_of_1 ) iff ex k be
Element of
NAT st x
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**]
proof
let n be non
zero
Element of
NAT , x be
Element of
F_Complex ;
hereby
assume
A1: x
in (n
-roots_of_1 );
A2:
now
assume x
= (
0.
F_Complex );
then ((
power
F_Complex )
. (x,n))
<> (
1_
F_Complex ) by
VECTSP_1: 36;
then not x is
CRoot of n, (
1_
F_Complex ) by
COMPLFLD:def 2;
hence contradiction by
A1,
Th21;
end;
then
0
<= (
Arg x) & (
Arg x)
< (2
*
PI ) by
COMPLFLD: 7,
COMPTRIG:def 1;
then
A3: (
0
+ (
- 1))
<= (((n
* (
Arg x))
/ (2
*
PI ))
+ (
- 1)) by
XREAL_1: 7;
x is
CRoot of n, (
1_
F_Complex ) by
A1,
Th21;
then (
power (x,n))
= (
1_
F_Complex ) by
COMPLFLD:def 2;
then
A4: 1
= (
|.x.|
to_power n) by
A2,
COMPLFLD: 60,
POLYNOM5: 7;
A5:
now
A6:
|.x.|
>
0 by
A2,
COMPLFLD: 59;
assume
A7:
|.x.|
<> 1;
per cases by
A7,
XXREAL_0: 1;
suppose
A8:
|.x.|
< 1;
reconsider n9 = n as
Rational;
(
|.x.|
#Q n9)
< 1 by
A6,
A8,
PREPOWER: 65;
hence contradiction by
A4,
A6,
PREPOWER: 49;
end;
suppose
|.x.|
> 1;
hence contradiction by
A4,
POWER: 35;
end;
end;
set m2 =
[\((n
* (
Arg x))
/ (2
*
PI ))/];
reconsider z = x as
Element of
COMPLEX by
XCMPLX_0:def 2;
consider r be
Real such that
A9: r
= (((2
*
PI )
* (
-
[\((n
* (
Arg x))
/ (2
*
PI ))/]))
+ (n
* (
Arg x))) and
A10:
0
<= r & r
< (2
*
PI ) by
COMPLEX2: 1,
COMPTRIG: 5;
(((n
* (
Arg x))
/ (2
*
PI ))
- 1)
< m2 by
INT_1:def 6;
then not m2
<= (
- 1) by
A3,
XXREAL_0: 2;
then ((
- 1)
+ 1)
<= m2 by
INT_1: 7;
then
reconsider m =
[\((n
* (
Arg x))
/ (2
*
PI ))/] as
Element of
NAT by
INT_1: 3;
A11: (
cos (n
* (
Arg x)))
= (
cos
. (((2
*
PI )
* m)
+ r)) by
A9,
SIN_COS:def 19
.= (
cos
. r) by
SIN_COS2: 11
.= (
cos r) by
SIN_COS:def 19;
A12: (
sin (n
* (
Arg x)))
= (
sin
. (((2
*
PI )
* m)
+ r)) by
A9,
SIN_COS:def 17
.= (
sin
. r) by
SIN_COS2: 10
.= (
sin r) by
SIN_COS:def 17;
x is
CRoot of n, (
1_
F_Complex ) by
A1,
Th21;
then ((
power
F_Complex )
. (x,n))
=
[**1,
0 **] by
COMPLFLD: 8,
COMPLFLD:def 2;
then
A13: (z
|^ n)
= (((
|.z.|
|^ n)
* (
cos (n
* (
Arg z))))
+ (((
|.z.|
|^ n)
* (
sin (n
* (
Arg z))))
*
<i> )) & (z
|^ n)
=
[**1,
0 **] by
COMPLFLD: 74,
COMPTRIG: 54;
then (
sin (n
* (
Arg x)))
=
0 by
A4,
COMPLEX1: 77;
then r
=
0 or r
=
PI by
A10,
A12,
COMPTRIG: 17;
then ((n
* (
Arg x))
/ (n
* 1))
= (((2
*
PI )
* m)
/ n) by
A4,
A13,
A9,
A11,
COMPLEX1: 77,
SIN_COS: 77;
then (((n
/ n)
* (
Arg x))
/ 1)
= (((2
*
PI )
* m)
/ n) by
XCMPLX_1: 83;
then
A14: ((
Arg x)
/ 1)
= (((2
*
PI )
* m)
/ n) by
XCMPLX_1: 88;
x
=
[**(
|.x.|
* (
cos (
Arg x))), (
|.x.|
* (
sin (
Arg x)))**] by
A2,
COMPLFLD: 7,
COMPTRIG:def 1;
hence ex k be
Element of
NAT st x
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] by
A5,
A14;
end;
now
reconsider z = (
1_
F_Complex ) as
Element of
COMPLEX by
XCMPLX_0:def 2;
set 1F = (
Arg (
1_
F_Complex ));
given k be
Element of
NAT such that
A15: x
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**];
(
0
+ 1)
<= n by
NAT_1: 13;
then (n
-root 1)
= 1 by
POWER: 6;
then x
= (((n
-root
|.z.|)
* (
cos ((1F
+ ((2
*
PI )
* k))
/ n)))
+ (((n
-root
|.z.|)
* (
sin ((1F
+ ((2
*
PI )
* k))
/ n)))
*
<i> )) by
A15,
COMPLFLD: 8,
COMPLFLD: 60,
COMPTRIG: 39;
then x is
CRoot of n, z by
COMPTRIG: 57;
hence x
in (n
-roots_of_1 );
end;
hence thesis;
end;
theorem ::
UNIROOTS:25
Th25: for n be non
zero
Element of
NAT holds for x,y be
Element of
COMPLEX st x
in (n
-roots_of_1 ) & y
in (n
-roots_of_1 ) holds (x
* y)
in (n
-roots_of_1 )
proof
let n be non
zero
Element of
NAT ;
let x,y be
Element of
COMPLEX such that
A1: x
in (n
-roots_of_1 ) and
A2: y
in (n
-roots_of_1 );
reconsider a = x as
Element of
F_Complex by
COMPLFLD:def 1;
consider i be
Element of
NAT such that
A3: a
=
[**(
cos (((2
*
PI )
* i)
/ n)), (
sin (((2
*
PI )
* i)
/ n))**] by
A1,
Th24;
reconsider b = y as
Element of
F_Complex by
COMPLFLD:def 1;
consider j be
Element of
NAT such that
A4: b
=
[**(
cos (((2
*
PI )
* j)
/ n)), (
sin (((2
*
PI )
* j)
/ n))**] by
A2,
Th24;
(a
* b)
=
[**(
cos (((2
*
PI )
* ((i
+ j)
mod n))
/ n)), (
sin (((2
*
PI )
* ((i
+ j)
mod n))
/ n))**] by
A3,
A4,
Th11;
hence thesis by
Th24;
end;
theorem ::
UNIROOTS:26
Th26: for n be non
zero
Element of
NAT holds (n
-roots_of_1 )
= {
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] where k be
Element of
NAT : k
< n }
proof
let n be non
zero
Element of
NAT ;
set X = {
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] where k be
Element of
NAT : k
< n };
now
let x be
object;
hereby
assume
A1: x
in (n
-roots_of_1 );
then
reconsider a = x as
Element of
F_Complex ;
consider k be
Element of
NAT such that
A2: a
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] by
A1,
Th24;
A3: (k
mod n)
< n by
NAT_D: 1;
a
=
[**(
cos (((2
*
PI )
* (k
mod n))
/ n)), (
sin (((2
*
PI )
* (k
mod n))
/ n))**] by
A2,
Th10;
hence x
in X by
A3;
end;
assume x
in X;
then ex k be
Element of
NAT st x
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] & k
< n;
hence x
in (n
-roots_of_1 ) by
Th24;
end;
hence thesis by
TARSKI: 2;
end;
theorem ::
UNIROOTS:27
Th27: for n be non
zero
Element of
NAT holds (
card (n
-roots_of_1 ))
= n
proof
let n be non
zero
Element of
NAT ;
set X = {
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] where k be
Element of
NAT : k
< n };
defpred
P[
object,
object] means ex j be
Element of
NAT st j
= $1 & $2
=
[**(
cos (((2
*
PI )
* (j
-' 1))
/ n)), (
sin (((2
*
PI )
* (j
-' 1))
/ n))**];
A1: X
= (n
-roots_of_1 ) by
Th26;
[**(
cos (((2
*
PI )
*
0 qua
Nat)
/ n)), (
sin (((2
*
PI )
*
0 qua
Nat)
/ n))**]
in X;
then
reconsider Y = X as non
empty
set;
A2: for x be
object st x
in (
Seg n) holds ex y be
object st y
in Y &
P[x, y]
proof
let x be
object such that
A3: x
in (
Seg n);
reconsider a = x as
Element of
NAT by
A3;
a
<= n by
A3,
FINSEQ_1: 1;
then a
< (n
+ 1) by
NAT_1: 13;
then
A4: (a
- 1)
< ((n
+ 1)
- 1) by
XREAL_1: 14;
consider b be
Element of
NAT such that
A5: b
= (a
-' 1);
1
<= a by
A3,
FINSEQ_1: 1;
then (a
-' 1)
< n by
A4,
XREAL_1: 233;
then
[**(
cos (((2
*
PI )
* b)
/ n)), (
sin (((2
*
PI )
* b)
/ n))**]
in X by
A5;
hence thesis by
A5;
end;
consider F be
Function of (
Seg n), Y such that
A6: for x be
object st x
in (
Seg n) holds
P[x, (F
. x)] from
FUNCT_2:sch 1(
A2);
for c be
object st c
in X holds ex x be
object st x
in (
Seg n) & c
= (F
. x)
proof
let c be
object;
assume c
in X;
then
consider k be
Element of
NAT such that
A7: c
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] and
A8: k
< n;
A9: ((k
+ 1)
-' 1)
= k by
NAT_D: 34;
(
0
+ 1)
<= (k
+ 1) & (k
+ 1)
<= n by
A8,
INT_1: 7;
then
A10: (k
+ 1)
in (
Seg n) by
FINSEQ_1: 1;
then ex j be
Element of
NAT st j
= (k
+ 1) & (F
. (k
+ 1))
=
[**(
cos (((2
*
PI )
* (j
-' 1))
/ n)), (
sin (((2
*
PI )
* (j
-' 1))
/ n))**] by
A6;
hence thesis by
A7,
A10,
A9;
end;
then
A11: (
rng F)
= X by
FUNCT_2: 10;
A12: (
dom F)
= (
Seg n) by
FUNCT_2:def 1;
for x1,x2 be
object st x1
in (
dom F) & x2
in (
dom F) & (F
. x1)
= (F
. x2) holds x1
= x2
proof
let x1,x2 be
object such that
A13: x1
in (
dom F) and
A14: x2
in (
dom F) and
A15: (F
. x1)
= (F
. x2);
A16: x1
in (
Seg n) by
A13,
FUNCT_2:def 1;
then
consider j be
Element of
NAT such that
A17: j
= x1 and
A18: (F
. x1)
=
[**(
cos (((2
*
PI )
* (j
-' 1))
/ n)), (
sin (((2
*
PI )
* (j
-' 1))
/ n))**] by
A6;
set a1 = (((2
*
PI )
* (j
-' 1))
/ n);
A19: 1
<= j by
A16,
A17,
FINSEQ_1: 1;
j
<= n by
A16,
A17,
FINSEQ_1: 1;
then (j
- 1)
< n by
XREAL_1: 146,
XXREAL_0: 2;
then (j
-' 1)
< n by
A19,
XREAL_1: 233;
then ((j
-' 1)
/ n)
< (n
/ n) by
XREAL_1: 74;
then ((j
-' 1)
/ n)
< 1 by
XCMPLX_1: 60;
then (((j
-' 1)
/ n)
* (2
*
PI ))
< (1
* (2
*
PI )) by
COMPTRIG: 5,
XREAL_1: 68;
then
A20: a1
< (2
*
PI ) by
XCMPLX_1: 74;
A21: x2
in (
Seg n) by
A14,
FUNCT_2:def 1;
then
consider k be
Element of
NAT such that
A22: k
= x2 and
A23: (F
. x2)
=
[**(
cos (((2
*
PI )
* (k
-' 1))
/ n)), (
sin (((2
*
PI )
* (k
-' 1))
/ n))**] by
A6;
set a2 = (((2
*
PI )
* (k
-' 1))
/ n);
A24: 1
<= k by
A21,
A22,
FINSEQ_1: 1;
k
<= n by
A21,
A22,
FINSEQ_1: 1;
then (k
- 1)
< n by
XREAL_1: 146,
XXREAL_0: 2;
then (k
-' 1)
< n by
A24,
XREAL_1: 233;
then ((k
-' 1)
/ n)
< (n
/ n) by
XREAL_1: 74;
then ((k
-' 1)
/ n)
< 1 by
XCMPLX_1: 60;
then (((k
-' 1)
/ n)
* (2
*
PI ))
< (1
* (2
*
PI )) by
COMPTRIG: 5,
XREAL_1: 68;
then
A25: a2
< (2
*
PI ) by
XCMPLX_1: 74;
(
cos (((2
*
PI )
* (j
-' 1))
/ n))
= (
cos (((2
*
PI )
* (k
-' 1))
/ n)) by
A15,
A18,
A23,
COMPLEX1: 77;
then a1
= a2 by
A15,
A18,
A23,
A20,
A25,
COMPLEX2: 11,
COMPTRIG: 5;
then ((((2
*
PI )
* (j
-' 1))
/ n)
* n)
= ((2
*
PI )
* (k
-' 1)) by
XCMPLX_1: 87;
then (j
-' 1)
= (k
-' 1) by
COMPTRIG: 5,
XCMPLX_1: 5,
XCMPLX_1: 87;
then j
= ((k
-' 1)
+ 1) by
A19,
XREAL_1: 235;
hence thesis by
A17,
A22,
A24,
XREAL_1: 235;
end;
then F is
one-to-one by
FUNCT_1:def 4;
then ((
Seg n),(F
.: (
Seg n)))
are_equipotent by
A12,
CARD_1: 33;
then ((
Seg n),(
rng F))
are_equipotent by
A12,
RELAT_1: 113;
then (
card (
Seg n))
= (
card X) by
A11,
CARD_1: 5;
hence thesis by
A1,
FINSEQ_1: 57;
end;
registration
let n be non
zero
Element of
NAT ;
cluster (n
-roots_of_1 ) -> non
empty;
correctness by
Th22;
cluster (n
-roots_of_1 ) ->
finite;
correctness
proof
(
card (n
-roots_of_1 ))
= n by
Th27;
hence thesis;
end;
end
theorem ::
UNIROOTS:28
Th28: for n,ni be non
zero
Element of
NAT st ni
divides n holds (ni
-roots_of_1 )
c= (n
-roots_of_1 )
proof
let n,ni be non
zero
Element of
NAT ;
assume ni
divides n;
then
consider k be
Nat such that
A1: n
= (ni
* k) by
NAT_D:def 3;
reconsider k as
Element of
NAT by
ORDINAL1:def 12;
for x be
object st x
in (ni
-roots_of_1 ) holds x
in (n
-roots_of_1 )
proof
let x be
object such that
A2: x
in (ni
-roots_of_1 );
reconsider y = x as
Element of
F_Complex by
A2;
y is
CRoot of ni, (
1_
F_Complex ) by
A2,
Th21;
then (
1_
F_Complex )
= ((
power
F_Complex )
. (y,ni)) by
COMPLFLD:def 2;
then (
1_
F_Complex )
= ((
power
F_Complex )
. (((
power
F_Complex )
. (y,ni)),k)) by
Th8;
then (
1_
F_Complex )
= ((
power
F_Complex )
. (y,n)) by
A1,
Th12;
then y is
CRoot of n, (
1_
F_Complex ) by
COMPLFLD:def 2;
hence thesis;
end;
hence thesis;
end;
theorem ::
UNIROOTS:29
Th29: for R be
Skew-Field, x be
Element of (
MultGroup R), y be
Element of R st y
= x holds for k be
Nat holds ((
power (
MultGroup R))
. (x,k))
= ((
power R)
. (y,k))
proof
let R be
Skew-Field, x be
Element of (
MultGroup R), y be
Element of R such that
A1: y
= x;
defpred
P[
Nat] means ((
power (
MultGroup R))
. (x,$1))
= ((
power R)
. (y,$1));
A2: for k be
Nat st
P[k] holds
P[(k
+ 1)]
proof
let k be
Nat such that
A3:
P[k];
reconsider kk = k as
Element of
NAT by
ORDINAL1:def 12;
thus ((
power (
MultGroup R))
. (x,(k
+ 1)))
= (((
power (
MultGroup R))
. (x,kk))
* x) by
GROUP_1:def 7
.= (((
power R)
. (y,kk))
* y) by
A1,
A3,
Th16
.= ((
power R)
. (y,(k
+ 1))) by
GROUP_1:def 7;
end;
((
power (
MultGroup R))
. (x,
0 ))
= (
1_ (
MultGroup R)) & ((
power R)
. (y,
0 ))
= (
1_ R) by
GROUP_1:def 7;
then
A4:
P[
0 ] by
Th17;
thus for k be
Nat holds
P[k] from
NAT_1:sch 2(
A4,
A2);
end;
theorem ::
UNIROOTS:30
Th30: for n be non
zero
Element of
NAT , x be
Element of (
MultGroup
F_Complex ) st x
in (n
-roots_of_1 ) holds not x is
being_of_order_0
proof
set MGFC = (
MultGroup
F_Complex );
set cMGFC = the
carrier of (
MultGroup
F_Complex );
set FC =
F_Complex ;
let n be non
zero
Element of
NAT , x be
Element of cMGFC;
assume x
in (n
-roots_of_1 );
then
consider c be
Element of FC such that
A1: c
= x and
A2: c is
CRoot of n, (
1_ FC);
A3: (
1_ MGFC)
= (
1_ FC) by
Th17;
((
power FC)
. (c,n))
= (
1_ FC) by
A2,
COMPLFLD:def 2;
then (x
|^ n)
= (
1_ MGFC) by
A1,
A3,
Th29;
hence thesis;
end;
theorem ::
UNIROOTS:31
Th31: for n be non
zero
Element of
NAT , k be
Element of
NAT , x be
Element of (
MultGroup
F_Complex ) st x
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] holds (
ord x)
= (n
div (k
gcd n))
proof
let n be non
zero
Element of
NAT , k be
Element of
NAT ;
reconsider kgn = (k
gcd n) as
Element of
NAT ;
A1: (k
gcd n)
divides n by
INT_2: 21;
then
consider vn be
Nat such that
A2: n
= (kgn
* vn) by
NAT_D:def 3;
(k
gcd n)
divides k by
INT_2: 21;
then
consider i be
Nat such that
A3: k
= (kgn
* i) by
NAT_D:def 3;
let x be
Element of (
MultGroup
F_Complex ) such that
A4: x
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**];
x
in (n
-roots_of_1 ) by
A4,
Th24;
then
A5: not x is
being_of_order_0 by
Th30;
A6: (n
gcd k)
>
0 by
NEWTON: 58;
A7:
now
assume (n
div kgn)
=
0 ;
then n
= ((kgn
*
0 qua
Nat)
+ (n
mod kgn)) by
NAT_D: 2,
NEWTON: 58;
hence contradiction by
A1,
A6,
NAT_D: 1,
NAT_D: 7;
end;
reconsider y = x as
Element of
F_Complex by
Th19;
reconsider vn as
Element of
NAT by
ORDINAL1:def 12;
A9: n
= ((kgn
* vn)
+
0 ) by
A2;
then
A10: (n
div kgn)
= vn by
A6,
NAT_D:def 1;
A11: for m be
Nat st (x
|^ m)
= (
1_ (
MultGroup
F_Complex )) & m
<>
0 holds (n
div kgn)
<= m
proof
let m be
Nat such that
A12: (x
|^ m)
= (
1_ (
MultGroup
F_Complex )) and
A13: m
<>
0 ;
reconsider m as
Element of
NAT by
ORDINAL1:def 12;
now
assume
A14: m
< vn;
A15:
now
assume ((k
* m)
mod n)
=
0 ;
then n
divides (k
* m) by
PEPIN: 6;
then
consider j be
Nat such that
A16: (k
* m)
= (n
* j) by
NAT_D:def 3;
consider a,b be
Integer such that
A17: k
= (kgn
* a) and
A18: n
= (kgn
* b) and
A19: (a,b)
are_coprime by
INT_2: 23;
0
<= a by
A6,
A17;
then
reconsider ai = a as
Element of
NAT by
INT_1: 3;
0
<= b by
A18;
then
reconsider bi = b as
Element of
NAT by
INT_1: 3;
((m
* a)
* kgn)
= (j
* (b
* kgn)) by
A17,
A18,
A16;
then (m
* a)
= (((j
* b)
* kgn)
/ kgn) by
A6,
XCMPLX_1: 89;
then (m
* a)
= (j
* b) by
A6,
XCMPLX_1: 89;
then
A20: bi
divides (m
* ai) by
NAT_D:def 3;
m
< bi by
A6,
A10,
A14,
A18,
NAT_D: 18;
hence contradiction by
A13,
A19,
A20,
INT_2: 25,
NAT_D: 7;
end;
A21: ((((2
*
PI )
* k)
/ n)
* m)
= (((2
*
PI )
* k)
/ (n
/ m)) by
XCMPLX_1: 82
.= ((((2
*
PI )
* k)
* m)
/ n) by
XCMPLX_1: 77;
((2
*
PI )
* ((k
* m)
mod n))
< ((2
*
PI )
* n) by
COMPTRIG: 5,
NAT_D: 1,
XREAL_1: 68;
then (((2
*
PI )
* ((k
* m)
mod n))
/ n)
< (((2
*
PI )
* n)
/ n) by
XREAL_1: 74;
then
A22: (((2
*
PI )
* ((k
* m)
mod n))
/ n)
< (2
*
PI ) by
XCMPLX_1: 89;
A23: (
1_ (
MultGroup
F_Complex ))
=
[**1,
0 **] by
Th17,
COMPLFLD: 8;
(x
|^ m)
= ((
power
F_Complex )
. (y,m)) by
Th29
.= (y
|^ m) by
COMPLFLD: 74
.=
[**(
cos (((2
*
PI )
* (k
* m))
/ n)), (
sin ((((2
*
PI )
* k)
* m)
/ n))**] by
A4,
A21,
COMPTRIG: 53
.=
[**(
cos (((2
*
PI )
* ((k
* m)
mod n))
/ n)), (
sin (((2
*
PI )
* ((k
* m)
mod n))
/ n))**] by
Th10;
then (
cos (((2
*
PI )
* ((k
* m)
mod n))
/ n))
= 1 by
A12,
A23,
COMPLEX1: 77;
hence contradiction by
A15,
A22,
COMPTRIG: 5,
COMPTRIG: 61;
end;
hence thesis by
A6,
A9,
NAT_D:def 1;
end;
reconsider i as
Element of
NAT by
ORDINAL1:def 12;
A24: ((((2
*
PI )
* k)
/ n)
* vn)
= (((2
*
PI )
* (kgn
* i))
/ (n
/ vn)) by
A3,
XCMPLX_1: 82
.= ((((2
*
PI )
* (kgn
* i))
* vn)
/ n) by
XCMPLX_1: 77
.= ((((2
*
PI )
* i)
* n)
/ n) by
A2
.= (((2
*
PI )
* i)
+
0 ) by
XCMPLX_1: 89;
(x
|^ (n
div kgn))
= ((
power
F_Complex )
. (y,vn)) by
A10,
Th29
.= (y
|^ vn) by
COMPLFLD: 74
.=
[**(
cos ((((2
*
PI )
* k)
/ n)
* vn)), (
sin ((((2
*
PI )
* k)
/ n)
* vn))**] by
A4,
COMPTRIG: 53
.=
[**(
cos
0 ), (
sin (((2
*
PI )
* i)
+
0 ))**] by
A24,
COMPLEX2: 9
.= (1
+ (
0
*
<i> )) by
COMPLEX2: 8,
SIN_COS: 31
.= (
1_ (
MultGroup
F_Complex )) by
Th17,
COMPLFLD: 8;
hence thesis by
A7,
A5,
A11,
GROUP_1:def 11;
end;
theorem ::
UNIROOTS:32
Th32: for n be non
zero
Element of
NAT holds (n
-roots_of_1 )
c= the
carrier of (
MultGroup
F_Complex )
proof
let n be non
zero
Element of
NAT ;
set cMGFC = the
carrier of (
MultGroup
F_Complex );
set FC =
F_Complex ;
let a be
object;
assume a
in (n
-roots_of_1 );
then
consider x be
Element of
F_Complex such that
A1: a
= x and
A2: x is
CRoot of n, (
1_
F_Complex );
((
power FC)
. (x,n))
= (
1_ FC) by
A2,
COMPLFLD:def 2;
then x
<> (
0. FC) by
VECTSP_1: 36;
then
A3: not x
in
{(
0. FC)} by
TARSKI:def 1;
cMGFC
= (
NonZero FC) by
Def1;
hence thesis by
A1,
A3,
XBOOLE_0:def 5;
end;
theorem ::
UNIROOTS:33
for n be non
zero
Element of
NAT holds ex x be
Element of (
MultGroup
F_Complex ) st (
ord x)
= n
proof
let n be non
zero
Element of
NAT ;
set x =
[**(
cos (((2
*
PI )
* 1)
/ n)), (
sin (((2
*
PI )
* 1)
/ n))**];
(n
-roots_of_1 )
c= the
carrier of (
MultGroup
F_Complex ) & x
in (n
-roots_of_1 ) by
Th24,
Th32;
then
reconsider y = x as
Element of (
MultGroup
F_Complex );
(
ord y)
= (n
div (1
gcd n)) & (1
gcd n)
= 1 by
Th31,
WSIERP_1: 8;
hence thesis by
NAT_2: 4;
end;
theorem ::
UNIROOTS:34
Th34: for n be non
zero
Element of
NAT , x be
Element of (
MultGroup
F_Complex ) holds (
ord x)
divides n iff x
in (n
-roots_of_1 )
proof
set FC =
F_Complex ;
let n be non
zero
Element of
NAT , x be
Element of (
MultGroup
F_Complex );
reconsider c = x as
Element of FC by
Th19;
set MGFC = (
MultGroup
F_Complex );
A1: (
1_ MGFC)
= (
1_ FC) by
Th17;
hereby
assume (
ord x)
divides n;
then
consider k be
Nat such that
A2: n
= ((
ord x)
* k) by
NAT_D:def 3;
(x
|^ (
ord x))
= (
1_ MGFC) by
GROUP_1: 41;
then ((x
|^ (
ord x))
|^ k)
= (
1_ MGFC) by
GROUP_1: 31;
then (x
|^ n)
= (
1_ MGFC) by
A2,
GROUP_1: 35;
then ((
power FC)
. (c,n))
= (
1_ FC) by
A1,
Th29;
then c is
CRoot of n, (
1_ FC) by
COMPLFLD:def 2;
hence x
in (n
-roots_of_1 );
end;
assume x
in (n
-roots_of_1 );
then
consider c be
Element of FC such that
A3: c
= x and
A4: c is
CRoot of n, (
1_ FC);
((
power FC)
. (c,n))
= (
1_ FC) by
A4,
COMPLFLD:def 2;
then (x
|^ n)
= (
1_ MGFC) by
A1,
A3,
Th29;
hence thesis by
GROUP_1: 44;
end;
theorem ::
UNIROOTS:35
Th35: for n be non
zero
Element of
NAT holds (n
-roots_of_1 )
= { x where x be
Element of (
MultGroup
F_Complex ) : (
ord x)
divides n }
proof
set cMGFC = the
carrier of (
MultGroup
F_Complex );
set MGFC = (
MultGroup
F_Complex );
let n be non
zero
Element of
NAT ;
set R = { a where a be
Element of
F_Complex : a is
CRoot of n, (
1_
F_Complex ) };
set S = { x where x be
Element of (
MultGroup
F_Complex ) : (
ord x)
divides n };
A1: (n
-roots_of_1 )
= R;
then
A2: R
c= cMGFC by
Th32;
now
let a be
object;
hereby
assume
A3: a
in R;
then
reconsider x = a as
Element of MGFC by
A2;
(
ord x)
divides n by
A1,
A3,
Th34;
hence a
in S;
end;
assume a
in S;
then ex x be
Element of MGFC st a
= x & (
ord x)
divides n;
hence a
in R by
A1,
Th34;
end;
hence thesis by
TARSKI: 2;
end;
theorem ::
UNIROOTS:36
Th36: for n be non
zero
Element of
NAT , x be
set holds x
in (n
-roots_of_1 ) iff ex y be
Element of (
MultGroup
F_Complex ) st x
= y & (
ord y)
divides n
proof
set MGFC = (
MultGroup
F_Complex );
set cMGFC = the
carrier of (
MultGroup
F_Complex );
let n be non
zero
Element of
NAT , x be
set;
A1: (n
-roots_of_1 )
c= cMGFC by
Th32;
hereby
assume
A2: x
in (n
-roots_of_1 );
then
reconsider a = x as
Element of MGFC by
A1;
(
ord a)
divides n by
A2,
Th34;
hence ex y be
Element of (
MultGroup
F_Complex ) st x
= y & (
ord y)
divides n;
end;
thus thesis by
Th34;
end;
definition
let n be non
zero
Element of
NAT ;
::
UNIROOTS:def3
func n
-th_roots_of_1 ->
strict
Group means
:
Def3: the
carrier of it
= (n
-roots_of_1 ) & the
multF of it
= (the
multF of
F_Complex
|| (n
-roots_of_1 ));
existence
proof
set X =
[:(n
-roots_of_1 ), (n
-roots_of_1 ):];
set mru = (the
multF of
F_Complex
|| (n
-roots_of_1 ));
(n
-roots_of_1 )
c= the
carrier of
F_Complex ;
then (n
-roots_of_1 )
c=
COMPLEX by
COMPLFLD:def 1;
then X
c=
[:
COMPLEX ,
COMPLEX :] by
ZFMISC_1: 96;
then
A1: X
c= (
dom
multcomplex ) by
FUNCT_2:def 1;
A2:
multcomplex
= the
multF of
F_Complex by
COMPLFLD:def 1;
then
A3: (
dom mru)
= ((
dom
multcomplex )
/\ X) by
RELAT_1: 61;
then
A4: (
dom mru)
= X by
A1,
XBOOLE_1: 28;
for x be
object st x
in X holds (mru
. x)
in (n
-roots_of_1 )
proof
let x be
object such that
A5: x
in X;
consider a,b be
object such that
A6:
[a, b]
= x by
A5,
RELAT_1:def 1;
A7: b
in (n
-roots_of_1 ) by
A5,
A6,
ZFMISC_1: 87;
A8: a
in (n
-roots_of_1 ) by
A5,
A6,
ZFMISC_1: 87;
reconsider b as
Element of
COMPLEX by
A7,
COMPLFLD:def 1;
reconsider a as
Element of
COMPLEX by
A8,
COMPLFLD:def 1;
(
multcomplex
. (a,b))
= (a
* b) & (mru
.
[a, b])
= (
multcomplex
.
[a, b]) by
A2,
A4,
A5,
A6,
BINOP_2:def 5,
FUNCT_1: 47;
hence thesis by
A6,
A8,
A7,
Th25;
end;
then
reconsider uM = mru as
BinOp of (n
-roots_of_1 ) by
A1,
A3,
FUNCT_2: 3,
XBOOLE_1: 28;
set H =
multMagma (# (n
-roots_of_1 ), uM #);
reconsider 1F = (
1_
F_Complex ) as
Element of H by
Th22;
A9: (
1_
F_Complex )
=
[**(
cos (((2
*
PI )
*
0 qua
Nat)
/ n)), (
sin (((2
*
PI )
*
0 qua
Nat)
/ n))**] by
COMPLFLD: 8,
SIN_COS: 31;
A10: for s1 be
Element of H holds (s1
* 1F)
= s1 & (1F
* s1)
= s1 & ex s2 be
Element of H st (s1
* s2)
= (
1_
F_Complex ) & (s2
* s1)
= (
1_
F_Complex )
proof
let s1 be
Element of H;
A11: ex s2 be
Element of H st (s1
* s2)
= (
1_
F_Complex ) & (s2
* s1)
= (
1_
F_Complex )
proof
s1
in the
carrier of
F_Complex by
TARSKI:def 3;
then
consider k be
Element of
NAT such that
A12: s1
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] by
Th24;
reconsider e1 =
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] as
Element of
F_Complex ;
ex j be
Element of
NAT st ((k
+ j)
mod n)
=
0
proof
set r = (k
mod n);
r
< n by
NAT_D: 1;
then
consider j be
Nat such that
A13: (r
+ j)
= n by
NAT_1: 10;
k
= ((n
* (k
div n))
+ r) by
NAT_D: 2;
then j
in
NAT & ((k
+ j)
mod n)
= ((((k
div n)
+ 1)
* n)
mod n) by
A13,
ORDINAL1:def 12;
hence thesis by
NAT_D: 13;
end;
then
consider j be
Element of
NAT such that
A14: ((k
+ j)
mod n)
=
0 ;
set ss2 =
[**(
cos (((2
*
PI )
* j)
/ n)), (
sin (((2
*
PI )
* j)
/ n))**];
reconsider s2 = ss2 as
Element of H by
Th24;
reconsider e2 = s2 as
Element of
F_Complex ;
(e2
* e1)
=
[**(
cos (((2
*
PI )
* ((j
+ k)
mod n))
/ n)), (
sin (((2
*
PI )
* ((j
+ k)
mod n))
/ n))**] &
[s2, s1]
in (
dom mru) by
A4,
Th11,
ZFMISC_1: 87;
then
A15: (s2
* s1)
= (
1_
F_Complex ) by
A12,
A14,
COMPLFLD: 8,
FUNCT_1: 47,
SIN_COS: 31;
(e1
* e2)
=
[**(
cos (((2
*
PI )
* ((j
+ k)
mod n))
/ n)), (
sin (((2
*
PI )
* ((j
+ k)
mod n))
/ n))**] &
[s1, s2]
in (
dom mru) by
A4,
Th11,
ZFMISC_1: 87;
then (s1
* s2)
= (
1_
F_Complex ) by
A12,
A14,
COMPLFLD: 8,
FUNCT_1: 47,
SIN_COS: 31;
hence thesis by
A15;
end;
(s1
* 1F)
= s1 & (1F
* s1)
= s1
proof
A16:
[s1, 1F]
in (
dom mru) &
[1F, s1]
in (
dom mru) by
A4,
ZFMISC_1: 87;
reconsider e1 = s1 as
Element of
F_Complex by
TARSKI:def 3;
consider k be
Element of
NAT such that
A17: e1
=
[**(
cos (((2
*
PI )
* k)
/ n)), (
sin (((2
*
PI )
* k)
/ n))**] by
Th24;
A18: ((
1_
F_Complex )
* e1)
=
[**(
cos (((2
*
PI )
* ((k
+
0 )
mod n))
/ n)), (
sin (((2
*
PI )
* ((k
+
0 )
mod n))
/ n))**] by
A9,
A17,
Th11
.= s1 by
A17,
Th10;
(e1
* (
1_
F_Complex ))
=
[**(
cos (((2
*
PI )
* ((k
+
0 )
mod n))
/ n)), (
sin (((2
*
PI )
* ((k
+
0 )
mod n))
/ n))**] by
A9,
A17,
Th11
.= s1 by
A17,
Th10;
hence thesis by
A18,
A16,
FUNCT_1: 47;
end;
hence thesis by
A11;
end;
A19: (
rng uM)
c= (n
-roots_of_1 ) by
RELAT_1:def 19;
for r,s,t be
Element of H holds ((r
* s)
* t)
= (r
* (s
* t))
proof
set mc =
multcomplex ;
let r,s,t be
Element of H;
r
in the
carrier of
F_Complex by
TARSKI:def 3;
then
A20: r is
Element of
COMPLEX by
COMPLFLD:def 1;
s
in the
carrier of
F_Complex by
TARSKI:def 3;
then
A21: s is
Element of
COMPLEX by
COMPLFLD:def 1;
A22:
[r, s]
in (
dom mru) by
A4,
ZFMISC_1: 87;
then (mru
.
[r, s])
in (
rng mru) by
FUNCT_1: 3;
then
A23:
[(mru
.
[r, s]), t]
in (
dom mru) by
A4,
A19,
ZFMISC_1: 87;
A24:
[s, t]
in (
dom mru) by
A4,
ZFMISC_1: 87;
then (mru
.
[s, t])
in (
rng mru) by
FUNCT_1: 3;
then
A25:
[r, (mru
.
[s, t])]
in (
dom mru) by
A4,
A19,
ZFMISC_1: 87;
(mru
.
[s, t])
= (mc
.
[s, t]) by
A2,
A24,
FUNCT_1: 47;
then
A26: (mru
.
[r, (mru
.
[s, t])])
= (mc
. (r,(mc
. (s,t)))) by
A2,
A25,
FUNCT_1: 47;
t
in the
carrier of
F_Complex by
TARSKI:def 3;
then
A27: t is
Element of
COMPLEX by
COMPLFLD:def 1;
(mru
.
[r, s])
= (mc
.
[r, s]) by
A2,
A22,
FUNCT_1: 47;
then (mru
.
[(mru
.
[r, s]), t])
= (mc
. ((mc
. (r,s)),t)) by
A2,
A23,
FUNCT_1: 47;
hence thesis by
A20,
A21,
A27,
A26,
BINOP_1:def 3;
end;
then H is
Group by
A10,
GROUP_1: 1;
hence thesis;
end;
uniqueness ;
end
theorem ::
UNIROOTS:37
for n be non
zero
Element of
NAT holds (n
-th_roots_of_1 ) is
Subgroup of (
MultGroup
F_Complex )
proof
set MGFC = (
MultGroup
F_Complex );
set cMGFC = the
carrier of (
MultGroup
F_Complex );
set FC =
F_Complex ;
let n be non
zero
Element of
NAT ;
set nth = (n
-th_roots_of_1 );
set cnth = the
carrier of nth;
A1: the
carrier of nth
= (n
-roots_of_1 ) by
Def3;
then
A2: the
carrier of nth
c= the
carrier of MGFC by
Th32;
the
multF of nth
= (the
multF of FC
|| (n
-roots_of_1 )) & the
multF of MGFC
= (the
multF of FC
|| cMGFC) by
Def1,
Def3;
then the
multF of nth
= (the
multF of MGFC
|| cnth) by
A1,
A2,
RELAT_1: 74,
ZFMISC_1: 96;
hence thesis by
A2,
GROUP_2:def 5;
end;
begin
definition
let n be non
zero
Nat, L be
left_unital non
empty
doubleLoopStr;
::
UNIROOTS:def4
func
unital_poly (L,n) ->
Polynomial of L equals (((
0_. L)
+* (
0 ,(
- (
1_ L))))
+* (n,(
1_ L)));
coherence
proof
set p = (((
0_. L)
+* (
0 ,(
- (
1_ L))))
+* (n,(
1_ L)));
A1: for i be
Nat st i
<>
0 & i
<> n holds (p
. i)
= (
0. L)
proof
set q = ((
0_. L)
+* (
0 ,(
- (
1_ L))));
let i be
Nat such that
A2: i
<>
0 and
A3: i
<> n;
A4: i
in
NAT by
ORDINAL1:def 12;
((q
+* (n,(
1_ L)))
. i)
= (q
. i) by
A3,
FUNCT_7: 32
.= ((
0_. L)
. i) by
A2,
FUNCT_7: 32
.= (
0. L) by
A4,
FUNCOP_1: 7;
hence thesis;
end;
for i be
Nat st i
>= (n
+ 1) holds (p
. i)
= (
0. L)
proof
let i be
Nat such that
A5: i
>= (n
+ 1);
now
A6: (n
+
0 )
< (n
+ 1) by
XREAL_1: 8;
assume i
= n;
hence contradiction by
A5,
A6;
end;
hence thesis by
A1,
A5;
end;
hence thesis by
ALGSEQ_1:def 1;
end;
end
Lm4: (
unital_poly (
F_Complex ,1))
=
<%(
- (
1_
F_Complex )), (
1_
F_Complex )%>;
theorem ::
UNIROOTS:38
Th38: for L be
left_unital non
empty
doubleLoopStr holds for n be non
zero
Element of
NAT holds ((
unital_poly (L,n))
.
0 )
= (
- (
1_ L)) & ((
unital_poly (L,n))
. n)
= (
1_ L)
proof
let L be
left_unital non
empty
doubleLoopStr, n be non
zero
Element of
NAT ;
set p = ((
0_. L)
+* (
0 ,(
- (
1_ L))));
set q = ((
0_. L)
+* (n,(
1_ L)));
0
in
NAT ;
then
A1: (
unital_poly (L,n))
= (q
+* (
0 ,(
- (
1_ L)))) &
0
in (
dom q) by
FUNCT_7: 33,
NORMSP_1: 12;
n
in
NAT ;
then n
in (
dom p) by
NORMSP_1: 12;
hence thesis by
A1,
FUNCT_7: 31;
end;
theorem ::
UNIROOTS:39
Th39: for L be
left_unital non
empty
doubleLoopStr holds for n be non
zero
Nat, i be
Nat st i
<>
0 & i
<> n holds ((
unital_poly (L,n))
. i)
= (
0. L)
proof
let L be
left_unital non
empty
doubleLoopStr, n be non
zero
Nat;
let i be
Nat such that
A1: i
<>
0 and
A2: i
<> n;
set p = ((
0_. L)
+* (
0 ,(
- (
1_ L))));
A3: i
in
NAT by
ORDINAL1:def 12;
((p
+* (n,(
1_ L)))
. i)
= (p
. i) by
A2,
FUNCT_7: 32
.= ((
0_. L)
. i) by
A1,
FUNCT_7: 32
.= (
0. L) by
A3,
FUNCOP_1: 7;
hence thesis;
end;
theorem ::
UNIROOTS:40
Th40: for L be non
degenerated
well-unital non
empty
doubleLoopStr, n be non
zero
Element of
NAT holds (
len (
unital_poly (L,n)))
= (n
+ 1)
proof
let L be non
degenerated
well-unital non
empty
doubleLoopStr;
let n be non
zero
Element of
NAT ;
A1: for m be
Nat st m
is_at_least_length_of (
unital_poly (L,n)) holds (n
+ 1)
<= m
proof
let m be
Nat such that
A2: m
is_at_least_length_of (
unital_poly (L,n));
now
assume m
< (n
+ 1);
then m
<= n by
NAT_1: 13;
then ((
unital_poly (L,n))
. n)
= (
0. L) by
A2,
ALGSEQ_1:def 2;
hence contradiction by
Th38;
end;
hence thesis;
end;
A3: (n
+ 1)
in
NAT by
ORDINAL1:def 12;
for i be
Nat st i
>= (n
+ 1) holds ((
unital_poly (L,n))
. i)
= (
0. L)
proof
let i be
Nat such that
A4: i
>= (n
+ 1);
now
A5: (n
+
0 )
< (n
+ 1) by
XREAL_1: 8;
assume i
= n;
hence contradiction by
A4,
A5;
end;
hence thesis by
A4,
Th39;
end;
then (n
+ 1)
is_at_least_length_of (
unital_poly (L,n)) by
ALGSEQ_1:def 2;
hence thesis by
A1,
ALGSEQ_1:def 3,
A3;
end;
registration
let L be non
degenerated
well-unital non
empty
doubleLoopStr, n be non
zero
Element of
NAT ;
cluster (
unital_poly (L,n)) ->
non-zero;
correctness
proof
(
len (
unital_poly (L,n)))
= (n
+ 1) by
Th40;
hence thesis by
UPROOTS: 17;
end;
end
theorem ::
UNIROOTS:41
Th41: for n be non
zero
Element of
NAT holds for x be
Element of
F_Complex holds (
eval ((
unital_poly (
F_Complex ,n)),x))
= (((
power
F_Complex )
. (x,n))
- 1)
proof
(1
- 1)
=
0 ;
then
A1: (1
-' 1)
=
0 by
XREAL_1: 233;
reconsider z2 = (
1_
F_Complex ) as
Element of
COMPLEX by
COMPLFLD:def 1;
let n be non
zero
Element of
NAT , x be
Element of
F_Complex ;
set p = (
unital_poly (
F_Complex ,n));
consider F be
FinSequence of
F_Complex such that
A2: (
eval (p,x))
= (
Sum F) and
A3: (
len F)
= (
len p) and
A4: for i be
Element of
NAT st i
in (
dom F) holds (F
. i)
= ((p
. (i
-' 1))
* ((
power
F_Complex )
. (x,(i
-' 1)))) by
POLYNOM4:def 2;
A5: (
0
+ 1)
< (n
+ 1) by
XREAL_1: 8;
then
A6: 1
< (
len F) by
A3,
Th40;
A7: (
len F)
= (n
+ 1) by
A3,
Th40;
then ((
len F)
- 1)
= n;
then
A8: ((
len F)
-' 1)
= n by
A5,
XREAL_1: 233;
(((
len F)
- 1)
+ 1)
= (
len F);
then
A9: (((
len F)
-' 1)
+ 1)
= (
len F) by
A6,
XREAL_1: 233;
A10: (p
.
0 )
= (
- (
1_
F_Complex )) by
Th38;
set xn = ((
power
F_Complex )
. (x,n));
set null = (((
len F)
-' 1)
|-> (
0.
F_Complex ));
A11: (
len null)
= ((
len F)
-' 1) by
CARD_1:def 7;
set tR2 = (null
^
<*xn*>);
set tR1 = (
<*(
- (
1_
F_Complex ))*>
^ null);
A12: (
dom F)
= (
Seg (
len F)) by
FINSEQ_1:def 3;
reconsider R1 = tR1 as
Tuple of (
len F), the
carrier of
F_Complex by
A9;
reconsider R1 as
Element of ((
len F)
-tuples_on the
carrier of
F_Complex ) by
FINSEQ_2: 131;
reconsider R2 = tR2 as
Tuple of (
len F), the
carrier of
F_Complex by
A9;
reconsider R2 as
Element of ((
len F)
-tuples_on the
carrier of
F_Complex ) by
FINSEQ_2: 131;
A13: for i be
Element of
NAT st i
in (
dom null) holds (null
. i)
= (
0.
F_Complex )
proof
let i be
Element of
NAT ;
assume i
in (
dom null);
then i
in (
Seg ((
len F)
-' 1)) by
FUNCOP_1: 13;
hence thesis by
FUNCOP_1: 7;
end;
A14: for i be
Nat st i
<> 1 & i
in (
dom R1) holds (R1
. i)
= (
0.
F_Complex )
proof
let i be
Nat such that
A15: i
<> 1 and
A16: i
in (
dom R1);
A17: (
dom
<*(
- (
1_
F_Complex ))*>)
= (
Seg 1) by
FINSEQ_1:def 8;
now
assume i
in (
dom
<*(
- (
1_
F_Complex ))*>);
then 1
<= i & i
<= 1 by
A17,
FINSEQ_1: 1;
hence contradiction by
A15,
XXREAL_0: 1;
end;
then
consider j be
Nat such that
A18: j
in (
dom null) and
A19: i
= ((
len
<*(
- (
1_
F_Complex ))*>)
+ j) by
A16,
FINSEQ_1: 25;
(null
. j)
= (
0.
F_Complex ) by
A13,
A18;
hence thesis by
A18,
A19,
FINSEQ_1:def 7;
end;
(
len tR2)
= ((
len null)
+ (
len
<*xn*>)) by
FINSEQ_1: 22;
then
A20: (
len tR2)
= (
len F) by
A11,
A9,
FINSEQ_1: 39;
A21: for i be
Element of
NAT st i
in (
dom R2) & i
<> (
len F) holds (R2
. i)
= (
0.
F_Complex )
proof
let i be
Element of
NAT such that
A22: i
in (
dom R2) and
A23: i
<> (
len F);
A24: (
dom R2)
= (
Seg (
len F)) by
A20,
FINSEQ_1:def 3;
then i
<= (
len F) by
A22,
FINSEQ_1: 1;
then i
< (((
len F)
-' 1)
+ 1) by
A9,
A23,
XXREAL_0: 1;
then
A25: i
<= ((
len F)
-' 1) by
NAT_1: 13;
1
<= i by
A22,
A24,
FINSEQ_1: 1;
then i
in (
Seg ((
len F)
-' 1)) by
A25,
FINSEQ_1: 1;
then
A26: i
in (
dom null) by
A11,
FINSEQ_1:def 3;
then (R2
. i)
= (null
. i) by
FINSEQ_1:def 7;
hence thesis by
A13,
A26;
end;
(
len R1)
= (
len F) by
CARD_1:def 7;
then
A27: (
dom R1)
= (
Seg (
len F)) by
FINSEQ_1:def 3;
(
len R2)
= (
len F) by
CARD_1:def 7;
then
A28: (
dom R2)
= (
Seg (
len F)) by
FINSEQ_1:def 3;
A29: (R1
. 1)
= (
- (
1_
F_Complex )) by
FINSEQ_1: 41;
A30: (
len (R1
+ R2))
= (
len F) by
CARD_1:def 7;
then
A31: (
dom (R1
+ R2))
= (
Seg (
len F)) by
FINSEQ_1:def 3;
A32: (R2
. (
len F))
= ((
power
F_Complex )
. (x,n)) by
A11,
A9,
FINSEQ_1: 42;
for k be
Nat st k
in (
dom (R1
+ R2)) holds ((R1
+ R2)
. k)
= (F
. k)
proof
let k be
Nat such that
A33: k
in (
dom (R1
+ R2));
A34: k
in (
Seg (
len F)) by
A30,
A33,
FINSEQ_1:def 3;
A35: k
in (
dom F) by
A31,
A33,
FINSEQ_1:def 3;
A36: 1
<= k by
A31,
A33,
FINSEQ_1: 1;
A37: ((
- (
1_
F_Complex ))
* (
1_
F_Complex ))
= (
- (
1_
F_Complex ));
now
per cases ;
suppose
A38: k
= 1;
then (R2
. k)
= (
0.
F_Complex ) by
A6,
A21,
A28,
A34;
then
A39: ((R1
+ R2)
. 1)
= ((
- (
1_
F_Complex ))
+ (
0.
F_Complex )) by
A29,
A33,
A38,
FVSUM_1: 17;
(F
. 1)
= ((p
.
0 )
* ((
power
F_Complex )
. (x,
0 ))) by
A4,
A1,
A35,
A38
.= (
- (
1_
F_Complex )) by
A10,
A37,
GROUP_1:def 7;
hence thesis by
A38,
A39,
COMPLFLD: 7;
end;
suppose
A40: k
<> 1;
now
per cases ;
suppose
A41: k
= (
len F);
(
len F)
<>
0 by
A3,
A5,
Th40;
then
A42: (F
. (
len F))
= ((p
. ((
len F)
-' 1))
* ((
power
F_Complex )
. (x,((
len F)
-' 1)))) by
A4,
A12,
FINSEQ_1: 3
.= ((
1_
F_Complex )
* ((
power
F_Complex )
. (x,n))) by
A8,
Th38
.= ((
power
F_Complex )
. (x,n));
(R1
. (
len F))
= (
0.
F_Complex ) by
A6,
A14,
A27,
A34,
A41;
then ((R1
+ R2)
. (
len F))
= ((
0.
F_Complex )
+ ((
power
F_Complex )
. (x,n))) by
A32,
A33,
A41,
FVSUM_1: 17
.= ((
power
F_Complex )
. (x,n)) by
COMPLFLD: 7;
hence thesis by
A41,
A42;
end;
suppose
A43: k
<> (
len F);
A44:
now
assume (k
-' 1)
= n;
then (k
- 1)
= n by
A36,
XREAL_1: 233;
hence contradiction by
A7,
A43;
end;
1
< k by
A36,
A40,
XXREAL_0: 1;
then (1
+ (
- 1))
< (k
+ (
- 1)) by
XREAL_1: 8;
then (1
- 1)
< (k
- 1);
then
0
< (k
-' 1) by
A36,
XREAL_1: 233;
then (p
. (k
-' 1))
= (
0.
F_Complex ) by
A44,
Th39;
then
A45: (F
. k)
= ((
0.
F_Complex )
* ((
power
F_Complex )
. (x,(k
-' 1)))) by
A4,
A35;
A46: (R2
. k)
= (
0.
F_Complex ) by
A21,
A28,
A34,
A43;
(R1
. k)
= (
0.
F_Complex ) by
A14,
A27,
A34,
A40;
then ((R1
+ R2)
. k)
= ((
0.
F_Complex )
+ (
0.
F_Complex )) by
A33,
A46,
FVSUM_1: 17;
hence thesis by
A45,
COMPLFLD: 7;
end;
end;
hence thesis;
end;
end;
hence thesis;
end;
then
A47: (R1
+ R2)
= F by
A12,
A31,
FINSEQ_1: 13;
(
Sum null)
= (
0.
F_Complex ) by
MATRIX_3: 11;
then (
Sum R1)
= ((
- (
1_
F_Complex ))
+ (
0.
F_Complex )) & (
Sum R2)
= ((
0.
F_Complex )
+ xn) by
FVSUM_1: 71,
FVSUM_1: 72;
then (
- z2)
= (
- (
1_
F_Complex )) & (
Sum F)
= ((
- (
1_
F_Complex ))
+ ((
power
F_Complex )
. (x,n))) by
A47,
COMPLFLD: 2,
COMPLFLD: 7,
FVSUM_1: 76;
hence thesis by
A2,
COMPLFLD: 8;
end;
theorem ::
UNIROOTS:42
Th42: for n be non
zero
Element of
NAT holds (
Roots (
unital_poly (
F_Complex ,n)))
= (n
-roots_of_1 )
proof
let n be non
zero
Element of
NAT ;
now
set p = (
unital_poly (
F_Complex ,n));
let x be
object;
hereby
assume
A1: x
in (
Roots p);
then
reconsider x9 = x as
Element of
F_Complex ;
x9
is_a_root_of p by
A1,
POLYNOM5:def 10;
then (
0.
F_Complex )
= (
eval (p,x9)) by
POLYNOM5:def 7
.= (((
power
F_Complex )
. (x9,n))
- 1) by
Th41;
then x9 is
CRoot of n, (
1_
F_Complex ) by
COMPLFLD: 7,
COMPLFLD: 8,
COMPLFLD:def 2;
hence x
in (n
-roots_of_1 );
end;
assume
A2: x
in (n
-roots_of_1 );
then
reconsider x9 = x as
Element of
F_Complex ;
x9 is
CRoot of n, (
1_
F_Complex ) by
A2,
Th21;
then ((
power
F_Complex )
. (x9,n))
= 1 by
COMPLFLD: 8,
COMPLFLD:def 2;
then (((
power
F_Complex )
. (x9,n))
- 1)
=
0c ;
then (
eval (p,x9))
= (
0.
F_Complex ) by
Th41,
COMPLFLD: 7;
then x9
is_a_root_of p by
POLYNOM5:def 7;
hence x
in (
Roots (
unital_poly (
F_Complex ,n))) by
POLYNOM5:def 10;
end;
hence thesis by
TARSKI: 2;
end;
theorem ::
UNIROOTS:43
Th43: for n be
Element of
NAT , z be
Element of
F_Complex st z is
Real holds ex x be
Real st x
= z & ((
power
F_Complex )
. (z,n))
= (x
|^ n)
proof
let n be
Element of
NAT ;
let z be
Element of
F_Complex ;
assume z is
Real;
then
reconsider x = z as
Real;
per cases ;
suppose
A1: x
=
0 ;
then
A2: z
= (
0.
F_Complex ) by
COMPLFLD:def 1;
thus thesis
proof
per cases ;
suppose
A3: n
=
0 ;
then ((
power
F_Complex )
. (z,n))
= 1 by
COMPLFLD: 8,
GROUP_1:def 7
.= (x
|^ n) by
A3,
NEWTON: 4;
hence thesis;
end;
suppose
A4: n
>
0 ;
then
A5: n
>= (
0
+ 1) by
NAT_1: 13;
((
power
F_Complex )
. (z,n))
= (
0.
F_Complex ) by
A2,
A4,
VECTSP_1: 36
.= (x
|^ n) by
A1,
A5,
COMPLFLD: 7,
NEWTON: 11;
hence thesis;
end;
end;
end;
suppose
A6: x
<>
0 ;
defpred
P[
Nat] means ((
power
F_Complex )
. (z,$1))
= (x
|^ $1);
A7: for n be
Nat st
P[n] holds
P[(n
+ 1)]
proof
let n be
Nat such that
A8:
P[n];
reconsider nn = n as
Element of
NAT by
ORDINAL1:def 12;
((
power
F_Complex )
. (z,(n
+ 1)))
= (((
power
F_Complex )
. (z,nn))
* z) by
GROUP_1:def 7
.= ((x
#Z n)
* x) by
A8,
PREPOWER: 36
.= ((x
#Z n)
* (x
#Z 1)) by
PREPOWER: 35
.= (x
#Z (n
+ 1)) by
A6,
PREPOWER: 44
.= (x
|^ (n
+ 1)) by
PREPOWER: 36;
hence thesis;
end;
((
power
F_Complex )
. (z,
0 ))
=
1r by
COMPLFLD: 8,
GROUP_1:def 7
.= (x
#Z
0 ) by
PREPOWER: 34
.= (x
|^
0 ) by
PREPOWER: 36;
then
A9:
P[
0 ];
for n be
Nat holds
P[n] from
NAT_1:sch 2(
A9,
A7);
then ((
power
F_Complex )
. (z,n))
= (x
|^ n);
hence thesis;
end;
end;
theorem ::
UNIROOTS:44
Th44: for n be non
zero
Element of
NAT holds for x be
Real holds ex y be
Element of
F_Complex st y
= x & (
eval ((
unital_poly (
F_Complex ,n)),y))
= ((x
|^ n)
- 1)
proof
let n be non
zero
Element of
NAT , x be
Real;
x
in
COMPLEX by
XCMPLX_0:def 2;
then
reconsider y = x as
Element of
F_Complex by
COMPLFLD:def 1;
ex x2 be
Real st x2
= y & ((
power
F_Complex )
. (y,n))
= (x2
|^ n) by
Th43;
then (
eval ((
unital_poly (
F_Complex ,n)),y))
= ((x
|^ n)
- 1) by
Th41;
hence thesis;
end;
theorem ::
UNIROOTS:45
Th45: for n be non
zero
Element of
NAT holds (
BRoots (
unital_poly (
F_Complex ,n)))
= (((n
-roots_of_1 ),1)
-bag )
proof
let n be non
zero
Element of
NAT ;
set p = (
unital_poly (
F_Complex ,n));
A1: (
degree (
BRoots p))
= ((
len p)
-' 1) by
UPROOTS: 59
.= ((n
+ 1)
-' 1) by
Th40
.= n by
NAT_D: 34;
A2: (
card (n
-roots_of_1 ))
= n by
Th27;
(
Roots p)
= (n
-roots_of_1 ) & (
support (
BRoots p))
= (
Roots p) by
Th42,
UPROOTS:def 9;
hence thesis by
A1,
A2,
UPROOTS: 13;
end;
theorem ::
UNIROOTS:46
Th46: for n be non
zero
Element of
NAT holds (
unital_poly (
F_Complex ,n))
= (
poly_with_roots (((n
-roots_of_1 ),1)
-bag ))
proof
let n be non
zero
Element of
NAT ;
set p = (
unital_poly (
F_Complex ,n));
(
len p)
= (n
+ 1) by
Th40;
then (p
. ((
len p)
-' 1))
= (p
. n) by
NAT_D: 34
.= (
1_
F_Complex ) by
Th38;
hence (
unital_poly (
F_Complex ,n))
= (
poly_with_roots (
BRoots (
unital_poly (
F_Complex ,n)))) by
UPROOTS: 65
.= (
poly_with_roots (((n
-roots_of_1 ),1)
-bag )) by
Th45;
end;
theorem ::
UNIROOTS:47
Th47: for n be non
zero
Element of
NAT , i be
Element of
F_Complex st i is
Integer holds (
eval ((
unital_poly (
F_Complex ,n)),i)) is
Integer
proof
let n be non
zero
Element of
NAT ;
let i be
Element of
F_Complex such that
A1: i is
Integer;
reconsider j = i as
Integer by
A1;
ex y be
Element of
F_Complex st y
= i & (
eval ((
unital_poly (
F_Complex ,n)),y))
= ((j
|^ n)
- 1) by
Th44;
hence thesis;
end;
begin
definition
let d be non
zero
Nat;
::
UNIROOTS:def5
func
cyclotomic_poly d ->
Polynomial of
F_Complex means
:
Def5: ex s be non
empty
finite
Subset of
F_Complex st s
= { y where y be
Element of (
MultGroup
F_Complex ) : (
ord y)
= d } & it
= (
poly_with_roots ((s,1)
-bag ));
existence
proof
set cMGFC = the
carrier of (
MultGroup
F_Complex );
reconsider d as non
zero
Element of
NAT by
ORDINAL1:def 12;
defpred
P[
Element of cMGFC] means (
ord $1)
= d;
set s = { y where y be
Element of cMGFC :
P[y] };
set x =
[**(
cos (((2
*
PI )
* 1)
/ d)), (
sin (((2
*
PI )
* 1)
/ d))**];
reconsider i = d as
Integer;
x
<> (
0.
F_Complex )
proof
assume
A1: x
= (
0.
F_Complex );
then (
0
+ (
0
*
<i> ))
= ((
cos (((2
*
PI )
* 1)
/ d))
+ ((
sin (((2
*
PI )
* 1)
/ d))
*
<i> )) by
COMPLFLD: 7;
then (
cos (((2
*
PI )
* 1)
/ d))
=
0 by
COMPLEX1: 77;
hence contradiction by
A1,
COMPLEX2: 10,
COMPLFLD: 7;
end;
then
A2: not x
in
{(
0.
F_Complex )} by
TARSKI:def 1;
cMGFC
= (
NonZero
F_Complex ) by
Def1;
then
reconsider x as
Element of cMGFC by
A2,
XBOOLE_0:def 5;
A3: (d
-roots_of_1 )
= { y where y be
Element of cMGFC : (
ord y)
divides d } by
Th35;
A4: s
c= (d
-roots_of_1 )
proof
let a be
object;
assume a
in s;
then ex y be
Element of cMGFC st a
= y & (
ord y)
= d;
hence thesis by
A3;
end;
(1
gcd i)
= 1 by
WSIERP_1: 8;
then (
ord x)
= (d
div 1) by
Th31
.= d by
NAT_2: 4;
then x
in s;
then
reconsider s as non
empty
finite
Subset of
F_Complex by
A4,
XBOOLE_1: 1;
take (
poly_with_roots ((s,1)
-bag ));
thus thesis;
end;
uniqueness ;
end
theorem ::
UNIROOTS:48
Th48: (
cyclotomic_poly 1)
=
<%(
- (
1_
F_Complex )), (
1_
F_Complex )%>
proof
set cMGFC = the
carrier of (
MultGroup
F_Complex );
consider s be non
empty
finite
Subset of
F_Complex such that
A1: s
= { y where y be
Element of cMGFC : (
ord y)
= 1 } and
A2: (
cyclotomic_poly 1)
= (
poly_with_roots ((s,1)
-bag )) by
Def5;
A3: (1
-roots_of_1 )
= { x where x be
Element of cMGFC : (
ord x)
divides 1 } by
Th35;
now
let x be
object;
hereby
assume x
in s;
then ex x1 be
Element of cMGFC st x
= x1 & (
ord x1)
= 1 by
A1;
hence x
in (1
-roots_of_1 ) by
A3;
end;
assume x
in (1
-roots_of_1 );
then
consider x1 be
Element of cMGFC such that
A4: x
= x1 and
A5: (
ord x1)
divides 1 by
A3;
(
ord x1)
= 1 by
A5,
WSIERP_1: 15;
hence x
in s by
A1,
A4;
end;
then s
= (1
-roots_of_1 ) by
TARSKI: 2;
hence thesis by
A2,
Lm4,
Th46;
end;
theorem ::
UNIROOTS:49
Th49: for n be non
zero
Element of
NAT , f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) st (
len f)
= n & for i be non
zero
Element of
NAT st i
in (
dom f) holds ( not i
divides n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n implies (f
. i)
= (
cyclotomic_poly i)) holds (
unital_poly (
F_Complex ,n))
= (
Product f)
proof
set cMGFC = the
carrier of (
MultGroup
F_Complex );
let n be non
zero
Element of
NAT , f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) such that
A1: (
len f)
= n and
A2: for i be non
zero
Element of
NAT st i
in (
dom f) holds ( not i
divides n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n implies (f
. i)
= (
cyclotomic_poly i));
defpred
P[
Nat,
set] means for fi be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) st fi
= (f
| (
Seg $1)) holds $2
= (
Product fi);
set nr1 = (n
-roots_of_1 );
deffunc
MG(
Nat) = { y where y be
Element of (
MultGroup
F_Complex ) : y
in nr1 & (
ord y)
<= $1 };
A3:
now
let i be
Nat;
assume i
in (
Seg (
len f));
reconsider fi = (f
| (
Seg i)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
set x = (
Product fi);
take x;
thus
P[i, x];
end;
consider F be
FinSequence of (
Polynom-Ring
F_Complex ) such that (
dom F)
= (
Seg (
len f)) and
A4: for i be
Nat st i
in (
Seg (
len f)) holds
P[i, (F
. i)] from
FINSEQ_1:sch 5(
A3);
defpred
R[
Nat] means ex t be
finite
Subset of
F_Complex st t
=
MG($1) & (F
. $1)
= (
poly_with_roots ((t,1)
-bag ));
A5:
now
let i be
Element of
NAT ;
MG(i)
c= nr1
proof
let x be
object;
assume x
in
MG(i);
then ex y be
Element of cMGFC st x
= y & y
in nr1 & (
ord y)
<= i;
hence thesis;
end;
hence
MG(i) is
finite
Subset of
F_Complex by
XBOOLE_1: 1;
end;
then
reconsider sB =
MG(n) as
finite
Subset of
F_Complex ;
A6: nr1
= { x where x be
Element of (
MultGroup
F_Complex ) : (
ord x)
divides n } by
Th35;
A7: for i be
Element of
NAT st 1
<= i & i
< (
len f) holds
R[i] implies
R[(i
+ 1)]
proof
let i be
Element of
NAT such that
A8: 1
<= i and
A9: i
< (
len f) and
A10:
R[i];
reconsider fi = (f
| (
Seg i)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
i
in (
Seg (
len f)) by
A8,
A9,
FINSEQ_1: 1;
then
A11: (F
. i)
= (
Product fi) by
A4;
reconsider fi1 = (f
| (
Seg (i
+ 1))) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
A12: (i
+ 1)
<= (
len f) by
A9,
NAT_1: 13;
then (i
+ 1)
= (
min ((i
+ 1),(
len f))) by
XXREAL_0:def 9;
then
A13: (
len fi1)
= (i
+ 1) by
FINSEQ_2: 21;
1
<= (i
+ 1) by
A8,
NAT_1: 13;
then
A14: (i
+ 1)
in (
Seg (
len f)) by
A12,
FINSEQ_1: 1;
then
A15: (i
+ 1)
in (
dom f) by
FINSEQ_1:def 3;
(i
+ 1)
in
NAT by
ORDINAL1:def 12;
then
reconsider sB =
MG(+) as
finite
Subset of
F_Complex by
A5;
take sB;
thus sB
=
MG(+);
set B = ((sB,1)
-bag );
consider sb be
finite
Subset of
F_Complex such that
A16: sb
=
MG(i) and
A17: (F
. i)
= (
poly_with_roots ((sb,1)
-bag )) by
A10;
A18: ((f
| (
Seg (i
+ 1)))
. (i
+ 1))
= (f
. (i
+ 1)) by
FINSEQ_1: 4,
FUNCT_1: 49;
then
reconsider fi1d1 = (fi1
. (i
+ 1)) as
Element of the
carrier of (
Polynom-Ring
F_Complex ) by
A15,
FINSEQ_2: 11;
set b = ((sb,1)
-bag );
reconsider fi1d1p = fi1d1 as
Polynomial of
F_Complex by
POLYNOM3:def 10;
fi
= (fi1
| (
Seg i)) by
Lm2,
NAT_1: 12;
then fi1
= (fi
^
<*fi1d1*>) by
A13,
FINSEQ_3: 55;
then
A19: (
Product fi1)
= ((
Product fi)
* fi1d1) by
GROUP_4: 6
.= ((
poly_with_roots b)
*' fi1d1p) by
A17,
A11,
POLYNOM3:def 10;
per cases ;
suppose
A20: not (i
+ 1)
divides n;
set eb = (
EmptyBag the
carrier of
F_Complex );
now
let x be
object;
hereby
assume x
in sB;
then
consider y be
Element of (
MultGroup
F_Complex ) such that
A21: x
= y and
A22: y
in nr1 and
A23: (
ord y)
<= (i
+ 1);
(
ord y)
divides n by
A22,
Th34;
then (
ord y)
< (i
+ 1) by
A20,
A23,
XXREAL_0: 1;
then (
ord y)
<= i by
NAT_1: 13;
hence x
in sb by
A16,
A21,
A22;
end;
assume x
in sb;
then
consider y be
Element of cMGFC such that
A24: x
= y & y
in nr1 and
A25: (
ord y)
<= i by
A16;
(
ord y)
<= (i
+ 1) by
A25,
NAT_1: 12;
hence x
in sB by
A24;
end;
then
A26: sB
= sb by
TARSKI: 2;
(f
. (i
+ 1))
=
<%(
1_
F_Complex )%> by
A2,
A15,
A20
.= (
poly_with_roots eb) by
UPROOTS: 60;
hence (F
. (i
+ 1))
= ((
poly_with_roots b)
*' (
poly_with_roots eb)) by
A4,
A14,
A18,
A19
.= (
poly_with_roots (b
+ eb)) by
UPROOTS: 64
.= (
poly_with_roots B) by
A26,
PRE_POLY: 53;
end;
suppose
A27: (i
+ 1)
divides n;
consider scb be non
empty
finite
Subset of
F_Complex such that
A28: scb
= { y where y be
Element of cMGFC : (
ord y)
= (i
+ 1) } and
A29: (
cyclotomic_poly (i
+ 1))
= (
poly_with_roots ((scb,1)
-bag )) by
Def5;
now
let x be
object;
hereby
assume x
in sB;
then
consider y be
Element of cMGFC such that
A30: x
= y and
A31: y
in nr1 and
A32: (
ord y)
<= (i
+ 1);
(
ord y)
<= i or (
ord y)
= (i
+ 1) by
A32,
NAT_1: 8;
then y
in sb or y
in scb by
A16,
A28,
A31;
hence x
in (sb
\/ scb) by
A30,
XBOOLE_0:def 3;
end;
assume
A33: x
in (sb
\/ scb);
per cases by
A33,
XBOOLE_0:def 3;
suppose x
in sb;
then
consider y be
Element of cMGFC such that
A34: x
= y & y
in nr1 and
A35: (
ord y)
<= i by
A16;
(
ord y)
<= (i
+ 1) by
A35,
NAT_1: 12;
hence x
in sB by
A34;
end;
suppose x
in scb;
then
consider y be
Element of cMGFC such that
A36: x
= y and
A37: (
ord y)
= (i
+ 1) by
A28;
y
in nr1 by
A6,
A27,
A37;
hence x
in sB by
A36,
A37;
end;
end;
then
A38: sB
= (sb
\/ scb) by
TARSKI: 2;
set cb = ((scb,1)
-bag );
A39: sb
misses scb
proof
assume (sb
/\ scb)
<>
{} ;
then
consider x be
object such that
A40: x
in (sb
/\ scb) by
XBOOLE_0:def 1;
x
in scb by
A40,
XBOOLE_0:def 4;
then
A41: ex y2 be
Element of cMGFC st x
= y2 & (
ord y2)
= (i
+ 1) by
A28;
x
in sb by
A40,
XBOOLE_0:def 4;
then ex y1 be
Element of cMGFC st x
= y1 & y1
in nr1 & (
ord y1)
<= i by
A16;
hence contradiction by
A41,
NAT_1: 13;
end;
(f
. (i
+ 1))
= (
poly_with_roots cb) by
A2,
A15,
A27,
A29;
hence (F
. (i
+ 1))
= ((
poly_with_roots b)
*' (
poly_with_roots cb)) by
A4,
A14,
A18,
A19
.= (
poly_with_roots (b
+ cb)) by
UPROOTS: 64
.= (
poly_with_roots B) by
A38,
A39,
UPROOTS: 10;
end;
end;
A42: (
0
+ 1)
<= n by
NAT_1: 13;
A43:
R[1]
proof
reconsider t =
MG() as
finite
Subset of
F_Complex by
A5;
take t;
thus t
=
MG();
reconsider f1 = (f
| (
Seg 1)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
A44: 1
in (
dom f) & 1
divides n by
A1,
A42,
FINSEQ_3: 25,
NAT_D: 6;
A45: 1
in (
Seg (
len f)) by
A1,
A42,
FINSEQ_1: 1;
then 1
in (
dom f) by
FINSEQ_1:def 3;
then
reconsider fd1 = (f
. 1) as
Element of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_2: 11;
f1
=
<*(f
. 1)*> by
A1,
A42,
Th1;
then (F
. 1)
= (
Product
<*fd1*>) by
A4,
A45
.= fd1 by
FINSOP_1: 11
.= (
cyclotomic_poly 1) by
A2,
A44;
then
consider sB be non
empty
finite
Subset of
F_Complex such that
A46: sB
= { y where y be
Element of cMGFC : (
ord y)
= 1 } and
A47: (F
. 1)
= (
poly_with_roots ((sB,1)
-bag )) by
Def5;
now
let x be
object;
hereby
assume x
in
MG();
then
consider y be
Element of cMGFC such that
A48: x
= y and
A49: y
in nr1 and
A50: (
ord y)
<= 1;
not y is
being_of_order_0 by
A49,
Th30;
then (
ord y)
<>
0 by
GROUP_1:def 11;
then (
0
+ 1)
<= (
ord y) by
NAT_1: 13;
then (
ord y)
= 1 by
A50,
XXREAL_0: 1;
hence x
in sB by
A46,
A48;
end;
assume x
in sB;
then
consider y be
Element of cMGFC such that
A51: x
= y and
A52: (
ord y)
= 1 by
A46;
(
ord y)
divides n by
A52,
NAT_D: 6;
then y
in nr1 by
A6;
hence x
in
MG() by
A51,
A52;
end;
hence thesis by
A47,
TARSKI: 2;
end;
for i be
Element of
NAT st 1
<= i & i
<= (
len f) holds
R[i] from
INT_1:sch 7(
A43,
A7);
then
A53: ex t be
finite
Subset of
F_Complex st t
=
MG(len) & (F
. (
len f))
= (
poly_with_roots ((t,1)
-bag )) by
A1,
A42;
set b = ((nr1,1)
-bag );
A54: f
= (f
| (
Seg (
len f))) by
FINSEQ_3: 49;
now
let x be
object;
hereby
assume
A55: x
in nr1;
then
consider y be
Element of (
MultGroup
F_Complex ) such that
A56: x
= y and
A57: (
ord y)
divides n by
A6;
(
ord y)
<= n by
A57,
NAT_D: 7;
hence x
in sB by
A55,
A56;
end;
assume x
in sB;
then ex y be
Element of (
MultGroup
F_Complex ) st y
= x & y
in nr1 & (
ord y)
<= n;
hence x
in nr1;
end;
then
A58: nr1
= sB by
TARSKI: 2;
thus (
unital_poly (
F_Complex ,n))
= (
poly_with_roots b) by
Th46
.= (
Product f) by
A1,
A4,
A58,
A53,
A54,
FINSEQ_1: 3;
end;
theorem ::
UNIROOTS:50
Th50: for n be non
zero
Element of
NAT holds ex f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), p be
Polynomial of
F_Complex st p
= (
Product f) & (
dom f)
= (
Seg n) & (for i be non
zero
Element of
NAT st i
in (
Seg n) holds ( not i
divides n or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & i
<> n implies (f
. i)
= (
cyclotomic_poly i))) & (
unital_poly (
F_Complex ,n))
= ((
cyclotomic_poly n)
*' p)
proof
set cPRFC = the
carrier of (
Polynom-Ring
F_Complex );
let n be non
zero
Element of
NAT ;
defpred
P[
set,
set] means ex i be non
zero
Element of
NAT st i
= $1 & ( not i
divides n implies $2
=
<%(
1_
F_Complex )%>) & (i
divides n implies $2
= (
cyclotomic_poly i));
consider m be
Nat such that
A1: n
= (m
+ 1) by
NAT_1: 6;
A2: for k be
Nat st k
in (
Seg n) holds ex x be
Element of cPRFC st
P[k, x]
proof
let k be
Nat;
assume k
in (
Seg n);
then
reconsider i = k as non
zero
Element of
NAT by
FINSEQ_1: 1;
per cases ;
suppose
A3: not i
divides n;
reconsider FC1 =
<%(
1_
F_Complex )%> as
Element of cPRFC by
POLYNOM3:def 10;
take FC1;
take i;
thus i
= k;
thus thesis by
A3;
end;
suppose
A4: i
divides n;
reconsider FC1 = (
cyclotomic_poly i) as
Element of cPRFC by
POLYNOM3:def 10;
take FC1;
take i;
thus i
= k;
thus thesis by
A4;
end;
end;
consider f be
FinSequence of cPRFC such that
A5: (
dom f)
= (
Seg n) and
A6: for k be
Nat st k
in (
Seg n) holds
P[k, (f
/. k)] from
RECDEF_1:sch 17(
A2);
reconsider fm = (f
| (
Seg m)) as
FinSequence of cPRFC by
FINSEQ_1: 18;
A7: (
len f)
= n by
A5,
FINSEQ_1:def 3;
A8:
now
let i be non
zero
Element of
NAT ;
assume
A9: i
in (
dom f);
then
A10: i
<= n by
A5,
FINSEQ_1: 1;
(ex j be non
zero
Element of
NAT st j
= i & ( not j
divides n implies (f
/. i)
=
<%(
1_
F_Complex )%>) & (j
divides n implies (f
/. i)
= (
cyclotomic_poly j))) & 1
<= i by
A5,
A6,
A9,
FINSEQ_1: 1;
hence ( not i
divides n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n implies (f
. i)
= (
cyclotomic_poly i)) by
A7,
A10,
FINSEQ_4: 15;
end;
reconsider FC1 =
<%(
1_
F_Complex )%> as
Element of cPRFC by
POLYNOM3:def 10;
<*FC1*> is
FinSequence of cPRFC;
then
reconsider h = (fm
^
<*
<%(
1_
F_Complex )%>*>) as
FinSequence of cPRFC by
FINSEQ_1: 75;
reconsider p = (
Product h) as
Polynomial of
F_Complex by
POLYNOM3:def 10;
take h, p;
thus p
= (
Product h);
A11: m
<= n by
A1,
NAT_1: 13;
then
A12: (
len fm)
= m by
A7,
FINSEQ_1: 17;
reconsider cpn = (
cyclotomic_poly n) as
Element of cPRFC by
POLYNOM3:def 10;
reconsider fn = (f
| (
Seg n)) as
FinSequence of cPRFC by
FINSEQ_1: 18;
1
<= n by
NAT_1: 53;
then
A13: n
in (
Seg n) by
FINSEQ_1: 1;
then
A14: (f
. n)
= (
cyclotomic_poly n) by
A5,
A8;
(
len
<*
<%(
1_
F_Complex )%>*>)
= 1 by
FINSEQ_1: 40;
hence (
dom h)
= (
Seg n) by
A1,
A12,
FINSEQ_1:def 7;
A15: (
dom fm)
= (
Seg m) by
A7,
A11,
FINSEQ_1: 17;
thus for i be non
zero
Element of
NAT st i
in (
Seg n) holds ( not i
divides n or i
= n implies (h
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & i
<> n implies (h
. i)
= (
cyclotomic_poly i))
proof
let i be non
zero
Element of
NAT ;
assume
A16: i
in (
Seg n);
per cases ;
suppose
A17: i
in (
Seg m);
then
A18: (fm
. i)
= (f
. i) & i
<= m by
FINSEQ_1: 1,
FUNCT_1: 49;
(h
. i)
= (fm
. i) by
A15,
A17,
FINSEQ_1:def 7;
hence thesis by
A5,
A1,
A8,
A16,
A18,
NAT_1: 13;
end;
suppose not i
in (
Seg m);
then not (1
<= i & i
<= m) by
FINSEQ_1: 1;
then
A19: n
<= i by
A1,
A16,
FINSEQ_1: 1,
NAT_1: 13;
A20: i
<= n by
A16,
FINSEQ_1: 1;
1
in (
Seg 1) by
FINSEQ_1: 1;
then 1
in (
dom
<*
<%(
1_
F_Complex )%>*>) by
FINSEQ_1: 38;
then (h
. n)
= (
<*
<%(
1_
F_Complex )%>*>
. 1) by
A1,
A12,
FINSEQ_1:def 7
.=
<%(
1_
F_Complex )%> by
FINSEQ_1: 40;
hence not i
divides n or i
= n implies (h
. i)
=
<%(
1_
F_Complex )%> by
A19,
A20,
XXREAL_0: 1;
thus thesis by
A19,
A20,
XXREAL_0: 1;
end;
end;
reconsider p1 =
<%(
1_
F_Complex )%> as
Element of cPRFC by
POLYNOM3:def 10;
reconsider Pfm = (
Product fm) as
Polynomial of
F_Complex by
POLYNOM3:def 10;
A21: (
Product h)
= ((
Product fm)
* p1) by
GROUP_4: 6
.= (Pfm
*'
<%(
1_
F_Complex )%>) by
POLYNOM3:def 10
.= (
Product fm) by
UPROOTS: 32;
f
= fn by
A7,
FINSEQ_2: 20
.= (fm
^
<*(
cyclotomic_poly n)*>) by
A5,
A1,
A13,
A14,
FINSEQ_5: 10;
then
A22: (
Product f)
= ((
Product fm)
* cpn) by
GROUP_4: 6;
(
unital_poly (
F_Complex ,n))
= (
Product f) by
A7,
A8,
Th49;
hence thesis by
A21,
A22,
POLYNOM3:def 10;
end;
theorem ::
UNIROOTS:51
Th51: for d be non
zero
Element of
NAT , i be
Element of
NAT holds (((
cyclotomic_poly d)
.
0 )
= 1 or ((
cyclotomic_poly d)
.
0 )
= (
- 1)) & ((
cyclotomic_poly d)
. i) is
integer
proof
deffunc
cp( non
zero
Nat) = (
cyclotomic_poly $1);
set cPRFC = the
carrier of (
Polynom-Ring
F_Complex );
set cFC = the
carrier of
F_Complex ;
defpred
P[ non
zero
Element of
NAT ] means ((
cp($1)
.
0 )
= 1 or (
cp($1)
.
0 )
= (
- 1)) & for i be
Element of
NAT holds (
cp($1)
. i) is
integer;
A1: (
- (
1_
F_Complex ))
= (
- 1) by
COMPLFLD: 2,
COMPLFLD: 8;
A2:
now
let k be non
zero
Element of
NAT such that
A3: for n be non
zero
Element of
NAT st n
< k holds
P[n];
A4: 1
<= k by
Lm1;
per cases by
A4,
XXREAL_0: 1;
suppose
A5: k
= 1;
now
let i be
Element of
NAT ;
per cases by
NAT_1: 23;
suppose i
=
0 ;
hence (
cp(k)
. i) is
integer by
A1,
A5,
Th48,
POLYNOM5: 38;
end;
suppose i
= 1;
hence (
cp(k)
. i) is
integer by
A5,
Th48,
COMPLFLD: 8,
POLYNOM5: 38;
end;
suppose i
>= 2;
hence (
cp(k)
. i) is
integer by
A5,
Th48,
COMPLFLD: 7,
POLYNOM5: 38;
end;
end;
hence
P[k] by
A1,
A5,
Th48,
POLYNOM5: 38;
end;
suppose
A6: k
> 1;
consider f be
FinSequence of cPRFC, p be
Polynomial of
F_Complex such that
A7: p
= (
Product f) and
A8: (
dom f)
= (
Seg k) and
A9: for i be non
zero
Element of
NAT st i
in (
Seg k) holds ( not i
divides k or i
= k implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides k & i
<> k implies (f
. i)
=
cp(i)) and
A10: (
unital_poly (
F_Complex ,k))
= ((
cyclotomic_poly k)
*' p) by
Th50;
defpred
G[
Nat,
object] means ex g be
FinSequence of cPRFC, p be
Polynomial of
F_Complex st g
= (f
| (
Seg $1)) & p
= (
Product g) & $2
= p & ((p
.
0 )
= 1 or (p
.
0 )
= (
- 1)) & for j be
Element of
NAT holds (p
. j) is
integer;
defpred
H[
Nat] means $1
in (
Seg (
len f)) implies ex x be
object st
G[$1, x];
A11: k
= (
len f) by
A8,
FINSEQ_1:def 3;
A12: for l be
Nat st
H[l] holds
H[(l
+ 1)]
proof
let l be
Nat;
assume
A13:
H[l];
assume
A14: (l
+ 1)
in (
Seg (
len f));
per cases ;
suppose
A15: l
=
0 ;
reconsider fl1 = (f
. (l
+ 1)) as
Element of cPRFC by
A8,
A11,
A14,
FINSEQ_2: 11;
reconsider g = (f
| (
Seg (l
+ 1))) as
FinSequence of cPRFC by
FINSEQ_1: 18;
reconsider p = (
Product g) as
Polynomial of
F_Complex by
POLYNOM3:def 10;
(
<*> cPRFC)
= (f
| (
Seg
0 ) qua
set);
then g
= ((
<*> cPRFC)
^
<*(f
. (l
+ 1))*>) by
A8,
A11,
A14,
A15,
FINSEQ_5: 10
.=
<*(f
. (l
+ 1))*> by
FINSEQ_1: 34;
then
A16: p
= fl1 by
FINSOP_1: 11;
take p;
take g;
take p;
thus g
= (f
| (
Seg (l
+ 1))) & p
= (
Product g) & p
= p;
1
divides k by
NAT_D: 6;
then
A17: (f
. 1)
=
cp() by
A6,
A9,
A11,
A14,
A15;
hence (p
.
0 )
= 1 or (p
.
0 )
= (
- 1) by
A1,
A15,
A16,
Th48,
POLYNOM5: 38;
let j be
Element of
NAT ;
thus (p
. j) is
integer
proof
per cases by
NAT_1: 23;
suppose j
=
0 ;
hence thesis by
A1,
A15,
A16,
A17,
Th48,
POLYNOM5: 38;
end;
suppose j
= 1;
hence thesis by
A15,
A16,
A17,
Th48,
COMPLFLD: 8,
POLYNOM5: 38;
end;
suppose j
>= 2;
hence thesis by
A15,
A16,
A17,
Th48,
COMPLFLD: 7,
POLYNOM5: 38;
end;
end;
end;
suppose
A18:
0
< l;
(l
+ 1)
<= (
len f) & l
<= (l
+ 1) by
A14,
FINSEQ_1: 1,
NAT_1: 12;
then
A19: l
<= (
len f) by
XXREAL_0: 2;
(
0
+ 1)
<= l by
A18,
NAT_1: 13;
then
consider x be
set such that
A20:
G[l, x] by
A13,
A19,
FINSEQ_1: 1;
reconsider fl1 = (f
. (l
+ 1)) as
Element of cPRFC by
A8,
A11,
A14,
FINSEQ_2: 11;
reconsider g1 = (f
| (
Seg (l
+ 1))) as
FinSequence of cPRFC by
FINSEQ_1: 18;
reconsider p1 = (
Product g1) as
Polynomial of
F_Complex by
POLYNOM3:def 10;
take p1;
take g1;
take p1;
thus g1
= (f
| (
Seg (l
+ 1))) & p1
= (
Product g1) & p1
= p1;
reconsider fl1p = fl1 as
Polynomial of
F_Complex by
POLYNOM3:def 10;
reconsider m1 = (
- 1) as
Element of
COMPLEX by
XCMPLX_0:def 2;
consider g be
FinSequence of cPRFC, p be
Polynomial of
F_Complex such that
A21: g
= (f
| (
Seg l)) and
A22: p
= (
Product g) and x
= p and
A23: (p
.
0 )
= 1 or (p
.
0 )
= (
- 1) and
A24: for j be
Element of
NAT holds (p
. j) is
integer by
A20;
g1
= (g
^
<*fl1*>) by
A8,
A11,
A14,
A21,
FINSEQ_5: 10;
then (
Product g1)
= ((
Product g)
* fl1) by
GROUP_4: 6;
then
A25: p1
= (p
*' fl1p) by
A22,
POLYNOM3:def 10;
thus thesis
proof
per cases ;
suppose not (l
+ 1)
divides k or (l
+ 1)
= k;
then
A26: fl1p
=
<%(
1_
F_Complex )%> by
A9,
A11,
A14;
consider r be
FinSequence of
F_Complex such that
A27: (
len r)
= (
0
+ 1) and
A28: (p1
.
0 )
= (
Sum r) and
A29: for m be
Element of
NAT st m
in (
dom r) holds (r
. m)
= ((p
. (m
-' 1))
* (fl1p
. ((
0
+ 1)
-' m))) by
A25,
POLYNOM3:def 9;
1
in (
dom r) by
A27,
FINSEQ_3: 25;
then
reconsider r1 = (r
. 1) as
Element of
F_Complex by
FINSEQ_2: 11;
r
=
<*r1*> by
A27,
FINSEQ_1: 40;
then
A30: (p1
.
0 )
= r1 by
A28,
RLVECT_1: 44;
1
in (
dom r) by
A27,
FINSEQ_3: 25;
then
A31: (p1
.
0 )
= ((p
. (1
-' 1))
* (fl1p
. ((
0
+ 1)
-' 1))) by
A29,
A30
.= ((p
. ((
0
+ 1)
-' 1))
* (fl1p
.
0 )) by
NAT_D: 34
.= ((p
.
0 )
* (fl1p
.
0 )) by
NAT_D: 34
.= ((p
.
0 )
* (
1_
F_Complex )) by
A26,
POLYNOM5: 32;
thus (p1
.
0 )
= 1 or (p1
.
0 )
= (
- 1)
proof
per cases by
A23;
suppose (p
.
0 )
= 1;
hence thesis by
A31;
end;
suppose (p
.
0 )
= (
- 1);
hence thesis by
A31;
end;
end;
let j be
Element of
NAT ;
consider r be
FinSequence of
F_Complex such that (
len r)
= (j
+ 1) and
A32: (p1
. j)
= (
Sum r) and
A33: for m be
Element of
NAT st m
in (
dom r) holds (r
. m)
= ((p
. (m
-' 1))
* (fl1p
. ((j
+ 1)
-' m))) by
A25,
POLYNOM3:def 9;
for i be
Element of
NAT st i
in (
dom r) holds (r
. i) is
integer
proof
let i be
Element of
NAT ;
reconsider pi1 = (p
. (i
-' 1)) as
Integer by
A24;
set j1i = ((j
+ 1)
-' i);
now
A34: j1i
=
0 or j1i
>= (
0
+ 1) by
NAT_1: 13;
per cases by
A34;
case j1i
=
0 ;
hence (fl1p
. j1i)
= 1 by
A26,
COMPLFLD: 8,
POLYNOM5: 32;
end;
case j1i
>= 1;
hence (fl1p
. j1i)
=
0 by
A26,
COMPLFLD: 7,
POLYNOM5: 32;
end;
end;
then
reconsider fl1pj1i = (fl1p
. ((j
+ 1)
-' i)) as
Integer;
assume i
in (
dom r);
then (r
. i)
= ((p
. (i
-' 1))
* (fl1p
. ((j
+ 1)
-' i))) by
A33
.= (pi1
* fl1pj1i);
hence thesis;
end;
hence thesis by
A32,
Th4;
end;
suppose
A35: (l
+ 1)
divides k & (l
+ 1)
<> k;
consider r be
FinSequence of
F_Complex such that
A36: (
len r)
= (
0
+ 1) and
A37: (p1
.
0 )
= (
Sum r) and
A38: for m be
Element of
NAT st m
in (
dom r) holds (r
. m)
= ((p
. (m
-' 1))
* (fl1p
. ((
0
+ 1)
-' m))) by
A25,
POLYNOM3:def 9;
1
in (
dom r) by
A36,
FINSEQ_3: 25;
then
reconsider r1 = (r
. 1) as
Element of
F_Complex by
FINSEQ_2: 11;
r
=
<*r1*> by
A36,
FINSEQ_1: 40;
then
A39: (p1
.
0 )
= r1 by
A37,
RLVECT_1: 44;
1
in (
dom r) by
A36,
FINSEQ_3: 25;
then
A40: (p1
.
0 )
= ((p
. (1
-' 1))
* (fl1p
. ((
0
+ 1)
-' 1))) by
A38,
A39
.= ((p
. ((
0
+ 1)
-' 1))
* (fl1p
.
0 )) by
NAT_D: 34
.= ((p
.
0 )
* (fl1p
.
0 )) by
NAT_D: 34;
(l
+ 1)
<= k by
A35,
NAT_D: 7;
then
A41: (l
+ 1)
< k by
A35,
XXREAL_0: 1;
A42: (l
+ 1)
in
NAT by
ORDINAL1:def 12;
A43: fl1p
=
cp(+) by
A9,
A11,
A14,
A35;
then
reconsider fl1p0 = (fl1p
.
0 ) as
Integer by
A3,
A41,
A42;
A44: fl1p0
= 1 or fl1p0
= m1 by
A3,
A43,
A41,
A42;
thus (p1
.
0 )
= 1 or (p1
.
0 )
= (
- 1)
proof
per cases by
A23;
suppose (p
.
0 )
= 1;
hence thesis by
A3,
A43,
A41,
A40;
end;
suppose (p
.
0 )
= (
- 1);
hence thesis by
A40,
A44;
end;
end;
let j be
Element of
NAT ;
consider r be
FinSequence of
F_Complex such that (
len r)
= (j
+ 1) and
A45: (p1
. j)
= (
Sum r) and
A46: for m be
Element of
NAT st m
in (
dom r) holds (r
. m)
= ((p
. (m
-' 1))
* (fl1p
. ((j
+ 1)
-' m))) by
A25,
POLYNOM3:def 9;
for i be
Element of
NAT st i
in (
dom r) holds (r
. i) is
integer
proof
let i be
Element of
NAT ;
(l
+ 1)
in
NAT by
ORDINAL1:def 12;
then
reconsider fl1pj1i = (fl1p
. ((j
+ 1)
-' i)) as
Integer by
A3,
A43,
A41;
reconsider pi1 = (p
. (i
-' 1)) as
Integer by
A24;
assume i
in (
dom r);
then (r
. i)
= ((p
. (i
-' 1))
* (fl1p
. ((j
+ 1)
-' i))) by
A46
.= (pi1
* fl1pj1i);
hence thesis;
end;
hence thesis by
A45,
Th4;
end;
end;
end;
end;
defpred
C[
Nat] means (
cp(k)
. $1) is
integer;
A47: ((
0
+ 1)
-' 1)
=
0 by
NAT_D: 34;
A48:
H[
0 ] by
FINSEQ_1: 1;
for l be
Nat holds
H[l] from
NAT_1:sch 2(
A48,
A12);
then
A49: for l be
Nat st l
in (
Seg (
len f)) holds ex x be
object st
G[l, x];
consider F be
FinSequence such that (
dom F)
= (
Seg (
len f)) and
A50: for i be
Nat st i
in (
Seg (
len f)) holds
G[i, (F
. i)] from
FINSEQ_1:sch 1(
A49);
consider g be
FinSequence of cPRFC, p1 be
Polynomial of
F_Complex such that
A51: g
= (f
| (
Seg k)) & p1
= (
Product g) and (F
. k)
= p1 and
A52: (p1
.
0 )
= 1 or (p1
.
0 )
= (
- 1) and
A53: for j be
Element of
NAT holds (p1
. j) is
integer by
A11,
A50,
FINSEQ_1: 3;
A54: p
= p1 by
A7,
A11,
A51,
FINSEQ_3: 49;
A55:
now
let m be
Nat;
reconsider m1 = m as
Element of
NAT by
ORDINAL1:def 12;
consider r be
FinSequence of cFC such that
A56: (
len r)
= (m
+ 1) and
A57: ((
unital_poly (
F_Complex ,k))
. m)
= (
Sum r) and
A58: for l be
Element of
NAT st l
in (
dom r) holds (r
. l)
= ((p
. (l
-' 1))
* (
cp(k)
. ((m1
+ 1)
-' l))) by
A10,
POLYNOM3:def 9;
reconsider Src = (
Sum r) as
Element of
COMPLEX by
COMPLFLD:def 1;
now
per cases ;
suppose m1
=
0 ;
hence Src is
integer by
A1,
A57,
Th38;
end;
suppose m1
= k;
hence Src is
integer by
A57,
Th38,
COMPLFLD: 8;
end;
suppose m1
<>
0 & m1
<> k;
hence Src is
integer by
A57,
Th39,
COMPLFLD: 7;
end;
end;
then
reconsider Sr = Src as
Integer;
A59: (((1,1)
-cut r)
^ (((1
+ 1),(
len r))
-cut r))
= r by
A56,
FINSEQ_6: 135,
NAT_1: 11;
set s = (((1
+ 1),(
len r))
-cut r);
reconsider Ssc = (
Sum s) as
Element of
COMPLEX by
COMPLFLD:def 1;
assume
A60: for n be
Nat st n
< m holds
C[n];
now
let i be
Element of
NAT ;
assume
A61: i
in (
dom s);
per cases ;
suppose (
len r)
< 2;
then s
=
{} by
FINSEQ_6:def 4;
hence (s
. i) is
integer;
end;
suppose
A62: (1
+ 1)
<= (
len r);
then
A63: ((
len s)
+ (1
+ 1))
= ((
len r)
+ 1) by
FINSEQ_6:def 4;
per cases ;
suppose m
=
0 ;
hence (s
. i) is
integer by
A56,
A62;
end;
suppose
A64: m
>
0 ;
i
<>
0 by
A61,
FINSEQ_3: 25;
then
reconsider cpkmi = (
cp(k)
. (m
-' i)) as
Integer by
A60,
A64,
NAT_2: 9;
reconsider ppi = (p
. i) as
Integer by
A53,
A54;
i
<>
0 by
A61,
FINSEQ_3: 25;
then
consider i1 be
Nat such that
A65: i
= (i1
+ 1) by
NAT_1: 6;
A66: i
<= (
len s) by
A61,
FINSEQ_3: 25;
then 1
<= (i
+ 1) & (i
+ 1)
<= ((
len s)
+ 1) by
NAT_1: 11,
XREAL_1: 6;
then (1
+ i)
in (
dom r) by
A63,
FINSEQ_3: 25;
then
A67: (r
. (1
+ i))
= ((p
. ((1
+ i)
-' 1))
* (
cp(k)
. ((m
+ 1)
-' (1
+ i)))) by
A58
.= ((p
. ((i
+ 1)
-' 1))
* (
cp(k)
. (((m
+ 1)
-' 1)
-' i))) by
NAT_2: 30
.= ((p
. i)
* (
cp(k)
. (((m
+ 1)
-' 1)
-' i))) by
NAT_D: 34
.= (ppi
* cpkmi) by
NAT_D: 34;
i1
< (
len s) by
A66,
A65,
NAT_1: 13;
then (s
. i)
= (r
. ((1
+ 1)
+ i1)) by
A62,
A65,
FINSEQ_6:def 4
.= (r
. (1
+ i)) by
A65;
hence (s
. i) is
integer by
A67;
end;
end;
end;
then
reconsider Ss = Ssc as
Integer by
Th4;
A68: 1
<= (
len r) by
A56,
NAT_1: 11;
then
A69: 1
in (
dom r) by
FINSEQ_3: 25;
then
reconsider r1 = (r
. 1) as
Element of cFC by
FINSEQ_2: 11;
reconsider r1c = r1 as
Element of
COMPLEX by
COMPLFLD:def 1;
((1,1)
-cut r)
=
<*r1*> by
A68,
FINSEQ_6: 132;
then (
Sum r)
= (r1
+ (
Sum s)) by
A59,
FVSUM_1: 72;
then r1c
= (Sr
- Ss);
then
reconsider r1i = r1 as
Integer;
A70: r1i
= ((p
. (1
-' 1))
* (
cp(k)
. ((m
+ 1)
-' 1))) by
A58,
A69
.= ((p
.
0 )
* (
cp(k)
. m1)) by
A47,
NAT_D: 34;
per cases by
A7,
A11,
A51,
A52,
FINSEQ_3: 49;
suppose (p
.
0 )
= 1;
hence
C[m] by
A70;
end;
suppose (p
.
0 )
= (
- 1);
then r1
= ((
- (
1_
F_Complex ))
* (
cp(k)
. m1)) by
A70,
COMPLFLD: 2,
COMPLFLD: 8
.= (
- ((
1_
F_Complex )
* (
cp(k)
. m1))) by
VECTSP_1: 9
.= (
- (
cp(k)
. m1));
then (
0.
F_Complex )
= ((
- (
cp(k)
. m1))
+ (
- r1)) by
RLVECT_1:def 10
.= ((
- r1)
- (
cp(k)
. m1));
then (
- r1)
= (
cp(k)
. m) by
VECTSP_1: 19;
then (
- r1i)
= (
cp(k)
. m) by
COMPLFLD: 2;
hence
C[m];
end;
end;
A71: for i be
Nat holds
C[i] from
NAT_1:sch 4(
A55);
consider r be
FinSequence of cFC such that
A72: (
len r)
= (
0
+ 1) and
A73: ((
unital_poly (
F_Complex ,k))
.
0 )
= (
Sum r) and
A74: for l be
Element of
NAT st l
in (
dom r) holds (r
. l)
= ((p
. (l
-' 1))
* (
cp(k)
. ((
0
+ 1)
-' l))) by
A10,
POLYNOM3:def 9;
A75: 1
in (
dom r) by
A72,
FINSEQ_3: 25;
then
reconsider r1 = (r
. 1) as
Element of cFC by
FINSEQ_2: 11;
r
=
<*r1*> by
A72,
FINSEQ_1: 40;
then
A76: (
Sum r)
= (r
. 1) by
RLVECT_1: 44
.= ((p
.
0 )
* (
cp(k)
.
0 )) by
A74,
A47,
A75;
(
cp(k)
.
0 )
= 1 or (
cp(k)
.
0 )
= (
- 1)
proof
per cases by
A7,
A11,
A51,
A52,
FINSEQ_3: 49;
suppose (p
.
0 )
= 1;
hence thesis by
A1,
A73,
A76,
Th38;
end;
suppose (p
.
0 )
= (
- 1);
then (
- (
1_
F_Complex ))
= ((
- (
1_
F_Complex ))
* (
cp(k)
.
0 )) by
A1,
A73,
A76,
Th38
.= (
- ((
1_
F_Complex )
* (
cp(k)
.
0 ))) by
VECTSP_1: 9
.= (
- (
cp(k)
.
0 ));
hence thesis by
COMPLFLD: 8,
RLVECT_1: 18;
end;
end;
hence
P[k] by
A71;
end;
end;
for d be non
zero
Element of
NAT holds
P[d] from
CompIndNE(
A2);
hence thesis;
end;
theorem ::
UNIROOTS:52
Th52: for d be non
zero
Element of
NAT , z be
Element of
F_Complex st z is
Integer holds (
eval ((
cyclotomic_poly d),z)) is
Integer
proof
let d be non
zero
Element of
NAT , z be
Element of
F_Complex such that
A1: z is
Integer;
set phi = (
cyclotomic_poly d);
consider F be
FinSequence of
F_Complex such that
A2: (
eval (phi,z))
= (
Sum F) and (
len F)
= (
len phi) and
A3: for i be
Element of
NAT st i
in (
dom F) holds (F
. i)
= ((phi
. (i
-' 1))
* ((
power
F_Complex )
. (z,(i
-' 1)))) by
POLYNOM4:def 2;
for i be
Element of
NAT st i
in (
dom F) holds (F
. i) is
Integer
proof
let i be
Element of
NAT ;
assume i
in (
dom F);
then
A4: (F
. i)
= ((phi
. (i
-' 1))
* ((
power
F_Complex )
. (z,(i
-' 1)))) by
A3;
reconsider i2 = ((
power
F_Complex )
. (z,(i
-' 1))) as
Integer by
A1,
Th13;
reconsider i1 = (phi
. (i
-' 1)) as
Integer by
Th51;
(F
. i)
= (i1
* i2) by
A4;
hence thesis;
end;
hence thesis by
A2,
Th14;
end;
theorem ::
UNIROOTS:53
Th53: for n,ni be non
zero
Element of
NAT , f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), s be
finite
Subset of
F_Complex st s
= { y where y be
Element of (
MultGroup
F_Complex ) : (
ord y)
divides n & not (
ord y)
divides ni & (
ord y)
<> n } & (
dom f)
= (
Seg n) & for i be non
zero
Element of
NAT st i
in (
dom f) holds ( not i
divides n or i
divides ni or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides ni & i
<> n implies (f
. i)
= (
cyclotomic_poly i)) holds (
Product f)
= (
poly_with_roots ((s,1)
-bag ))
proof
set cMGFC = the
carrier of (
MultGroup
F_Complex );
set cPRFC = the
carrier of (
Polynom-Ring
F_Complex );
let n,ni be non
zero
Element of
NAT ;
let f be
FinSequence of cPRFC, s be
finite
Subset of
F_Complex such that
A1: s
= { y where y be
Element of cMGFC : (
ord y)
divides n & not (
ord y)
divides ni & (
ord y)
<> n } and
A2: (
dom f)
= (
Seg n) and
A3: for i be non
zero
Element of
NAT st i
in (
dom f) holds ( not i
divides n or i
divides ni or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides ni & i
<> n implies (f
. i)
= (
cyclotomic_poly i));
deffunc
MG(
Nat) = { y where y be
Element of cMGFC : y
in s & (
ord y)
<= $1 };
A4:
now
let i be
Element of
NAT ;
MG(i)
c= s
proof
let x be
object;
assume x
in
MG(i);
then ex y be
Element of cMGFC st x
= y & y
in s & (
ord y)
<= i;
hence thesis;
end;
hence
MG(i) is
finite
Subset of
F_Complex by
XBOOLE_1: 1;
end;
then
reconsider sB =
MG(n) as
finite
Subset of
F_Complex ;
A5: (
len f)
= n by
A2,
FINSEQ_1:def 3;
defpred
P[
Nat,
set] means for fi be
FinSequence of cPRFC st fi
= (f
| (
Seg $1)) holds $2
= (
Product fi);
A6:
now
let i be
Nat;
assume i
in (
Seg (
len f));
reconsider fi = (f
| (
Seg i)) as
FinSequence of cPRFC by
FINSEQ_1: 18;
set x = (
Product fi);
take x;
thus
P[i, x];
end;
consider F be
FinSequence of cPRFC such that (
dom F)
= (
Seg (
len f)) and
A7: for i be
Nat st i
in (
Seg (
len f)) holds
P[i, (F
. i)] from
FINSEQ_1:sch 5(
A6);
defpred
R[
Nat] means ex t be
finite
Subset of
F_Complex st t
=
MG($1) & (F
. $1)
= (
poly_with_roots ((t,1)
-bag ));
A8: for i be
Element of
NAT st 1
<= i & i
< (
len f) holds
R[i] implies
R[(i
+ 1)]
proof
let i be
Element of
NAT such that
A9: 1
<= i and
A10: i
< (
len f) and
A11:
R[i];
reconsider fi = (f
| (
Seg i)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
i
in (
Seg (
len f)) by
A9,
A10,
FINSEQ_1: 1;
then
A12: (F
. i)
= (
Product fi) by
A7;
reconsider fi1 = (f
| (
Seg (i
+ 1))) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
A13: (i
+ 1)
<= (
len f) by
A10,
NAT_1: 13;
then (i
+ 1)
= (
min ((i
+ 1),(
len f))) by
XXREAL_0:def 9;
then
A14: (
len fi1)
= (i
+ 1) by
FINSEQ_2: 21;
(i
+ 1)
in
NAT by
ORDINAL1:def 12;
then
reconsider sB =
MG(+) as
finite
Subset of
F_Complex by
A4;
take sB;
thus sB
=
MG(+);
set B = ((sB,1)
-bag );
consider sb be
finite
Subset of
F_Complex such that
A15: sb
=
MG(i) and
A16: (F
. i)
= (
poly_with_roots ((sb,1)
-bag )) by
A11;
1
<= (i
+ 1) by
A9,
NAT_1: 13;
then
A17: (i
+ 1)
in (
Seg (
len f)) by
A13,
FINSEQ_1: 1;
then
A18: (i
+ 1)
in (
dom f) by
FINSEQ_1:def 3;
A19: ((f
| (
Seg (i
+ 1)))
. (i
+ 1))
= (f
. (i
+ 1)) by
FINSEQ_1: 4,
FUNCT_1: 49;
then
reconsider fi1d1 = (fi1
. (i
+ 1)) as
Element of the
carrier of (
Polynom-Ring
F_Complex ) by
A18,
FINSEQ_2: 11;
reconsider fi1d1p = fi1d1 as
Polynomial of
F_Complex by
POLYNOM3:def 10;
A20: (F
. (i
+ 1))
= (
Product fi1) by
A7,
A17;
set b = ((sb,1)
-bag );
fi
= (fi1
| (
Seg i)) by
Lm2,
NAT_1: 12;
then fi1
= (fi
^
<*fi1d1*>) by
A14,
FINSEQ_3: 55;
then (
Product fi1)
= ((
Product fi)
* fi1d1) by
GROUP_4: 6;
then
A21: (
Product fi1)
= ((
poly_with_roots b)
*' fi1d1p) by
A12,
A16,
POLYNOM3:def 10;
per cases ;
suppose
A22: not (i
+ 1)
divides n or (i
+ 1)
divides ni or (i
+ 1)
= n;
A23:
now
let x be
object;
hereby
assume x
in sB;
then
consider y be
Element of (
MultGroup
F_Complex ) such that
A24: x
= y and
A25: y
in s and
A26: (
ord y)
<= (i
+ 1);
ex y1 be
Element of cMGFC st y
= y1 & (
ord y1)
divides n & not (
ord y1)
divides ni & (
ord y1)
<> n by
A1,
A25;
then (
ord y)
< (i
+ 1) by
A22,
A26,
XXREAL_0: 1;
then (
ord y)
<= i by
NAT_1: 13;
hence x
in sb by
A15,
A24,
A25;
end;
assume x
in sb;
then
consider y be
Element of (
MultGroup
F_Complex ) such that
A27: x
= y & y
in s and
A28: (
ord y)
<= i by
A15;
(
ord y)
<= (i
+ 1) by
A28,
NAT_1: 12;
hence x
in sB by
A27;
end;
(f
. (i
+ 1))
=
<%(
1_
F_Complex )%> by
A3,
A18,
A22;
then (F
. (i
+ 1))
= (
poly_with_roots b) by
A20,
A19,
A21,
UPROOTS: 32
.= (
poly_with_roots B) by
A23,
TARSKI: 2;
hence thesis;
end;
suppose
A29: (i
+ 1)
divides n & not (i
+ 1)
divides ni & (i
+ 1)
<> n;
consider scb be non
empty
finite
Subset of
F_Complex such that
A30: scb
= { y where y be
Element of cMGFC : (
ord y)
= (i
+ 1) } and
A31: (
cyclotomic_poly (i
+ 1))
= (
poly_with_roots ((scb,1)
-bag )) by
Def5;
now
let x be
object;
hereby
assume x
in sB;
then
consider y be
Element of cMGFC such that
A32: x
= y and
A33: y
in s and
A34: (
ord y)
<= (i
+ 1);
(
ord y)
<= i or (
ord y)
= (i
+ 1) by
A34,
NAT_1: 8;
then y
in sb or y
in scb by
A15,
A30,
A33;
hence x
in (sb
\/ scb) by
A32,
XBOOLE_0:def 3;
end;
assume
A35: x
in (sb
\/ scb);
per cases by
A35,
XBOOLE_0:def 3;
suppose x
in sb;
then
consider y be
Element of cMGFC such that
A36: x
= y & y
in s and
A37: (
ord y)
<= i by
A15;
(
ord y)
<= (i
+ 1) by
A37,
NAT_1: 12;
hence x
in sB by
A36;
end;
suppose x
in scb;
then
consider y be
Element of cMGFC such that
A38: x
= y and
A39: (
ord y)
= (i
+ 1) by
A30;
y
in s by
A1,
A29,
A39;
hence x
in sB by
A38,
A39;
end;
end;
then
A40: sB
= (sb
\/ scb) by
TARSKI: 2;
set cb = ((scb,1)
-bag );
A41: sb
misses scb
proof
assume (sb
/\ scb)
<>
{} ;
then
consider x be
object such that
A42: x
in (sb
/\ scb) by
XBOOLE_0:def 1;
x
in scb by
A42,
XBOOLE_0:def 4;
then
A43: ex y2 be
Element of cMGFC st x
= y2 & (
ord y2)
= (i
+ 1) by
A30;
x
in sb by
A42,
XBOOLE_0:def 4;
then ex y1 be
Element of cMGFC st x
= y1 & y1
in s & (
ord y1)
<= i by
A15;
hence contradiction by
A43,
NAT_1: 13;
end;
(f
. (i
+ 1))
= (
poly_with_roots cb) by
A3,
A18,
A29,
A31;
then (F
. (i
+ 1))
= ((
poly_with_roots b)
*' (
poly_with_roots cb)) by
A7,
A17,
A19,
A21
.= (
poly_with_roots (b
+ cb)) by
UPROOTS: 64
.= (
poly_with_roots B) by
A40,
A41,
UPROOTS: 10;
hence thesis;
end;
end;
now
let x be
object;
hereby
assume
A44: x
in s;
then
consider y be
Element of (
MultGroup
F_Complex ) such that
A45: x
= y and
A46: (
ord y)
divides n and not (
ord y)
divides ni and (
ord y)
<> n by
A1;
(
ord y)
<= n by
A46,
NAT_D: 7;
hence x
in sB by
A44,
A45;
end;
assume x
in sB;
then ex y be
Element of (
MultGroup
F_Complex ) st y
= x & y
in s & (
ord y)
<= n;
hence x
in s;
end;
then
A47: s
= sB by
TARSKI: 2;
A48: (
0
+ 1)
<= n by
NAT_1: 13;
A49:
R[1]
proof
reconsider t =
MG() as
finite
Subset of
F_Complex by
A4;
take t;
thus t
=
MG();
reconsider f1 = (f
| (
Seg 1)) as
FinSequence of cPRFC by
FINSEQ_1: 18;
A50: 1
in (
dom f) by
A5,
A48,
FINSEQ_3: 25;
A51: 1
divides ni by
NAT_D: 6;
now
assume t is non
empty;
then
consider x be
object such that
A52: x
in t;
consider y be
Element of cMGFC such that x
= y and
A53: y
in s and
A54: (
ord y)
<= 1 by
A52;
consider y1 be
Element of cMGFC such that
A55: y
= y1 and
A56: (
ord y1)
divides n and
A57: not (
ord y1)
divides ni and (
ord y1)
<> n by
A1,
A53;
now
assume (
ord y1)
=
0 ;
then ex u be
Nat st n
= (
0
* u) by
A56,
NAT_D:def 3;
hence contradiction;
end;
then (
0
+ 1)
<= (
ord y1) by
NAT_1: 13;
hence contradiction by
A51,
A54,
A55,
A57,
XXREAL_0: 1;
end;
then
A58: ((t,1)
-bag )
= (
EmptyBag the
carrier of
F_Complex ) by
UPROOTS: 9;
A59: 1
in (
Seg (
len f)) by
A5,
A48,
FINSEQ_1: 1;
then 1
in (
dom f) by
FINSEQ_1:def 3;
then
reconsider fd1 = (f
. 1) as
Element of cPRFC by
FINSEQ_2: 11;
f1
=
<*(f
. 1)*> by
A5,
A48,
Th1;
then (F
. 1)
= (
Product
<*fd1*>) by
A7,
A59
.= fd1 by
FINSOP_1: 11
.=
<%(
1_
F_Complex )%> by
A3,
A50,
A51;
hence thesis by
A58,
UPROOTS: 60;
end;
for i be
Element of
NAT st 1
<= i & i
<= (
len f) holds
R[i] from
INT_1:sch 7(
A49,
A8);
then f
= (f
| (
Seg (
len f))) & ex S be
finite
Subset of
F_Complex st S
=
MG(len) & (F
. (
len f))
= (
poly_with_roots ((S,1)
-bag )) by
A5,
A48,
FINSEQ_3: 49;
hence thesis by
A5,
A7,
A47,
FINSEQ_1: 3;
end;
theorem ::
UNIROOTS:54
Th54: for n,ni be non
zero
Element of
NAT st ni
< n & ni
divides n holds ex f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), p be
Polynomial of
F_Complex st p
= (
Product f) & (
dom f)
= (
Seg n) & (for i be non
zero
Element of
NAT st i
in (
Seg n) holds ( not i
divides n or i
divides ni or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides ni & i
<> n implies (f
. i)
= (
cyclotomic_poly i))) & (
unital_poly (
F_Complex ,n))
= (((
unital_poly (
F_Complex ,ni))
*' (
cyclotomic_poly n))
*' p)
proof
set cMGFC = the
carrier of (
MultGroup
F_Complex );
set cPRFC = the
carrier of (
Polynom-Ring
F_Complex );
let n,ni be non
zero
Element of
NAT such that
A1: ni
< n and
A2: ni
divides n;
set rbp = { y where y be
Element of cMGFC : (
ord y)
divides n & not (
ord y)
divides ni & (
ord y)
<> n };
rbp
c= (n
-roots_of_1 )
proof
let x be
object;
assume x
in rbp;
then ex y be
Element of cMGFC st x
= y & (
ord y)
divides n & not (
ord y)
divides ni & (
ord y)
<> n;
hence thesis by
Th34;
end;
then
reconsider rbp as
finite
Subset of
F_Complex by
XBOOLE_1: 1;
A3: (n
-roots_of_1 )
c= cMGFC by
Th32;
set bp = ((rbp,1)
-bag );
defpred
P[
set,
set] means ex d be non
zero
Nat st $1
= d & ( not d
divides n or d
divides ni or d
= n implies $2
=
<%(
1_
F_Complex )%>) & (d
divides n & not d
divides ni & d
<> n implies $2
= (
cyclotomic_poly d));
A4:
now
let i be
Nat;
assume
A5: i
in (
Seg n);
then
A6: i is non
zero by
FINSEQ_1: 1;
per cases ;
suppose
A7: not i
divides n or i
divides ni or i
= n;
<%(
1_
F_Complex )%> is
Element of cPRFC by
POLYNOM3:def 10;
hence ex x be
Element of cPRFC st
P[i, x] by
A6,
A7;
end;
suppose
A8: i
divides n & not i
divides ni & i
<> n;
reconsider i9 = i as non
zero
Element of
NAT by
A5,
FINSEQ_1: 1;
(
cyclotomic_poly i9) is
Element of cPRFC by
POLYNOM3:def 10;
hence ex x be
Element of cPRFC st
P[i, x] by
A8;
end;
end;
consider f be
FinSequence of cPRFC such that
A9: (
dom f)
= (
Seg n) and
A10: for i be
Nat st i
in (
Seg n) holds
P[i, (f
. i)] from
FINSEQ_1:sch 5(
A4);
A11:
now
let i be non
zero
Element of
NAT ;
assume i
in (
Seg n);
then ex d be non
zero
Nat st i
= d & ( not d
divides n or d
divides ni or d
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (d
divides n & not d
divides ni & d
<> n implies (f
. i)
= (
cyclotomic_poly d)) by
A10;
hence ( not i
divides n or i
divides ni or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides ni & i
<> n implies (f
. i)
= (
cyclotomic_poly i));
end;
then (
Product f)
= (
poly_with_roots bp) by
A9,
Th53;
then
reconsider p = (
Product f) as
Polynomial of
F_Complex ;
take f;
take p;
thus p
= (
Product f);
thus (
dom f)
= (
Seg n) by
A9;
thus for i be non
zero
Element of
NAT st i
in (
Seg n) holds ( not i
divides n or i
divides ni or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides ni & i
<> n implies (f
. i)
= (
cyclotomic_poly i)) by
A11;
set b = (((n
-roots_of_1 ),1)
-bag ), bi = (((ni
-roots_of_1 ),1)
-bag );
consider rbn be non
empty
finite
Subset of
F_Complex such that
A12: rbn
= { y where y be
Element of cMGFC : (
ord y)
= n } and
A13: (
cyclotomic_poly n)
= (
poly_with_roots ((rbn,1)
-bag )) by
Def5;
set bn = ((rbn,1)
-bag );
(ni
-roots_of_1 )
misses rbn
proof
assume ((ni
-roots_of_1 )
/\ rbn)
<>
{} ;
then
consider x be
object such that
A14: x
in ((ni
-roots_of_1 )
/\ rbn) by
XBOOLE_0:def 1;
x
in rbn by
A14,
XBOOLE_0:def 4;
then
A15: ex y1 be
Element of cMGFC st x
= y1 & (
ord y1)
= n by
A12;
x
in (ni
-roots_of_1 ) by
A14,
XBOOLE_0:def 4;
then ex y be
Element of cMGFC st x
= y & (
ord y)
divides ni by
Th36;
hence contradiction by
A1,
A15,
NAT_D: 7;
end;
then
A16: (bi
+ bn)
= ((((ni
-roots_of_1 )
\/ rbn),1)
-bag ) by
UPROOTS: 10;
set rbibn = ((ni
-roots_of_1 )
\/ rbn);
reconsider rbibn as
finite
Subset of
F_Complex ;
A17: (ni
-roots_of_1 )
c= (n
-roots_of_1 ) by
A2,
Th28;
now
let x be
object;
hereby
assume
A18: x
in (n
-roots_of_1 );
then
reconsider y = x as
Element of cMGFC by
A3;
A19: (
ord y)
divides n by
A18,
Th34;
per cases ;
suppose (
ord y)
= n;
then y
in rbn by
A12;
then y
in rbibn by
XBOOLE_0:def 3;
hence x
in (rbibn
\/ rbp) by
XBOOLE_0:def 3;
end;
suppose (
ord y)
<> n & not (
ord y)
divides ni;
then y
in rbp by
A19;
hence x
in (rbibn
\/ rbp) by
XBOOLE_0:def 3;
end;
suppose (
ord y)
<> n & (
ord y)
divides ni;
then x
in (ni
-roots_of_1 ) by
Th34;
then x
in rbibn by
XBOOLE_0:def 3;
hence x
in (rbibn
\/ rbp) by
XBOOLE_0:def 3;
end;
end;
assume x
in (rbibn
\/ rbp);
then
A20: x
in rbibn or x
in rbp by
XBOOLE_0:def 3;
per cases by
A20,
XBOOLE_0:def 3;
suppose x
in (ni
-roots_of_1 );
hence x
in (n
-roots_of_1 ) by
A17;
end;
suppose x
in rbn;
then ex y be
Element of cMGFC st x
= y & (
ord y)
= n by
A12;
hence x
in (n
-roots_of_1 ) by
Th34;
end;
suppose x
in rbp;
then ex y be
Element of cMGFC st x
= y & (
ord y)
divides n & ( not (
ord y)
divides ni) & (
ord y)
<> n;
hence x
in (n
-roots_of_1 ) by
Th34;
end;
end;
then
A21: (n
-roots_of_1 )
= (rbibn
\/ rbp) by
TARSKI: 2;
set bibn = ((rbibn,1)
-bag );
A22: (
unital_poly (
F_Complex ,ni))
= (
poly_with_roots bi) by
Th46;
rbibn
misses rbp
proof
assume (rbibn
/\ rbp)
<>
{} ;
then
consider x be
object such that
A23: x
in (rbibn
/\ rbp) by
XBOOLE_0:def 1;
x
in rbp by
A23,
XBOOLE_0:def 4;
then
A24: ex y be
Element of cMGFC st x
= y & (
ord y)
divides n & ( not (
ord y)
divides ni) & (
ord y)
<> n;
A25: x
in rbibn by
A23,
XBOOLE_0:def 4;
per cases by
A25,
XBOOLE_0:def 3;
suppose x
in (ni
-roots_of_1 );
then ex y be
Element of cMGFC st x
= y & (
ord y)
divides ni by
Th36;
hence contradiction by
A24;
end;
suppose x
in rbn;
then ex y be
Element of cMGFC st x
= y & (
ord y)
= n by
A12;
hence contradiction by
A24;
end;
end;
then
A26: b
= (bibn
+ bp) by
A21,
UPROOTS: 10;
(
unital_poly (
F_Complex ,n))
= (
poly_with_roots b) by
Th46
.= ((
poly_with_roots bibn)
*' (
poly_with_roots bp)) by
A26,
UPROOTS: 64
.= (((
unital_poly (
F_Complex ,ni))
*' (
cyclotomic_poly n))
*' (
poly_with_roots bp)) by
A13,
A16,
A22,
UPROOTS: 64;
hence thesis by
A9,
A11,
Th53;
end;
theorem ::
UNIROOTS:55
Th55: for i be
Integer, c be
Element of
F_Complex , f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), p be
Polynomial of
F_Complex st p
= (
Product f) & c
= i & for i be non
zero
Element of
NAT st i
in (
dom f) holds (f
. i)
=
<%(
1_
F_Complex )%> or (f
. i)
= (
cyclotomic_poly i) holds (
eval (p,c)) is
integer
proof
A1: (
1_.
F_Complex )
= ((
1_
F_Complex )
* (
1_.
F_Complex )) by
POLYNOM5: 27
.=
<%(
1_
F_Complex )%> by
POLYNOM5: 29;
let i be
Integer, c be
Element of
F_Complex , f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), p be
Polynomial of
F_Complex such that
A2: p
= (
Product f) and
A3: c
= i and
A4: for i be non
zero
Element of
NAT st i
in (
dom f) holds (f
. i)
=
<%(
1_
F_Complex )%> or (f
. i)
= (
cyclotomic_poly i);
A5: (
eval ((
1_.
F_Complex ),c))
= 1 by
COMPLFLD: 8,
POLYNOM4: 18;
per cases ;
suppose (
len f)
=
0 ;
then f
= (
<*> the
carrier of (
Polynom-Ring
F_Complex ));
then p
= (
1_ (
Polynom-Ring
F_Complex )) by
A2,
GROUP_4: 8
.= (
1. (
Polynom-Ring
F_Complex ));
hence thesis by
A5,
POLYNOM3:def 10;
end;
suppose
A6:
0
< (
len f);
defpred
P[
Nat,
set] means for fi be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) st fi
= (f
| (
Seg $1)) holds $2
= (
Product fi);
A7: f
= (f
| (
Seg (
len f))) by
FINSEQ_3: 49;
A8:
now
let i be
Nat;
assume i
in (
Seg (
len f));
reconsider fi = (f
| (
Seg i)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
set x = (
Product fi);
take x;
thus
P[i, x];
end;
consider F be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) such that (
dom F)
= (
Seg (
len f)) and
A9: for i be
Nat st i
in (
Seg (
len f)) holds
P[i, (F
. i)] from
FINSEQ_1:sch 5(
A8);
defpred
R[
Nat] means ex r be
Polynomial of
F_Complex st r
= (F
. $1) & (
eval (r,c)) is
integer;
A10:
now
let i be
Element of
NAT such that
A11: 1
<= i and
A12: i
< (
len f);
A13: i
in (
Seg (
len f)) by
A11,
A12,
FINSEQ_1: 1;
reconsider fi1 = (f
| (
Seg (i
+ 1))) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
A14: (i
+ 1)
<= (
len f) by
A12,
NAT_1: 13;
then (i
+ 1)
= (
min ((i
+ 1),(
len f))) by
XXREAL_0:def 9;
then
A15: (
len fi1)
= (i
+ 1) by
FINSEQ_2: 21;
1
<= (i
+ 1) by
A11,
NAT_1: 13;
then
A16: (i
+ 1)
in (
Seg (
len f)) by
A14,
FINSEQ_1: 1;
then
A17: (i
+ 1)
in (
dom f) by
FINSEQ_1:def 3;
reconsider fi = (f
| (
Seg i)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
assume
A18:
R[i];
A19: ((f
| (
Seg (i
+ 1)))
. (i
+ 1))
= (f
. (i
+ 1)) by
FINSEQ_1: 4,
FUNCT_1: 49;
then
reconsider fi1d1 = (fi1
. (i
+ 1)) as
Element of the
carrier of (
Polynom-Ring
F_Complex ) by
A17,
FINSEQ_2: 11;
reconsider pfi1 = (
Product fi1), pfi = (
Product fi) as
Polynomial of
F_Complex by
POLYNOM3:def 10;
reconsider fi1d1p = fi1d1 as
Polynomial of
F_Complex by
POLYNOM3:def 10;
fi
= (fi1
| (
Seg i)) by
Lm2,
NAT_1: 12;
then fi1
= (fi
^
<*fi1d1*>) by
A15,
FINSEQ_3: 55;
then
A20: (
Product fi1)
= ((
Product fi)
* fi1d1) by
GROUP_4: 6;
thus
R[(i
+ 1)]
proof
reconsider epfi = (
eval (pfi,c)), efi1d1p = (
eval (fi1d1p,c)) as
Element of
COMPLEX by
COMPLFLD:def 1;
now
reconsider i1 = (i
+ 1) as non
zero
Element of
NAT by
ORDINAL1:def 12;
per cases by
A4,
A17;
suppose (f
. i1)
=
<%(
1_
F_Complex )%>;
hence (
eval (fi1d1p,c)) is
integer by
A5,
A1,
FINSEQ_1: 4,
FUNCT_1: 49;
end;
suppose (f
. i1)
= (
cyclotomic_poly i1);
hence (
eval (fi1d1p,c)) is
integer by
A3,
A19,
Th52;
end;
end;
then
reconsider iefi1d1p = efi1d1p as
Integer;
reconsider iepfi = epfi as
Integer by
A9,
A18,
A13;
take pfi1;
thus pfi1
= (F
. (i
+ 1)) by
A9,
A16;
pfi1
= (pfi
*' fi1d1p) by
A20,
POLYNOM3:def 10;
then (
eval (pfi1,c))
= ((
eval (pfi,c))
* (
eval (fi1d1p,c))) by
POLYNOM4: 24
.= (iepfi
* iefi1d1p);
hence thesis;
end;
end;
A21: (
0
+ 1)
<= (
len f) by
A6,
NAT_1: 13;
then
A22: 1
in (
Seg (
len f)) by
FINSEQ_1: 1;
A23:
R[1]
proof
reconsider f1 = (f
| (
Seg 1)) as
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_1: 18;
A24: 1
in (
dom f) by
A22,
FINSEQ_1:def 3;
then
reconsider fd1 = (f
. 1) as
Element of the
carrier of (
Polynom-Ring
F_Complex ) by
FINSEQ_2: 11;
reconsider fd1 as
Polynomial of
F_Complex by
POLYNOM3:def 10;
take fd1;
f1
=
<*(f
. 1)*> by
A21,
Th1;
hence fd1
= (
Product f1) by
FINSOP_1: 11
.= (F
. 1) by
A9,
A22;
per cases by
A4,
A24;
suppose (f
. 1)
=
<%(
1_
F_Complex )%>;
hence thesis by
A1,
COMPLFLD: 8,
POLYNOM4: 18;
end;
suppose (f
. 1)
= (
cyclotomic_poly 1);
hence thesis by
A3,
Th52;
end;
end;
for i be
Element of
NAT st 1
<= i & i
<= (
len f) holds
R[i] from
INT_1:sch 7(
A23,
A10);
then ex r be
Polynomial of
F_Complex st r
= (F
. (
len f)) & (
eval (r,c)) is
integer by
A21;
hence thesis by
A2,
A6,
A9,
A7,
FINSEQ_1: 3;
end;
end;
theorem ::
UNIROOTS:56
Th56: for n be non
zero
Element of
NAT , j,k,q be
Integer, qc be
Element of
F_Complex st qc
= q & j
= (
eval ((
cyclotomic_poly n),qc)) & k
= (
eval ((
unital_poly (
F_Complex ,n)),qc)) holds j
divides k
proof
let n be non
zero
Element of
NAT , j,k,q be
Integer, qc be
Element of
F_Complex such that
A1: qc
= q and
A2: j
= (
eval ((
cyclotomic_poly n),qc)) and
A3: k
= (
eval ((
unital_poly (
F_Complex ,n)),qc));
set jfc = (
eval ((
cyclotomic_poly n),qc));
per cases by
NAT_1: 53;
suppose n
= 1;
hence thesis by
A2,
A3,
Th48;
end;
suppose
A4: n
> 1;
set eup1fc = (
eval ((
unital_poly (
F_Complex ,1)),qc));
reconsider eup1 = eup1fc as
Integer by
A1,
Th47;
consider f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), p be
Polynomial of
F_Complex such that
A5: p
= (
Product f) and
A6: (
dom f)
= (
Seg n) & for i be non
zero
Element of
NAT st i
in (
Seg n) holds ( not i
divides n or i
divides 1 or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides 1 & i
<> n implies (f
. i)
= (
cyclotomic_poly i)) and
A7: (
unital_poly (
F_Complex ,n))
= (((
unital_poly (
F_Complex ,1))
*' (
cyclotomic_poly n))
*' p) by
A4,
Th54,
NAT_D: 6;
set epfc = (
eval (p,qc));
now
let i be non
zero
Element of
NAT ;
assume
A8: i
in (
dom f);
per cases ;
suppose not i
divides n or i
divides 1 or i
= n;
hence (f
. i)
=
<%(
1_
F_Complex )%> or (f
. i)
= (
cyclotomic_poly i) by
A6,
A8;
end;
suppose i
divides n & not i
divides 1 & i
<> n;
hence (f
. i)
=
<%(
1_
F_Complex )%> or (f
. i)
= (
cyclotomic_poly i) by
A6,
A8;
end;
end;
then
reconsider ep = epfc as
Integer by
A1,
A5,
Th55;
k
= ((
eval (((
unital_poly (
F_Complex ,1))
*' (
cyclotomic_poly n)),qc))
* epfc) by
A3,
A7,
POLYNOM4: 24;
then k
= ((eup1fc
* jfc)
* epfc) by
POLYNOM4: 24;
then k
= ((eup1
* ep)
* j) by
A2;
hence thesis by
INT_1:def 3;
end;
end;
theorem ::
UNIROOTS:57
Th57: for n,ni be non
zero
Element of
NAT , q be
Integer st ni
< n & ni
divides n holds for qc be
Element of
F_Complex st qc
= q holds for j,k,l be
Integer st j
= (
eval ((
cyclotomic_poly n),qc)) & k
= (
eval ((
unital_poly (
F_Complex ,n)),qc)) & l
= (
eval ((
unital_poly (
F_Complex ,ni)),qc)) holds j
divides (k
div l)
proof
let n,ni be non
zero
Element of
NAT , q be
Integer such that
A1: ni
< n & ni
divides n;
set ttt = ((
unital_poly (
F_Complex ,ni))
*' (
cyclotomic_poly n));
consider f be
FinSequence of the
carrier of (
Polynom-Ring
F_Complex ), p be
Polynomial of
F_Complex such that
A2: p
= (
Product f) and
A3: (
dom f)
= (
Seg n) & for i be non
zero
Element of
NAT st i
in (
Seg n) holds ( not i
divides n or i
divides ni or i
= n implies (f
. i)
=
<%(
1_
F_Complex )%>) & (i
divides n & not i
divides ni & i
<> n implies (f
. i)
= (
cyclotomic_poly i)) and
A4: (
unital_poly (
F_Complex ,n))
= (ttt
*' p) by
A1,
Th54;
A5:
now
let i be non
zero
Element of
NAT such that
A6: i
in (
dom f);
per cases ;
suppose not i
divides n or i
divides ni or i
= n;
hence (f
. i)
=
<%(
1_
F_Complex )%> or (f
. i)
= (
cyclotomic_poly i) by
A3,
A6;
end;
suppose i
divides n & not i
divides ni & i
<> n;
hence (f
. i)
=
<%(
1_
F_Complex )%> or (f
. i)
= (
cyclotomic_poly i) by
A3,
A6;
end;
end;
let qc be
Element of
F_Complex ;
assume qc
= q;
then (
eval (p,qc)) is
integer by
A2,
A5,
Th55;
then
consider m be
Integer such that
A7: m
= (
eval (p,qc));
let j,k,l be
Integer such that
A8: j
= (
eval ((
cyclotomic_poly n),qc)) & k
= (
eval ((
unital_poly (
F_Complex ,n)),qc)) & l
= (
eval ((
unital_poly (
F_Complex ,ni)),qc));
reconsider jc = j, lc = l, mc = m as
Element of
COMPLEX by
XCMPLX_0:def 2;
reconsider jcf = jc, lcf = lc, mcf = mc as
Element of
F_Complex by
COMPLFLD:def 1;
(
eval ((
unital_poly (
F_Complex ,n)),qc))
= ((
eval (ttt,qc))
* (
eval (p,qc))) by
A4,
POLYNOM4: 24;
then
A9: k
= ((lcf
* jcf)
* mcf) by
A8,
A7,
POLYNOM4: 24
.= ((l
* j)
* m);
now
per cases ;
suppose
A10: l
<>
0 ;
k
= (l
* (j
* m)) by
A9;
then l
divides k by
INT_1:def 3;
then (k
/ l) is
integer by
A10,
WSIERP_1: 17;
then
[\(k
/ l)/]
= (k
/ l) by
INT_1: 25;
then (k
div l)
= (((j
* m)
* l)
/ l) by
A9,
INT_1:def 9;
then (k
div l)
= (j
* m) by
A10,
XCMPLX_1: 89;
hence thesis by
INT_1:def 3;
end;
suppose l
=
0 ;
then (k
div l)
=
0 by
INT_1: 48;
hence thesis by
INT_2: 12;
end;
end;
hence thesis;
end;
theorem ::
UNIROOTS:58
for n,q be non
zero
Element of
NAT , qc be
Element of
F_Complex st qc
= q holds for j be
Integer st j
= (
eval ((
cyclotomic_poly n),qc)) holds j
divides ((q
|^ n)
- 1)
proof
let n,q be non
zero
Element of
NAT ;
let qc be
Element of
F_Complex such that
A1: qc
= q;
A2: ex y1 be
Element of
F_Complex st y1
= q & (
eval ((
unital_poly (
F_Complex ,n)),y1))
= ((q
|^ n)
- 1) by
Th44;
let j be
Integer;
assume j
= (
eval ((
cyclotomic_poly n),qc));
hence thesis by
A1,
A2,
Th56;
end;
theorem ::
UNIROOTS:59
for n,ni,q be non
zero
Element of
NAT st ni
< n & ni
divides n holds for qc be
Element of
F_Complex st qc
= q holds for j be
Integer st j
= (
eval ((
cyclotomic_poly n),qc)) holds j
divides (((q
|^ n)
- 1)
div ((q
|^ ni)
- 1))
proof
let n,ni,q be non
zero
Element of
NAT such that
A1: ni
< n & ni
divides n;
let qc be
Element of
F_Complex such that
A2: qc
= q;
A3: (ex y1 be
Element of
F_Complex st y1
= q & (
eval ((
unital_poly (
F_Complex ,n)),y1))
= ((q
|^ n)
- 1)) & ex y2 be
Element of
F_Complex st y2
= q & (
eval ((
unital_poly (
F_Complex ,ni)),y2))
= ((q
|^ ni)
- 1) by
Th44;
let j be
Integer;
assume j
= (
eval ((
cyclotomic_poly n),qc));
hence thesis by
A1,
A2,
A3,
Th57;
end;
theorem ::
UNIROOTS:60
for n be non
zero
Element of
NAT st 1
< n holds for q be
Element of
NAT st 1
< q holds for qc be
Element of
F_Complex st qc
= q holds for i be
Integer st i
= (
eval ((
cyclotomic_poly n),qc)) holds
|.i.|
> (q
- 1)
proof
set MGFC = (
MultGroup
F_Complex );
set cMGFC = the
carrier of (
MultGroup
F_Complex );
let n be non
zero
Element of
NAT such that
A1: 1
< n;
consider S be non
empty
finite
Subset of
F_Complex such that
A2: S
= { y where y be
Element of cMGFC : (
ord y)
= n } and
A3: (
cyclotomic_poly n)
= (
poly_with_roots ((S,1)
-bag )) by
Def5;
(
rng (
canFS S))
= S by
FUNCT_2:def 3;
then
reconsider fs = (
canFS S) as
FinSequence of
F_Complex by
FINSEQ_1:def 4;
let q be
Element of
NAT such that
A4: 1
< q;
let qc be
Element of
F_Complex such that
A5: qc
= q;
deffunc
F(
set) =
|.(qc
- (fs
/. $1)).|;
consider p1 be
FinSequence such that
A6: (
len p1)
= (
len fs) & for i be
Nat st i
in (
dom p1) holds (p1
. i)
=
F(i) from
FINSEQ_1:sch 2;
A7: for i be
Element of
NAT , c be
Element of
F_Complex st i
in (
dom p1) & c
= ((
canFS S)
. i) holds (p1
. i)
=
|.(qc
- c).|
proof
let i be
Element of
NAT , c be
Element of
F_Complex such that
A8: i
in (
dom p1) and
A9: c
= ((
canFS S)
. i);
i
in (
dom fs) by
A6,
A8,
FINSEQ_3: 29;
then (fs
/. i)
= ((
canFS S)
. i) by
PARTFUN1:def 6;
hence thesis by
A6,
A8,
A9;
end;
for x be
object st x
in (
rng p1) holds x
in
REAL
proof
let x be
object;
assume x
in (
rng p1);
then
consider i be
Nat such that
A10: i
in (
dom p1) and
A11: (p1
. i)
= x by
FINSEQ_2: 10;
i
in (
dom fs) by
A6,
A10,
FINSEQ_3: 29;
then (fs
/. i)
= ((
canFS S)
. i) by
PARTFUN1:def 6;
then x
=
F(i) by
A7,
A10,
A11;
hence thesis by
XREAL_0:def 1;
end;
then (
rng p1)
c=
REAL ;
then
reconsider ps = p1 as non
empty
FinSequence of
REAL by
A6,
FINSEQ_1:def 4;
(
len fs)
= (
card S) by
FINSEQ_1: 93;
then
A12:
|.(
eval ((
cyclotomic_poly n),qc)).|
= (
Product ps) by
A3,
A6,
A7,
Th3;
A13: (
rng fs)
= S by
FUNCT_2:def 3;
A14: for i be
Element of
NAT st i
in (
dom ps) holds (ps
. i)
> (q
- 1)
proof
let i be
Element of
NAT such that
A15: i
in (
dom ps);
i
in (
dom fs) by
A6,
A15,
FINSEQ_3: 29;
then (fs
/. i)
= ((
canFS S)
. i) by
PARTFUN1:def 6;
then
A16: (ps
. i)
=
|.(
[**q,
0 **]
- (fs
/. i)).| by
A5,
A7,
A15;
A17: i
in (
dom fs) by
A6,
A15,
FINSEQ_3: 29;
then (fs
. i)
in (
rng fs) by
FUNCT_1: 3;
then (fs
/. i)
in (
rng fs) by
A17,
PARTFUN1:def 6;
then
A18: ex y be
Element of MGFC st (fs
/. i)
= y & (
ord y)
= n by
A2,
A13;
A19:
now
assume
A20: (fs
/. i)
=
[**1,
0 **];
(
1_ (
MultGroup
F_Complex ))
=
[**1,
0 **] by
Th17,
COMPLFLD: 8;
hence contradiction by
A1,
A18,
A20,
GROUP_1: 42;
end;
(fs
/. i)
in (n
-roots_of_1 ) by
A18,
Th34;
then
|.(fs
/. i).|
= 1 by
Th23;
hence thesis by
A4,
A16,
A19,
Th6;
end;
reconsider qi = q as
Integer;
(1
+ 1)
<= qi by
A4,
INT_1: 7;
then
A21: ((1
+ 1)
+ (
- 1))
<= (qi
+ (
- 1)) by
XREAL_1: 7;
let i be
Integer;
reconsider x = (q
- 1) as
Real;
assume i
= (
eval ((
cyclotomic_poly n),qc));
then
|.i.|
> x by
A21,
A12,
A14,
Th7;
hence
|.i.|
> (q
- 1);
end;