let f1, f2, f be PartFunc of REAL ,REAL ; :: thesis: ( f1 is convergent_in+infty & f2 is convergent_in+infty & lim_in+infty f1 = lim_in+infty f2 & ( for r being Real ex g being Real st
( r < g & g in dom f ) ) & ex r being Real st
( ( ( (dom f1) /\ (right_open_halfline r) c= (dom f2) /\ (right_open_halfline r) & (dom f) /\ (right_open_halfline r) c= (dom f1) /\ (right_open_halfline r) ) or ( (dom f2) /\ (right_open_halfline r) c= (dom f1) /\ (right_open_halfline r) & (dom f) /\ (right_open_halfline r) c= (dom f2) /\ (right_open_halfline r) ) ) & ( for g being Real st g in (dom f) /\ (right_open_halfline r) holds
( f1 . g <= f . g & f . g <= f2 . g ) ) ) implies ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 ) )

assume A1: ( f1 is convergent_in+infty & f2 is convergent_in+infty & lim_in+infty f1 = lim_in+infty f2 & ( for r being Real ex g being Real st
( r < g & g in dom f ) ) ) ; :: thesis: ( for r being Real holds
( ( not ( (dom f1) /\ (right_open_halfline r) c= (dom f2) /\ (right_open_halfline r) & (dom f) /\ (right_open_halfline r) c= (dom f1) /\ (right_open_halfline r) ) & not ( (dom f2) /\ (right_open_halfline r) c= (dom f1) /\ (right_open_halfline r) & (dom f) /\ (right_open_halfline r) c= (dom f2) /\ (right_open_halfline r) ) ) or ex g being Real st
( g in (dom f) /\ (right_open_halfline r) & not ( f1 . g <= f . g & f . g <= f2 . g ) ) ) or ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 ) )

