:: SIN_COS semantic presentation  Show TPTP formulae Show IDV graph for whole article:: Showing IDV graph ... (Click the Palm Trees again to close it)

definition
let m, k be Nat;
canceled;
func CHK m,k -> Element of COMPLEX equals :Def2: :: SIN_COS:def 2
1 if m <= k
otherwise 0;
correctness
coherence
( ( m <= k implies 1 is Element of COMPLEX ) & ( not m <= k implies 0 is Element of COMPLEX ) )
;
consistency
for b1 being Element of COMPLEX holds verum
;
by COMPLEX1:def 6, COMPLEX1:def 7;
end;

:: deftheorem SIN_COS:def 1 :
canceled;

:: deftheorem Def2 defines CHK SIN_COS:def 2 :
for m, k being Nat holds
( ( m <= k implies CHK m,k = 1 ) & ( not m <= k implies CHK m,k = 0 ) );

registration
let m, k be Nat;
cluster CHK m,k -> real ;
coherence
CHK m,k is real
proof end;
end;

scheme :: SIN_COS:sch 1
ExComplexCASE{ F1( Nat, Nat) -> Element of COMPLEX } :
for k being Nat ex seq being Complex_Sequence st
for n being Nat holds
( ( n <= k implies seq . n = F1(k,n) ) & ( n > k implies seq . n = 0 ) )
proof end;

scheme :: SIN_COS:sch 2
ExRealCASE{ F1( Nat, Nat) -> real number } :
for k being Nat ex rseq being Real_Sequence st
for n being Nat holds
( ( n <= k implies rseq . n = F1(k,n) ) & ( n > k implies rseq . n = 0 ) )
proof end;

