let x0 be Element of COMPLEX ; for f being PartFunc of COMPLEX,COMPLEX holds
( f is_continuous_in x0 iff ( x0 in dom f & ( for s1 being Complex_Sequence st rng s1 c= dom f & s1 is convergent & lim s1 = x0 & ( for n being Element of NAT holds s1 . n <> x0 ) holds
( f /* s1 is convergent & f /. x0 = lim (f /* s1) ) ) ) )
let f be PartFunc of COMPLEX,COMPLEX; ( f is_continuous_in x0 iff ( x0 in dom f & ( for s1 being Complex_Sequence st rng s1 c= dom f & s1 is convergent & lim s1 = x0 & ( for n being Element of NAT holds s1 . n <> x0 ) holds
( f /* s1 is convergent & f /. x0 = lim (f /* s1) ) ) ) )
thus
( f is_continuous_in x0 implies ( x0 in dom f & ( for s1 being Complex_Sequence st rng s1 c= dom f & s1 is convergent & lim s1 = x0 & ( for n being Element of NAT holds s1 . n <> x0 ) holds
( f /* s1 is convergent & f /. x0 = lim (f /* s1) ) ) ) )
by Def2; ( x0 in dom f & ( for s1 being Complex_Sequence st rng s1 c= dom f & s1 is convergent & lim s1 = x0 & ( for n being Element of NAT holds s1 . n <> x0 ) holds
( f /* s1 is convergent & f /. x0 = lim (f /* s1) ) ) implies f is_continuous_in x0 )
assume that
A1:
x0 in dom f
and
A2:
for s1 being Complex_Sequence st rng s1 c= dom f & s1 is convergent & lim s1 = x0 & ( for n being Element of NAT holds s1 . n <> x0 ) holds
( f /* s1 is convergent & f /. x0 = lim (f /* s1) )
; f is_continuous_in x0
thus
x0 in dom f
by A1; CFCONT_1:def 1 for s1 being Complex_Sequence st rng s1 c= dom f & s1 is convergent & lim s1 = x0 holds
( f /* s1 is convergent & f /. x0 = lim (f /* s1) )
let s2 be Complex_Sequence; ( rng s2 c= dom f & s2 is convergent & lim s2 = x0 implies ( f /* s2 is convergent & f /. x0 = lim (f /* s2) ) )
assume that
A3:
rng s2 c= dom f
and
A4:
( s2 is convergent & lim s2 = x0 )
; ( f /* s2 is convergent & f /. x0 = lim (f /* s2) )
now per cases
( ex n being Element of NAT st
for m being Element of NAT st n <= m holds
s2 . m = x0 or for n being Element of NAT ex m being Element of NAT st
( n <= m & s2 . m <> x0 ) )
;
suppose A12:
for
n being
Element of
NAT ex
m being
Element of
NAT st
(
n <= m &
s2 . m <> x0 )
;
( f /* s2 is convergent & f /. x0 = lim (f /* s2) )defpred S1[
set ,
set ]
means for
n,
m being
Element of
NAT st $1
= n & $2
= m holds
(
n < m &
s2 . m <> x0 & ( for
k being
Element of
NAT st
n < k &
s2 . k <> x0 holds
m <= k ) );
defpred S2[
set ,
set ,
set ]
means S1[$2,$3];
defpred S3[
set ]
means s2 . $1
<> x0;
ex
m1 being
Element of
NAT st
(
0 <= m1 &
s2 . m1 <> x0 )
by A12;
then A13:
ex
m being
Nat st
S3[
m]
;
consider M being
Nat such that A14:
(
S3[
M] & ( for
n being
Nat st
S3[
n] holds
M <= n ) )
from NAT_1:sch 5(A13);
reconsider M9 =
M as
Element of
NAT by ORDINAL1:def 12;
A17:
for
n,
x being
Element of
NAT ex
y being
Element of
NAT st
S2[
n,
x,
y]
consider F being
Function of
NAT,
NAT such that A20:
(
F . 0 = M9 & ( for
n being
Element of
NAT holds
S2[
n,
F . n,
F . (n + 1)] ) )
from RECDEF_1:sch 2(A17);
A21:
for
n being
Element of
NAT holds
F . n is
real
;
A22:
rng F c= NAT
;
A23:
dom F = NAT
by FUNCT_2:def 1;
then reconsider F =
F as
Real_Sequence by A21, SEQ_1:2;
then reconsider F =
F as
V36()
sequence of
NAT by SEQM_3:def 6;
A25:
s2 * F is
subsequence of
s2
by VALUED_0:def 17;
then A26:
(
s2 * F is
convergent &
lim (s2 * F) = x0 )
by A4, Th39, Th40;
A27:
for
n being
Element of
NAT st
s2 . n <> x0 holds
ex
m being
Element of
NAT st
F . m = n
defpred S4[
Element of
NAT ]
means (s2 * F) . $1
<> x0;
A39:
for
k being
Element of
NAT st
S4[
k] holds
S4[
k + 1]
A40:
S4[
0 ]
by A14, A20, FUNCT_2:15;
A41:
for
n being
Element of
NAT holds
S4[
n]
from NAT_1:sch 1(A40, A39);
A42:
rng (s2 * F) c= rng s2
by A25, VALUED_0:21;
then
rng (s2 * F) c= dom f
by A3, XBOOLE_1:1;
then A43:
(
f /* (s2 * F) is
convergent &
f /. x0 = lim (f /* (s2 * F)) )
by A2, A41, A26;
hence
f /* s2 is
convergent
by COMSEQ_2:def 4;
f /. x0 = lim (f /* s2)hence
f /. x0 = lim (f /* s2)
by A44, COMSEQ_2:def 5;
verum end; end; end;
hence
( f /* s2 is convergent & f /. x0 = lim (f /* s2) )
; verum