given r1 being Real such that A2: ( ( (dom f1) /\ (right_open_halfline r1) c= (dom f2) /\ (right_open_halfline r1) & (dom f) /\ (right_open_halfline r1) c= (dom f1) /\ (right_open_halfline r1) ) or ( (dom f2) /\ (right_open_halfline r1) c= (dom f1) /\ (right_open_halfline r1) & (dom f) /\ (right_open_halfline r1) c= (dom f2) /\ (right_open_halfline r1) ) ) and
A3: for g being Real st g in (dom f) /\ (right_open_halfline r1) holds
( f1 . g <= f . g & f . g <= f2 . g ) ; :: thesis: ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 )
now
per cases ( ( (dom f1) /\ (right_open_halfline r1) c= (dom f2) /\ (right_open_halfline r1) & (dom f) /\ (right_open_halfline r1) c= (dom f1) /\ (right_open_halfline r1) ) or ( (dom f2) /\ (right_open_halfline r1) c= (dom f1) /\ (right_open_halfline r1) & (dom f) /\ (right_open_halfline r1) c= (dom f2) /\ (right_open_halfline r1) ) ) by A2;
suppose A4: ( (dom f1) /\ (right_open_halfline r1) c= (dom f2) /\ (right_open_halfline r1) & (dom f) /\ (right_open_halfline r1) c= (dom f1) /\ (right_open_halfline r1) ) ; :: thesis: ( f is convergent_in+infty & f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 )
A5: now
let seq be Real_Sequence; :: thesis: ( seq is divergent_to+infty & rng seq c= dom f implies ( f /* seq is convergent & lim (f /* seq) = lim_in+infty f1 ) )
assume A6: ( seq is divergent_to+infty & rng seq c= dom f ) ; :: thesis: ( f /* seq is convergent & lim (f /* seq) = lim_in+infty f1 )
then consider k being Element of NAT such that
A7: for n being Element of NAT st k <= n holds
r1 < seq . n by Def4;
A8: seq ^\ k is divergent_to+infty by A6, Th53;
now
let x be set ; :: thesis: ( x in rng (seq ^\ k) implies x in right_open_halfline r1 )
assume x in rng (seq ^\ k) ; :: thesis: x in right_open_halfline r1
then consider n being Element of NAT such that
A9: x = (seq ^\ k) . n by FUNCT_2:190;
r1 < seq . (n + k) by A7, NAT_1:12;
then r1 < (seq ^\ k) . n by NAT_1:def 3;
then x in { g where g is Real : r1 < g } by A9;
hence x in right_open_halfline r1 by XXREAL_1:230; :: thesis: verum
end;
then A10: rng (seq ^\ k) c= right_open_halfline r1 by TARSKI:def 3;
A11: rng (seq ^\ k) c= rng seq by VALUED_0:21;
then rng (seq ^\ k) c= dom f by A6, XBOOLE_1:1;
then A12: rng (seq ^\ k) c= (dom f) /\ (right_open_halfline r1) by A10, XBOOLE_1:19;
then A13: rng (seq ^\ k) c= (dom f1) /\ (right_open_halfline r1) by A4, XBOOLE_1:1;
A14: (dom f1) /\ (right_open_halfline r1) c= dom f1 by XBOOLE_1:17;
then rng (seq ^\ k) c= dom f1 by A13, XBOOLE_1:1;
then A15: ( f1 /* (seq ^\ k) is convergent & lim (f1 /* (seq ^\ k)) = lim_in+infty f1 ) by A1, A8, Def12;
A16: rng (seq ^\ k) c= (dom f2) /\ (right_open_halfline r1) by A4, A13, XBOOLE_1:1;
A17: (dom f2) /\ (right_open_halfline r1) c= dom f2 by XBOOLE_1:17;
then rng (seq ^\ k) c= dom f2 by A16, XBOOLE_1:1;
then A18: ( f2 /* (seq ^\ k) is convergent & lim (f2 /* (seq ^\ k)) = lim_in+infty f1 ) by A1, A8, Def12;
A19: now
let n be Element of NAT ; :: thesis: ( (f1 /* (seq ^\ k)) . n <= (f /* (seq ^\ k)) . n & (f /* (seq ^\ k)) . n <= (f2 /* (seq ^\ k)) . n )
(seq ^\ k) . n in rng (seq ^\ k) by VALUED_0:28;
then ( f1 . ((seq ^\ k) . n) <= f . ((seq ^\ k) . n) & f . ((seq ^\ k) . n) <= f2 . ((seq ^\ k) . n) ) by A3, A12;
then ( f1 . ((seq ^\ k) . n) <= (f /* (seq ^\ k)) . n & (f /* (seq ^\ k)) . n <= f2 . ((seq ^\ k) . n) ) by A6, A11, FUNCT_2:185, XBOOLE_1:1;
hence ( (f1 /* (seq ^\ k)) . n <= (f /* (seq ^\ k)) . n & (f /* (seq ^\ k)) . n <= (f2 /* (seq ^\ k)) . n ) by A13, A14, A16, A17, FUNCT_2:185, XBOOLE_1:1; :: thesis: verum
end;
A20: f /* (seq ^\ k) = (f /* seq) ^\ k by A6, VALUED_0:27;
then (f /* seq) ^\ k is convergent by A15, A18, A19, SEQ_2:33;
hence A21: f /* seq is convergent by SEQ_4:35; :: thesis: lim (f /* seq) = lim_in+infty f1
lim ((f /* seq) ^\ k) = lim_in+infty f1 by A15, A18, A19, A20, SEQ_2:34;
hence lim (f /* seq) = lim_in+infty f1 by A21, SEQ_4:33; :: thesis: verum
end;
hence f is convergent_in+infty by A1, Def6; :: thesis: ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 )
hence ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 ) by A5, Def12; :: thesis: verum
end;
suppose A22: ( (dom f2) /\ (right_open_halfline r1) c= (dom f1) /\ (right_open_halfline r1) & (dom f) /\ (right_open_halfline r1) c= (dom f2) /\ (right_open_halfline r1) ) ; :: thesis: ( f is convergent_in+infty & f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 )
A23: now
let seq be Real_Sequence; :: thesis: ( seq is divergent_to+infty & rng seq c= dom f implies ( f /* seq is convergent & lim (f /* seq) = lim_in+infty f1 ) )
assume A24: ( seq is divergent_to+infty & rng seq c= dom f ) ; :: thesis: ( f /* seq is convergent & lim (f /* seq) = lim_in+infty f1 )
then consider k being Element of NAT such that
A25: for n being Element of NAT st k <= n holds
r1 < seq . n by Def4;
A26: seq ^\ k is divergent_to+infty by A24, Th53;
now
let x be set ; :: thesis: ( x in rng (seq ^\ k) implies x in right_open_halfline r1 )
assume x in rng (seq ^\ k) ; :: thesis: x in right_open_halfline r1
then consider n being Element of NAT such that
A27: x = (seq ^\ k) . n by FUNCT_2:190;
r1 < seq . (n + k) by A25, NAT_1:12;
then r1 < (seq ^\ k) . n by NAT_1:def 3;
then x in { g where g is Real : r1 < g } by A27;
hence x in right_open_halfline r1 by XXREAL_1:230; :: thesis: verum
end;
then A28: rng (seq ^\ k) c= right_open_halfline r1 by TARSKI:def 3;
A29: rng (seq ^\ k) c= rng seq by VALUED_0:21;
then rng (seq ^\ k) c= dom f by A24, XBOOLE_1:1;
then A30: rng (seq ^\ k) c= (dom f) /\ (right_open_halfline r1) by A28, XBOOLE_1:19;
then A31: rng (seq ^\ k) c= (dom f2) /\ (right_open_halfline r1) by A22, XBOOLE_1:1;
A32: (dom f2) /\ (right_open_halfline r1) c= dom f2 by XBOOLE_1:17;
then rng (seq ^\ k) c= dom f2 by A31, XBOOLE_1:1;
then A33: ( f2 /* (seq ^\ k) is convergent & lim (f2 /* (seq ^\ k)) = lim_in+infty f1 ) by A1, A26, Def12;
A34: rng (seq ^\ k) c= (dom f1) /\ (right_open_halfline r1) by A22, A31, XBOOLE_1:1;
A35: (dom f1) /\ (right_open_halfline r1) c= dom f1 by XBOOLE_1:17;
then rng (seq ^\ k) c= dom f1 by A34, XBOOLE_1:1;
then A36: ( f1 /* (seq ^\ k) is convergent & lim (f1 /* (seq ^\ k)) = lim_in+infty f1 ) by A1, A26, Def12;
A37: now
let n be Element of NAT ; :: thesis: ( (f1 /* (seq ^\ k)) . n <= (f /* (seq ^\ k)) . n & (f /* (seq ^\ k)) . n <= (f2 /* (seq ^\ k)) . n )
(seq ^\ k) . n in rng (seq ^\ k) by VALUED_0:28;
then ( f1 . ((seq ^\ k) . n) <= f . ((seq ^\ k) . n) & f . ((seq ^\ k) . n) <= f2 . ((seq ^\ k) . n) ) by A3, A30;
then ( f1 . ((seq ^\ k) . n) <= (f /* (seq ^\ k)) . n & (f /* (seq ^\ k)) . n <= f2 . ((seq ^\ k) . n) ) by A24, A29, FUNCT_2:185, XBOOLE_1:1;
hence ( (f1 /* (seq ^\ k)) . n <= (f /* (seq ^\ k)) . n & (f /* (seq ^\ k)) . n <= (f2 /* (seq ^\ k)) . n ) by A31, A32, A34, A35, FUNCT_2:185, XBOOLE_1:1; :: thesis: verum
end;
A38: f /* (seq ^\ k) = (f /* seq) ^\ k by A24, VALUED_0:27;
then (f /* seq) ^\ k is convergent by A33, A36, A37, SEQ_2:33;
hence A39: f /* seq is convergent by SEQ_4:35; :: thesis: lim (f /* seq) = lim_in+infty f1
lim ((f /* seq) ^\ k) = lim_in+infty f1 by A33, A36, A37, A38, SEQ_2:34;
hence lim (f /* seq) = lim_in+infty f1 by A39, SEQ_4:33; :: thesis: verum
end;
hence f is convergent_in+infty by A1, Def6; :: thesis: ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 )
hence ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 ) by A23, Def12; :: thesis: verum
end;
end;
end;
hence ( f is convergent_in+infty & lim_in+infty f = lim_in+infty f1 ) ; :: thesis: verum