definition
canceled;
func Prod_complex_n -> Complex_Sequence means :Def4: :: SIN_COS:def 4
( it . 0 = 1 & ( for n being Nat holds it . (n + 1) = (it . n) * (n + 1) ) );
existence
ex b1 being Complex_Sequence st
( b1 . 0 = 1 & ( for n being Nat holds b1 . (n + 1) = (b1 . n) * (n + 1) ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st b1 . 0 = 1 & ( for n being Nat holds b1 . (n + 1) = (b1 . n) * (n + 1) ) & b2 . 0 = 1 & ( for n being Nat holds b2 . (n + 1) = (b2 . n) * (n + 1) ) holds
b1 = b2
proof end;
end;

:: deftheorem SIN_COS:def 3 :
canceled;

:: deftheorem Def4 defines Prod_complex_n SIN_COS:def 4 :
for b1 being Complex_Sequence holds
( b1 = Prod_complex_n iff ( b1 . 0 = 1 & ( for n being Nat holds b1 . (n + 1) = (b1 . n) * (n + 1) ) ) );

definition
func Prod_real_n -> Real_Sequence means :Def5: :: SIN_COS:def 5
( it . 0 = 1 & ( for n being Nat holds it . (n + 1) = (it . n) * (n + 1) ) );
existence
ex b1 being Real_Sequence st
( b1 . 0 = 1 & ( for n being Nat holds b1 . (n + 1) = (b1 . n) * (n + 1) ) )
proof end;
uniqueness
for b1, b2 being Real_Sequence st b1 . 0 = 1 & ( for n being Nat holds b1 . (n + 1) = (b1 . n) * (n + 1) ) & b2 . 0 = 1 & ( for n being Nat holds b2 . (n + 1) = (b2 . n) * (n + 1) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def5 defines Prod_real_n SIN_COS:def 5 :
for b1 being Real_Sequence holds
( b1 = Prod_real_n iff ( b1 . 0 = 1 & ( for n being Nat holds b1 . (n + 1) = (b1 . n) * (n + 1) ) ) );

definition
let n be Nat;
func n !c -> Element of COMPLEX equals :: SIN_COS:def 6
Prod_complex_n . n;
coherence
Prod_complex_n . n is Element of COMPLEX
;
end;

:: deftheorem defines !c SIN_COS:def 6 :
for n being Nat holds n !c = Prod_complex_n . n;

definition
let n be Nat;
:: original: !
redefine func n ! -> Real equals :: SIN_COS:def 7
Prod_real_n . n;
coherence
n ! is Real
by XREAL_0:def 1;
compatibility
for b1 being Real holds
( b1 = n ! iff b1 = Prod_real_n . n )
proof end;
end;

:: deftheorem defines ! SIN_COS:def 7 :
for n being Nat holds n ! = Prod_real_n . n;

definition
let z be Element of COMPLEX ;
deffunc H1( Nat) -> Element of COMPLEX = (z #N $1) / ($1 !c );
func z ExpSeq -> Complex_Sequence means :Def8: :: SIN_COS:def 8
for n being Nat holds it . n = (z #N n) / (n !c );
existence
ex b1 being Complex_Sequence st
for n being Nat holds b1 . n = (z #N n) / (n !c )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for n being Nat holds b1 . n = (z #N n) / (n !c ) ) & ( for n being Nat holds b2 . n = (z #N n) / (n !c ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def8 defines ExpSeq SIN_COS:def 8 :
for z being Element of COMPLEX
for b2 being Complex_Sequence holds
( b2 = z ExpSeq iff for n being Nat holds b2 . n = (z #N n) / (n !c ) );

definition
let a be real number ;
deffunc H1( Nat) -> set = (a |^ $1) / ($1 ! );
func a ExpSeq -> Real_Sequence means :Def9: :: SIN_COS:def 9
for n being Nat holds it . n = (a |^ n) / (n ! );
existence
ex b1 being Real_Sequence st
for n being Nat holds b1 . n = (a |^ n) / (n ! )
proof end;
uniqueness
for b1, b2 being Real_Sequence st ( for n being Nat holds b1 . n = (a |^ n) / (n ! ) ) & ( for n being Nat holds b2 . n = (a |^ n) / (n ! ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def9 defines ExpSeq SIN_COS:def 9 :
for a being real number
for b2 being Real_Sequence holds
( b2 = a ExpSeq iff for n being Nat holds b2 . n = (a |^ n) / (n ! ) );

theorem Th1: :: SIN_COS:1  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n being Nat holds
( 0 !c = 1 & n !c <> 0 & (n + 1) !c = (n !c ) * (n + 1) )
proof end;

theorem :: SIN_COS:2  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n being Nat holds
( n ! <> 0 & (n + 1) ! = (n ! ) * (n + 1) ) by NEWTON:21, NEWTON:23;

theorem Th3: :: SIN_COS:3  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( ( for k being Nat st 0 < k holds
((k -' 1) !c ) * k = k !c ) & ( for m, k being Nat st k <= m holds
((m -' k) !c ) * ((m + 1) - k) = ((m + 1) -' k) !c ) )
proof end;

definition
let n be Nat;
func Coef n -> Complex_Sequence means :Def10: :: SIN_COS:def 10
for k being Nat holds
( ( k <= n implies it . k = (n !c ) / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies it . k = 0 ) );
existence
ex b1 being Complex_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = (n !c ) / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = (n !c ) / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = (n !c ) / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def10 defines Coef SIN_COS:def 10 :
for n being Nat
for b2 being Complex_Sequence holds
( b2 = Coef n iff for k being Nat holds
( ( k <= n implies b2 . k = (n !c ) / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b2 . k = 0 ) ) );

definition
let n be Nat;
func Coef_e n -> Complex_Sequence means :Def11: :: SIN_COS:def 11
for k being Nat holds
( ( k <= n implies it . k = 1r / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies it . k = 0 ) );
existence
ex b1 being Complex_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = 1r / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = 1r / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = 1r / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def11 defines Coef_e SIN_COS:def 11 :
for n being Nat
for b2 being Complex_Sequence holds
( b2 = Coef_e n iff for k being Nat holds
( ( k <= n implies b2 . k = 1r / ((k !c ) * ((n -' k) !c )) ) & ( k > n implies b2 . k = 0 ) ) );

definition
let seq be Complex_Sequence;
func Sift seq -> Complex_Sequence means :Def12: :: SIN_COS:def 12
( it . 0 = 0 & ( for k being Nat holds it . (k + 1) = seq . k ) );
existence
ex b1 being Complex_Sequence st
( b1 . 0 = 0 & ( for k being Nat holds b1 . (k + 1) = seq . k ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st b1 . 0 = 0 & ( for k being Nat holds b1 . (k + 1) = seq . k ) & b2 . 0 = 0 & ( for k being Nat holds b2 . (k + 1) = seq . k ) holds
b1 = b2
proof end;
end;

:: deftheorem Def12 defines Sift SIN_COS:def 12 :
for seq, b2 being Complex_Sequence holds
( b2 = Sift seq iff ( b2 . 0 = 0 & ( for k being Nat holds b2 . (k + 1) = seq . k ) ) );

definition
let n be Nat;
let z, w be Element of COMPLEX ;
func Expan n,z,w -> Complex_Sequence means :Def13: :: SIN_COS:def 13
for k being Nat holds
( ( k <= n implies it . k = (((Coef n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies it . k = 0 ) );
existence
ex b1 being Complex_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = (((Coef n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = (((Coef n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = (((Coef n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def13 defines Expan SIN_COS:def 13 :
for n being Nat
for z, w being Element of COMPLEX
for b4 being Complex_Sequence holds
( b4 = Expan n,z,w iff for k being Nat holds
( ( k <= n implies b4 . k = (((Coef n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b4 . k = 0 ) ) );

definition
let n be Nat;
let z, w be Element of COMPLEX ;
func Expan_e n,z,w -> Complex_Sequence means :Def14: :: SIN_COS:def 14
for k being Nat holds
( ( k <= n implies it . k = (((Coef_e n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies it . k = 0 ) );
existence
ex b1 being Complex_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = (((Coef_e n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = (((Coef_e n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = (((Coef_e n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def14 defines Expan_e SIN_COS:def 14 :
for n being Nat
for z, w being Element of COMPLEX
for b4 being Complex_Sequence holds
( b4 = Expan_e n,z,w iff for k being Nat holds
( ( k <= n implies b4 . k = (((Coef_e n) . k) * (z #N k)) * (w #N (n -' k)) ) & ( n < k implies b4 . k = 0 ) ) );

definition
let n be Nat;
let z, w be Element of COMPLEX ;
func Alfa n,z,w -> Complex_Sequence means :Def15: :: SIN_COS:def 15
for k being Nat holds
( ( k <= n implies it . k = ((z ExpSeq ) . k) * ((Partial_Sums (w ExpSeq )) . (n -' k)) ) & ( n < k implies it . k = 0 ) );
existence
ex b1 being Complex_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = ((z ExpSeq ) . k) * ((Partial_Sums (w ExpSeq )) . (n -' k)) ) & ( n < k implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = ((z ExpSeq ) . k) * ((Partial_Sums (w ExpSeq )) . (n -' k)) ) & ( n < k implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = ((z ExpSeq ) . k) * ((Partial_Sums (w ExpSeq )) . (n -' k)) ) & ( n < k implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def15 defines Alfa SIN_COS:def 15 :
for n being Nat
for z, w being Element of COMPLEX
for b4 being Complex_Sequence holds
( b4 = Alfa n,z,w iff for k being Nat holds
( ( k <= n implies b4 . k = ((z ExpSeq ) . k) * ((Partial_Sums (w ExpSeq )) . (n -' k)) ) & ( n < k implies b4 . k = 0 ) ) );

definition
let a, b be real number ;
let n be Nat;
func Conj n,a,b -> Real_Sequence means :: SIN_COS:def 16
for k being Nat holds
( ( k <= n implies it . k = ((a ExpSeq ) . k) * (((Partial_Sums (b ExpSeq )) . n) - ((Partial_Sums (b ExpSeq )) . (n -' k))) ) & ( n < k implies it . k = 0 ) );
existence
ex b1 being Real_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = ((a ExpSeq ) . k) * (((Partial_Sums (b ExpSeq )) . n) - ((Partial_Sums (b ExpSeq )) . (n -' k))) ) & ( n < k implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Real_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = ((a ExpSeq ) . k) * (((Partial_Sums (b ExpSeq )) . n) - ((Partial_Sums (b ExpSeq )) . (n -' k))) ) & ( n < k implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = ((a ExpSeq ) . k) * (((Partial_Sums (b ExpSeq )) . n) - ((Partial_Sums (b ExpSeq )) . (n -' k))) ) & ( n < k implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem defines Conj SIN_COS:def 16 :
for a, b being real number
for n being Nat
for b4 being Real_Sequence holds
( b4 = Conj n,a,b iff for k being Nat holds
( ( k <= n implies b4 . k = ((a ExpSeq ) . k) * (((Partial_Sums (b ExpSeq )) . n) - ((Partial_Sums (b ExpSeq )) . (n -' k))) ) & ( n < k implies b4 . k = 0 ) ) );

definition
let z, w be Element of COMPLEX ;
let n be Nat;
func Conj n,z,w -> Complex_Sequence means :Def17: :: SIN_COS:def 17
for k being Nat holds
( ( k <= n implies it . k = ((z ExpSeq ) . k) * (((Partial_Sums (w ExpSeq )) . n) - ((Partial_Sums (w ExpSeq )) . (n -' k))) ) & ( n < k implies it . k = 0 ) );
existence
ex b1 being Complex_Sequence st
for k being Nat holds
( ( k <= n implies b1 . k = ((z ExpSeq ) . k) * (((Partial_Sums (w ExpSeq )) . n) - ((Partial_Sums (w ExpSeq )) . (n -' k))) ) & ( n < k implies b1 . k = 0 ) )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for k being Nat holds
( ( k <= n implies b1 . k = ((z ExpSeq ) . k) * (((Partial_Sums (w ExpSeq )) . n) - ((Partial_Sums (w ExpSeq )) . (n -' k))) ) & ( n < k implies b1 . k = 0 ) ) ) & ( for k being Nat holds
( ( k <= n implies b2 . k = ((z ExpSeq ) . k) * (((Partial_Sums (w ExpSeq )) . n) - ((Partial_Sums (w ExpSeq )) . (n -' k))) ) & ( n < k implies b2 . k = 0 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def17 defines Conj SIN_COS:def 17 :
for z, w being Element of COMPLEX
for n being Nat
for b4 being Complex_Sequence holds
( b4 = Conj n,z,w iff for k being Nat holds
( ( k <= n implies b4 . k = ((z ExpSeq ) . k) * (((Partial_Sums (w ExpSeq )) . n) - ((Partial_Sums (w ExpSeq )) . (n -' k))) ) & ( n < k implies b4 . k = 0 ) ) );

Lm1: for p1, p2, g1, g2 being Element of REAL holds
( (p1 + (g1 * <i> )) * (p2 + (g2 * <i> )) = ((p1 * p2) - (g1 * g2)) + (((p1 * g2) + (p2 * g1)) * <i> ) & (p2 + (g2 * <i> )) *' = p2 + ((- g2) * <i> ) )
proof end;

theorem Th4: :: SIN_COS:4  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX
for n being Nat holds
( (z ExpSeq ) . (n + 1) = (((z ExpSeq ) . n) * z) / ((n + 1) + (0 * <i> )) & (z ExpSeq ) . 0 = 1 & |.((z ExpSeq ) . n).| = (|.z.| ExpSeq ) . n )
proof end;

theorem Th5: :: SIN_COS:5  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for k being Nat
for seq being Complex_Sequence st 0 < k holds
(Sift seq) . k = seq . (k -' 1)
proof end;

theorem Th6: :: SIN_COS:6  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for k being Nat
for seq being Complex_Sequence holds (Partial_Sums seq) . k = ((Partial_Sums (Sift seq)) . k) + (seq . k)
proof end;

theorem Th7: :: SIN_COS:7  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for n being Nat holds (z + w) #N n = (Partial_Sums (Expan n,z,w)) . n
proof end;

theorem Th8: :: SIN_COS:8  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for n being Nat holds Expan_e n,z,w = (1r / (n !c )) (#) (Expan n,z,w)
proof end;

theorem Th9: :: SIN_COS:9  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for n being Nat holds ((z + w) #N n) / (n !c ) = (Partial_Sums (Expan_e n,z,w)) . n
proof end;

theorem Th10: :: SIN_COS:10  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( 0c ExpSeq is absolutely_summable & Sum (0c ExpSeq ) = 1r )
proof end;

registration
let z be Element of COMPLEX ;
cluster z ExpSeq -> absolutely_summable ;
coherence
z ExpSeq is absolutely_summable
proof end;
end;

theorem Th11: :: SIN_COS:11  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX holds
( (z ExpSeq ) . 0 = 1 & (Expan 0,z,w) . 0 = 1 )
proof end;

theorem Th12: :: SIN_COS:12  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for l, k being Nat st l <= k holds
(Alfa (k + 1),z,w) . l = ((Alfa k,z,w) . l) + ((Expan_e (k + 1),z,w) . l)
proof end;

theorem Th13: :: SIN_COS:13  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for k being Nat holds (Partial_Sums (Alfa (k + 1),z,w)) . k = ((Partial_Sums (Alfa k,z,w)) . k) + ((Partial_Sums (Expan_e (k + 1),z,w)) . k)
proof end;

theorem Th14: :: SIN_COS:14  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for k being Nat holds (z ExpSeq ) . k = (Expan_e k,z,w) . k
proof end;

theorem Th15: :: SIN_COS:15  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for n being Nat holds (Partial_Sums ((z + w) ExpSeq )) . n = (Partial_Sums (Alfa n,z,w)) . n
proof end;

theorem Th16: :: SIN_COS:16  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for k being Nat holds (((Partial_Sums (z ExpSeq )) . k) * ((Partial_Sums (w ExpSeq )) . k)) - ((Partial_Sums ((z + w) ExpSeq )) . k) = (Partial_Sums (Conj k,z,w)) . k
proof end;

theorem Th17: :: SIN_COS:17  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX
for k being Nat holds
( |.((Partial_Sums (z ExpSeq )) . k).| <= (Partial_Sums (|.z.| ExpSeq )) . k & (Partial_Sums (|.z.| ExpSeq )) . k <= Sum (|.z.| ExpSeq ) & |.((Partial_Sums (z ExpSeq )) . k).| <= Sum (|.z.| ExpSeq ) )
proof end;

theorem Th18: :: SIN_COS:18  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX holds 1 <= Sum (|.z.| ExpSeq )
proof end;

theorem Th19: :: SIN_COS:19  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX
for n being Nat holds 0 <= (|.z.| ExpSeq ) . n
proof end;

theorem Th20: :: SIN_COS:20  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX
for n, m being Nat holds
( abs ((Partial_Sums (|.z.| ExpSeq )) . n) = (Partial_Sums (|.z.| ExpSeq )) . n & ( n <= m implies abs (((Partial_Sums (|.z.| ExpSeq )) . m) - ((Partial_Sums (|.z.| ExpSeq )) . n)) = ((Partial_Sums (|.z.| ExpSeq )) . m) - ((Partial_Sums (|.z.| ExpSeq )) . n) ) )
proof end;

theorem Th21: :: SIN_COS:21  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for k, n being Nat holds abs ((Partial_Sums |.(Conj k,z,w).|) . n) = (Partial_Sums |.(Conj k,z,w).|) . n
proof end;

theorem Th22: :: SIN_COS:22  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for p being real number st p > 0 holds
ex n being Nat st
for k being Nat st n <= k holds
abs ((Partial_Sums |.(Conj k,z,w).|) . k) < p
proof end;

theorem Th23: :: SIN_COS:23  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, w being Element of COMPLEX
for seq being Complex_Sequence st ( for k being Nat holds seq . k = (Partial_Sums (Conj k,z,w)) . k ) holds
( seq is convergent & lim seq = 0 )
proof end;

Lm2: for z, w being Element of COMPLEX holds (Sum (z ExpSeq )) * (Sum (w ExpSeq )) = Sum ((z + w) ExpSeq )
proof end;

definition
func exp -> PartFunc of COMPLEX , COMPLEX means :Def18: :: SIN_COS:def 18
( dom it = COMPLEX & ( for z being Element of COMPLEX holds it . z = Sum (z ExpSeq ) ) );
existence
ex b1 being PartFunc of COMPLEX , COMPLEX st
( dom b1 = COMPLEX & ( for z being Element of COMPLEX holds b1 . z = Sum (z ExpSeq ) ) )
proof end;
uniqueness
for b1, b2 being PartFunc of COMPLEX , COMPLEX st dom b1 = COMPLEX & ( for z being Element of COMPLEX holds b1 . z = Sum (z ExpSeq ) ) & dom b2 = COMPLEX & ( for z being Element of COMPLEX holds b2 . z = Sum (z ExpSeq ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def18 defines exp SIN_COS:def 18 :
for b1 being PartFunc of COMPLEX , COMPLEX holds
( b1 = exp iff ( dom b1 = COMPLEX & ( for z being Element of COMPLEX holds b1 . z = Sum (z ExpSeq ) ) ) );

definition
let z be Element of COMPLEX ;
func exp z -> Element of COMPLEX equals :: SIN_COS:def 19
exp . z;
correctness
coherence
exp . z is Element of COMPLEX
;
proof end;
end;

:: deftheorem defines exp SIN_COS:def 19 :
for z being Element of COMPLEX holds exp z = exp . z;

Lm3: for z being Element of COMPLEX holds exp z = Sum (z ExpSeq )
by Def18;

theorem :: SIN_COS:24  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z1, z2 being Element of COMPLEX holds exp (z1 + z2) = (exp z1) * (exp z2)
proof end;

definition
func sin -> PartFunc of REAL , REAL means :Def20: :: SIN_COS:def 20
( dom it = REAL & ( for d being Element of REAL holds it . d = Im (Sum ([*0,d*] ExpSeq )) ) );
existence
ex b1 being PartFunc of REAL , REAL st
( dom b1 = REAL & ( for d being Element of REAL holds b1 . d = Im (Sum ([*0,d*] ExpSeq )) ) )
proof end;
uniqueness
for b1, b2 being PartFunc of REAL , REAL st dom b1 = REAL & ( for d being Element of REAL holds b1 . d = Im (Sum ([*0,d*] ExpSeq )) ) & dom b2 = REAL & ( for d being Element of REAL holds b2 . d = Im (Sum ([*0,d*] ExpSeq )) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def20 defines sin SIN_COS:def 20 :
for b1 being PartFunc of REAL , REAL holds
( b1 = sin iff ( dom b1 = REAL & ( for d being Element of REAL holds b1 . d = Im (Sum ([*0,d*] ExpSeq )) ) ) );

definition
let th be real number ;
func sin th -> set equals :: SIN_COS:def 21
sin . th;
correctness
coherence
sin . th is set
;
;
end;

:: deftheorem defines sin SIN_COS:def 21 :
for th being real number holds sin th = sin . th;

registration
let th be real number ;
cluster sin th -> real ;
correctness
coherence
sin th is real
;
;
end;

definition
let th be Real;
:: original: sin
redefine func sin th -> Real;
correctness
coherence
sin th is Real
;
;
end;

theorem :: SIN_COS:25  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
sin is Function of REAL , REAL
proof end;

definition
func cos -> PartFunc of REAL , REAL means :Def22: :: SIN_COS:def 22
( dom it = REAL & ( for d being Real holds it . d = Re (Sum ([*0,d*] ExpSeq )) ) );
existence
ex b1 being PartFunc of REAL , REAL st
( dom b1 = REAL & ( for d being Real holds b1 . d = Re (Sum ([*0,d*] ExpSeq )) ) )
proof end;
uniqueness
for b1, b2 being PartFunc of REAL , REAL st dom b1 = REAL & ( for d being Real holds b1 . d = Re (Sum ([*0,d*] ExpSeq )) ) & dom b2 = REAL & ( for d being Real holds b2 . d = Re (Sum ([*0,d*] ExpSeq )) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def22 defines cos SIN_COS:def 22 :
for b1 being PartFunc of REAL , REAL holds
( b1 = cos iff ( dom b1 = REAL & ( for d being Real holds b1 . d = Re (Sum ([*0,d*] ExpSeq )) ) ) );

definition
let th be real number ;
func cos th -> set equals :: SIN_COS:def 23
cos . th;
correctness
coherence
cos . th is set
;
;
end;

:: deftheorem defines cos SIN_COS:def 23 :
for th being real number holds cos th = cos . th;

registration
let th be real number ;
cluster cos th -> real ;
correctness
coherence
cos th is real
;
;
end;

definition
let th be Real;
:: original: cos
redefine func cos th -> Real;
correctness
coherence
cos th is Real
;
;
end;

theorem :: SIN_COS:26  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
cos is Function of REAL , REAL
proof end;

theorem Th27: :: SIN_COS:27  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( dom sin = REAL & dom cos = REAL ) by Def20, Def22;

Lm4: for th being Real holds Sum ([*0,th*] ExpSeq ) = (cos . th) + ((sin . th) * <i> )
proof end;

theorem :: SIN_COS:28  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds exp [*0,th*] = (cos th) + ((sin th) * <i> )
proof end;

Lm5: for th being Real holds (Sum ([*0,th*] ExpSeq )) *' = Sum ((- [*0,th*]) ExpSeq )
proof end;

theorem :: SIN_COS:29  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds (exp [*0,th*]) *' = exp (- [*0,th*])
proof end;

Lm6: for th being Real
for th1 being real number st th = th1 holds
( |.(Sum ([*0,th*] ExpSeq )).| = 1 & abs (sin . th1) <= 1 & abs (cos . th1) <= 1 )
proof end;

theorem :: SIN_COS:30  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds
( |.(exp [*0,th*]).| = 1 & ( for th being real number holds
( abs (sin th) <= 1 & abs (cos th) <= 1 ) ) )
proof end;

theorem Th31: :: SIN_COS:31  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( ((cos . th) ^2 ) + ((sin . th) ^2 ) = 1 & ((cos . th) * (cos . th)) + ((sin . th) * (sin . th)) = 1 )
proof end;

theorem :: SIN_COS:32  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( ((cos th) ^2 ) + ((sin th) ^2 ) = 1 & ((cos th) * (cos th)) + ((sin th) * (sin th)) = 1 ) by Th31;

Lm7: 0c = [*0,0*]
by ARYTM_0:def 7;

theorem Th33: :: SIN_COS:33  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( cos . 0 = 1 & sin . 0 = 0 & cos . (- th) = cos . th & sin . (- th) = - (sin . th) )
proof end;

theorem :: SIN_COS:34  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( cos 0 = 1 & sin 0 = 0 & cos (- th) = cos th & sin (- th) = - (sin th) ) by Th33;

definition
let th be real number ;
deffunc H1( Nat) -> set = (((- 1) |^ $1) * (th |^ ((2 * $1) + 1))) / (((2 * $1) + 1) ! );
func th P_sin -> Real_Sequence means :Def24: :: SIN_COS:def 24
for n being Nat holds it . n = (((- 1) |^ n) * (th |^ ((2 * n) + 1))) / (((2 * n) + 1) ! );
existence
ex b1 being Real_Sequence st
for n being Nat holds b1 . n = (((- 1) |^ n) * (th |^ ((2 * n) + 1))) / (((2 * n) + 1) ! )
proof end;
uniqueness
for b1, b2 being Real_Sequence st ( for n being Nat holds b1 . n = (((- 1) |^ n) * (th |^ ((2 * n) + 1))) / (((2 * n) + 1) ! ) ) & ( for n being Nat holds b2 . n = (((- 1) |^ n) * (th |^ ((2 * n) + 1))) / (((2 * n) + 1) ! ) ) holds
b1 = b2
proof end;
deffunc H2( Nat) -> set = (((- 1) |^ $1) * (th |^ (2 * $1))) / ((2 * $1) ! );
func th P_cos -> Real_Sequence means :Def25: :: SIN_COS:def 25
for n being Nat holds it . n = (((- 1) |^ n) * (th |^ (2 * n))) / ((2 * n) ! );
existence
ex b1 being Real_Sequence st
for n being Nat holds b1 . n = (((- 1) |^ n) * (th |^ (2 * n))) / ((2 * n) ! )
proof end;
uniqueness
for b1, b2 being Real_Sequence st ( for n being Nat holds b1 . n = (((- 1) |^ n) * (th |^ (2 * n))) / ((2 * n) ! ) ) & ( for n being Nat holds b2 . n = (((- 1) |^ n) * (th |^ (2 * n))) / ((2 * n) ! ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def24 defines P_sin SIN_COS:def 24 :
for th being real number
for b2 being Real_Sequence holds
( b2 = th P_sin iff for n being Nat holds b2 . n = (((- 1) |^ n) * (th |^ ((2 * n) + 1))) / (((2 * n) + 1) ! ) );

:: deftheorem Def25 defines P_cos SIN_COS:def 25 :
for th being real number
for b2 being Real_Sequence holds
( b2 = th P_cos iff for n being Nat holds b2 . n = (((- 1) |^ n) * (th |^ (2 * n))) / ((2 * n) ! ) );

Lm8: for p, q, r being Real st r <> 0 holds
( [*p,q*] / [*r,0*] = [*(p / r),(q / r)*] & [*p,q*] / [*0,r*] = [*(q / r),(- (p / r))*] )
proof end;

Lm9: for p, q, r being Real holds
( [*p,q*] * [*r,0*] = [*(p * r),(q * r)*] & [*p,q*] * [*0,r*] = [*(- (q * r)),(p * r)*] )
proof end;

theorem Th35: :: SIN_COS:35  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX
for k being Nat holds
( z #N (2 * k) = (z #N k) #N 2 & z #N (2 * k) = (z #N 2) #N k )
proof end;

Lm10: 1r = [*1,0*]
by ARYTM_0:def 7, COMPLEX1:def 7;

theorem Th36: :: SIN_COS:36  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for k being Nat
for th being Real holds
( [*0,th*] #N (2 * k) = [*(((- 1) |^ k) * (th |^ (2 * k))),0*] & [*0,th*] #N ((2 * k) + 1) = [*0,(((- 1) |^ k) * (th |^ ((2 * k) + 1)))*] )
proof end;

theorem Th37: :: SIN_COS:37  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n being Nat holds n !c = [*(n ! ),0*]
proof end;

theorem Th38: :: SIN_COS:38  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n being Nat
for th being Real holds
( (Partial_Sums (th P_sin )) . n = (Partial_Sums (Im ([*0,th*] ExpSeq ))) . ((2 * n) + 1) & (Partial_Sums (th P_cos )) . n = (Partial_Sums (Re ([*0,th*] ExpSeq ))) . (2 * n) )
proof end;

theorem Th39: :: SIN_COS:39  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds
( Partial_Sums (th P_sin ) is convergent & Sum (th P_sin ) = Im (Sum ([*0,th*] ExpSeq )) & Partial_Sums (th P_cos ) is convergent & Sum (th P_cos ) = Re (Sum ([*0,th*] ExpSeq )) )
proof end;

theorem Th40: :: SIN_COS:40  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( cos . th = Sum (th P_cos ) & sin . th = Sum (th P_sin ) )
proof end;

theorem Th41: :: SIN_COS:41  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p, th being real number
for rseq being Real_Sequence st rseq is convergent & lim rseq = th & ( for n being Nat holds rseq . n >= p ) holds
th >= p
proof end;

deffunc H1( Real) -> Element of REAL = (2 * $1) + 1;

consider bq being Real_Sequence such that
Lm11: for n being Nat holds bq . n = H1(n) from SEQ_1:sch 1();

bq is increasing Seq_of_Nat
proof end;

then reconsider bq = bq as increasing Seq_of_Nat ;

Lm12: for n being Nat
for th, th1, th2, th3 being real number holds
( th |^ 0 = 1 & th |^ (2 * n) = (th |^ n) |^ 2 & th |^ 1 = th & th |^ 2 = th * th & (- 1) |^ (2 * n) = 1 & (- 1) |^ ((2 * n) + 1) = - 1 )
proof end;

Lm13: for th, th1, th2, th3 being Real holds
( [*th,th1*] + [*th2,th3*] = [*(th + th2),(th1 + th3)*] & (5 / 6) ^2 = 25 / 36 )
proof end;

theorem Th42: :: SIN_COS:42  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n, k, m being Nat st n < k holds
( m ! > 0 & n ! <= k ! )
proof end;

theorem Th43: :: SIN_COS:43  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number
for n, k being Nat st 0 <= th & th <= 1 & n <= k holds
th |^ k <= th |^ n
proof end;

theorem Th44: :: SIN_COS:44  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n being Nat
for th being Real holds [*th,0*] #N n = [*(th |^ n),0*]
proof end;

theorem Th45: :: SIN_COS:45  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for n being Nat
for th being Real holds ([*th,0*] #N n) / (n !c ) = [*((th |^ n) / (n ! )),0*]
proof end;

theorem Th46: :: SIN_COS:46  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p being Real holds Im (Sum ([*p,0*] ExpSeq )) = 0
proof end;

theorem Th47: :: SIN_COS:47  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( cos . 1 > 0 & sin . 1 > 0 & cos . 1 < sin . 1 )
proof end;

theorem Th48: :: SIN_COS:48  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds th ExpSeq = Re ([*th,0*] ExpSeq )
proof end;

theorem Th49: :: SIN_COS:49  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds
( th ExpSeq is summable & Sum (th ExpSeq ) = Re (Sum ([*th,0*] ExpSeq )) )
proof end;

Lm14: for z being Element of COMPLEX
for n being Nat holds
( z * (z #N n) = z #N (n + 1) & (z ExpSeq ) . 1 = z & (z ExpSeq ) . 0 = 1r & z #N 1 = z & |.(z #N n).| = |.z.| |^ n )
proof end;

Lm15: for th being Real holds Sum ([*th,0*] ExpSeq ) = [*(Sum (th ExpSeq )),0*]
proof end;

theorem Th50: :: SIN_COS:50  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p, q being real number holds Sum ((p + q) ExpSeq ) = (Sum (p ExpSeq )) * (Sum (q ExpSeq ))
proof end;

definition
func exp -> PartFunc of REAL , REAL means :Def26: :: SIN_COS:def 26
( dom it = REAL & ( for d being real number holds it . d = Sum (d ExpSeq ) ) );
existence
ex b1 being PartFunc of REAL , REAL st
( dom b1 = REAL & ( for d being real number holds b1 . d = Sum (d ExpSeq ) ) )
proof end;
uniqueness
for b1, b2 being PartFunc of REAL , REAL st dom b1 = REAL & ( for d being real number holds b1 . d = Sum (d ExpSeq ) ) & dom b2 = REAL & ( for d being real number holds b2 . d = Sum (d ExpSeq ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def26 defines exp SIN_COS:def 26 :
for b1 being PartFunc of REAL , REAL holds
( b1 = exp iff ( dom b1 = REAL & ( for d being real number holds b1 . d = Sum (d ExpSeq ) ) ) );

definition
let th be real number ;
func exp th -> set equals :: SIN_COS:def 27
exp . th;
correctness
coherence
exp . th is set
;
;
end;

:: deftheorem defines exp SIN_COS:def 27 :
for th being real number holds exp th = exp . th;

registration
let th be real number ;
cluster exp th -> real ;
correctness
coherence
exp th is real
;
;
end;

definition
let th be Real;
:: original: exp
redefine func exp th -> Real;
correctness
coherence
exp th is Real
;
;
end;

theorem Th51: :: SIN_COS:51  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
dom exp = REAL by Def26;

theorem :: SIN_COS:52  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th53: :: SIN_COS:53  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds exp . th = Re (Sum ([*th,0*] ExpSeq ))
proof end;

theorem :: SIN_COS:54  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being Real holds exp [*th,0*] = [*(exp th),0*]
proof end;

Lm16: for p, q being real number holds exp . (p + q) = (exp . p) * (exp . q)
proof end;

theorem :: SIN_COS:55  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p, q being real number holds exp (p + q) = (exp p) * (exp q) by Lm16;

Lm17: exp . 0 = 1
proof end;

theorem :: SIN_COS:56  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
exp 0 = 1 by Lm17;

theorem Th57: :: SIN_COS:57  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number st th > 0 holds
exp . th >= 1
proof end;

theorem Th58: :: SIN_COS:58  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number st th < 0 holds
( 0 < exp . th & exp . th <= 1 )
proof end;

theorem Th59: :: SIN_COS:59  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds exp . th > 0
proof end;

theorem :: SIN_COS:60  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds exp th > 0 by Th59;

definition
let z be Element of COMPLEX ;
deffunc H2( Nat) -> Element of COMPLEX = (z #N ($1 + 1)) / (($1 + 2) !c );
func z P_dt -> Complex_Sequence means :Def28: :: SIN_COS:def 28
for n being Nat holds it . n = (z #N (n + 1)) / ((n + 2) !c );
existence
ex b1 being Complex_Sequence st
for n being Nat holds b1 . n = (z #N (n + 1)) / ((n + 2) !c )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for n being Nat holds b1 . n = (z #N (n + 1)) / ((n + 2) !c ) ) & ( for n being Nat holds b2 . n = (z #N (n + 1)) / ((n + 2) !c ) ) holds
b1 = b2
proof end;
deffunc H3( Nat) -> Element of COMPLEX = (z #N $1) / (($1 + 2) !c );
func z P_t -> Complex_Sequence means :: SIN_COS:def 29
for n being Nat holds it . n = (z #N n) / ((n + 2) !c );
existence
ex b1 being Complex_Sequence st
for n being Nat holds b1 . n = (z #N n) / ((n + 2) !c )
proof end;
uniqueness
for b1, b2 being Complex_Sequence st ( for n being Nat holds b1 . n = (z #N n) / ((n + 2) !c ) ) & ( for n being Nat holds b2 . n = (z #N n) / ((n + 2) !c ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def28 defines P_dt SIN_COS:def 28 :
for z being Element of COMPLEX
for b2 being Complex_Sequence holds
( b2 = z P_dt iff for n being Nat holds b2 . n = (z #N (n + 1)) / ((n + 2) !c ) );

:: deftheorem defines P_t SIN_COS:def 29 :
for z being Element of COMPLEX
for b2 being Complex_Sequence holds
( b2 = z P_t iff for n being Nat holds b2 . n = (z #N n) / ((n + 2) !c ) );

Lm18: for z being Element of COMPLEX
for p being Real holds
( Re ([*0,p*] * z) = - (p * (Im z)) & Im ([*0,p*] * z) = p * (Re z) & Re ([*p,0*] * z) = p * (Re z) & Im ([*p,0*] * z) = p * (Im z) )
proof end;

Lm19: for z being Element of COMPLEX
for p being Real st p > 0 holds
( Re (z / [*0,p*]) = (Im z) / p & Im (z / [*0,p*]) = - ((Re z) / p) & |.(z / [*p,0*]).| = |.z.| / p )
proof end;

theorem Th61: :: SIN_COS:61  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX holds z P_dt is absolutely_summable
proof end;

theorem Th62: :: SIN_COS:62  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z being Element of COMPLEX holds z * (Sum (z P_dt )) = ((Sum (z ExpSeq )) - 1r ) - z
proof end;

theorem Th63: :: SIN_COS:63  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p being real number st p > 0 holds
ex q being Real st
( q > 0 & ( for z being Element of COMPLEX st |.z.| < q holds
|.(Sum (z P_dt )).| < p ) )
proof end;

theorem Th64: :: SIN_COS:64  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for z, z1 being Element of COMPLEX holds (Sum ((z1 + z) ExpSeq )) - (Sum (z1 ExpSeq )) = ((Sum (z1 ExpSeq )) * z) + ((z * (Sum (z P_dt ))) * (Sum (z1 ExpSeq )))
proof end;

theorem Th65: :: SIN_COS:65  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p, q being Real holds (cos . (p + q)) - (cos . p) = (- (q * (sin . p))) - (q * (Im ((Sum ([*0,q*] P_dt )) * [*(cos . p),(sin . p)*])))
proof end;

theorem Th66: :: SIN_COS:66  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p, q being Real holds (sin . (p + q)) - (sin . p) = (q * (cos . p)) + (q * (Re ((Sum ([*0,q*] P_dt )) * [*(cos . p),(sin . p)*])))
proof end;

theorem Th67: :: SIN_COS:67  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p, q being Real holds (exp . (p + q)) - (exp . p) = (q * (exp . p)) + ((q * (exp . p)) * (Re (Sum ([*q,0*] P_dt ))))
proof end;

theorem Th68: :: SIN_COS:68  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p being real number holds
( cos is_differentiable_in p & diff cos ,p = - (sin . p) )
proof end;

theorem Th69: :: SIN_COS:69  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p being real number holds
( sin is_differentiable_in p & diff sin ,p = cos . p )
proof end;

theorem Th70: :: SIN_COS:70  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for p being real number holds
( exp is_differentiable_in p & diff exp ,p = exp . p )
proof end;

theorem :: SIN_COS:71  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( exp is_differentiable_on REAL & ( for th being real number st th in REAL holds
diff exp ,th = exp . th ) )
proof end;

theorem Th72: :: SIN_COS:72  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( cos is_differentiable_on REAL & ( for th being real number st th in REAL holds
diff cos ,th = - (sin . th) ) )
proof end;

theorem Th73: :: SIN_COS:73  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( sin is_differentiable_on REAL & diff sin ,th = cos . th )
proof end;

theorem Th74: :: SIN_COS:74  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number st th in [.0,1.] holds
( 0 < cos . th & cos . th >= 1 / 2 )
proof end;

theorem Th75: :: SIN_COS:75  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( [.0,1.] c= dom (sin / cos ) & ].0,1.[ c= dom (sin / cos ) )
proof end;

Lm20: ( dom ((sin / cos ) | [.0,1.]) = [.0,1.] & ( for th being real number st th in [.0,1.] holds
((sin / cos ) | [.0,1.]) . th = (sin / cos ) . th ) )
proof end;

Lm21: ( sin / cos is_differentiable_on ].0,1.[ & ( for th being real number st th in ].0,1.[ holds
diff (sin / cos ),th > 0 ) )
proof end;

theorem Th76: :: SIN_COS:76  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
sin / cos is_continuous_on [.0,1.]
proof end;

theorem Th77: :: SIN_COS:77  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th1, th2 being real number st th1 in ].0,1.[ & th2 in ].0,1.[ & (sin / cos ) . th1 = (sin / cos ) . th2 holds
th1 = th2
proof end;

Lm22: ( (sin / cos ) . 0 = 0 & (sin / cos ) . 1 > 1 )
proof end;

definition
func PI -> real number means :Def30: :: SIN_COS:def 30
( (sin / cos ) . (it / 4) = 1 & it in ].0,4.[ );
existence
ex b1 being real number st
( (sin / cos ) . (b1 / 4) = 1 & b1 in ].0,4.[ )
proof end;
uniqueness
for b1, b2 being real number st (sin / cos ) . (b1 / 4) = 1 & b1 in ].0,4.[ & (sin / cos ) . (b2 / 4) = 1 & b2 in ].0,4.[ holds
b1 = b2
proof end;
end;

:: deftheorem Def30 defines PI SIN_COS:def 30 :
for b1 being real number holds
( b1 = PI iff ( (sin / cos ) . (b1 / 4) = 1 & b1 in ].0,4.[ ) );

definition
:: original: PI
redefine func PI -> Real;
coherence
PI is Real
by XREAL_0:def 1;
end;

theorem Th78: :: SIN_COS:78  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
sin . (PI / 4) = cos . (PI / 4)
proof end;

theorem Th79: :: SIN_COS:79  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th1, th2 being real number holds
( sin . (th1 + th2) = ((sin . th1) * (cos . th2)) + ((cos . th1) * (sin . th2)) & cos . (th1 + th2) = ((cos . th1) * (cos . th2)) - ((sin . th1) * (sin . th2)) )
proof end;

theorem :: SIN_COS:80  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th1, th2 being real number holds
( sin (th1 + th2) = ((sin th1) * (cos th2)) + ((cos th1) * (sin th2)) & cos (th1 + th2) = ((cos th1) * (cos th2)) - ((sin th1) * (sin th2)) ) by Th79;

theorem Th81: :: SIN_COS:81  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( cos . (PI / 2) = 0 & sin . (PI / 2) = 1 & cos . PI = - 1 & sin . PI = 0 & cos . (PI + (PI / 2)) = 0 & sin . (PI + (PI / 2)) = - 1 & cos . (2 * PI ) = 1 & sin . (2 * PI ) = 0 )
proof end;

theorem :: SIN_COS:82  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
( cos (PI / 2) = 0 & sin (PI / 2) = 1 & cos PI = - 1 & sin PI = 0 & cos (PI + (PI / 2)) = 0 & sin (PI + (PI / 2)) = - 1 & cos (2 * PI ) = 1 & sin (2 * PI ) = 0 ) by Th81;

theorem Th83: :: SIN_COS:83  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( sin . (th + (2 * PI )) = sin . th & cos . (th + (2 * PI )) = cos . th & sin . ((PI / 2) - th) = cos . th & cos . ((PI / 2) - th) = sin . th & sin . ((PI / 2) + th) = cos . th & cos . ((PI / 2) + th) = - (sin . th) & sin . (PI + th) = - (sin . th) & cos . (PI + th) = - (cos . th) )
proof end;

theorem :: SIN_COS:84  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number holds
( sin (th + (2 * PI )) = sin th & cos (th + (2 * PI )) = cos th & sin ((PI / 2) - th) = cos th & cos ((PI / 2) - th) = sin th & sin ((PI / 2) + th) = cos th & cos ((PI / 2) + th) = - (sin th) & sin (PI + th) = - (sin th) & cos (PI + th) = - (cos th) ) by Th83;

Lm23: for th being real number st th in [.0,1.] holds
sin . th >= 0
proof end;

theorem Th85: :: SIN_COS:85  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number st th in ].0,(PI / 2).[ holds
cos . th > 0
proof end;

theorem :: SIN_COS:86  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for th being real number st th in ].0,(PI / 2).[ holds
cos th > 0 by Th85;