let r be Real; :: thesis: for f being PartFunc of REAL,REAL st left_open_halfline r c= dom f & f is_differentiable_on left_open_halfline r & ( for x0 being Real st x0 in left_open_halfline r holds
0 <= diff (f,x0) ) holds
f | (left_open_halfline r) is non-decreasing

let f be PartFunc of REAL,REAL; :: thesis: ( left_open_halfline r c= dom f & f is_differentiable_on left_open_halfline r & ( for x0 being Real st x0 in left_open_halfline r holds
0 <= diff (f,x0) ) implies f | (left_open_halfline r) is non-decreasing )

assume left_open_halfline r c= dom f ; :: thesis: ( not f is_differentiable_on left_open_halfline r or ex x0 being Real st
( x0 in left_open_halfline r & not 0 <= diff (f,x0) ) or f | (left_open_halfline r) is non-decreasing )

assume that
A1: f is_differentiable_on left_open_halfline r and
A2: for x0 being Real st x0 in left_open_halfline r holds
0 <= diff (f,x0) ; :: thesis: f | (left_open_halfline r) is non-decreasing
now :: thesis: for r1, r2 being Real st r1 in (left_open_halfline r) /\ (dom f) & r2 in (left_open_halfline r) /\ (dom f) & r1 < r2 holds
f . r1 <= f . r2
let r1, r2 be Real; :: thesis: ( r1 in (left_open_halfline r) /\ (dom f) & r2 in (left_open_halfline r) /\ (dom f) & r1 < r2 implies f . r1 <= f . r2 )
assume that
A3: r1 in (left_open_halfline r) /\ (dom f) and
A4: r2 in (left_open_halfline r) /\ (dom f) and
A5: r1 < r2 ; :: thesis: f . r1 <= f . r2
set rr = min (r1,r2);
A6: (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17;
r2 in left_open_halfline r by A4, XBOOLE_0:def 4;
then r2 in { p where p is Real : p < r } by XXREAL_1:229;
then ex g2 being Real st
( g2 = r2 & g2 < r ) ;
then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < r ) } by A6;
then A7: r2 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def 2;
r2 in dom f by A4, XBOOLE_0:def 4;
then A8: r2 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A7, XBOOLE_0:def 4;
A9: f is_differentiable_on ].((min (r1,r2)) - 1),r.[ by A1, FDIFF_1:26, XXREAL_1:263;
].((min (r1,r2)) - 1),r.[ c= left_open_halfline r by XXREAL_1:263;
then for g1 being Real st g1 in ].((min (r1,r2)) - 1),r.[ holds
0 <= diff (f,g1) by A2;
then A10: f | ].((min (r1,r2)) - 1),r.[ is non-decreasing by A9, ROLLE:11;
A11: (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17;
r1 in left_open_halfline r by A3, XBOOLE_0:def 4;
then r1 in { g where g is Real : g < r } by XXREAL_1:229;
then ex g1 being Real st
( g1 = r1 & g1 < r ) ;
then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < r ) } by A11;
then A12: r1 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def 2;
r1 in dom f by A3, XBOOLE_0:def 4;
then r1 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A12, XBOOLE_0:def 4;
hence f . r1 <= f . r2 by A5, A10, A8, RFUNCT_2:22; :: thesis: verum
end;
hence f | (left_open_halfline r) is non-decreasing by RFUNCT_2:22; :: thesis: verum