:: FDIFF_2 semantic presentation begin registration let h be non-zero 0 -convergent Real_Sequence; cluster - h -> non-zero convergent ; coherence ( - h is non-empty & - h is convergent ) proof A1: - h is non-zero by SEQ_1:45; - h is convergent by SEQ_2:9; hence ( - h is non-empty & - h is convergent ) by A1; ::_thesis: verum end; end; theorem Th1: :: FDIFF_2:1 for a, b, d being Real_Sequence st a is convergent & b is convergent & lim a = lim b & ( for n being Element of NAT holds ( d . (2 * n) = a . n & d . ((2 * n) + 1) = b . n ) ) holds ( d is convergent & lim d = lim a ) proof let a, b, d be Real_Sequence; ::_thesis: ( a is convergent & b is convergent & lim a = lim b & ( for n being Element of NAT holds ( d . (2 * n) = a . n & d . ((2 * n) + 1) = b . n ) ) implies ( d is convergent & lim d = lim a ) ) assume that A1: a is convergent and A2: b is convergent and A3: lim a = lim b and A4: for n being Element of NAT holds ( d . (2 * n) = a . n & d . ((2 * n) + 1) = b . n ) ; ::_thesis: ( d is convergent & lim d = lim a ) A5: now__::_thesis:_for_r_being_real_number_st_0_<_r_holds_ ex_n_being_Element_of_NAT_st_ for_m_being_Element_of_NAT_st_n_<=_m_holds_ abs_((d_._m)_-_(lim_a))_<_r let r be real number ; ::_thesis: ( 0 < r implies ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((d . m) - (lim a)) < r ) assume A6: 0 < r ; ::_thesis: ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((d . m) - (lim a)) < r then consider k1 being Element of NAT such that A7: for m being Element of NAT st k1 <= m holds abs ((a . m) - (lim a)) < r by A1, SEQ_2:def_7; consider k2 being Element of NAT such that A8: for m being Element of NAT st k2 <= m holds abs ((b . m) - (lim b)) < r by A2, A6, SEQ_2:def_7; take n = max ((2 * k1),((2 * k2) + 1)); ::_thesis: for m being Element of NAT st n <= m holds abs ((d . m) - (lim a)) < r let m be Element of NAT ; ::_thesis: ( n <= m implies abs ((d . m) - (lim a)) < r ) assume A9: n <= m ; ::_thesis: abs ((d . m) - (lim a)) < r then A10: (2 * k2) + 1 <= m by XXREAL_0:30; consider n being Element of NAT such that A11: ( m = 2 * n or m = (2 * n) + 1 ) by SCHEME1:1; A12: 2 * k1 <= m by A9, XXREAL_0:30; now__::_thesis:_abs_((d_._m)_-_(lim_a))_<_r percases ( m = 2 * n or m = (2 * n) + 1 ) by A11; supposeA13: m = 2 * n ; ::_thesis: abs ((d . m) - (lim a)) < r then A14: n >= k1 by A12, XREAL_1:68; abs ((d . m) - (lim a)) = abs ((a . n) - (lim a)) by A4, A13; hence abs ((d . m) - (lim a)) < r by A7, A14; ::_thesis: verum end; supposeA15: m = (2 * n) + 1 ; ::_thesis: abs ((d . m) - (lim a)) < r A16: now__::_thesis:_not_n_<_k2 assume n < k2 ; ::_thesis: contradiction then 2 * n < 2 * k2 by XREAL_1:68; hence contradiction by A10, A15, XREAL_1:6; ::_thesis: verum end; abs ((d . m) - (lim a)) = abs ((b . n) - (lim a)) by A4, A15; hence abs ((d . m) - (lim a)) < r by A3, A8, A16; ::_thesis: verum end; end; end; hence abs ((d . m) - (lim a)) < r ; ::_thesis: verum end; hence d is convergent by SEQ_2:def_6; ::_thesis: lim d = lim a hence lim d = lim a by A5, SEQ_2:def_7; ::_thesis: verum end; theorem Th2: :: FDIFF_2:2 for a being Real_Sequence st ( for n being Element of NAT holds a . n = 2 * n ) holds a is V37() sequence of NAT proof let a be Real_Sequence; ::_thesis: ( ( for n being Element of NAT holds a . n = 2 * n ) implies a is V37() sequence of NAT ) assume A1: for n being Element of NAT holds a . n = 2 * n ; ::_thesis: a is V37() sequence of NAT A2: a is V37() proof let n be Element of NAT ; :: according to SEQM_3:def_6 ::_thesis: not a . (n + 1) <= a . n A3: (2 * n) + 0 < (2 * n) + 2 by XREAL_1:8; (2 * n) + 2 = 2 * (n + 1) .= a . (n + 1) by A1 ; hence a . n < a . (n + 1) by A1, A3; ::_thesis: verum end; A4: now__::_thesis:_for_x_being_set_st_x_in_NAT_holds_ a_._x_in_NAT let x be set ; ::_thesis: ( x in NAT implies a . x in NAT ) assume x in NAT ; ::_thesis: a . x in NAT then reconsider n = x as Element of NAT ; a . n = 2 * n by A1; hence a . x in NAT ; ::_thesis: verum end; dom a = NAT by FUNCT_2:def_1; hence a is V37() sequence of NAT by A2, A4, FUNCT_2:3; ::_thesis: verum end; theorem Th3: :: FDIFF_2:3 for a being Real_Sequence st ( for n being Element of NAT holds a . n = (2 * n) + 1 ) holds a is V37() sequence of NAT proof let a be Real_Sequence; ::_thesis: ( ( for n being Element of NAT holds a . n = (2 * n) + 1 ) implies a is V37() sequence of NAT ) assume A1: for n being Element of NAT holds a . n = (2 * n) + 1 ; ::_thesis: a is V37() sequence of NAT A2: a is V37() proof let n be Element of NAT ; :: according to SEQM_3:def_6 ::_thesis: not a . (n + 1) <= a . n A3: ((2 * n) + 1) + 0 < ((2 * n) + 1) + 2 by XREAL_1:8; ((2 * n) + 1) + 2 = (2 * (n + 1)) + 1 .= a . (n + 1) by A1 ; hence a . n < a . (n + 1) by A1, A3; ::_thesis: verum end; A4: now__::_thesis:_for_x_being_set_st_x_in_dom_a_holds_ a_._x_in_NAT let x be set ; ::_thesis: ( x in dom a implies a . x in NAT ) assume x in dom a ; ::_thesis: a . x in NAT then reconsider n = x as Element of NAT ; a . n = (2 * n) + 1 by A1; hence a . x in NAT ; ::_thesis: verum end; dom a = NAT by FUNCT_2:def_1; hence a is V37() sequence of NAT by A2, A4, FUNCT_2:3; ::_thesis: verum end; theorem Th4: :: FDIFF_2:4 for x0 being Real for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} holds ( c is convergent & lim c = x0 & h + c is convergent & lim (h + c) = x0 ) proof let x0 be Real; ::_thesis: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} holds ( c is convergent & lim c = x0 & h + c is convergent & lim (h + c) = x0 ) let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} holds ( c is convergent & lim c = x0 & h + c is convergent & lim (h + c) = x0 ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {x0} implies ( c is convergent & lim c = x0 & h + c is convergent & lim (h + c) = x0 ) ) assume A1: rng c = {x0} ; ::_thesis: ( c is convergent & lim c = x0 & h + c is convergent & lim (h + c) = x0 ) thus c is convergent ; ::_thesis: ( lim c = x0 & h + c is convergent & lim (h + c) = x0 ) x0 in rng c by A1, TARSKI:def_1; hence A2: lim c = x0 by SEQ_4:25; ::_thesis: ( h + c is convergent & lim (h + c) = x0 ) thus h + c is convergent by SEQ_2:5; ::_thesis: lim (h + c) = x0 lim h = 0 ; hence lim (h + c) = 0 + x0 by A2, SEQ_2:6 .= x0 ; ::_thesis: verum end; theorem Th5: :: FDIFF_2:5 for r being Real for a, b being Real_Sequence st rng a = {r} & rng b = {r} holds a = b proof let r be Real; ::_thesis: for a, b being Real_Sequence st rng a = {r} & rng b = {r} holds a = b let a, b be Real_Sequence; ::_thesis: ( rng a = {r} & rng b = {r} implies a = b ) assume that A1: rng a = {r} and A2: rng b = {r} ; ::_thesis: a = b now__::_thesis:_for_n_being_Element_of_NAT_holds_a_._n_=_b_._n let n be Element of NAT ; ::_thesis: a . n = b . n a . n in rng a by VALUED_0:28; then A3: a . n = r by A1, TARSKI:def_1; b . n in rng b by VALUED_0:28; hence a . n = b . n by A2, A3, TARSKI:def_1; ::_thesis: verum end; hence a = b by FUNCT_2:63; ::_thesis: verum end; theorem Th6: :: FDIFF_2:6 for a being Real_Sequence for h being non-zero 0 -convergent Real_Sequence st a is subsequence of h holds a is non-zero 0 -convergent Real_Sequence proof let a be Real_Sequence; ::_thesis: for h being non-zero 0 -convergent Real_Sequence st a is subsequence of h holds a is non-zero 0 -convergent Real_Sequence let h be non-zero 0 -convergent Real_Sequence; ::_thesis: ( a is subsequence of h implies a is non-zero 0 -convergent Real_Sequence ) assume A1: a is subsequence of h ; ::_thesis: a is non-zero 0 -convergent Real_Sequence then consider I being V37() sequence of NAT such that A2: a = h * I by VALUED_0:def_17; now__::_thesis:_for_n_being_Element_of_NAT_holds_not_a_._n_=_0 given n being Element of NAT such that A4: a . n = 0 ; ::_thesis: contradiction h . (I . n) <> 0 by SEQ_1:5; hence contradiction by A2, A4, FUNCT_2:15; ::_thesis: verum end; then A5: a is non-zero by SEQ_1:5; A7: a is convergent by A1, SEQ_4:16; lim h = 0 ; then lim a = 0 by A1, SEQ_4:17; hence a is non-zero 0 -convergent Real_Sequence by A7, A5, FDIFF_1:def_1; ::_thesis: verum end; theorem Th7: :: FDIFF_2:7 for g being Real for f being PartFunc of REAL,REAL st ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h + c) c= dom f & {g} c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) holds for h1, h2 being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h1 + c) c= dom f & rng (h2 + c) c= dom f & {g} c= dom f holds lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) proof let g be Real; ::_thesis: for f being PartFunc of REAL,REAL st ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h + c) c= dom f & {g} c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) holds for h1, h2 being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h1 + c) c= dom f & rng (h2 + c) c= dom f & {g} c= dom f holds lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) let f be PartFunc of REAL,REAL; ::_thesis: ( ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h + c) c= dom f & {g} c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) implies for h1, h2 being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h1 + c) c= dom f & rng (h2 + c) c= dom f & {g} c= dom f holds lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) ) assume A1: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h + c) c= dom f & {g} c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ; ::_thesis: for h1, h2 being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {g} & rng (h1 + c) c= dom f & rng (h2 + c) c= dom f & {g} c= dom f holds lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) let h1, h2 be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {g} & rng (h1 + c) c= dom f & rng (h2 + c) c= dom f & {g} c= dom f holds lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) let c be V8() Real_Sequence; ::_thesis: ( rng c = {g} & rng (h1 + c) c= dom f & rng (h2 + c) c= dom f & {g} c= dom f implies lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) ) assume that A2: rng c = {g} and A3: rng (h1 + c) c= dom f and A4: rng (h2 + c) c= dom f and A5: {g} c= dom f ; ::_thesis: lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) deffunc H1( Element of NAT ) -> Element of REAL = h2 . $1; deffunc H2( Element of NAT ) -> Element of REAL = h1 . $1; consider a being Real_Sequence such that A6: for n being Element of NAT holds ( a . (2 * n) = H2(n) & a . ((2 * n) + 1) = H1(n) ) from SCHEME1:sch_2(); now__::_thesis:_for_n_being_Element_of_NAT_holds_a_._n_<>_0 let n be Element of NAT ; ::_thesis: a . n <> 0 consider m being Element of NAT such that A9: ( n = 2 * m or n = (2 * m) + 1 ) by SCHEME1:1; now__::_thesis:_a_._n_<>_0 percases ( n = 2 * m or n = (2 * m) + 1 ) by A9; suppose n = 2 * m ; ::_thesis: a . n <> 0 then a . n = h1 . m by A6; hence a . n <> 0 by SEQ_1:5; ::_thesis: verum end; suppose n = (2 * m) + 1 ; ::_thesis: a . n <> 0 then a . n = h2 . m by A6; hence a . n <> 0 by SEQ_1:5; ::_thesis: verum end; end; end; hence a . n <> 0 ; ::_thesis: verum end; then A10: a is non-zero by SEQ_1:5; A11: lim h1 = 0 ; A12: lim h2 = 0 ; A15: a is convergent by A6, A11, A12, Th1; lim a = 0 by A6, A11, A12, Th1; then reconsider a = a as non-zero 0 -convergent Real_Sequence by A15, A10, FDIFF_1:def_1; A16: rng (a + c) c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (a + c) or x in dom f ) assume x in rng (a + c) ; ::_thesis: x in dom f then consider n being Element of NAT such that A17: x = (a + c) . n by FUNCT_2:113; consider m being Element of NAT such that A18: ( n = 2 * m or n = (2 * m) + 1 ) by SCHEME1:1; now__::_thesis:_(a_+_c)_._n_in_dom_f percases ( n = 2 * m or n = (2 * m) + 1 ) by A18; supposeA19: n = 2 * m ; ::_thesis: (a + c) . n in dom f A20: (h1 + c) . m in rng (h1 + c) by VALUED_0:28; (a + c) . n = (a . n) + (c . n) by SEQ_1:7 .= (h1 . m) + (c . n) by A6, A19 .= (h1 . m) + (c . m) by VALUED_0:23 .= (h1 + c) . m by SEQ_1:7 ; hence (a + c) . n in dom f by A3, A20; ::_thesis: verum end; supposeA21: n = (2 * m) + 1 ; ::_thesis: (a + c) . n in dom f A22: (h2 + c) . m in rng (h2 + c) by VALUED_0:28; (a + c) . n = (a . n) + (c . n) by SEQ_1:7 .= (h2 . m) + (c . n) by A6, A21 .= (h2 . m) + (c . m) by VALUED_0:23 .= (h2 + c) . m by SEQ_1:7 ; hence (a + c) . n in dom f by A4, A22; ::_thesis: verum end; end; end; hence x in dom f by A17; ::_thesis: verum end; then A23: (a ") (#) ((f /* (a + c)) - (f /* c)) is convergent by A1, A2, A5; deffunc H3( Element of NAT ) -> Element of NAT = (2 * $1) + 1; consider d being Real_Sequence such that A24: for n being Element of NAT holds d . n = H3(n) from SEQ_1:sch_1(); reconsider I2 = d as V37() sequence of NAT by A24, Th3; now__::_thesis:_for_n_being_Element_of_NAT_holds_(((a_")_(#)_((f_/*_(a_+_c))_-_(f_/*_c)))_*_I2)_._n_=_((h2_")_(#)_((f_/*_(h2_+_c))_-_(f_/*_c)))_._n let n be Element of NAT ; ::_thesis: (((a ") (#) ((f /* (a + c)) - (f /* c))) * I2) . n = ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) . n thus (((a ") (#) ((f /* (a + c)) - (f /* c))) * I2) . n = ((a ") (#) ((f /* (a + c)) - (f /* c))) . (I2 . n) by FUNCT_2:15 .= ((a ") (#) ((f /* (a + c)) - (f /* c))) . ((2 * n) + 1) by A24 .= ((a ") . ((2 * n) + 1)) * (((f /* (a + c)) - (f /* c)) . ((2 * n) + 1)) by SEQ_1:8 .= ((a ") . ((2 * n) + 1)) * (((f /* (a + c)) . ((2 * n) + 1)) - ((f /* c) . ((2 * n) + 1))) by RFUNCT_2:1 .= ((a ") . ((2 * n) + 1)) * ((f . ((a + c) . ((2 * n) + 1))) - ((f /* c) . ((2 * n) + 1))) by A16, FUNCT_2:108 .= ((a ") . ((2 * n) + 1)) * ((f . ((a . ((2 * n) + 1)) + (c . ((2 * n) + 1)))) - ((f /* c) . ((2 * n) + 1))) by SEQ_1:7 .= ((a ") . ((2 * n) + 1)) * ((f . ((h2 . n) + (c . ((2 * n) + 1)))) - ((f /* c) . ((2 * n) + 1))) by A6 .= ((a ") . ((2 * n) + 1)) * ((f . ((h2 . n) + (c . n))) - ((f /* c) . ((2 * n) + 1))) by VALUED_0:23 .= ((a ") . ((2 * n) + 1)) * ((f . ((h2 + c) . n)) - ((f /* c) . ((2 * n) + 1))) by SEQ_1:7 .= ((a ") . ((2 * n) + 1)) * (((f /* (h2 + c)) . n) - ((f /* c) . ((2 * n) + 1))) by A4, FUNCT_2:108 .= ((a . ((2 * n) + 1)) ") * (((f /* (h2 + c)) . n) - ((f /* c) . ((2 * n) + 1))) by VALUED_1:10 .= ((h2 . n) ") * (((f /* (h2 + c)) . n) - ((f /* c) . ((2 * n) + 1))) by A6 .= ((h2 ") . n) * (((f /* (h2 + c)) . n) - ((f /* c) . ((2 * n) + 1))) by VALUED_1:10 .= ((h2 ") . n) * (((f /* (h2 + c)) . n) - (f . (c . ((2 * n) + 1)))) by A2, A5, FUNCT_2:108 .= ((h2 ") . n) * (((f /* (h2 + c)) . n) - (f . (c . n))) by VALUED_0:23 .= ((h2 ") . n) * (((f /* (h2 + c)) . n) - ((f /* c) . n)) by A2, A5, FUNCT_2:108 .= ((h2 ") . n) * (((f /* (h2 + c)) - (f /* c)) . n) by RFUNCT_2:1 .= ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) . n by SEQ_1:8 ; ::_thesis: verum end; then A25: ((a ") (#) ((f /* (a + c)) - (f /* c))) * I2 = (h2 ") (#) ((f /* (h2 + c)) - (f /* c)) by FUNCT_2:63; ((a ") (#) ((f /* (a + c)) - (f /* c))) * I2 is subsequence of (a ") (#) ((f /* (a + c)) - (f /* c)) by VALUED_0:def_17; then A26: lim (((a ") (#) ((f /* (a + c)) - (f /* c))) * I2) = lim ((a ") (#) ((f /* (a + c)) - (f /* c))) by A23, SEQ_4:17; deffunc H4( Element of NAT ) -> Element of NAT = 2 * $1; consider b being Real_Sequence such that A27: for n being Element of NAT holds b . n = H4(n) from SEQ_1:sch_1(); reconsider I1 = b as V37() sequence of NAT by A27, Th2; now__::_thesis:_for_n_being_Element_of_NAT_holds_(((a_")_(#)_((f_/*_(a_+_c))_-_(f_/*_c)))_*_I1)_._n_=_((h1_")_(#)_((f_/*_(h1_+_c))_-_(f_/*_c)))_._n let n be Element of NAT ; ::_thesis: (((a ") (#) ((f /* (a + c)) - (f /* c))) * I1) . n = ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) . n thus (((a ") (#) ((f /* (a + c)) - (f /* c))) * I1) . n = ((a ") (#) ((f /* (a + c)) - (f /* c))) . (I1 . n) by FUNCT_2:15 .= ((a ") (#) ((f /* (a + c)) - (f /* c))) . (2 * n) by A27 .= ((a ") . (2 * n)) * (((f /* (a + c)) - (f /* c)) . (2 * n)) by SEQ_1:8 .= ((a ") . (2 * n)) * (((f /* (a + c)) . (2 * n)) - ((f /* c) . (2 * n))) by RFUNCT_2:1 .= ((a ") . (2 * n)) * ((f . ((a + c) . (2 * n))) - ((f /* c) . (2 * n))) by A16, FUNCT_2:108 .= ((a ") . (2 * n)) * ((f . ((a . (2 * n)) + (c . (2 * n)))) - ((f /* c) . (2 * n))) by SEQ_1:7 .= ((a ") . (2 * n)) * ((f . ((h1 . n) + (c . (2 * n)))) - ((f /* c) . (2 * n))) by A6 .= ((a ") . (2 * n)) * ((f . ((h1 . n) + (c . n))) - ((f /* c) . (2 * n))) by VALUED_0:23 .= ((a ") . (2 * n)) * ((f . ((h1 + c) . n)) - ((f /* c) . (2 * n))) by SEQ_1:7 .= ((a ") . (2 * n)) * (((f /* (h1 + c)) . n) - ((f /* c) . (2 * n))) by A3, FUNCT_2:108 .= ((a . (2 * n)) ") * (((f /* (h1 + c)) . n) - ((f /* c) . (2 * n))) by VALUED_1:10 .= ((h1 . n) ") * (((f /* (h1 + c)) . n) - ((f /* c) . (2 * n))) by A6 .= ((h1 ") . n) * (((f /* (h1 + c)) . n) - ((f /* c) . (2 * n))) by VALUED_1:10 .= ((h1 ") . n) * (((f /* (h1 + c)) . n) - (f . (c . (2 * n)))) by A2, A5, FUNCT_2:108 .= ((h1 ") . n) * (((f /* (h1 + c)) . n) - (f . (c . n))) by VALUED_0:23 .= ((h1 ") . n) * (((f /* (h1 + c)) . n) - ((f /* c) . n)) by A2, A5, FUNCT_2:108 .= ((h1 ") . n) * (((f /* (h1 + c)) - (f /* c)) . n) by RFUNCT_2:1 .= ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) . n by SEQ_1:8 ; ::_thesis: verum end; then A28: ((a ") (#) ((f /* (a + c)) - (f /* c))) * I1 = (h1 ") (#) ((f /* (h1 + c)) - (f /* c)) by FUNCT_2:63; ((a ") (#) ((f /* (a + c)) - (f /* c))) * I1 is subsequence of (a ") (#) ((f /* (a + c)) - (f /* c)) by VALUED_0:def_17; hence lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) = lim ((h2 ") (#) ((f /* (h2 + c)) - (f /* c))) by A23, A26, A28, A25, SEQ_4:17; ::_thesis: verum end; theorem Th8: :: FDIFF_2:8 for r being Real for f being PartFunc of REAL,REAL st ex N being Neighbourhood of r st N c= dom f holds ex h being non-zero 0 -convergent Real_Sequence ex c being V8() Real_Sequence st ( rng c = {r} & rng (h + c) c= dom f & {r} c= dom f ) proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st ex N being Neighbourhood of r st N c= dom f holds ex h being non-zero 0 -convergent Real_Sequence ex c being V8() Real_Sequence st ( rng c = {r} & rng (h + c) c= dom f & {r} c= dom f ) let f be PartFunc of REAL,REAL; ::_thesis: ( ex N being Neighbourhood of r st N c= dom f implies ex h being non-zero 0 -convergent Real_Sequence ex c being V8() Real_Sequence st ( rng c = {r} & rng (h + c) c= dom f & {r} c= dom f ) ) given N being Neighbourhood of r such that A1: N c= dom f ; ::_thesis: ex h being non-zero 0 -convergent Real_Sequence ex c being V8() Real_Sequence st ( rng c = {r} & rng (h + c) c= dom f & {r} c= dom f ) reconsider a = NAT --> r as Real_Sequence by FUNCOP_1:45; consider g being real number such that A2: 0 < g and A3: N = ].(r - g),(r + g).[ by RCOMP_1:def_6; reconsider a = a as V8() Real_Sequence ; deffunc H1( Element of NAT ) -> Element of REAL = g / ($1 + 2); consider b being Real_Sequence such that A4: for n being Element of NAT holds b . n = H1(n) from SEQ_1:sch_1(); A5: lim b = 0 by A4, SEQ_4:31; A6: b is convergent by A4, SEQ_4:31; now__::_thesis:_for_n_being_Element_of_NAT_holds_0_<>_b_._n let n be Element of NAT ; ::_thesis: 0 <> b . n 0 < g / (n + 2) by A2; hence 0 <> b . n by A4; ::_thesis: verum end; then b is non-zero by SEQ_1:5; then reconsider b = b as non-zero 0 -convergent Real_Sequence by A6, A5, FDIFF_1:def_1; take b ; ::_thesis: ex c being V8() Real_Sequence st ( rng c = {r} & rng (b + c) c= dom f & {r} c= dom f ) take a ; ::_thesis: ( rng a = {r} & rng (b + a) c= dom f & {r} c= dom f ) thus rng a = {r} ::_thesis: ( rng (b + a) c= dom f & {r} c= dom f ) proof thus rng a c= {r} :: according to XBOOLE_0:def_10 ::_thesis: {r} c= rng a proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in {r} ) assume x in rng a ; ::_thesis: x in {r} then ex n being Element of NAT st x = a . n by FUNCT_2:113; then x = r by FUNCOP_1:7; hence x in {r} by TARSKI:def_1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {r} or x in rng a ) assume x in {r} ; ::_thesis: x in rng a then x = r by TARSKI:def_1 .= a . 0 by FUNCOP_1:7 ; hence x in rng a by VALUED_0:28; ::_thesis: verum end; thus rng (b + a) c= dom f ::_thesis: {r} c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (b + a) or x in dom f ) assume x in rng (b + a) ; ::_thesis: x in dom f then consider n being Element of NAT such that A7: x = (b + a) . n by FUNCT_2:113; 0 + 1 < n + 2 by XREAL_1:8; then g * 1 < g * (n + 2) by A2, XREAL_1:97; then g * ((n + 2) ") < (g * (n + 2)) * ((n + 2) ") by XREAL_1:68; then g * ((n + 2) ") < g * ((n + 2) * ((n + 2) ")) ; then g * ((n + 2) ") < g * 1 by XCMPLX_0:def_7; then g / (n + 2) < g by XCMPLX_0:def_9; then A8: r + (g / (n + 2)) < r + g by XREAL_1:6; A9: r - g < r - 0 by A2, XREAL_1:15; r + 0 < r + (g / (n + 2)) by A2, XREAL_1:8; then r - g < r + (g / (n + 2)) by A9, XXREAL_0:2; then A10: r + (g / (n + 2)) in { g1 where g1 is Real : ( r - g < g1 & g1 < r + g ) } by A8; x = (b . n) + (a . n) by A7, SEQ_1:7 .= (g / (n + 2)) + (a . n) by A4 .= (g / (n + 2)) + r by FUNCOP_1:7 ; then x in N by A3, A10, RCOMP_1:def_2; hence x in dom f by A1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {r} or x in dom f ) assume x in {r} ; ::_thesis: x in dom f then x = r by TARSKI:def_1; then x in N by RCOMP_1:16; hence x in dom f by A1; ::_thesis: verum end; theorem Th9: :: FDIFF_2:9 for a being Real_Sequence for f2, f1 being PartFunc of REAL,REAL st rng a c= dom (f2 * f1) holds ( rng a c= dom f1 & rng (f1 /* a) c= dom f2 ) proof let a be Real_Sequence; ::_thesis: for f2, f1 being PartFunc of REAL,REAL st rng a c= dom (f2 * f1) holds ( rng a c= dom f1 & rng (f1 /* a) c= dom f2 ) let f2, f1 be PartFunc of REAL,REAL; ::_thesis: ( rng a c= dom (f2 * f1) implies ( rng a c= dom f1 & rng (f1 /* a) c= dom f2 ) ) assume A1: rng a c= dom (f2 * f1) ; ::_thesis: ( rng a c= dom f1 & rng (f1 /* a) c= dom f2 ) then A2: f1 .: (rng a) c= dom f2 by FUNCT_1:101; rng a c= dom f1 by A1, FUNCT_1:101; hence ( rng a c= dom f1 & rng (f1 /* a) c= dom f2 ) by A2, VALUED_0:30; ::_thesis: verum end; scheme :: FDIFF_2:sch 1 ExIncSeqofNat{ F1() -> Real_Sequence, P1[ set ] } : ex q being V37() sequence of NAT st ( ( for n being Element of NAT holds P1[(F1() * q) . n] ) & ( for n being Element of NAT st ( for r being Real st r = F1() . n holds P1[r] ) holds ex m being Element of NAT st n = q . m ) ) provided A1: for n being Element of NAT ex m being Element of NAT st ( n <= m & P1[F1() . m] ) proof defpred S1[ Nat, set , set ] means for n, m being Element of NAT st $2 = n & $3 = m holds ( n < m & P1[F1() . m] & ( for k being Element of NAT st n < k & P1[F1() . k] holds m <= k ) ); defpred S2[ Nat] means P1[F1() . $1]; ex m1 being Element of NAT st ( 0 <= m1 & P1[F1() . m1] ) by A1; then A2: ex m being Nat st S2[m] ; consider M being Nat such that A3: ( S2[M] & ( for n being Nat st S2[n] holds M <= n ) ) from NAT_1:sch_5(A2); reconsider M9 = M as Element of NAT by ORDINAL1:def_12; A4: now__::_thesis:_for_n_being_Element_of_NAT_ex_m_being_Element_of_NAT_st_ (_n_<_m_&_P1[F1()_._m]_) let n be Element of NAT ; ::_thesis: ex m being Element of NAT st ( n < m & P1[F1() . m] ) consider m being Element of NAT such that A5: n + 1 <= m and A6: P1[F1() . m] by A1; take m = m; ::_thesis: ( n < m & P1[F1() . m] ) thus ( n < m & P1[F1() . m] ) by A5, A6, NAT_1:13; ::_thesis: verum end; A7: for n, x being Element of NAT ex y being Element of NAT st S1[n,x,y] proof let n, x be Element of NAT ; ::_thesis: ex y being Element of NAT st S1[n,x,y] defpred S3[ Nat] means ( x < $1 & P1[F1() . $1] ); ex m being Element of NAT st S3[m] by A4; then A8: ex m being Nat st S3[m] ; consider l being Nat such that A9: ( S3[l] & ( for k being Nat st S3[k] holds l <= k ) ) from NAT_1:sch_5(A8); take l ; ::_thesis: ( l is Element of REAL & l is Element of NAT & S1[n,x,l] ) l in NAT by ORDINAL1:def_12; hence ( l is Element of REAL & l is Element of NAT & S1[n,x,l] ) by A9; ::_thesis: verum end; consider F being Function of NAT,NAT such that A10: ( F . 0 = M9 & ( for n being Element of NAT holds S1[n,F . n,F . (n + 1)] ) ) from RECDEF_1:sch_2(A7); A11: rng F c= REAL by XBOOLE_1:1; A12: rng F c= NAT ; A13: dom F = NAT by FUNCT_2:def_1; then reconsider F = F as Real_Sequence by A11, RELSET_1:4; A14: now__::_thesis:_for_n_being_Element_of_NAT_holds_F_._n_is_Element_of_NAT let n be Element of NAT ; ::_thesis: F . n is Element of NAT F . n in rng F by A13, FUNCT_1:def_3; hence F . n is Element of NAT by A12; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_F_._n_<_F_._(n_+_1) let n be Element of NAT ; ::_thesis: F . n < F . (n + 1) A15: F . (n + 1) is Element of NAT by A14; F . n is Element of NAT by A14; hence F . n < F . (n + 1) by A10, A15; ::_thesis: verum end; then reconsider F = F as V37() sequence of NAT by SEQM_3:def_6; A16: for n being Element of NAT st P1[F1() . n] holds ex m being Element of NAT st F . m = n proof defpred S3[ Nat] means ( P1[F1() . $1] & ( for m being Element of NAT holds F . m <> $1 ) ); assume ex n being Element of NAT st S3[n] ; ::_thesis: contradiction then A17: ex n being Nat st S3[n] ; consider M1 being Nat such that A18: ( S3[M1] & ( for n being Nat st S3[n] holds M1 <= n ) ) from NAT_1:sch_5(A17); defpred S4[ Nat] means ( $1 < M1 & P1[F1() . $1] & ex m being Element of NAT st F . m = $1 ); A19: ex n being Nat st S4[n] proof take M ; ::_thesis: S4[M] A20: M <> M1 by A10, A18; M <= M1 by A3, A18; hence M < M1 by A20, XXREAL_0:1; ::_thesis: ( P1[F1() . M] & ex m being Element of NAT st F . m = M ) thus P1[F1() . M] by A3; ::_thesis: ex m being Element of NAT st F . m = M take 0 ; ::_thesis: F . 0 = M thus F . 0 = M by A10; ::_thesis: verum end; A21: for n being Nat st S4[n] holds n <= M1 ; consider X being Nat such that A22: ( S4[X] & ( for n being Nat st S4[n] holds n <= X ) ) from NAT_1:sch_6(A21, A19); A23: for k being Element of NAT st X < k & k < M1 holds not P1[F1() . k] proof given k being Element of NAT such that A24: X < k and A25: k < M1 and A26: P1[F1() . k] ; ::_thesis: contradiction now__::_thesis:_contradiction percases ( ex m being Element of NAT st F . m = k or for m being Element of NAT holds F . m <> k ) ; suppose ex m being Element of NAT st F . m = k ; ::_thesis: contradiction hence contradiction by A22, A24, A25, A26; ::_thesis: verum end; suppose for m being Element of NAT holds F . m <> k ; ::_thesis: contradiction hence contradiction by A18, A25, A26; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; consider m being Element of NAT such that A27: F . m = X by A22; M1 in NAT by ORDINAL1:def_12; then A28: F . (m + 1) <= M1 by A10, A18, A22, A27; A29: P1[F1() . (F . (m + 1))] by A10, A27; A30: X < F . (m + 1) by A10, A27; now__::_thesis:_not_F_._(m_+_1)_<>_M1 assume F . (m + 1) <> M1 ; ::_thesis: contradiction then F . (m + 1) < M1 by A28, XXREAL_0:1; hence contradiction by A23, A30, A29; ::_thesis: verum end; hence contradiction by A18; ::_thesis: verum end; take F ; ::_thesis: ( ( for n being Element of NAT holds P1[(F1() * F) . n] ) & ( for n being Element of NAT st ( for r being Real st r = F1() . n holds P1[r] ) holds ex m being Element of NAT st n = F . m ) ) set q = F1() * F; defpred S3[ Nat] means P1[(F1() * F) . $1]; A31: for k being Element of NAT st S3[k] holds S3[k + 1] proof let k be Element of NAT ; ::_thesis: ( S3[k] implies S3[k + 1] ) assume P1[(F1() * F) . k] ; ::_thesis: S3[k + 1] S1[k,F . k,F . (k + 1)] by A10; then P1[F1() . (F . (k + 1))] ; hence S3[k + 1] by FUNCT_2:15; ::_thesis: verum end; A32: S3[ 0 ] by A3, A10, FUNCT_2:15; thus for n being Element of NAT holds S3[n] from NAT_1:sch_1(A32, A31); ::_thesis: for n being Element of NAT st ( for r being Real st r = F1() . n holds P1[r] ) holds ex m being Element of NAT st n = F . m let n be Element of NAT ; ::_thesis: ( ( for r being Real st r = F1() . n holds P1[r] ) implies ex m being Element of NAT st n = F . m ) assume for r being Real st r = F1() . n holds P1[r] ; ::_thesis: ex m being Element of NAT st n = F . m then consider m being Element of NAT such that A33: F . m = n by A16; take m ; ::_thesis: n = F . m thus n = F . m by A33; ::_thesis: verum end; theorem :: FDIFF_2:10 for x0, r being Real for f being PartFunc of REAL,REAL st f . x0 <> r & f is_differentiable_in x0 holds ex N being Neighbourhood of x0 st ( N c= dom f & ( for g being Real st g in N holds f . g <> r ) ) proof let x0, r be Real; ::_thesis: for f being PartFunc of REAL,REAL st f . x0 <> r & f is_differentiable_in x0 holds ex N being Neighbourhood of x0 st ( N c= dom f & ( for g being Real st g in N holds f . g <> r ) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f . x0 <> r & f is_differentiable_in x0 implies ex N being Neighbourhood of x0 st ( N c= dom f & ( for g being Real st g in N holds f . g <> r ) ) ) assume that A1: f . x0 <> r and A2: f is_differentiable_in x0 ; ::_thesis: ex N being Neighbourhood of x0 st ( N c= dom f & ( for g being Real st g in N holds f . g <> r ) ) ex N being Neighbourhood of x0 st ( N c= dom f & ex L being LinearFunc ex R being RestFunc st for r being Real st r in N holds (f . r) - (f . x0) = (L . (r - x0)) + (R . (r - x0)) ) by A2, FDIFF_1:def_4; hence ex N being Neighbourhood of x0 st ( N c= dom f & ( for g being Real st g in N holds f . g <> r ) ) by A1, A2, FCONT_3:7, FDIFF_1:24; ::_thesis: verum end; Lm1: for x0 being Real for f being PartFunc of REAL,REAL st ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) holds ( f is_differentiable_in x0 & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ) ) proof let x0 be Real; ::_thesis: for f being PartFunc of REAL,REAL st ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) holds ( f is_differentiable_in x0 & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ) ) let f be PartFunc of REAL,REAL; ::_thesis: ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) implies ( f is_differentiable_in x0 & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ) ) ) deffunc H1( Real) -> Element of NAT = 0 ; defpred S1[ set ] means $1 in REAL ; given N being Neighbourhood of x0 such that A1: N c= dom f ; ::_thesis: ( ex h being non-zero 0 -convergent Real_Sequence ex c being V8() Real_Sequence st ( rng c = {x0} & rng (h + c) c= dom f & not (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) or ( f is_differentiable_in x0 & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ) ) ) assume A2: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ; ::_thesis: ( f is_differentiable_in x0 & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ) ) then A3: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f & {x0} c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ; consider r being real number such that A4: 0 < r and A5: N = ].(x0 - r),(x0 + r).[ by RCOMP_1:def_6; consider h being non-zero 0 -convergent Real_Sequence, c being V8() Real_Sequence such that A6: rng c = {x0} and A7: rng (h + c) c= dom f and A8: {x0} c= dom f by A1, Th8; set l = lim ((h ") (#) ((f /* (h + c)) - (f /* c))); deffunc H2( Real) -> Element of REAL = (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) * $1; consider L being PartFunc of REAL,REAL such that A9: for g being Real holds ( g in dom L iff S1[g] ) and A10: for g being Real st g in dom L holds L . g = H2(g) from SEQ_1:sch_3(); A11: dom L = REAL by A9, FDIFF_1:1; then A12: for g being Real holds L . g = (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) * g by A10; A13: L is total by A11, PARTFUN1:def_2; deffunc H3( Real) -> Element of REAL = $1 + x0; consider T being PartFunc of REAL,REAL such that A14: for g being Real holds ( g in dom T iff S1[g] ) and A15: for g being Real st g in dom T holds T . g = H3(g) from SEQ_1:sch_3(); A16: dom T = REAL by A14, FDIFF_1:1; deffunc H4( real number ) -> Element of REAL = ((f * T) . $1) - (f . x0); consider T1 being PartFunc of REAL,REAL such that A17: for g being Real holds ( g in dom T1 iff S1[g] ) and A18: for g being Real st g in dom T1 holds T1 . g = H4(g) from SEQ_1:sch_3(); deffunc H5( Real) -> Element of REAL = (T1 - L) . $1; A19: dom T1 = REAL by A17, FDIFF_1:1; then A20: T1 is total by PARTFUN1:def_2; reconsider L = L as LinearFunc by A13, A12, FDIFF_1:def_3; defpred S2[ set ] means $1 in ].(- r),r.[; consider R being PartFunc of REAL,REAL such that A21: R is total and A22: for g being Real st g in dom R holds ( ( S2[g] implies R . g = H5(g) ) & ( not S2[g] implies R . g = H1(g) ) ) from SCHEME1:sch_8(); A23: dom R = REAL by A21, PARTFUN1:def_2; A24: now__::_thesis:_for_n_being_Element_of_NAT_holds_c_._n_=_x0 let n be Element of NAT ; ::_thesis: c . n = x0 c . n in {x0} by A6, VALUED_0:28; hence c . n = x0 by TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_for_h1_being_non-zero_0_-convergent_Real_Sequence_holds_ (_(h1_")_(#)_(R_/*_h1)_is_convergent_&_lim_((h1_")_(#)_(R_/*_h1))_=_0_) let h1 be non-zero 0 -convergent Real_Sequence; ::_thesis: ( (h1 ") (#) (R /* h1) is convergent & lim ((h1 ") (#) (R /* h1)) = 0 ) A25: lim h1 = 0 ; consider k being Element of NAT such that A26: for n being Element of NAT st k <= n holds abs ((h1 . n) - 0) < r by A4, A25, SEQ_2:def_7; set h2 = h1 ^\ k; A27: now__::_thesis:_for_n_being_Element_of_NAT_holds_(h1_^\_k)_._n_in_].(-_r),r.[ let n be Element of NAT ; ::_thesis: (h1 ^\ k) . n in ].(- r),r.[ abs ((h1 . (n + k)) - 0) < r by A26, NAT_1:12; then h1 . (n + k) in ].(0 - r),(0 + r).[ by RCOMP_1:1; hence (h1 ^\ k) . n in ].(- r),r.[ by NAT_1:def_3; ::_thesis: verum end; A28: rng ((h1 ^\ k) + c) c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng ((h1 ^\ k) + c) or x in dom f ) assume x in rng ((h1 ^\ k) + c) ; ::_thesis: x in dom f then consider n being Element of NAT such that A29: x = ((h1 ^\ k) + c) . n by FUNCT_2:113; (h1 ^\ k) . n in ].(- r),r.[ by A27; then (h1 ^\ k) . n in { g where g is Real : ( - r < g & g < r ) } by RCOMP_1:def_2; then A30: ex g being Real st ( g = (h1 ^\ k) . n & - r < g & g < r ) ; then A31: ((h1 ^\ k) . n) + x0 < x0 + r by XREAL_1:6; x0 + (- r) < ((h1 ^\ k) . n) + x0 by A30, XREAL_1:6; then A32: ((h1 ^\ k) . n) + x0 in { g where g is Real : ( x0 - r < g & g < x0 + r ) } by A31; x = ((h1 ^\ k) . n) + (c . n) by A29, SEQ_1:7 .= ((h1 ^\ k) . n) + x0 by A24 ; then x in ].(x0 - r),(x0 + r).[ by A32, RCOMP_1:def_2; hence x in dom f by A1, A5; ::_thesis: verum end; set b = ((h1 ^\ k) ") (#) (L /* (h1 ^\ k)); set a = ((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k)); A33: ((h1 ") (#) (R /* h1)) ^\ k = ((h1 ") ^\ k) (#) ((R /* h1) ^\ k) by SEQM_3:19 .= ((h1 ^\ k) ") (#) ((R /* h1) ^\ k) by SEQM_3:18 .= ((h1 ^\ k) ") (#) (R /* (h1 ^\ k)) by A21, VALUED_0:29 ; A34: (((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) - (((h1 ^\ k) ") (#) (L /* (h1 ^\ k))) = ((h1 ^\ k) ") (#) ((T1 /* (h1 ^\ k)) - (L /* (h1 ^\ k))) by SEQ_1:21 .= ((h1 ^\ k) ") (#) ((T1 - L) /* (h1 ^\ k)) by A13, A20, RFUNCT_2:13 ; A35: now__::_thesis:_for_n_being_Element_of_NAT_holds_((((h1_^\_k)_")_(#)_(T1_/*_(h1_^\_k)))_-_(((h1_^\_k)_")_(#)_(L_/*_(h1_^\_k))))_._n_=_(((h1_^\_k)_")_(#)_(R_/*_(h1_^\_k)))_._n let n be Element of NAT ; ::_thesis: ((((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) - (((h1 ^\ k) ") (#) (L /* (h1 ^\ k)))) . n = (((h1 ^\ k) ") (#) (R /* (h1 ^\ k))) . n A36: (h1 ^\ k) . n in ].(- r),r.[ by A27; thus ((((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) - (((h1 ^\ k) ") (#) (L /* (h1 ^\ k)))) . n = (((h1 ^\ k) ") . n) * (((T1 - L) /* (h1 ^\ k)) . n) by A34, SEQ_1:8 .= (((h1 ^\ k) ") . n) * ((T1 - L) . ((h1 ^\ k) . n)) by A13, A20, FUNCT_2:115 .= (((h1 ^\ k) ") . n) * (R . ((h1 ^\ k) . n)) by A22, A23, A36 .= (((h1 ^\ k) ") . n) * ((R /* (h1 ^\ k)) . n) by A21, FUNCT_2:115 .= (((h1 ^\ k) ") (#) (R /* (h1 ^\ k))) . n by SEQ_1:8 ; ::_thesis: verum end; A38: now__::_thesis:_for_n_being_Nat_holds_(((h1_^\_k)_")_(#)_(L_/*_(h1_^\_k)))_._n_=_lim_((h_")_(#)_((f_/*_(h_+_c))_-_(f_/*_c))) let n be Nat; ::_thesis: (((h1 ^\ k) ") (#) (L /* (h1 ^\ k))) . n = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) A39: n in NAT by ORDINAL1:def_12; then A40: (h1 ^\ k) . n <> 0 by SEQ_1:5; thus (((h1 ^\ k) ") (#) (L /* (h1 ^\ k))) . n = (((h1 ^\ k) ") . n) * ((L /* (h1 ^\ k)) . n) by A39, SEQ_1:8 .= (((h1 ^\ k) ") . n) * (L . ((h1 ^\ k) . n)) by A13, A39, FUNCT_2:115 .= (((h1 ^\ k) ") . n) * (((h1 ^\ k) . n) * (lim ((h ") (#) ((f /* (h + c)) - (f /* c))))) by A10, A11 .= ((((h1 ^\ k) ") . n) * ((h1 ^\ k) . n)) * (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) .= ((((h1 ^\ k) . n) ") * ((h1 ^\ k) . n)) * (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) by VALUED_1:10 .= 1 * (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) by A40, XCMPLX_0:def_7 .= lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ; ::_thesis: verum end; then A41: ((h1 ^\ k) ") (#) (L /* (h1 ^\ k)) is V8() by VALUED_0:def_18; now__::_thesis:_for_n_being_Element_of_NAT_holds_(((h1_^\_k)_")_(#)_(T1_/*_(h1_^\_k)))_._n_=_(((h1_^\_k)_")_(#)_((f_/*_((h1_^\_k)_+_c))_-_(f_/*_c)))_._n let n be Element of NAT ; ::_thesis: (((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) . n = (((h1 ^\ k) ") (#) ((f /* ((h1 ^\ k) + c)) - (f /* c))) . n A42: c . n = x0 by A24; thus (((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) . n = (((h1 ^\ k) ") . n) * ((T1 /* (h1 ^\ k)) . n) by SEQ_1:8 .= (((h1 ^\ k) ") . n) * (T1 . ((h1 ^\ k) . n)) by A20, FUNCT_2:115 .= (((h1 ^\ k) ") . n) * (((f * T) . ((h1 ^\ k) . n)) - (f . x0)) by A18, A19 .= (((h1 ^\ k) ") . n) * ((f . (T . ((h1 ^\ k) . n))) - (f . x0)) by A16, FUNCT_1:13 .= (((h1 ^\ k) ") . n) * ((f . (((h1 ^\ k) . n) + x0)) - (f . x0)) by A15, A16 .= (((h1 ^\ k) ") . n) * ((f . (((h1 ^\ k) + c) . n)) - (f . (c . n))) by A42, SEQ_1:7 .= (((h1 ^\ k) ") . n) * ((f . (((h1 ^\ k) + c) . n)) - ((f /* c) . n)) by A6, A8, FUNCT_2:108 .= (((h1 ^\ k) ") . n) * (((f /* ((h1 ^\ k) + c)) . n) - ((f /* c) . n)) by A28, FUNCT_2:108 .= (((h1 ^\ k) ") . n) * (((f /* ((h1 ^\ k) + c)) - (f /* c)) . n) by RFUNCT_2:1 .= (((h1 ^\ k) ") (#) ((f /* ((h1 ^\ k) + c)) - (f /* c))) . n by SEQ_1:8 ; ::_thesis: verum end; then A43: ((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k)) = ((h1 ^\ k) ") (#) ((f /* ((h1 ^\ k) + c)) - (f /* c)) by FUNCT_2:63; then A44: ((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k)) is convergent by A2, A6, A28; then (((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) - (((h1 ^\ k) ") (#) (L /* (h1 ^\ k))) is convergent by A41, SEQ_2:11; then A45: ((h1 ^\ k) ") (#) (R /* (h1 ^\ k)) is convergent by A35, FUNCT_2:63; hence (h1 ") (#) (R /* h1) is convergent by A33, SEQ_4:21; ::_thesis: lim ((h1 ") (#) (R /* h1)) = 0 A46: lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = lim (((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) by A3, A6, A7, A8, A28, A43, Th7; lim (((h1 ^\ k) ") (#) (L /* (h1 ^\ k))) = (((h1 ^\ k) ") (#) (L /* (h1 ^\ k))) . 0 by A41, SEQ_4:25 .= lim ((h ") (#) ((f /* (h + c)) - (f /* c))) by A38 ; then lim ((((h1 ^\ k) ") (#) (T1 /* (h1 ^\ k))) - (((h1 ^\ k) ") (#) (L /* (h1 ^\ k)))) = (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) - (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) by A44, A46, A41, SEQ_2:12 .= 0 ; then lim (((h1 ^\ k) ") (#) (R /* (h1 ^\ k))) = 0 by A35, FUNCT_2:63; hence lim ((h1 ") (#) (R /* h1)) = 0 by A45, A33, SEQ_4:22; ::_thesis: verum end; then reconsider R = R as RestFunc by A21, FDIFF_1:def_2; A47: now__::_thesis:_ex_N_being_Neighbourhood_of_x0_st_ (_N_c=_dom_f_&_ex_L_being_LinearFunc_ex_R_being_RestFunc_st_ (_L_._1_=_lim_((h_")_(#)_((f_/*_(h_+_c))_-_(f_/*_c)))_&_(_for_g1_being_Real_st_g1_in_N_holds_ (L_._(g1_-_x0))_+_(R_._(g1_-_x0))_=_(f_._g1)_-_(f_._x0)_)_)_) take N = N; ::_thesis: ( N c= dom f & ex L being LinearFunc ex R being RestFunc st ( L . 1 = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) & ( for g1 being Real st g1 in N holds (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) ) ) ) thus N c= dom f by A1; ::_thesis: ex L being LinearFunc ex R being RestFunc st ( L . 1 = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) & ( for g1 being Real st g1 in N holds (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) ) ) take L = L; ::_thesis: ex R being RestFunc st ( L . 1 = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) & ( for g1 being Real st g1 in N holds (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) ) ) take R = R; ::_thesis: ( L . 1 = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) & ( for g1 being Real st g1 in N holds (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) ) ) thus L . 1 = (lim ((h ") (#) ((f /* (h + c)) - (f /* c)))) * 1 by A10, A11 .= lim ((h ") (#) ((f /* (h + c)) - (f /* c))) ; ::_thesis: for g1 being Real st g1 in N holds (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) let g1 be Real; ::_thesis: ( g1 in N implies (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) ) assume g1 in N ; ::_thesis: (L . (g1 - x0)) + (R . (g1 - x0)) = (f . g1) - (f . x0) then g1 - x0 in ].(- r),r.[ by A5, FCONT_3:2; hence (L . (g1 - x0)) + (R . (g1 - x0)) = (L . (g1 - x0)) + ((T1 - L) . (g1 - x0)) by A22, A23 .= (L . (g1 - x0)) + ((T1 . (g1 - x0)) - (L . (g1 - x0))) by A13, A20, RFUNCT_1:56 .= ((f * T) . (g1 - x0)) - (f . x0) by A18, A19 .= (f . (T . (g1 - x0))) - (f . x0) by A16, FUNCT_1:13 .= (f . ((g1 - x0) + x0)) - (f . x0) by A15, A16 .= (f . g1) - (f . x0) ; ::_thesis: verum end; thus f is_differentiable_in x0 ::_thesis: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) proof consider N1 being Neighbourhood of x0 such that A48: N1 c= dom f and A49: ex L being LinearFunc ex R being RestFunc st ( L . 1 = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) & ( for g being Real st g in N1 holds (f . g) - (f . x0) = (L . (g - x0)) + (R . (g - x0)) ) ) by A47; take N1 ; :: according to FDIFF_1:def_4 ::_thesis: ( N1 c= dom f & ex b1 being Element of K19(K20(REAL,REAL)) ex b2 being Element of K19(K20(REAL,REAL)) st for b3 being Element of REAL holds ( not b3 in N1 or (f . b3) - (f . x0) = (b1 . (b3 - x0)) + (b2 . (b3 - x0)) ) ) thus N1 c= dom f by A48; ::_thesis: ex b1 being Element of K19(K20(REAL,REAL)) ex b2 being Element of K19(K20(REAL,REAL)) st for b3 being Element of REAL holds ( not b3 in N1 or (f . b3) - (f . x0) = (b1 . (b3 - x0)) + (b2 . (b3 - x0)) ) consider L1 being LinearFunc, R1 being RestFunc such that L1 . 1 = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) and A50: for g being Real st g in N1 holds (f . g) - (f . x0) = (L1 . (g - x0)) + (R1 . (g - x0)) by A49; take L1 ; ::_thesis: ex b1 being Element of K19(K20(REAL,REAL)) st for b2 being Element of REAL holds ( not b2 in N1 or (f . b2) - (f . x0) = (L1 . (b2 - x0)) + (b1 . (b2 - x0)) ) take R1 ; ::_thesis: for b1 being Element of REAL holds ( not b1 in N1 or (f . b1) - (f . x0) = (L1 . (b1 - x0)) + (R1 . (b1 - x0)) ) thus for b1 being Element of REAL holds ( not b1 in N1 or (f . b1) - (f . x0) = (L1 . (b1 - x0)) + (R1 . (b1 - x0)) ) by A50; ::_thesis: verum end; then A51: diff (f,x0) = lim ((h ") (#) ((f /* (h + c)) - (f /* c))) by A47, FDIFF_1:def_5; let h1 be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} & rng (h1 + c) c= dom f holds diff (f,x0) = lim ((h1 ") (#) ((f /* (h1 + c)) - (f /* c))) let c1 be V8() Real_Sequence; ::_thesis: ( rng c1 = {x0} & rng (h1 + c1) c= dom f implies diff (f,x0) = lim ((h1 ") (#) ((f /* (h1 + c1)) - (f /* c1))) ) assume that A52: rng c1 = {x0} and A53: rng (h1 + c1) c= dom f ; ::_thesis: diff (f,x0) = lim ((h1 ") (#) ((f /* (h1 + c1)) - (f /* c1))) c1 = c by A6, A52, Th5; hence diff (f,x0) = lim ((h1 ") (#) ((f /* (h1 + c1)) - (f /* c1))) by A3, A6, A7, A8, A51, A53, Th7; ::_thesis: verum end; theorem Th11: :: FDIFF_2:11 for x0 being Real for f being PartFunc of REAL,REAL holds ( f is_differentiable_in x0 iff ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) ) ) proof let x0 be Real; ::_thesis: for f being PartFunc of REAL,REAL holds ( f is_differentiable_in x0 iff ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) ) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f is_differentiable_in x0 iff ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) ) ) thus ( f is_differentiable_in x0 implies ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) ) ) ::_thesis: ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) implies f is_differentiable_in x0 ) proof assume A1: f is_differentiable_in x0 ; ::_thesis: ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) ) then consider N being Neighbourhood of x0 such that A2: N c= dom f and ex L being LinearFunc ex R being RestFunc st for g being Real st g in N holds (f . g) - (f . x0) = (L . (g - x0)) + (R . (g - x0)) by FDIFF_1:def_4; thus ex N being Neighbourhood of x0 st N c= dom f by A2; ::_thesis: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent let c be V8() Real_Sequence; ::_thesis: ( rng c = {x0} & rng (h + c) c= dom f implies (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ) assume that A3: rng c = {x0} and A4: rng (h + c) c= dom f ; ::_thesis: (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent A5: lim h = 0 ; consider r being real number such that A6: 0 < r and A7: N = ].(x0 - r),(x0 + r).[ by RCOMP_1:def_6; consider k being Element of NAT such that A8: for n being Element of NAT st k <= n holds abs ((h . n) - 0) < r by A5, A6, SEQ_2:def_7; set h1 = h ^\ k; rng ((h ^\ k) + c) c= N proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng ((h ^\ k) + c) or x in N ) assume x in rng ((h ^\ k) + c) ; ::_thesis: x in N then consider n being Element of NAT such that A9: x = ((h ^\ k) + c) . n by FUNCT_2:113; c . n in rng c by VALUED_0:28; then c . n = x0 by A3, TARSKI:def_1; then A10: x = ((h ^\ k) . n) + x0 by A9, SEQ_1:7 .= (h . (n + k)) + x0 by NAT_1:def_3 ; abs ((h . (n + k)) - 0) < r by A8, NAT_1:12; then h . (n + k) in ].(0 - r),(0 + r).[ by RCOMP_1:1; then h . (n + k) in { g where g is Real : ( - r < g & g < r ) } by RCOMP_1:def_2; then A11: ex g being Real st ( g = h . (n + k) & - r < g & g < r ) ; then A12: (h . (n + k)) + x0 < x0 + r by XREAL_1:6; x0 + (- r) < (h . (n + k)) + x0 by A11, XREAL_1:6; then (h . (n + k)) + x0 in { g where g is Real : ( x0 - r < g & g < x0 + r ) } by A12; hence x in N by A7, A10, RCOMP_1:def_2; ::_thesis: verum end; then A13: ((h ^\ k) ") (#) ((f /* ((h ^\ k) + c)) - (f /* c)) is convergent by A1, A2, A3, FDIFF_1:12; A14: {x0} c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {x0} or x in dom f ) assume x in {x0} ; ::_thesis: x in dom f then A15: x = x0 by TARSKI:def_1; x0 in N by RCOMP_1:16; hence x in dom f by A2, A15; ::_thesis: verum end; c ^\ k = c by VALUED_0:26; then ((h ^\ k) ") (#) ((f /* ((h ^\ k) + c)) - (f /* c)) = ((h ^\ k) ") (#) ((f /* ((h + c) ^\ k)) - (f /* (c ^\ k))) by SEQM_3:15 .= ((h ^\ k) ") (#) (((f /* (h + c)) ^\ k) - (f /* (c ^\ k))) by A4, VALUED_0:27 .= ((h ^\ k) ") (#) (((f /* (h + c)) ^\ k) - ((f /* c) ^\ k)) by A3, A14, VALUED_0:27 .= ((h ^\ k) ") (#) (((f /* (h + c)) - (f /* c)) ^\ k) by SEQM_3:17 .= ((h ") ^\ k) (#) (((f /* (h + c)) - (f /* c)) ^\ k) by SEQM_3:18 .= ((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ k by SEQM_3:19 ; hence (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent by A13, SEQ_4:21; ::_thesis: verum end; assume that A16: ex N being Neighbourhood of x0 st N c= dom f and A17: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent ; ::_thesis: f is_differentiable_in x0 thus f is_differentiable_in x0 by A16, A17, Lm1; ::_thesis: verum end; theorem Th12: :: FDIFF_2:12 for x0, g being Real for f being PartFunc of REAL,REAL holds ( f is_differentiable_in x0 & diff (f,x0) = g iff ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ) ) ) proof let x0, g be Real; ::_thesis: for f being PartFunc of REAL,REAL holds ( f is_differentiable_in x0 & diff (f,x0) = g iff ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ) ) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f is_differentiable_in x0 & diff (f,x0) = g iff ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ) ) ) thus ( f is_differentiable_in x0 & diff (f,x0) = g implies ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ) ) ) ::_thesis: ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ) implies ( f is_differentiable_in x0 & diff (f,x0) = g ) ) proof assume that A1: f is_differentiable_in x0 and A2: diff (f,x0) = g ; ::_thesis: ( ex N being Neighbourhood of x0 st N c= dom f & ( for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ) ) thus ex N being Neighbourhood of x0 st N c= dom f by A1, Th11; ::_thesis: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) A3: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent by A1, Th11; ex N being Neighbourhood of x0 st N c= dom f by A1, Th11; hence for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) by A2, A3, Lm1; ::_thesis: verum end; assume that A4: ex N being Neighbourhood of x0 st N c= dom f and A5: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g ) ; ::_thesis: ( f is_differentiable_in x0 & diff (f,x0) = g ) A6: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent by A5; hence f is_differentiable_in x0 by A4, Lm1; ::_thesis: diff (f,x0) = g consider h being non-zero 0 -convergent Real_Sequence, c being V8() Real_Sequence such that A7: rng c = {x0} and A8: rng (h + c) c= dom f and {x0} c= dom f by A4, Th8; lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = g by A5, A7, A8; hence diff (f,x0) = g by A4, A6, A7, A8, Lm1; ::_thesis: verum end; Lm2: for x0 being Real for f2, f1 being PartFunc of REAL,REAL st ex N being Neighbourhood of x0 st N c= dom (f2 * f1) & f1 is_differentiable_in x0 & f2 is_differentiable_in f1 . x0 holds ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) proof let x0 be Real; ::_thesis: for f2, f1 being PartFunc of REAL,REAL st ex N being Neighbourhood of x0 st N c= dom (f2 * f1) & f1 is_differentiable_in x0 & f2 is_differentiable_in f1 . x0 holds ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) let f2, f1 be PartFunc of REAL,REAL; ::_thesis: ( ex N being Neighbourhood of x0 st N c= dom (f2 * f1) & f1 is_differentiable_in x0 & f2 is_differentiable_in f1 . x0 implies ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) ) given N being Neighbourhood of x0 such that A1: N c= dom (f2 * f1) ; ::_thesis: ( not f1 is_differentiable_in x0 or not f2 is_differentiable_in f1 . x0 or ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) ) assume that A2: f1 is_differentiable_in x0 and A3: f2 is_differentiable_in f1 . x0 ; ::_thesis: ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom (f2 * f1) holds ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) proof let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom (f2 * f1) holds ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {x0} & rng (h + c) c= dom (f2 * f1) implies ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) ) assume that A4: rng c = {x0} and A5: rng (h + c) c= dom (f2 * f1) ; ::_thesis: ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) A6: rng (h + c) c= dom f1 by A5, Th9; set a = f1 /* c; A7: now__::_thesis:_for_n_being_Element_of_NAT_holds_c_._n_=_x0 let n be Element of NAT ; ::_thesis: c . n = x0 c . n in rng c by VALUED_0:28; hence c . n = x0 by A4, TARSKI:def_1; ::_thesis: verum end; A8: rng c c= dom (f2 * f1) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom (f2 * f1) ) assume x in rng c ; ::_thesis: x in dom (f2 * f1) then A9: ex n being Element of NAT st c . n = x by FUNCT_2:113; x0 in N by RCOMP_1:16; then x0 in dom (f2 * f1) by A1; hence x in dom (f2 * f1) by A7, A9; ::_thesis: verum end; set d = (f1 /* (h + c)) - (f1 /* c); A10: lim h = 0 ; A12: h + c is convergent by SEQ_2:5; lim c = c . 0 by SEQ_4:25; then lim c = x0 by A7; then A13: lim (h + c) = 0 + x0 by A10, SEQ_2:6 .= x0 ; A14: f1 is_continuous_in x0 by A2, FDIFF_1:24; then A15: f1 /* (h + c) is convergent by A6, A12, A13, FCONT_1:def_1; A16: f1 . x0 = lim (f1 /* (h + c)) by A6, A12, A13, A14, FCONT_1:def_1; A17: rng (f1 /* (h + c)) c= dom f2 by A5, Th9; A18: rng c c= dom f1 proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom f1 ) assume x in rng c ; ::_thesis: x in dom f1 then A19: x = x0 by A4, TARSKI:def_1; x0 in N by RCOMP_1:16; hence x in dom f1 by A1, A19, FUNCT_1:11; ::_thesis: verum end; A20: rng (f1 /* c) = {(f1 . x0)} proof thus rng (f1 /* c) c= {(f1 . x0)} :: according to XBOOLE_0:def_10 ::_thesis: {(f1 . x0)} c= rng (f1 /* c) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (f1 /* c) or x in {(f1 . x0)} ) assume x in rng (f1 /* c) ; ::_thesis: x in {(f1 . x0)} then consider n being Element of NAT such that A21: (f1 /* c) . n = x by FUNCT_2:113; c . n = x0 by A7; then x = f1 . x0 by A18, A21, FUNCT_2:108; hence x in {(f1 . x0)} by TARSKI:def_1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(f1 . x0)} or x in rng (f1 /* c) ) A22: (f1 /* c) . 0 in rng (f1 /* c) by VALUED_0:28; assume x in {(f1 . x0)} ; ::_thesis: x in rng (f1 /* c) then A23: x = f1 . x0 by TARSKI:def_1; c . 0 = x0 by A7; hence x in rng (f1 /* c) by A18, A23, A22, FUNCT_2:108; ::_thesis: verum end; A24: rng (f1 /* c) c= dom f2 proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (f1 /* c) or x in dom f2 ) assume x in rng (f1 /* c) ; ::_thesis: x in dom f2 then A25: x = f1 . x0 by A20, TARSKI:def_1; x0 in N by RCOMP_1:16; hence x in dom f2 by A1, A25, FUNCT_1:11; ::_thesis: verum end; A26: now__::_thesis:_for_n_being_Nat_holds_(f1_/*_c)_._n_=_(f1_/*_c)_._(n_+_1) let n be Nat; ::_thesis: (f1 /* c) . n = (f1 /* c) . (n + 1) (f1 /* c) . n in rng (f1 /* c) by VALUED_0:28; then A27: (f1 /* c) . n = f1 . x0 by A20, TARSKI:def_1; (f1 /* c) . (n + 1) in rng (f1 /* c) by VALUED_0:28; hence (f1 /* c) . n = (f1 /* c) . (n + 1) by A20, A27, TARSKI:def_1; ::_thesis: verum end; then f1 /* c is V8() by VALUED_0:25; then A28: (f1 /* (h + c)) - (f1 /* c) is convergent by A15, SEQ_2:11; reconsider a = f1 /* c as V8() Real_Sequence by A26, VALUED_0:25; a . 0 in rng a by VALUED_0:28; then a . 0 = f1 . x0 by A20, TARSKI:def_1; then lim a = f1 . x0 by SEQ_4:25; then A29: lim ((f1 /* (h + c)) - (f1 /* c)) = (f1 . x0) - (f1 . x0) by A15, A16, SEQ_2:12 .= 0 ; ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) proof percases ( ex k being Element of NAT st for n being Element of NAT st k <= n holds (f1 /* (h + c)) . n <> f1 . x0 or for k being Element of NAT ex n being Element of NAT st ( k <= n & (f1 /* (h + c)) . n = f1 . x0 ) ) ; suppose ex k being Element of NAT st for n being Element of NAT st k <= n holds (f1 /* (h + c)) . n <> f1 . x0 ; ::_thesis: ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) then consider k being Element of NAT such that A30: for n being Element of NAT st k <= n holds (f1 /* (h + c)) . n <> f1 . x0 ; now__::_thesis:_for_n_being_Element_of_NAT_holds_not_(((f1_/*_(h_+_c))_-_(f1_/*_c))_^\_k)_._n_=_0 given n being Element of NAT such that A31: (((f1 /* (h + c)) - (f1 /* c)) ^\ k) . n = 0 ; ::_thesis: contradiction 0 = ((f1 /* (h + c)) - (f1 /* c)) . (n + k) by A31, NAT_1:def_3 .= ((f1 /* (h + c)) . (n + k)) - ((f1 /* c) . (n + k)) by RFUNCT_2:1 .= ((f1 /* (h + c)) . (n + k)) - (f1 . (c . (n + k))) by A18, FUNCT_2:108 .= ((f1 /* (h + c)) . (n + k)) - (f1 . x0) by A7 ; hence contradiction by A30, NAT_1:12; ::_thesis: verum end; then A32: ((f1 /* (h + c)) - (f1 /* c)) ^\ k is non-zero by SEQ_1:5; set c1 = c ^\ k; set h1 = h ^\ k; set a1 = a ^\ k; set s = ((h ^\ k) ") (#) ((f1 /* ((h ^\ k) + (c ^\ k))) - (f1 /* (c ^\ k))); A33: now__::_thesis:_for_n_being_Element_of_NAT_holds_(((f1_/*_(h_+_c))_-_(f1_/*_c))_+_a)_._n_=_(f1_/*_(h_+_c))_._n let n be Element of NAT ; ::_thesis: (((f1 /* (h + c)) - (f1 /* c)) + a) . n = (f1 /* (h + c)) . n thus (((f1 /* (h + c)) - (f1 /* c)) + a) . n = (((f1 /* (h + c)) - (f1 /* c)) . n) + (a . n) by SEQ_1:7 .= (((f1 /* (h + c)) . n) - (a . n)) + (a . n) by RFUNCT_2:1 .= (f1 /* (h + c)) . n ; ::_thesis: verum end; lim (((f1 /* (h + c)) - (f1 /* c)) ^\ k) = 0 by A28, A29, SEQ_4:20; then reconsider d1 = ((f1 /* (h + c)) - (f1 /* c)) ^\ k as non-zero 0 -convergent Real_Sequence by A28, A32, FDIFF_1:def_1; set t = (d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k))); d1 + (a ^\ k) = (((f1 /* (h + c)) - (f1 /* c)) + a) ^\ k by SEQM_3:15; then A34: d1 + (a ^\ k) = (f1 /* (h + c)) ^\ k by A33, FUNCT_2:63; rng ((f1 /* (h + c)) ^\ k) c= rng (f1 /* (h + c)) by VALUED_0:21; then A35: rng (d1 + (a ^\ k)) c= dom f2 by A17, A34, XBOOLE_1:1; A36: rng (a ^\ k) = {(f1 . x0)} by A20, VALUED_0:26; then A37: lim ((d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k)))) = diff (f2,(f1 . x0)) by A3, A35, Th12; diff (f2,(f1 . x0)) = diff (f2,(f1 . x0)) ; then A38: (d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k))) is convergent by A3, A36, A35, Th12; rng ((h + c) ^\ k) c= rng (h + c) by VALUED_0:21; then rng ((h + c) ^\ k) c= dom f1 by A6, XBOOLE_1:1; then A39: rng ((h ^\ k) + (c ^\ k)) c= dom f1 by SEQM_3:15; A40: rng (c ^\ k) = {x0} by A4, VALUED_0:26; diff (f1,x0) = diff (f1,x0) ; then A41: ((h ^\ k) ") (#) ((f1 /* ((h ^\ k) + (c ^\ k))) - (f1 /* (c ^\ k))) is convergent by A2, A40, A39, Th12; A42: ((d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k)))) (#) (((h ^\ k) ") (#) ((f1 /* ((h ^\ k) + (c ^\ k))) - (f1 /* (c ^\ k)))) = ((d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k)))) (#) (((f1 /* ((h + c) ^\ k)) - (f1 /* (c ^\ k))) (#) ((h ^\ k) ")) by SEQM_3:15 .= ((d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k)))) (#) ((((f1 /* (h + c)) ^\ k) - (f1 /* (c ^\ k))) (#) ((h ^\ k) ")) by A6, VALUED_0:27 .= ((d1 ") (#) ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k)))) (#) ((((f1 /* (h + c)) ^\ k) - ((f1 /* c) ^\ k)) (#) ((h ^\ k) ")) by A18, VALUED_0:27 .= (((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k))) /" d1) (#) (d1 (#) ((h ^\ k) ")) by SEQM_3:17 .= ((((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k))) /" d1) (#) d1) (#) ((h ^\ k) ") by SEQ_1:14 .= ((f2 /* (d1 + (a ^\ k))) - (f2 /* (a ^\ k))) (#) ((h ^\ k) ") by SEQ_1:37 .= (((f2 /* (f1 /* (h + c))) ^\ k) - (f2 /* (a ^\ k))) (#) ((h ^\ k) ") by A17, A34, VALUED_0:27 .= ((((f2 * f1) /* (h + c)) ^\ k) - (f2 /* (a ^\ k))) (#) ((h ^\ k) ") by A5, VALUED_0:31 .= ((((f2 * f1) /* (h + c)) ^\ k) - ((f2 /* a) ^\ k)) (#) ((h ^\ k) ") by A24, VALUED_0:27 .= ((((f2 * f1) /* (h + c)) ^\ k) - (((f2 * f1) /* c) ^\ k)) (#) ((h ^\ k) ") by A8, VALUED_0:31 .= ((((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) ^\ k) (#) ((h ^\ k) ") by SEQM_3:17 .= ((((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) ^\ k) (#) ((h ") ^\ k) by SEQM_3:18 .= ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) ^\ k by SEQM_3:19 ; then A43: ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) ^\ k is convergent by A41, A38, SEQ_2:14; hence (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent by SEQ_4:21; ::_thesis: lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) lim (((h ^\ k) ") (#) ((f1 /* ((h ^\ k) + (c ^\ k))) - (f1 /* (c ^\ k)))) = diff (f1,x0) by A2, A40, A39, Th12; then lim (((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) ^\ k) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) by A42, A41, A38, A37, SEQ_2:15; hence lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) by A43, SEQ_4:22; ::_thesis: verum end; supposeA44: for k being Element of NAT ex n being Element of NAT st ( k <= n & (f1 /* (h + c)) . n = f1 . x0 ) ; ::_thesis: ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) defpred S1[ set ] means $1 = f1 . x0; A45: for k being Element of NAT ex n being Element of NAT st ( k <= n & S1[(f1 /* (h + c)) . n] ) by A44; consider I1 being V37() sequence of NAT such that A46: for n being Element of NAT holds S1[((f1 /* (h + c)) * I1) . n] and for n being Element of NAT st ( for r being Real st r = (f1 /* (h + c)) . n holds S1[r] ) holds ex m being Element of NAT st n = I1 . m from FDIFF_2:sch_1(A45); h * I1 is subsequence of h by VALUED_0:def_17; then reconsider h1 = h * I1 as non-zero 0 -convergent Real_Sequence by Th6; set c1 = c * I1; A47: c * I1 is subsequence of c by VALUED_0:def_17; then A48: c * I1 = c by VALUED_0:26; A49: rng (c * I1) = {x0} by A4, A47, VALUED_0:26; reconsider c1 = c * I1 as V8() Real_Sequence ; A50: now__::_thesis:_for_g_being_real_number_st_0_<_g_holds_ ex_n_being_Element_of_NAT_st_ for_m_being_Element_of_NAT_st_n_<=_m_holds_ abs_((((h1_")_(#)_((f1_/*_(h1_+_c1))_-_(f1_/*_c1)))_._m)_-_0)_<_g let g be real number ; ::_thesis: ( 0 < g implies ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) < g ) assume A51: 0 < g ; ::_thesis: ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) < g take n = 0 ; ::_thesis: for m being Element of NAT st n <= m holds abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) < g let m be Element of NAT ; ::_thesis: ( n <= m implies abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) < g ) assume n <= m ; ::_thesis: abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) < g abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) = abs (((h1 ") . m) * (((f1 /* (h1 + c1)) - (f1 /* c1)) . m)) by SEQ_1:8 .= abs (((h1 ") . m) * (((f1 /* (h1 + c1)) . m) - ((f1 /* c1) . m))) by RFUNCT_2:1 .= abs (((h1 ") . m) * (((f1 /* (h1 + c1)) . m) - (f1 . (c . m)))) by A18, A48, FUNCT_2:108 .= abs (((h1 ") . m) * (((f1 /* (h1 + c1)) . m) - (f1 . x0))) by A7 .= abs (((h1 ") . m) * (((f1 /* ((h + c) * I1)) . m) - (f1 . x0))) by RFUNCT_2:2 .= abs (((h1 ") . m) * ((((f1 /* (h + c)) * I1) . m) - (f1 . x0))) by A6, FUNCT_2:110 .= abs (((h1 ") . m) * ((f1 . x0) - (f1 . x0))) by A46 .= 0 by ABSVALUE:2 ; hence abs ((((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) . m) - 0) < g by A51; ::_thesis: verum end; (h + c) * I1 is subsequence of h + c by VALUED_0:def_17; then rng ((h + c) * I1) c= rng (h + c) by VALUED_0:21; then rng ((h + c) * I1) c= dom f1 by A6, XBOOLE_1:1; then A52: rng (h1 + c1) c= dom f1 by RFUNCT_2:2; then A53: lim ((h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1))) = diff (f1,x0) by A2, A49, Th12; diff (f1,x0) = diff (f1,x0) ; then (h1 ") (#) ((f1 /* (h1 + c1)) - (f1 /* c1)) is convergent by A2, A49, A52, Th12; then A54: diff (f1,x0) = 0 by A53, A50, SEQ_2:def_7; now__::_thesis:_(_(h_")_(#)_(((f2_*_f1)_/*_(h_+_c))_-_((f2_*_f1)_/*_c))_is_convergent_&_lim_((h_")_(#)_(((f2_*_f1)_/*_(h_+_c))_-_((f2_*_f1)_/*_c)))_=_(diff_(f2,(f1_._x0)))_*_(diff_(f1,x0))_) percases ( ex k being Element of NAT st for n being Element of NAT st k <= n holds (f1 /* (h + c)) . n = f1 . x0 or for k being Element of NAT ex n being Element of NAT st ( k <= n & (f1 /* (h + c)) . n <> f1 . x0 ) ) ; suppose ex k being Element of NAT st for n being Element of NAT st k <= n holds (f1 /* (h + c)) . n = f1 . x0 ; ::_thesis: ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) then consider k being Element of NAT such that A55: for n being Element of NAT st k <= n holds (f1 /* (h + c)) . n = f1 . x0 ; A56: now__::_thesis:_for_g_being_real_number_st_0_<_g_holds_ ex_n_being_Element_of_NAT_st_ for_m_being_Element_of_NAT_st_n_<=_m_holds_ abs_((((h_")_(#)_(((f2_*_f1)_/*_(h_+_c))_-_((f2_*_f1)_/*_c)))_._m)_-_((diff_(f2,(f1_._x0)))_*_(diff_(f1,x0))))_<_g let g be real number ; ::_thesis: ( 0 < g implies ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g ) assume A57: 0 < g ; ::_thesis: ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g take n = k; ::_thesis: for m being Element of NAT st n <= m holds abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g let m be Element of NAT ; ::_thesis: ( n <= m implies abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g ) assume n <= m ; ::_thesis: abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g then A58: (f1 /* (h + c)) . m = f1 . x0 by A55; abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) = abs (((h ") . m) * ((((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) . m)) by A54, SEQ_1:8 .= abs (((h ") . m) * ((((f2 * f1) /* (h + c)) . m) - (((f2 * f1) /* c) . m))) by RFUNCT_2:1 .= abs (((h ") . m) * (((f2 /* (f1 /* (h + c))) . m) - (((f2 * f1) /* c) . m))) by A5, VALUED_0:31 .= abs (((h ") . m) * ((f2 . ((f1 /* (h + c)) . m)) - (((f2 * f1) /* c) . m))) by A17, FUNCT_2:108 .= abs (((h ") . m) * ((f2 . (f1 . x0)) - ((f2 /* (f1 /* c)) . m))) by A8, A58, VALUED_0:31 .= abs (((h ") . m) * ((f2 . (f1 . x0)) - (f2 . ((f1 /* c) . m)))) by A24, FUNCT_2:108 .= abs (((h ") . m) * ((f2 . (f1 . x0)) - (f2 . (f1 . (c . m))))) by A18, FUNCT_2:108 .= abs (((h ") . m) * ((f2 . (f1 . x0)) - (f2 . (f1 . x0)))) by A7 .= 0 by ABSVALUE:2 ; hence abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g by A57; ::_thesis: verum end; hence (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent by SEQ_2:def_6; ::_thesis: lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) hence lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) by A56, SEQ_2:def_7; ::_thesis: verum end; supposeA59: for k being Element of NAT ex n being Element of NAT st ( k <= n & (f1 /* (h + c)) . n <> f1 . x0 ) ; ::_thesis: ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) defpred S2[ set ] means $1 <> f1 . x0; A60: for k being Element of NAT ex n being Element of NAT st ( k <= n & S2[(f1 /* (h + c)) . n] ) by A59; consider I2 being V37() sequence of NAT such that A61: for n being Element of NAT holds S2[((f1 /* (h + c)) * I2) . n] and A62: for n being Element of NAT st ( for r being Real st r = (f1 /* (h + c)) . n holds S2[r] ) holds ex m being Element of NAT st n = I2 . m from FDIFF_2:sch_1(A60); now__::_thesis:_for_n_being_Element_of_NAT_holds_not_(((f1_/*_(h_+_c))_-_(f1_/*_c))_*_I2)_._n_=_0 given n being Element of NAT such that A63: (((f1 /* (h + c)) - (f1 /* c)) * I2) . n = 0 ; ::_thesis: contradiction 0 = ((f1 /* (h + c)) - (f1 /* c)) . (I2 . n) by A63, FUNCT_2:15 .= ((f1 /* (h + c)) . (I2 . n)) - ((f1 /* c) . (I2 . n)) by RFUNCT_2:1 .= ((f1 /* (h + c)) . (I2 . n)) - (f1 . (c . (I2 . n))) by A18, FUNCT_2:108 .= ((f1 /* (h + c)) . (I2 . n)) - (f1 . x0) by A7 .= (((f1 /* (h + c)) * I2) . n) - (f1 . x0) by FUNCT_2:15 ; hence contradiction by A61; ::_thesis: verum end; then A64: ((f1 /* (h + c)) - (f1 /* c)) * I2 is non-zero by SEQ_1:5; h * I2 is subsequence of h by VALUED_0:def_17; then reconsider h2 = h * I2 as non-zero 0 -convergent Real_Sequence by Th6; set a1 = a * I2; set c2 = c * I2; reconsider c2 = c * I2 as V8() Real_Sequence ; set s = (h2 ") (#) ((f1 /* (h2 + c2)) - (f1 /* c2)); A65: ((f1 /* (h + c)) - (f1 /* c)) * I2 is subsequence of (f1 /* (h + c)) - (f1 /* c) by VALUED_0:def_17; then A66: ((f1 /* (h + c)) - (f1 /* c)) * I2 is convergent by A28, SEQ_4:16; lim (((f1 /* (h + c)) - (f1 /* c)) * I2) = 0 by A28, A29, A65, SEQ_4:17; then reconsider d1 = ((f1 /* (h + c)) - (f1 /* c)) * I2 as non-zero 0 -convergent Real_Sequence by A66, A64, FDIFF_1:def_1; set t = (d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2))); a * I2 is subsequence of a by VALUED_0:def_17; then A67: rng (a * I2) = {(f1 . x0)} by A20, VALUED_0:26; A68: now__::_thesis:_for_n_being_Element_of_NAT_holds_(((f1_/*_(h_+_c))_-_(f1_/*_c))_+_a)_._n_=_(f1_/*_(h_+_c))_._n let n be Element of NAT ; ::_thesis: (((f1 /* (h + c)) - (f1 /* c)) + a) . n = (f1 /* (h + c)) . n thus (((f1 /* (h + c)) - (f1 /* c)) + a) . n = (((f1 /* (h + c)) - (f1 /* c)) . n) + (a . n) by SEQ_1:7 .= (((f1 /* (h + c)) . n) - (a . n)) + (a . n) by RFUNCT_2:1 .= (f1 /* (h + c)) . n ; ::_thesis: verum end; d1 + (a * I2) = (((f1 /* (h + c)) - (f1 /* c)) + a) * I2 by RFUNCT_2:2; then A69: d1 + (a * I2) = (f1 /* (h + c)) * I2 by A68, FUNCT_2:63; A70: ((d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2)))) (#) ((h2 ") (#) ((f1 /* (h2 + c2)) - (f1 /* c2))) = ((d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2)))) (#) (((f1 /* ((h + c) * I2)) - (f1 /* c2)) (#) (h2 ")) by RFUNCT_2:2 .= ((d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2)))) (#) ((((f1 /* (h + c)) * I2) - (f1 /* c2)) (#) (h2 ")) by A6, FUNCT_2:110 .= ((d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2)))) (#) ((((f1 /* (h + c)) * I2) - ((f1 /* c) * I2)) (#) (h2 ")) by A18, FUNCT_2:110 .= (((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2))) /" d1) (#) (d1 (#) (h2 ")) by RFUNCT_2:2 .= ((((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2))) /" d1) (#) d1) (#) (h2 ") by SEQ_1:14 .= ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2))) (#) (h2 ") by SEQ_1:37 .= (((f2 /* (f1 /* (h + c))) * I2) - (f2 /* (a * I2))) (#) (h2 ") by A17, A69, FUNCT_2:110 .= ((((f2 * f1) /* (h + c)) * I2) - (f2 /* (a * I2))) (#) (h2 ") by A5, VALUED_0:31 .= ((((f2 * f1) /* (h + c)) * I2) - ((f2 /* a) * I2)) (#) (h2 ") by A24, FUNCT_2:110 .= ((((f2 * f1) /* (h + c)) * I2) - (((f2 * f1) /* c) * I2)) (#) (h2 ") by A8, VALUED_0:31 .= ((((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) * I2) (#) (h2 ") by RFUNCT_2:2 .= ((((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) * I2) (#) ((h ") * I2) by RFUNCT_2:5 .= ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) * I2 by RFUNCT_2:2 ; reconsider a1 = a * I2 as V8() Real_Sequence ; (f1 /* (h + c)) * I2 is subsequence of f1 /* (h + c) by VALUED_0:def_17; then rng ((f1 /* (h + c)) * I2) c= rng (f1 /* (h + c)) by VALUED_0:21; then A71: rng (d1 + a1) c= dom f2 by A17, A69, XBOOLE_1:1; (h + c) * I2 is subsequence of h + c by VALUED_0:def_17; then rng ((h + c) * I2) c= rng (h + c) by VALUED_0:21; then rng ((h + c) * I2) c= dom f1 by A6, XBOOLE_1:1; then A72: rng (h2 + c2) c= dom f1 by RFUNCT_2:2; c2 is subsequence of c by VALUED_0:def_17; then A73: rng c2 = {x0} by A4, VALUED_0:26; then A74: lim ((h2 ") (#) ((f1 /* (h2 + c2)) - (f1 /* c2))) = diff (f1,x0) by A2, A72, Th12; diff (f1,x0) = diff (f1,x0) ; then A75: (h2 ") (#) ((f1 /* (h2 + c2)) - (f1 /* c2)) is convergent by A2, A73, A72, Th12; diff (f2,(f1 . x0)) = diff (f2,(f1 . x0)) ; then A76: (d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2))) is convergent by A3, A67, A71, Th12; then A77: ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) * I2 is convergent by A70, A75, SEQ_2:14; lim ((d1 ") (#) ((f2 /* (d1 + (a * I2))) - (f2 /* (a * I2)))) = diff (f2,(f1 . x0)) by A3, A67, A71, Th12; then A78: lim (((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) * I2) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) by A70, A75, A74, A76, SEQ_2:15; A79: now__::_thesis:_for_g_being_real_number_st_0_<_g_holds_ ex_n_being_Element_of_NAT_st_ for_m_being_Element_of_NAT_st_n_<=_m_holds_ abs_((((h_")_(#)_(((f2_*_f1)_/*_(h_+_c))_-_((f2_*_f1)_/*_c)))_._m)_-_((diff_(f2,(f1_._x0)))_*_(diff_(f1,x0))))_<_g set DF = (diff (f2,(f1 . x0))) * (diff (f1,x0)); let g be real number ; ::_thesis: ( 0 < g implies ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g ) assume A80: 0 < g ; ::_thesis: ex n being Element of NAT st for m being Element of NAT st n <= m holds abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g consider k being Element of NAT such that A81: for m being Element of NAT st k <= m holds abs (((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) * I2) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g by A77, A78, A80, SEQ_2:def_7; take n = I2 . k; ::_thesis: for m being Element of NAT st n <= m holds abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g let m be Element of NAT ; ::_thesis: ( n <= m implies abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g ) assume A82: n <= m ; ::_thesis: abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g now__::_thesis:_abs_((((h_")_(#)_(((f2_*_f1)_/*_(h_+_c))_-_((f2_*_f1)_/*_c)))_._m)_-_((diff_(f2,(f1_._x0)))_*_(diff_(f1,x0))))_<_g percases ( (f1 /* (h + c)) . m = f1 . x0 or (f1 /* (h + c)) . m <> f1 . x0 ) ; supposeA83: (f1 /* (h + c)) . m = f1 . x0 ; ::_thesis: abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) = abs (((h ") . m) * ((((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) . m)) by A54, SEQ_1:8 .= abs (((h ") . m) * ((((f2 * f1) /* (h + c)) . m) - (((f2 * f1) /* c) . m))) by RFUNCT_2:1 .= abs (((h ") . m) * ((((f2 * f1) /* (h + c)) . m) - ((f2 /* (f1 /* c)) . m))) by A8, VALUED_0:31 .= abs (((h ") . m) * ((((f2 * f1) /* (h + c)) . m) - (f2 . ((f1 /* c) . m)))) by A24, FUNCT_2:108 .= abs (((h ") . m) * ((((f2 * f1) /* (h + c)) . m) - (f2 . (f1 . (c . m))))) by A18, FUNCT_2:108 .= abs (((h ") . m) * ((((f2 * f1) /* (h + c)) . m) - (f2 . (f1 . x0)))) by A7 .= abs (((h ") . m) * (((f2 /* (f1 /* (h + c))) . m) - (f2 . (f1 . x0)))) by A5, VALUED_0:31 .= abs (((h ") . m) * ((f2 . (f1 . x0)) - (f2 . (f1 . x0)))) by A17, A83, FUNCT_2:108 .= 0 by ABSVALUE:2 ; hence abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g by A80; ::_thesis: verum end; suppose (f1 /* (h + c)) . m <> f1 . x0 ; ::_thesis: abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g then for r1 being Real st (f1 /* (h + c)) . m = r1 holds r1 <> f1 . x0 ; then consider l being Element of NAT such that A84: m = I2 . l by A62; dom I2 = NAT by FUNCT_2:def_1; then l >= k by A82, A84, VALUED_0:def_13; then abs (((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) * I2) . l) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g by A81; hence abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g by A84, FUNCT_2:15; ::_thesis: verum end; end; end; hence abs ((((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) . m) - ((diff (f2,(f1 . x0))) * (diff (f1,x0)))) < g ; ::_thesis: verum end; hence (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent by SEQ_2:def_6; ::_thesis: lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) hence lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) by A79, SEQ_2:def_7; ::_thesis: verum end; end; end; hence ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) ; ::_thesis: verum end; end; end; hence ( (h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c)) is convergent & lim ((h ") (#) (((f2 * f1) /* (h + c)) - ((f2 * f1) /* c))) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) ; ::_thesis: verum end; hence ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) by A1, Th12; ::_thesis: verum end; theorem Th13: :: FDIFF_2:13 for x0 being Real for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_in x0 & f2 is_differentiable_in f1 . x0 holds ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) proof let x0 be Real; ::_thesis: for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_in x0 & f2 is_differentiable_in f1 . x0 holds ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) let f1, f2 be PartFunc of REAL,REAL; ::_thesis: ( f1 is_differentiable_in x0 & f2 is_differentiable_in f1 . x0 implies ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) ) assume that A1: f1 is_differentiable_in x0 and A2: f2 is_differentiable_in f1 . x0 ; ::_thesis: ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) consider N2 being Neighbourhood of f1 . x0 such that A3: N2 c= dom f2 by A2, Th11; f1 is_continuous_in x0 by A1, FDIFF_1:24; then consider N3 being Neighbourhood of x0 such that A4: f1 .: N3 c= N2 by FCONT_1:5; consider N1 being Neighbourhood of x0 such that A5: N1 c= dom f1 by A1, Th11; consider N being Neighbourhood of x0 such that A6: N c= N1 and A7: N c= N3 by RCOMP_1:17; N c= dom (f2 * f1) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in N or x in dom (f2 * f1) ) assume A8: x in N ; ::_thesis: x in dom (f2 * f1) then reconsider x9 = x as Real ; A9: x in N1 by A6, A8; then f1 . x9 in f1 .: N3 by A5, A7, A8, FUNCT_1:def_6; then f1 . x9 in N2 by A4; hence x in dom (f2 * f1) by A5, A3, A9, FUNCT_1:11; ::_thesis: verum end; hence ( f2 * f1 is_differentiable_in x0 & diff ((f2 * f1),x0) = (diff (f2,(f1 . x0))) * (diff (f1,x0)) ) by A1, A2, Lm2; ::_thesis: verum end; theorem Th14: :: FDIFF_2:14 for x0 being Real for f2, f1 being PartFunc of REAL,REAL st f2 . x0 <> 0 & f1 is_differentiable_in x0 & f2 is_differentiable_in x0 holds ( f1 / f2 is_differentiable_in x0 & diff ((f1 / f2),x0) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) proof let x0 be Real; ::_thesis: for f2, f1 being PartFunc of REAL,REAL st f2 . x0 <> 0 & f1 is_differentiable_in x0 & f2 is_differentiable_in x0 holds ( f1 / f2 is_differentiable_in x0 & diff ((f1 / f2),x0) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) let f2, f1 be PartFunc of REAL,REAL; ::_thesis: ( f2 . x0 <> 0 & f1 is_differentiable_in x0 & f2 is_differentiable_in x0 implies ( f1 / f2 is_differentiable_in x0 & diff ((f1 / f2),x0) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) ) assume that A1: f2 . x0 <> 0 and A2: f1 is_differentiable_in x0 and A3: f2 is_differentiable_in x0 ; ::_thesis: ( f1 / f2 is_differentiable_in x0 & diff ((f1 / f2),x0) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) consider N1 being Neighbourhood of x0 such that A4: N1 c= dom f1 by A2, Th11; ex N2 being Neighbourhood of x0 st N2 c= dom f2 by A3, Th11; then consider N3 being Neighbourhood of x0 such that A5: N3 c= dom f2 and A6: for g being Real st g in N3 holds f2 . g <> 0 by A1, A3, FCONT_3:7, FDIFF_1:24; consider N being Neighbourhood of x0 such that A7: N c= N1 and A8: N c= N3 by RCOMP_1:17; A9: N c= (dom f2) \ (f2 " {0}) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in N or x in (dom f2) \ (f2 " {0}) ) assume A10: x in N ; ::_thesis: x in (dom f2) \ (f2 " {0}) then reconsider x9 = x as Real ; f2 . x9 <> 0 by A6, A8, A10; then not f2 . x9 in {0} by TARSKI:def_1; then A11: not x9 in f2 " {0} by FUNCT_1:def_7; x9 in N3 by A8, A10; hence x in (dom f2) \ (f2 " {0}) by A5, A11, XBOOLE_0:def_5; ::_thesis: verum end; A12: f2 is_continuous_in x0 by A3, FDIFF_1:24; N c= dom f1 by A4, A7, XBOOLE_1:1; then A13: N c= (dom f1) /\ ((dom f2) \ (f2 " {0})) by A9, XBOOLE_1:19; A14: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom (f1 / f2) holds ( (h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c)) is convergent & lim ((h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c))) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) proof dom (f2 ^) = (dom f2) \ (f2 " {0}) by RFUNCT_1:def_2; then A15: dom (f2 ^) c= dom f2 by XBOOLE_1:36; let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom (f1 / f2) holds ( (h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c)) is convergent & lim ((h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c))) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {x0} & rng (h + c) c= dom (f1 / f2) implies ( (h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c)) is convergent & lim ((h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c))) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) ) assume that A16: rng c = {x0} and A17: rng (h + c) c= dom (f1 / f2) ; ::_thesis: ( (h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c)) is convergent & lim ((h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c))) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) A18: rng (h + c) c= (dom f1) /\ ((dom f2) \ (f2 " {0})) by A17, RFUNCT_1:def_1; (dom f1) /\ ((dom f2) \ (f2 " {0})) c= (dom f2) \ (f2 " {0}) by XBOOLE_1:17; then A19: rng (h + c) c= (dom f2) \ (f2 " {0}) by A18, XBOOLE_1:1; then A20: rng (h + c) c= dom (f2 ^) by RFUNCT_1:def_2; then A21: f2 /* (h + c) is non-zero by RFUNCT_2:11; A22: lim c = x0 by A16, Th4; set u2 = f2 /* c; set u1 = f1 /* c; set v2 = f2 /* (h + c); set h2 = (h ") (#) ((f2 /* (h + c)) - (f2 /* c)); set v1 = f1 /* (h + c); set h1 = (h ") (#) ((f1 /* (h + c)) - (f1 /* c)); A23: f1 is_continuous_in x0 by A2, FDIFF_1:24; A24: rng c c= (dom f1) /\ (dom (f2 ^)) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in (dom f1) /\ (dom (f2 ^)) ) assume x in rng c ; ::_thesis: x in (dom f1) /\ (dom (f2 ^)) then A25: x = x0 by A16, TARSKI:def_1; x0 in N by RCOMP_1:16; then x in (dom f1) /\ ((dom f2) \ (f2 " {0})) by A13, A25; hence x in (dom f1) /\ (dom (f2 ^)) by RFUNCT_1:def_2; ::_thesis: verum end; A26: (dom f1) /\ (dom (f2 ^)) c= dom (f2 ^) by XBOOLE_1:17; then A27: f2 /* c is non-zero by A24, RFUNCT_2:11, XBOOLE_1:1; (dom f1) /\ ((dom f2) \ (f2 " {0})) c= dom f1 by XBOOLE_1:17; then A28: rng (h + c) c= dom f1 by A18, XBOOLE_1:1; then A29: rng (h + c) c= (dom f1) /\ (dom (f2 ^)) by A20, XBOOLE_1:19; A30: (h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c)) = (h ") (#) (((f1 (#) (f2 ^)) /* (h + c)) - ((f1 / f2) /* c)) by RFUNCT_1:31 .= (h ") (#) (((f1 (#) (f2 ^)) /* (h + c)) - ((f1 (#) (f2 ^)) /* c)) by RFUNCT_1:31 .= (h ") (#) (((f1 /* (h + c)) (#) ((f2 ^) /* (h + c))) - ((f1 (#) (f2 ^)) /* c)) by A29, RFUNCT_2:8 .= (h ") (#) (((f1 /* (h + c)) /" (f2 /* (h + c))) - ((f1 (#) (f2 ^)) /* c)) by A20, RFUNCT_2:12 .= (h ") (#) (((f1 /* (h + c)) /" (f2 /* (h + c))) - ((f1 /* c) (#) ((f2 ^) /* c))) by A24, RFUNCT_2:8 .= (h ") (#) (((f1 /* (h + c)) /" (f2 /* (h + c))) - ((f1 /* c) /" (f2 /* c))) by A24, A26, RFUNCT_2:12, XBOOLE_1:1 .= (h ") (#) ((((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c)))) /" ((f2 /* (h + c)) (#) (f2 /* c))) by A21, A27, SEQ_1:50 .= ((h ") (#) (((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c))))) /" ((f2 /* (h + c)) (#) (f2 /* c)) by SEQ_1:41 ; rng c c= dom (f2 ^) by A24, A26, XBOOLE_1:1; then A31: rng c c= dom f2 by A15, XBOOLE_1:1; then A32: f2 /* c is convergent by A12, A22, FCONT_1:def_1; (dom f1) /\ (dom (f2 ^)) c= dom f1 by XBOOLE_1:17; then A33: rng c c= dom f1 by A24, XBOOLE_1:1; then A34: lim (f1 /* c) = f1 . x0 by A22, A23, FCONT_1:def_1; (dom f2) \ (f2 " {0}) c= dom f2 by XBOOLE_1:36; then A35: rng (h + c) c= dom f2 by A19, XBOOLE_1:1; diff (f2,x0) = diff (f2,x0) ; then A36: (h ") (#) ((f2 /* (h + c)) - (f2 /* c)) is convergent by A3, A16, A35, Th12; A37: f1 /* c is convergent by A33, A22, A23, FCONT_1:def_1; then A38: (f1 /* c) (#) ((h ") (#) ((f2 /* (h + c)) - (f2 /* c))) is convergent by A36, SEQ_2:14; lim ((h ") (#) ((f2 /* (h + c)) - (f2 /* c))) = diff (f2,x0) by A3, A16, A35, Th12; then A39: lim ((f1 /* c) (#) ((h ") (#) ((f2 /* (h + c)) - (f2 /* c)))) = (diff (f2,x0)) * (f1 . x0) by A36, A37, A34, SEQ_2:15; set w1 = (f2 /* (h + c)) (#) (f2 /* c); A40: lim (h + c) = x0 by A16, Th4; A41: h + c is convergent by A16, Th4; then A42: f2 /* (h + c) is convergent by A12, A35, A40, FCONT_1:def_1; then A43: (f2 /* (h + c)) (#) (f2 /* c) is convergent by A32, SEQ_2:14; f2 /* (h + c) is non-zero by A20, RFUNCT_2:11; then A44: (f2 /* (h + c)) (#) (f2 /* c) is non-zero by A27, SEQ_1:35; A45: lim (f2 /* c) = f2 . x0 by A12, A31, A22, FCONT_1:def_1; diff (f1,x0) = diff (f1,x0) ; then A46: (h ") (#) ((f1 /* (h + c)) - (f1 /* c)) is convergent by A2, A16, A28, Th12; then A47: ((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c) is convergent by A32, SEQ_2:14; lim (f2 /* (h + c)) = f2 . x0 by A12, A35, A41, A40, FCONT_1:def_1; then A48: lim ((f2 /* (h + c)) (#) (f2 /* c)) = (f2 . x0) ^2 by A42, A32, A45, SEQ_2:15; now__::_thesis:_for_n_being_Element_of_NAT_holds_((h_")_(#)_(((f1_/*_(h_+_c))_(#)_(f2_/*_c))_-_((f1_/*_c)_(#)_(f2_/*_(h_+_c)))))_._n_=_((((h_")_(#)_((f1_/*_(h_+_c))_-_(f1_/*_c)))_(#)_(f2_/*_c))_-_((f1_/*_c)_(#)_((h_")_(#)_((f2_/*_(h_+_c))_-_(f2_/*_c)))))_._n let n be Element of NAT ; ::_thesis: ((h ") (#) (((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c))))) . n = ((((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c)) - ((f1 /* c) (#) ((h ") (#) ((f2 /* (h + c)) - (f2 /* c))))) . n thus ((h ") (#) (((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c))))) . n = ((h ") . n) * ((((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c)))) . n) by SEQ_1:8 .= ((h ") . n) * ((((f1 /* (h + c)) (#) (f2 /* c)) . n) - (((f1 /* c) (#) (f2 /* (h + c))) . n)) by RFUNCT_2:1 .= ((h ") . n) * ((((f1 /* (h + c)) . n) * ((f2 /* c) . n)) - (((f1 /* c) (#) (f2 /* (h + c))) . n)) by SEQ_1:8 .= ((h ") . n) * ((((((f1 /* (h + c)) . n) - ((f1 /* c) . n)) * ((f2 /* c) . n)) + (((f1 /* c) . n) * ((f2 /* c) . n))) - (((f1 /* c) . n) * ((f2 /* (h + c)) . n))) by SEQ_1:8 .= ((((h ") . n) * (((f1 /* (h + c)) . n) - ((f1 /* c) . n))) * ((f2 /* c) . n)) - (((f1 /* c) . n) * (((h ") . n) * (((f2 /* (h + c)) . n) - ((f2 /* c) . n)))) .= ((((h ") . n) * (((f1 /* (h + c)) - (f1 /* c)) . n)) * ((f2 /* c) . n)) - (((f1 /* c) . n) * (((h ") . n) * (((f2 /* (h + c)) . n) - ((f2 /* c) . n)))) by RFUNCT_2:1 .= ((((h ") . n) * (((f1 /* (h + c)) - (f1 /* c)) . n)) * ((f2 /* c) . n)) - (((f1 /* c) . n) * (((h ") . n) * (((f2 /* (h + c)) - (f2 /* c)) . n))) by RFUNCT_2:1 .= ((((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) . n) * ((f2 /* c) . n)) - (((f1 /* c) . n) * (((h ") . n) * (((f2 /* (h + c)) - (f2 /* c)) . n))) by SEQ_1:8 .= ((((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) . n) * ((f2 /* c) . n)) - (((f1 /* c) . n) * (((h ") (#) ((f2 /* (h + c)) - (f2 /* c))) . n)) by SEQ_1:8 .= ((((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c)) . n) - (((f1 /* c) . n) * (((h ") (#) ((f2 /* (h + c)) - (f2 /* c))) . n)) by SEQ_1:8 .= ((((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c)) . n) - (((f1 /* c) (#) ((h ") (#) ((f2 /* (h + c)) - (f2 /* c)))) . n) by SEQ_1:8 .= ((((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c)) - ((f1 /* c) (#) ((h ") (#) ((f2 /* (h + c)) - (f2 /* c))))) . n by RFUNCT_2:1 ; ::_thesis: verum end; then A49: (h ") (#) (((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c)))) = (((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c)) - ((f1 /* c) (#) ((h ") (#) ((f2 /* (h + c)) - (f2 /* c)))) by FUNCT_2:63; then A50: (h ") (#) (((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c)))) is convergent by A47, A38, SEQ_2:11; hence (h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c)) is convergent by A1, A30, A43, A48, A44, SEQ_2:23; ::_thesis: lim ((h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c))) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) lim ((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) = diff (f1,x0) by A2, A16, A28, Th12; then lim (((h ") (#) ((f1 /* (h + c)) - (f1 /* c))) (#) (f2 /* c)) = (diff (f1,x0)) * (f2 . x0) by A32, A45, A46, SEQ_2:15; then lim ((h ") (#) (((f1 /* (h + c)) (#) (f2 /* c)) - ((f1 /* c) (#) (f2 /* (h + c))))) = ((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0)) by A49, A47, A38, A39, SEQ_2:12; hence lim ((h ") (#) (((f1 / f2) /* (h + c)) - ((f1 / f2) /* c))) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) by A1, A30, A43, A48, A50, A44, SEQ_2:24; ::_thesis: verum end; N c= dom (f1 / f2) by A13, RFUNCT_1:def_1; hence ( f1 / f2 is_differentiable_in x0 & diff ((f1 / f2),x0) = (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) ) by A14, Th12; ::_thesis: verum end; theorem Th15: :: FDIFF_2:15 for x0 being Real for f being PartFunc of REAL,REAL st f . x0 <> 0 & f is_differentiable_in x0 holds ( f ^ is_differentiable_in x0 & diff ((f ^),x0) = - ((diff (f,x0)) / ((f . x0) ^2)) ) proof let x0 be Real; ::_thesis: for f being PartFunc of REAL,REAL st f . x0 <> 0 & f is_differentiable_in x0 holds ( f ^ is_differentiable_in x0 & diff ((f ^),x0) = - ((diff (f,x0)) / ((f . x0) ^2)) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f . x0 <> 0 & f is_differentiable_in x0 implies ( f ^ is_differentiable_in x0 & diff ((f ^),x0) = - ((diff (f,x0)) / ((f . x0) ^2)) ) ) reconsider f1 = (dom f) --> 1 as PartFunc of (dom f),REAL by FUNCOP_1:45; dom f1 c= REAL by RELAT_1:def_18; then reconsider f1 = f1 as PartFunc of REAL,REAL by RELSET_1:5; assume that A1: f . x0 <> 0 and A2: f is_differentiable_in x0 ; ::_thesis: ( f ^ is_differentiable_in x0 & diff ((f ^),x0) = - ((diff (f,x0)) / ((f . x0) ^2)) ) consider N being Neighbourhood of x0 such that A3: N c= dom f by A2, Th11; A4: x0 in N by RCOMP_1:16; A5: dom f1 = dom f by FUNCOP_1:13; A6: rng f1 = {1} proof thus rng f1 c= {1} by FUNCOP_1:13; :: according to XBOOLE_0:def_10 ::_thesis: {1} c= rng f1 let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {1} or x in rng f1 ) A7: x0 in N by RCOMP_1:16; assume x in {1} ; ::_thesis: x in rng f1 then x = 1 by TARSKI:def_1; then f1 . x0 = x by A3, A7, FUNCOP_1:7; hence x in rng f1 by A5, A3, A7, FUNCT_1:def_3; ::_thesis: verum end; then A8: f1 is_differentiable_on N by A5, A3, FDIFF_1:11; then A9: f1 is_differentiable_in x0 by A4, FDIFF_1:9; 0 = (f1 `| N) . x0 by A5, A3, A6, FDIFF_1:11, RCOMP_1:16 .= diff (f1,x0) by A8, A4, FDIFF_1:def_7 ; then diff ((f1 / f),x0) = ((0 * (f . x0)) - ((diff (f,x0)) * (f1 . x0))) / ((f . x0) ^2) by A1, A2, A9, Th14; then A10: diff ((f1 / f),x0) = (- ((diff (f,x0)) * (f1 . x0))) / ((f . x0) ^2) .= (- ((diff (f,x0)) * 1)) / ((f . x0) ^2) by A3, A4, FUNCOP_1:7 .= - ((diff (f,x0)) / ((f . x0) ^2)) by XCMPLX_1:187 ; A11: dom (f1 / f) = (dom f1) /\ ((dom f) \ (f " {0})) by RFUNCT_1:def_1 .= (dom f) \ (f " {0}) by A5, XBOOLE_1:28, XBOOLE_1:36 .= dom (f ^) by RFUNCT_1:def_2 ; A12: (dom f) \ (f " {0}) c= dom f1 by A5, XBOOLE_1:36; A13: now__::_thesis:_for_r_being_Real_st_r_in_dom_(f1_/_f)_holds_ (f1_/_f)_._r_=_(f_^)_._r A14: (dom f) \ (f " {0}) = dom (f ^) by RFUNCT_1:def_2; let r be Real; ::_thesis: ( r in dom (f1 / f) implies (f1 / f) . r = (f ^) . r ) assume A15: r in dom (f1 / f) ; ::_thesis: (f1 / f) . r = (f ^) . r thus (f1 / f) . r = (f1 . r) * ((f . r) ") by A15, RFUNCT_1:def_1 .= 1 * ((f . r) ") by A5, A12, A11, A15, A14, FUNCOP_1:7 .= (f ^) . r by A11, A15, RFUNCT_1:def_2 ; ::_thesis: verum end; f1 / f is_differentiable_in x0 by A1, A2, A9, Th14; hence ( f ^ is_differentiable_in x0 & diff ((f ^),x0) = - ((diff (f,x0)) / ((f . x0) ^2)) ) by A10, A11, A13, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:16 for A being open Subset of REAL for f being PartFunc of REAL,REAL st f is_differentiable_on A holds ( f | A is_differentiable_on A & f `| A = (f | A) `| A ) proof let A be open Subset of REAL; ::_thesis: for f being PartFunc of REAL,REAL st f is_differentiable_on A holds ( f | A is_differentiable_on A & f `| A = (f | A) `| A ) let f be PartFunc of REAL,REAL; ::_thesis: ( f is_differentiable_on A implies ( f | A is_differentiable_on A & f `| A = (f | A) `| A ) ) assume A1: f is_differentiable_on A ; ::_thesis: ( f | A is_differentiable_on A & f `| A = (f | A) `| A ) then A c= dom f by FDIFF_1:def_6; then A c= (dom f) /\ A by XBOOLE_1:19; then A2: A c= dom (f | A) by RELAT_1:61; now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ (f_|_A)_|_A_is_differentiable_in_x0 let x0 be Real; ::_thesis: ( x0 in A implies (f | A) | A is_differentiable_in x0 ) assume x0 in A ; ::_thesis: (f | A) | A is_differentiable_in x0 then f | A is_differentiable_in x0 by A1, FDIFF_1:def_6; hence (f | A) | A is_differentiable_in x0 by RELAT_1:72; ::_thesis: verum end; hence A3: f | A is_differentiable_on A by A2, FDIFF_1:def_6; ::_thesis: f `| A = (f | A) `| A then A4: dom ((f | A) `| A) = A by FDIFF_1:def_7; A5: now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ (f_`|_A)_._x0_=_((f_|_A)_`|_A)_._x0 let x0 be Real; ::_thesis: ( x0 in A implies (f `| A) . x0 = ((f | A) `| A) . x0 ) assume A6: x0 in A ; ::_thesis: (f `| A) . x0 = ((f | A) `| A) . x0 then consider N2 being Neighbourhood of x0 such that A7: N2 c= A by RCOMP_1:18; A8: f | A is_differentiable_in x0 by A1, A6, FDIFF_1:def_6; A9: f is_differentiable_in x0 by A1, A6, FDIFF_1:9; then consider N1 being Neighbourhood of x0 such that A10: N1 c= dom f and A11: ex L being LinearFunc ex R being RestFunc st for r being Real st r in N1 holds (f . r) - (f . x0) = (L . (r - x0)) + (R . (r - x0)) by FDIFF_1:def_4; consider L being LinearFunc, R being RestFunc such that A12: for r being Real st r in N1 holds (f . r) - (f . x0) = (L . (r - x0)) + (R . (r - x0)) by A11; consider N being Neighbourhood of x0 such that A13: N c= N1 and A14: N c= N2 by RCOMP_1:17; A15: N c= A by A7, A14, XBOOLE_1:1; then A16: N c= dom (f | A) by A2, XBOOLE_1:1; A17: now__::_thesis:_for_r_being_Real_st_r_in_N_holds_ ((f_|_A)_._r)_-_((f_|_A)_._x0)_=_(L_._(r_-_x0))_+_(R_._(r_-_x0)) let r be Real; ::_thesis: ( r in N implies ((f | A) . r) - ((f | A) . x0) = (L . (r - x0)) + (R . (r - x0)) ) assume A18: r in N ; ::_thesis: ((f | A) . r) - ((f | A) . x0) = (L . (r - x0)) + (R . (r - x0)) then A19: r in A by A15; thus ((f | A) . r) - ((f | A) . x0) = ((f | A) . r) - (f . x0) by A2, A6, FUNCT_1:47 .= (f . r) - (f . x0) by A2, A19, FUNCT_1:47 .= (L . (r - x0)) + (R . (r - x0)) by A12, A13, A18 ; ::_thesis: verum end; thus (f `| A) . x0 = diff (f,x0) by A1, A6, FDIFF_1:def_7 .= L . 1 by A9, A10, A12, FDIFF_1:def_5 .= diff ((f | A),x0) by A8, A16, A17, FDIFF_1:def_5 .= ((f | A) `| A) . x0 by A3, A6, FDIFF_1:def_7 ; ::_thesis: verum end; dom (f `| A) = A by A1, FDIFF_1:def_7; hence f `| A = (f | A) `| A by A4, A5, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:17 for A being open Subset of REAL for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A holds ( f1 + f2 is_differentiable_on A & (f1 + f2) `| A = (f1 `| A) + (f2 `| A) ) proof let A be open Subset of REAL; ::_thesis: for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A holds ( f1 + f2 is_differentiable_on A & (f1 + f2) `| A = (f1 `| A) + (f2 `| A) ) let f1, f2 be PartFunc of REAL,REAL; ::_thesis: ( f1 is_differentiable_on A & f2 is_differentiable_on A implies ( f1 + f2 is_differentiable_on A & (f1 + f2) `| A = (f1 `| A) + (f2 `| A) ) ) assume that A1: f1 is_differentiable_on A and A2: f2 is_differentiable_on A ; ::_thesis: ( f1 + f2 is_differentiable_on A & (f1 + f2) `| A = (f1 `| A) + (f2 `| A) ) A3: A c= dom f2 by A2, FDIFF_1:def_6; A c= dom f1 by A1, FDIFF_1:def_6; then A c= (dom f1) /\ (dom f2) by A3, XBOOLE_1:19; then A4: A c= dom (f1 + f2) by VALUED_1:def_1; then f1 + f2 is_differentiable_on A by A1, A2, FDIFF_1:18; then A5: dom ((f1 + f2) `| A) = A by FDIFF_1:def_7; A6: dom (f2 `| A) = A by A2, FDIFF_1:def_7; dom (f1 `| A) = A by A1, FDIFF_1:def_7; then (dom (f1 `| A)) /\ (dom (f2 `| A)) = A by A6; then A7: dom ((f1 `| A) + (f2 `| A)) = A by VALUED_1:def_1; now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ ((f1_+_f2)_`|_A)_._x0_=_((f1_`|_A)_+_(f2_`|_A))_._x0 let x0 be Real; ::_thesis: ( x0 in A implies ((f1 + f2) `| A) . x0 = ((f1 `| A) + (f2 `| A)) . x0 ) assume A8: x0 in A ; ::_thesis: ((f1 + f2) `| A) . x0 = ((f1 `| A) + (f2 `| A)) . x0 hence ((f1 + f2) `| A) . x0 = (diff (f1,x0)) + (diff (f2,x0)) by A1, A2, A4, FDIFF_1:18 .= ((f1 `| A) . x0) + (diff (f2,x0)) by A1, A8, FDIFF_1:def_7 .= ((f1 `| A) . x0) + ((f2 `| A) . x0) by A2, A8, FDIFF_1:def_7 .= ((f1 `| A) + (f2 `| A)) . x0 by A7, A8, VALUED_1:def_1 ; ::_thesis: verum end; hence ( f1 + f2 is_differentiable_on A & (f1 + f2) `| A = (f1 `| A) + (f2 `| A) ) by A1, A2, A4, A5, A7, FDIFF_1:18, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:18 for A being open Subset of REAL for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A holds ( f1 - f2 is_differentiable_on A & (f1 - f2) `| A = (f1 `| A) - (f2 `| A) ) proof let A be open Subset of REAL; ::_thesis: for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A holds ( f1 - f2 is_differentiable_on A & (f1 - f2) `| A = (f1 `| A) - (f2 `| A) ) let f1, f2 be PartFunc of REAL,REAL; ::_thesis: ( f1 is_differentiable_on A & f2 is_differentiable_on A implies ( f1 - f2 is_differentiable_on A & (f1 - f2) `| A = (f1 `| A) - (f2 `| A) ) ) assume that A1: f1 is_differentiable_on A and A2: f2 is_differentiable_on A ; ::_thesis: ( f1 - f2 is_differentiable_on A & (f1 - f2) `| A = (f1 `| A) - (f2 `| A) ) A3: A c= dom f2 by A2, FDIFF_1:def_6; A c= dom f1 by A1, FDIFF_1:def_6; then A c= (dom f1) /\ (dom f2) by A3, XBOOLE_1:19; then A4: A c= dom (f1 - f2) by VALUED_1:12; then f1 - f2 is_differentiable_on A by A1, A2, FDIFF_1:19; then A5: dom ((f1 - f2) `| A) = A by FDIFF_1:def_7; A6: dom (f2 `| A) = A by A2, FDIFF_1:def_7; dom (f1 `| A) = A by A1, FDIFF_1:def_7; then (dom (f1 `| A)) /\ (dom (f2 `| A)) = A by A6; then A7: dom ((f1 `| A) - (f2 `| A)) = A by VALUED_1:12; now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ ((f1_-_f2)_`|_A)_._x0_=_((f1_`|_A)_-_(f2_`|_A))_._x0 let x0 be Real; ::_thesis: ( x0 in A implies ((f1 - f2) `| A) . x0 = ((f1 `| A) - (f2 `| A)) . x0 ) assume A8: x0 in A ; ::_thesis: ((f1 - f2) `| A) . x0 = ((f1 `| A) - (f2 `| A)) . x0 hence ((f1 - f2) `| A) . x0 = (diff (f1,x0)) - (diff (f2,x0)) by A1, A2, A4, FDIFF_1:19 .= ((f1 `| A) . x0) - (diff (f2,x0)) by A1, A8, FDIFF_1:def_7 .= ((f1 `| A) . x0) - ((f2 `| A) . x0) by A2, A8, FDIFF_1:def_7 .= ((f1 `| A) - (f2 `| A)) . x0 by A7, A8, VALUED_1:13 ; ::_thesis: verum end; hence ( f1 - f2 is_differentiable_on A & (f1 - f2) `| A = (f1 `| A) - (f2 `| A) ) by A1, A2, A4, A5, A7, FDIFF_1:19, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:19 for r being Real for A being open Subset of REAL for f being PartFunc of REAL,REAL st f is_differentiable_on A holds ( r (#) f is_differentiable_on A & (r (#) f) `| A = r (#) (f `| A) ) proof let r be Real; ::_thesis: for A being open Subset of REAL for f being PartFunc of REAL,REAL st f is_differentiable_on A holds ( r (#) f is_differentiable_on A & (r (#) f) `| A = r (#) (f `| A) ) let A be open Subset of REAL; ::_thesis: for f being PartFunc of REAL,REAL st f is_differentiable_on A holds ( r (#) f is_differentiable_on A & (r (#) f) `| A = r (#) (f `| A) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f is_differentiable_on A implies ( r (#) f is_differentiable_on A & (r (#) f) `| A = r (#) (f `| A) ) ) assume A1: f is_differentiable_on A ; ::_thesis: ( r (#) f is_differentiable_on A & (r (#) f) `| A = r (#) (f `| A) ) then A c= dom f by FDIFF_1:def_6; then A2: A c= dom (r (#) f) by VALUED_1:def_5; then r (#) f is_differentiable_on A by A1, FDIFF_1:20; then A3: dom ((r (#) f) `| A) = A by FDIFF_1:def_7; dom (f `| A) = A by A1, FDIFF_1:def_7; then A4: dom (r (#) (f `| A)) = A by VALUED_1:def_5; now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ ((r_(#)_f)_`|_A)_._x0_=_(r_(#)_(f_`|_A))_._x0 let x0 be Real; ::_thesis: ( x0 in A implies ((r (#) f) `| A) . x0 = (r (#) (f `| A)) . x0 ) assume A5: x0 in A ; ::_thesis: ((r (#) f) `| A) . x0 = (r (#) (f `| A)) . x0 hence ((r (#) f) `| A) . x0 = r * (diff (f,x0)) by A1, A2, FDIFF_1:20 .= r * ((f `| A) . x0) by A1, A5, FDIFF_1:def_7 .= (r (#) (f `| A)) . x0 by A4, A5, VALUED_1:def_5 ; ::_thesis: verum end; hence ( r (#) f is_differentiable_on A & (r (#) f) `| A = r (#) (f `| A) ) by A1, A2, A3, A4, FDIFF_1:20, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:20 for A being open Subset of REAL for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A holds ( f1 (#) f2 is_differentiable_on A & (f1 (#) f2) `| A = ((f1 `| A) (#) f2) + (f1 (#) (f2 `| A)) ) proof let A be open Subset of REAL; ::_thesis: for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A holds ( f1 (#) f2 is_differentiable_on A & (f1 (#) f2) `| A = ((f1 `| A) (#) f2) + (f1 (#) (f2 `| A)) ) let f1, f2 be PartFunc of REAL,REAL; ::_thesis: ( f1 is_differentiable_on A & f2 is_differentiable_on A implies ( f1 (#) f2 is_differentiable_on A & (f1 (#) f2) `| A = ((f1 `| A) (#) f2) + (f1 (#) (f2 `| A)) ) ) assume that A1: f1 is_differentiable_on A and A2: f2 is_differentiable_on A ; ::_thesis: ( f1 (#) f2 is_differentiable_on A & (f1 (#) f2) `| A = ((f1 `| A) (#) f2) + (f1 (#) (f2 `| A)) ) A3: A c= dom f1 by A1, FDIFF_1:def_6; A4: A c= dom f2 by A2, FDIFF_1:def_6; then A c= (dom f1) /\ (dom f2) by A3, XBOOLE_1:19; then A5: A c= dom (f1 (#) f2) by VALUED_1:def_4; then f1 (#) f2 is_differentiable_on A by A1, A2, FDIFF_1:21; then A6: dom ((f1 (#) f2) `| A) = A by FDIFF_1:def_7; dom (f2 `| A) = A by A2, FDIFF_1:def_7; then (dom f1) /\ (dom (f2 `| A)) = A by A3, XBOOLE_1:28; then A7: dom (f1 (#) (f2 `| A)) = A by VALUED_1:def_4; dom (f1 `| A) = A by A1, FDIFF_1:def_7; then (dom (f1 `| A)) /\ (dom f2) = A by A4, XBOOLE_1:28; then dom ((f1 `| A) (#) f2) = A by VALUED_1:def_4; then (dom ((f1 `| A) (#) f2)) /\ (dom (f1 (#) (f2 `| A))) = A by A7; then A8: dom (((f1 `| A) (#) f2) + (f1 (#) (f2 `| A))) = A by VALUED_1:def_1; now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ ((f1_(#)_f2)_`|_A)_._x0_=_(((f1_`|_A)_(#)_f2)_+_(f1_(#)_(f2_`|_A)))_._x0 let x0 be Real; ::_thesis: ( x0 in A implies ((f1 (#) f2) `| A) . x0 = (((f1 `| A) (#) f2) + (f1 (#) (f2 `| A))) . x0 ) assume A9: x0 in A ; ::_thesis: ((f1 (#) f2) `| A) . x0 = (((f1 `| A) (#) f2) + (f1 (#) (f2 `| A))) . x0 hence ((f1 (#) f2) `| A) . x0 = ((diff (f1,x0)) * (f2 . x0)) + ((f1 . x0) * (diff (f2,x0))) by A1, A2, A5, FDIFF_1:21 .= (((f1 `| A) . x0) * (f2 . x0)) + ((f1 . x0) * (diff (f2,x0))) by A1, A9, FDIFF_1:def_7 .= (((f1 `| A) . x0) * (f2 . x0)) + ((f1 . x0) * ((f2 `| A) . x0)) by A2, A9, FDIFF_1:def_7 .= (((f1 `| A) (#) f2) . x0) + ((f1 . x0) * ((f2 `| A) . x0)) by VALUED_1:5 .= (((f1 `| A) (#) f2) . x0) + ((f1 (#) (f2 `| A)) . x0) by VALUED_1:5 .= (((f1 `| A) (#) f2) + (f1 (#) (f2 `| A))) . x0 by A8, A9, VALUED_1:def_1 ; ::_thesis: verum end; hence ( f1 (#) f2 is_differentiable_on A & (f1 (#) f2) `| A = ((f1 `| A) (#) f2) + (f1 (#) (f2 `| A)) ) by A1, A2, A5, A6, A8, FDIFF_1:21, PARTFUN1:5; ::_thesis: verum end; Lm3: for f being PartFunc of REAL,REAL holds (f (#) f) " {0} = f " {0} proof let f be PartFunc of REAL,REAL; ::_thesis: (f (#) f) " {0} = f " {0} thus (f (#) f) " {0} c= f " {0} :: according to XBOOLE_0:def_10 ::_thesis: f " {0} c= (f (#) f) " {0} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (f (#) f) " {0} or x in f " {0} ) assume A1: x in (f (#) f) " {0} ; ::_thesis: x in f " {0} then reconsider x9 = x as Real ; (f (#) f) . x9 in {0} by A1, FUNCT_1:def_7; then 0 = (f (#) f) . x9 by TARSKI:def_1 .= (f . x9) * (f . x9) by VALUED_1:5 ; then f . x9 = 0 ; then A2: f . x9 in {0} by TARSKI:def_1; x9 in dom (f (#) f) by A1, FUNCT_1:def_7; then x9 in (dom f) /\ (dom f) by VALUED_1:def_4; hence x in f " {0} by A2, FUNCT_1:def_7; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in f " {0} or x in (f (#) f) " {0} ) assume A3: x in f " {0} ; ::_thesis: x in (f (#) f) " {0} then reconsider x9 = x as Real ; f . x9 in {0} by A3, FUNCT_1:def_7; then 0 = f . x9 by TARSKI:def_1; then (f . x9) * (f . x9) = 0 ; then (f (#) f) . x9 = 0 by VALUED_1:5; then A4: (f (#) f) . x9 in {0} by TARSKI:def_1; x9 in (dom f) /\ (dom f) by A3, FUNCT_1:def_7; then x9 in dom (f (#) f) by VALUED_1:def_4; hence x in (f (#) f) " {0} by A4, FUNCT_1:def_7; ::_thesis: verum end; theorem :: FDIFF_2:21 for A being open Subset of REAL for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A & ( for x0 being Real st x0 in A holds f2 . x0 <> 0 ) holds ( f1 / f2 is_differentiable_on A & (f1 / f2) `| A = (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2) ) proof let A be open Subset of REAL; ::_thesis: for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f2 is_differentiable_on A & ( for x0 being Real st x0 in A holds f2 . x0 <> 0 ) holds ( f1 / f2 is_differentiable_on A & (f1 / f2) `| A = (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2) ) let f1, f2 be PartFunc of REAL,REAL; ::_thesis: ( f1 is_differentiable_on A & f2 is_differentiable_on A & ( for x0 being Real st x0 in A holds f2 . x0 <> 0 ) implies ( f1 / f2 is_differentiable_on A & (f1 / f2) `| A = (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2) ) ) assume that A1: f1 is_differentiable_on A and A2: f2 is_differentiable_on A and A3: for x0 being Real st x0 in A holds f2 . x0 <> 0 ; ::_thesis: ( f1 / f2 is_differentiable_on A & (f1 / f2) `| A = (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2) ) A4: A c= dom f1 by A1, FDIFF_1:9; A5: A c= dom f2 by A2, FDIFF_1:9; A6: A c= (dom f2) \ (f2 " {0}) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in A or x in (dom f2) \ (f2 " {0}) ) assume A7: x in A ; ::_thesis: x in (dom f2) \ (f2 " {0}) then reconsider x9 = x as Real ; assume not x in (dom f2) \ (f2 " {0}) ; ::_thesis: contradiction then ( not x in dom f2 or x in f2 " {0} ) by XBOOLE_0:def_5; then f2 . x9 in {0} by A5, A7, FUNCT_1:def_7; then f2 . x9 = 0 by TARSKI:def_1; hence contradiction by A3, A7; ::_thesis: verum end; then A c= (dom f1) /\ ((dom f2) \ (f2 " {0})) by A4, XBOOLE_1:19; then A8: A c= dom (f1 / f2) by RFUNCT_1:def_1; A9: now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ (_f2_._x0_<>_0_&_f1_is_differentiable_in_x0_&_f2_is_differentiable_in_x0_&_f1_/_f2_is_differentiable_in_x0_) let x0 be Real; ::_thesis: ( x0 in A implies ( f2 . x0 <> 0 & f1 is_differentiable_in x0 & f2 is_differentiable_in x0 & f1 / f2 is_differentiable_in x0 ) ) assume A10: x0 in A ; ::_thesis: ( f2 . x0 <> 0 & f1 is_differentiable_in x0 & f2 is_differentiable_in x0 & f1 / f2 is_differentiable_in x0 ) hence A11: f2 . x0 <> 0 by A3; ::_thesis: ( f1 is_differentiable_in x0 & f2 is_differentiable_in x0 & f1 / f2 is_differentiable_in x0 ) thus A12: f1 is_differentiable_in x0 by A1, A10, FDIFF_1:9; ::_thesis: ( f2 is_differentiable_in x0 & f1 / f2 is_differentiable_in x0 ) thus f2 is_differentiable_in x0 by A2, A10, FDIFF_1:9; ::_thesis: f1 / f2 is_differentiable_in x0 hence f1 / f2 is_differentiable_in x0 by A11, A12, Th14; ::_thesis: verum end; then for x0 being Real st x0 in A holds f1 / f2 is_differentiable_in x0 ; hence A13: f1 / f2 is_differentiable_on A by A8, FDIFF_1:9; ::_thesis: (f1 / f2) `| A = (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2) then A14: A = dom ((f1 / f2) `| A) by FDIFF_1:def_7; A15: now__::_thesis:_for_x0_being_Real_st_x0_in_dom_((f1_/_f2)_`|_A)_holds_ ((f1_/_f2)_`|_A)_._x0_=_((((f1_`|_A)_(#)_f2)_-_((f2_`|_A)_(#)_f1))_/_(f2_(#)_f2))_._x0 let x0 be Real; ::_thesis: ( x0 in dom ((f1 / f2) `| A) implies ((f1 / f2) `| A) . x0 = ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2)) . x0 ) assume A16: x0 in dom ((f1 / f2) `| A) ; ::_thesis: ((f1 / f2) `| A) . x0 = ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2)) . x0 then A17: f1 is_differentiable_in x0 by A9, A14; dom (f2 `| A) = A by A2, FDIFF_1:def_7; then x0 in (dom (f2 `| A)) /\ (dom f1) by A4, A14, A16, XBOOLE_0:def_4; then A18: x0 in dom ((f2 `| A) (#) f1) by VALUED_1:def_4; dom (f1 `| A) = A by A1, FDIFF_1:def_7; then x0 in (dom (f1 `| A)) /\ (dom f2) by A5, A14, A16, XBOOLE_0:def_4; then x0 in dom ((f1 `| A) (#) f2) by VALUED_1:def_4; then x0 in (dom ((f1 `| A) (#) f2)) /\ (dom ((f2 `| A) (#) f1)) by A18, XBOOLE_0:def_4; then A19: x0 in dom (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) by VALUED_1:12; A20: f2 . x0 <> 0 by A9, A14, A16; then (f2 . x0) * (f2 . x0) <> 0 ; then (f2 (#) f2) . x0 <> 0 by VALUED_1:5; then not (f2 (#) f2) . x0 in {0} by TARSKI:def_1; then A21: not x0 in (f2 (#) f2) " {0} by FUNCT_1:def_7; x0 in (dom f2) /\ (dom f2) by A5, A14, A16; then x0 in dom (f2 (#) f2) by VALUED_1:def_4; then x0 in (dom (f2 (#) f2)) \ ((f2 (#) f2) " {0}) by A21, XBOOLE_0:def_5; then x0 in (dom (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by A19, XBOOLE_0:def_4; then A22: x0 in dom ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2)) by RFUNCT_1:def_1; A23: f2 is_differentiable_in x0 by A9, A14, A16; thus ((f1 / f2) `| A) . x0 = diff ((f1 / f2),x0) by A13, A14, A16, FDIFF_1:def_7 .= (((diff (f1,x0)) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) by A20, A17, A23, Th14 .= ((((f1 `| A) . x0) * (f2 . x0)) - ((diff (f2,x0)) * (f1 . x0))) / ((f2 . x0) ^2) by A1, A14, A16, FDIFF_1:def_7 .= ((((f1 `| A) . x0) * (f2 . x0)) - (((f2 `| A) . x0) * (f1 . x0))) / ((f2 . x0) ^2) by A2, A14, A16, FDIFF_1:def_7 .= ((((f1 `| A) (#) f2) . x0) - (((f2 `| A) . x0) * (f1 . x0))) / ((f2 . x0) ^2) by VALUED_1:5 .= ((((f1 `| A) (#) f2) . x0) - (((f2 `| A) (#) f1) . x0)) / ((f2 . x0) ^2) by VALUED_1:5 .= ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) . x0) / ((f2 . x0) * (f2 . x0)) by A19, VALUED_1:13 .= ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) . x0) / ((f2 (#) f2) . x0) by VALUED_1:5 .= ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) . x0) * (((f2 (#) f2) . x0) ") by XCMPLX_0:def_9 .= ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2)) . x0 by A22, RFUNCT_1:def_1 ; ::_thesis: verum end; dom ((((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2)) = (dom (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by RFUNCT_1:def_1 .= ((dom ((f1 `| A) (#) f2)) /\ (dom ((f2 `| A) (#) f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by VALUED_1:12 .= (((dom (f1 `| A)) /\ (dom f2)) /\ (dom ((f2 `| A) (#) f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by VALUED_1:def_4 .= ((A /\ (dom f2)) /\ (dom ((f2 `| A) (#) f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by A1, FDIFF_1:def_7 .= (A /\ (dom ((f2 `| A) (#) f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by A5, XBOOLE_1:28 .= (A /\ ((dom (f2 `| A)) /\ (dom f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by VALUED_1:def_4 .= (A /\ (A /\ (dom f1))) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by A2, FDIFF_1:def_7 .= (A /\ A) /\ ((dom (f2 (#) f2)) \ ((f2 (#) f2) " {0})) by A4, XBOOLE_1:28 .= A /\ (((dom f2) /\ (dom f2)) \ ((f2 (#) f2) " {0})) by VALUED_1:def_4 .= A /\ ((dom f2) \ (f2 " {0})) by Lm3 .= dom ((f1 / f2) `| A) by A6, A14, XBOOLE_1:28 ; hence (f1 / f2) `| A = (((f1 `| A) (#) f2) - ((f2 `| A) (#) f1)) / (f2 (#) f2) by A15, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:22 for A being open Subset of REAL for f being PartFunc of REAL,REAL st f is_differentiable_on A & ( for x0 being Real st x0 in A holds f . x0 <> 0 ) holds ( f ^ is_differentiable_on A & (f ^) `| A = - ((f `| A) / (f (#) f)) ) proof let A be open Subset of REAL; ::_thesis: for f being PartFunc of REAL,REAL st f is_differentiable_on A & ( for x0 being Real st x0 in A holds f . x0 <> 0 ) holds ( f ^ is_differentiable_on A & (f ^) `| A = - ((f `| A) / (f (#) f)) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f is_differentiable_on A & ( for x0 being Real st x0 in A holds f . x0 <> 0 ) implies ( f ^ is_differentiable_on A & (f ^) `| A = - ((f `| A) / (f (#) f)) ) ) assume that A1: f is_differentiable_on A and A2: for x0 being Real st x0 in A holds f . x0 <> 0 ; ::_thesis: ( f ^ is_differentiable_on A & (f ^) `| A = - ((f `| A) / (f (#) f)) ) A3: now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ (_f_._x0_<>_0_&_f_is_differentiable_in_x0_&_f_^_is_differentiable_in_x0_) let x0 be Real; ::_thesis: ( x0 in A implies ( f . x0 <> 0 & f is_differentiable_in x0 & f ^ is_differentiable_in x0 ) ) assume A4: x0 in A ; ::_thesis: ( f . x0 <> 0 & f is_differentiable_in x0 & f ^ is_differentiable_in x0 ) hence A5: f . x0 <> 0 by A2; ::_thesis: ( f is_differentiable_in x0 & f ^ is_differentiable_in x0 ) thus f is_differentiable_in x0 by A1, A4, FDIFF_1:9; ::_thesis: f ^ is_differentiable_in x0 hence f ^ is_differentiable_in x0 by A5, Th15; ::_thesis: verum end; then A6: for x0 being Real st x0 in A holds f ^ is_differentiable_in x0 ; A7: A c= dom f by A1, FDIFF_1:9; A8: A c= (dom f) \ (f " {0}) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in A or x in (dom f) \ (f " {0}) ) assume A9: x in A ; ::_thesis: x in (dom f) \ (f " {0}) then reconsider x9 = x as Real ; assume not x in (dom f) \ (f " {0}) ; ::_thesis: contradiction then ( not x in dom f or x in f " {0} ) by XBOOLE_0:def_5; then f . x9 in {0} by A7, A9, FUNCT_1:def_7; then f . x9 = 0 by TARSKI:def_1; hence contradiction by A2, A9; ::_thesis: verum end; then A c= dom (f ^) by RFUNCT_1:def_2; hence A10: f ^ is_differentiable_on A by A6, FDIFF_1:9; ::_thesis: (f ^) `| A = - ((f `| A) / (f (#) f)) then A11: A = dom ((f ^) `| A) by FDIFF_1:def_7; A12: now__::_thesis:_for_x0_being_Real_st_x0_in_dom_((f_^)_`|_A)_holds_ ((f_^)_`|_A)_._x0_=_(-_((f_`|_A)_/_(f_(#)_f)))_._x0 let x0 be Real; ::_thesis: ( x0 in dom ((f ^) `| A) implies ((f ^) `| A) . x0 = (- ((f `| A) / (f (#) f))) . x0 ) A13: dom (f `| A) = A by A1, FDIFF_1:def_7; assume A14: x0 in dom ((f ^) `| A) ; ::_thesis: ((f ^) `| A) . x0 = (- ((f `| A) / (f (#) f))) . x0 then A15: f is_differentiable_in x0 by A3, A11; A16: f . x0 <> 0 by A3, A11, A14; then (f . x0) * (f . x0) <> 0 ; then (f (#) f) . x0 <> 0 by VALUED_1:5; then not (f (#) f) . x0 in {0} by TARSKI:def_1; then A17: not x0 in (f (#) f) " {0} by FUNCT_1:def_7; x0 in (dom f) /\ (dom f) by A7, A11, A14; then x0 in dom (f (#) f) by VALUED_1:def_4; then x0 in (dom (f (#) f)) \ ((f (#) f) " {0}) by A17, XBOOLE_0:def_5; then x0 in (dom (f `| A)) /\ ((dom (f (#) f)) \ ((f (#) f) " {0})) by A11, A14, A13, XBOOLE_0:def_4; then A18: x0 in dom ((f `| A) / (f (#) f)) by RFUNCT_1:def_1; thus ((f ^) `| A) . x0 = diff ((f ^),x0) by A10, A11, A14, FDIFF_1:def_7 .= - ((diff (f,x0)) / ((f . x0) ^2)) by A16, A15, Th15 .= - (((f `| A) . x0) / ((f . x0) * (f . x0))) by A1, A11, A14, FDIFF_1:def_7 .= - (((f `| A) . x0) / ((f (#) f) . x0)) by VALUED_1:5 .= - (((f `| A) . x0) * (((f (#) f) . x0) ")) by XCMPLX_0:def_9 .= - (((f `| A) / (f (#) f)) . x0) by A18, RFUNCT_1:def_1 .= (- ((f `| A) / (f (#) f))) . x0 by VALUED_1:8 ; ::_thesis: verum end; dom (- ((f `| A) / (f (#) f))) = dom ((f `| A) / (f (#) f)) by VALUED_1:8 .= (dom (f `| A)) /\ ((dom (f (#) f)) \ ((f (#) f) " {0})) by RFUNCT_1:def_1 .= A /\ ((dom (f (#) f)) \ ((f (#) f) " {0})) by A1, FDIFF_1:def_7 .= A /\ (((dom f) /\ (dom f)) \ ((f (#) f) " {0})) by VALUED_1:def_4 .= A /\ ((dom f) \ (f " {0})) by Lm3 .= dom ((f ^) `| A) by A8, A11, XBOOLE_1:28 ; hence (f ^) `| A = - ((f `| A) / (f (#) f)) by A12, PARTFUN1:5; ::_thesis: verum end; theorem :: FDIFF_2:23 for A being open Subset of REAL for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f1 .: A is open Subset of REAL & f2 is_differentiable_on f1 .: A holds ( f2 * f1 is_differentiable_on A & (f2 * f1) `| A = ((f2 `| (f1 .: A)) * f1) (#) (f1 `| A) ) proof let A be open Subset of REAL; ::_thesis: for f1, f2 being PartFunc of REAL,REAL st f1 is_differentiable_on A & f1 .: A is open Subset of REAL & f2 is_differentiable_on f1 .: A holds ( f2 * f1 is_differentiable_on A & (f2 * f1) `| A = ((f2 `| (f1 .: A)) * f1) (#) (f1 `| A) ) let f1, f2 be PartFunc of REAL,REAL; ::_thesis: ( f1 is_differentiable_on A & f1 .: A is open Subset of REAL & f2 is_differentiable_on f1 .: A implies ( f2 * f1 is_differentiable_on A & (f2 * f1) `| A = ((f2 `| (f1 .: A)) * f1) (#) (f1 `| A) ) ) assume that A1: f1 is_differentiable_on A and A2: f1 .: A is open Subset of REAL and A3: f2 is_differentiable_on f1 .: A ; ::_thesis: ( f2 * f1 is_differentiable_on A & (f2 * f1) `| A = ((f2 `| (f1 .: A)) * f1) (#) (f1 `| A) ) A4: A c= dom f1 by A1, FDIFF_1:9; A5: now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ (_f1_is_differentiable_in_x0_&_x0_in_dom_f1_&_f1_._x0_in_f1_.:_A_&_f2_is_differentiable_in_f1_._x0_&_f2_*_f1_is_differentiable_in_x0_) let x0 be Real; ::_thesis: ( x0 in A implies ( f1 is_differentiable_in x0 & x0 in dom f1 & f1 . x0 in f1 .: A & f2 is_differentiable_in f1 . x0 & f2 * f1 is_differentiable_in x0 ) ) assume A6: x0 in A ; ::_thesis: ( f1 is_differentiable_in x0 & x0 in dom f1 & f1 . x0 in f1 .: A & f2 is_differentiable_in f1 . x0 & f2 * f1 is_differentiable_in x0 ) hence A7: f1 is_differentiable_in x0 by A1, FDIFF_1:9; ::_thesis: ( x0 in dom f1 & f1 . x0 in f1 .: A & f2 is_differentiable_in f1 . x0 & f2 * f1 is_differentiable_in x0 ) thus x0 in dom f1 by A4, A6; ::_thesis: ( f1 . x0 in f1 .: A & f2 is_differentiable_in f1 . x0 & f2 * f1 is_differentiable_in x0 ) thus f1 . x0 in f1 .: A by A4, A6, FUNCT_1:def_6; ::_thesis: ( f2 is_differentiable_in f1 . x0 & f2 * f1 is_differentiable_in x0 ) hence f2 is_differentiable_in f1 . x0 by A2, A3, FDIFF_1:9; ::_thesis: f2 * f1 is_differentiable_in x0 hence f2 * f1 is_differentiable_in x0 by A7, Th13; ::_thesis: verum end; f1 .: A c= dom f2 by A2, A3, FDIFF_1:9; then A8: A c= dom (f2 * f1) by A4, FUNCT_3:3; for x0 being Real st x0 in A holds f2 * f1 is_differentiable_in x0 by A5; hence A9: f2 * f1 is_differentiable_on A by A8, FDIFF_1:9; ::_thesis: (f2 * f1) `| A = ((f2 `| (f1 .: A)) * f1) (#) (f1 `| A) then A10: dom ((f2 * f1) `| A) = A by FDIFF_1:def_7; A11: now__::_thesis:_for_x0_being_Real_st_x0_in_dom_((f2_*_f1)_`|_A)_holds_ ((f2_*_f1)_`|_A)_._x0_=_(((f2_`|_(f1_.:_A))_*_f1)_(#)_(f1_`|_A))_._x0 let x0 be Real; ::_thesis: ( x0 in dom ((f2 * f1) `| A) implies ((f2 * f1) `| A) . x0 = (((f2 `| (f1 .: A)) * f1) (#) (f1 `| A)) . x0 ) assume A12: x0 in dom ((f2 * f1) `| A) ; ::_thesis: ((f2 * f1) `| A) . x0 = (((f2 `| (f1 .: A)) * f1) (#) (f1 `| A)) . x0 then A13: f1 is_differentiable_in x0 by A5, A10; A14: x0 in dom f1 by A5, A10, A12; A15: f1 . x0 in f1 .: A by A5, A10, A12; A16: f2 is_differentiable_in f1 . x0 by A5, A10, A12; thus ((f2 * f1) `| A) . x0 = diff ((f2 * f1),x0) by A9, A10, A12, FDIFF_1:def_7 .= (diff (f2,(f1 . x0))) * (diff (f1,x0)) by A13, A16, Th13 .= (diff (f2,(f1 . x0))) * ((f1 `| A) . x0) by A1, A10, A12, FDIFF_1:def_7 .= ((f2 `| (f1 .: A)) . (f1 . x0)) * ((f1 `| A) . x0) by A3, A15, FDIFF_1:def_7 .= (((f2 `| (f1 .: A)) * f1) . x0) * ((f1 `| A) . x0) by A14, FUNCT_1:13 .= (((f2 `| (f1 .: A)) * f1) (#) (f1 `| A)) . x0 by VALUED_1:5 ; ::_thesis: verum end; dom (f2 `| (f1 .: A)) = f1 .: A by A3, FDIFF_1:def_7; then A c= dom ((f2 `| (f1 .: A)) * f1) by A4, FUNCT_1:101; then dom ((f2 * f1) `| A) = (dom ((f2 `| (f1 .: A)) * f1)) /\ A by A10, XBOOLE_1:28 .= (dom ((f2 `| (f1 .: A)) * f1)) /\ (dom (f1 `| A)) by A1, FDIFF_1:def_7 .= dom (((f2 `| (f1 .: A)) * f1) (#) (f1 `| A)) by VALUED_1:def_4 ; hence (f2 * f1) `| A = ((f2 `| (f1 .: A)) * f1) (#) (f1 `| A) by A11, PARTFUN1:5; ::_thesis: verum end; theorem Th24: :: FDIFF_2:24 for A being open Subset of REAL for f being PartFunc of REAL,REAL st A c= dom f & ( for r, p being Real st r in A & p in A holds abs ((f . r) - (f . p)) <= (r - p) ^2 ) holds ( f is_differentiable_on A & ( for x0 being Real st x0 in A holds diff (f,x0) = 0 ) ) proof let A be open Subset of REAL; ::_thesis: for f being PartFunc of REAL,REAL st A c= dom f & ( for r, p being Real st r in A & p in A holds abs ((f . r) - (f . p)) <= (r - p) ^2 ) holds ( f is_differentiable_on A & ( for x0 being Real st x0 in A holds diff (f,x0) = 0 ) ) let f be PartFunc of REAL,REAL; ::_thesis: ( A c= dom f & ( for r, p being Real st r in A & p in A holds abs ((f . r) - (f . p)) <= (r - p) ^2 ) implies ( f is_differentiable_on A & ( for x0 being Real st x0 in A holds diff (f,x0) = 0 ) ) ) assume that A1: A c= dom f and A2: for r, p being Real st r in A & p in A holds abs ((f . r) - (f . p)) <= (r - p) ^2 ; ::_thesis: ( f is_differentiable_on A & ( for x0 being Real st x0 in A holds diff (f,x0) = 0 ) ) A3: now__::_thesis:_for_x0_being_Real_st_x0_in_A_holds_ (_f_is_differentiable_in_x0_&_diff_(f,x0)_=_0_) let x0 be Real; ::_thesis: ( x0 in A implies ( f is_differentiable_in x0 & diff (f,x0) = 0 ) ) assume x0 in A ; ::_thesis: ( f is_differentiable_in x0 & diff (f,x0) = 0 ) then consider N being Neighbourhood of x0 such that A4: N c= A by RCOMP_1:18; A5: N c= dom f by A1, A4, XBOOLE_1:1; for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = 0 ) proof reconsider a = NAT --> 0 as Real_Sequence by FUNCOP_1:45; let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f holds ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = 0 ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {x0} & rng (h + c) c= dom f implies ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = 0 ) ) assume that A6: rng c = {x0} and A7: rng (h + c) c= dom f ; ::_thesis: ( (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent & lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = 0 ) A8: lim (h + c) = x0 by A6, Th4; consider r being real number such that A9: 0 < r and A10: N = ].(x0 - r),(x0 + r).[ by RCOMP_1:def_6; h + c is convergent by A6, Th4; then consider n being Element of NAT such that A11: for m being Element of NAT st n <= m holds abs (((h + c) . m) - x0) < r by A8, A9, SEQ_2:def_7; set hc = (h + c) ^\ n; A12: rng ((h + c) ^\ n) c= A proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng ((h + c) ^\ n) or x in A ) assume x in rng ((h + c) ^\ n) ; ::_thesis: x in A then consider m being Element of NAT such that A13: x = ((h + c) ^\ n) . m by FUNCT_2:113; x = (h + c) . (m + n) by A13, NAT_1:def_3; then abs ((((h + c) ^\ n) . m) - x0) < r by A11, A13, NAT_1:12; then x in N by A10, A13, RCOMP_1:1; hence x in A by A4; ::_thesis: verum end; A14: rng c c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom f ) assume x in rng c ; ::_thesis: x in dom f then A15: x = x0 by A6, TARSKI:def_1; x0 in N by RCOMP_1:16; hence x in dom f by A5, A15; ::_thesis: verum end; set fn = ((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n; set h1 = h ^\ n; set c1 = c ^\ n; A18: rng (c ^\ n) c= A proof A19: rng (c ^\ n) c= rng c by VALUED_0:21; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (c ^\ n) or x in A ) assume x in rng (c ^\ n) ; ::_thesis: x in A then A20: x = x0 by A6, A19, TARSKI:def_1; x0 in N by RCOMP_1:16; hence x in A by A4, A20; ::_thesis: verum end; A21: abs (h ^\ n) is non-zero by SEQ_1:53; A22: for m being Element of NAT holds ( a . m <= (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m & (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m <= (abs (h ^\ n)) . m ) proof let m be Element of NAT ; ::_thesis: ( a . m <= (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m & (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m <= (abs (h ^\ n)) . m ) A23: (c ^\ n) . m in rng (c ^\ n) by VALUED_0:28; ((h + c) ^\ n) . m in rng ((h + c) ^\ n) by VALUED_0:28; then abs ((f . (((h + c) ^\ n) . m)) - (f . ((c ^\ n) . m))) <= ((((h + c) ^\ n) . m) - ((c ^\ n) . m)) ^2 by A2, A12, A18, A23; then A24: abs ((f . (((h + c) ^\ n) . m)) - (f . ((c ^\ n) . m))) <= (abs ((((h + c) ^\ n) . m) - ((c ^\ n) . m))) ^2 by COMPLEX1:75; A25: (((abs (h ^\ n)) . m) ") * ((abs (((f /* (h + c)) - (f /* c)) ^\ n)) . m) = (((abs (h ^\ n)) ") . m) * ((abs (((f /* (h + c)) - (f /* c)) ^\ n)) . m) by VALUED_1:10 .= (((abs (h ^\ n)) ") (#) (abs (((f /* (h + c)) - (f /* c)) ^\ n))) . m by SEQ_1:8 .= ((abs ((h ^\ n) ")) (#) (abs (((f /* (h + c)) - (f /* c)) ^\ n))) . m by SEQ_1:54 .= (abs (((h ^\ n) ") (#) (((f /* (h + c)) - (f /* c)) ^\ n))) . m by SEQ_1:52 .= (abs (((h ") ^\ n) (#) (((f /* (h + c)) - (f /* c)) ^\ n))) . m by SEQM_3:18 .= (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m by SEQM_3:19 ; 0 <= abs ((((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n) . m) by COMPLEX1:46; then a . m <= abs ((((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n) . m) by FUNCOP_1:7; hence a . m <= (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m by SEQ_1:12; ::_thesis: (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m <= (abs (h ^\ n)) . m A26: (abs ((((h + c) ^\ n) . m) - ((c ^\ n) . m))) ^2 = (abs ((((h ^\ n) + (c ^\ n)) . m) - ((c ^\ n) . m))) ^2 by SEQM_3:15 .= (abs ((((h ^\ n) . m) + ((c ^\ n) . m)) - ((c ^\ n) . m))) ^2 by SEQ_1:7 .= ((abs (h ^\ n)) . m) ^2 by SEQ_1:12 .= ((abs (h ^\ n)) . m) * ((abs (h ^\ n)) . m) ; 0 <= abs ((h ^\ n) . m) by COMPLEX1:46; then A27: 0 <= (abs (h ^\ n)) . m by SEQ_1:12; A28: (abs (h ^\ n)) . m <> 0 by A21, SEQ_1:5; A29: (((abs (h ^\ n)) . m) * ((abs (h ^\ n)) . m)) * (((abs (h ^\ n)) . m) ") = ((abs (h ^\ n)) . m) * (((abs (h ^\ n)) . m) * (((abs (h ^\ n)) . m) ")) .= ((abs (h ^\ n)) . m) * 1 by A28, XCMPLX_0:def_7 .= (abs (h ^\ n)) . m ; abs ((f . (((h + c) ^\ n) . m)) - (f . ((c ^\ n) . m))) = abs (((f /* ((h + c) ^\ n)) . m) - (f . ((c ^\ n) . m))) by A1, A12, FUNCT_2:108, XBOOLE_1:1 .= abs (((f /* ((h + c) ^\ n)) . m) - ((f /* (c ^\ n)) . m)) by A1, A18, FUNCT_2:108, XBOOLE_1:1 .= abs (((f /* ((h + c) ^\ n)) - (f /* (c ^\ n))) . m) by RFUNCT_2:1 .= (abs ((f /* ((h + c) ^\ n)) - (f /* (c ^\ n)))) . m by SEQ_1:12 .= (abs (((f /* (h + c)) ^\ n) - (f /* (c ^\ n)))) . m by A7, VALUED_0:27 .= (abs (((f /* (h + c)) ^\ n) - ((f /* c) ^\ n))) . m by A14, VALUED_0:27 .= (abs (((f /* (h + c)) - (f /* c)) ^\ n)) . m by SEQM_3:17 ; hence (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) . m <= (abs (h ^\ n)) . m by A24, A26, A27, A29, A25, XREAL_1:64; ::_thesis: verum end; lim (h ^\ n) = 0 ; then A30: lim (abs (h ^\ n)) = abs 0 by SEQ_4:14 .= 0 by ABSVALUE:2 ; A31: lim a = a . 0 by SEQ_4:26 .= 0 by FUNCOP_1:7 ; then A32: lim (abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n)) = 0 by A30, A22, SEQ_2:20; A33: abs (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n) is convergent by A31, A30, A22, SEQ_2:19; then A34: ((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n is convergent by A32, SEQ_4:15; hence (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent by SEQ_4:21; ::_thesis: lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = 0 lim (((h ") (#) ((f /* (h + c)) - (f /* c))) ^\ n) = 0 by A33, A32, SEQ_4:15; hence lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = 0 by A34, SEQ_4:22; ::_thesis: verum end; hence ( f is_differentiable_in x0 & diff (f,x0) = 0 ) by A5, Th12; ::_thesis: verum end; then for x0 being Real st x0 in A holds f is_differentiable_in x0 ; hence f is_differentiable_on A by A1, FDIFF_1:9; ::_thesis: for x0 being Real st x0 in A holds diff (f,x0) = 0 let x0 be Real; ::_thesis: ( x0 in A implies diff (f,x0) = 0 ) assume x0 in A ; ::_thesis: diff (f,x0) = 0 hence diff (f,x0) = 0 by A3; ::_thesis: verum end; theorem Th25: :: FDIFF_2:25 for p, g being Real for f being PartFunc of REAL,REAL st ( for r1, r2 being Real st r1 in ].p,g.[ & r2 in ].p,g.[ holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) & ].p,g.[ c= dom f holds ( f is_differentiable_on ].p,g.[ & f | ].p,g.[ is V8() ) proof let p, g be Real; ::_thesis: for f being PartFunc of REAL,REAL st ( for r1, r2 being Real st r1 in ].p,g.[ & r2 in ].p,g.[ holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) & ].p,g.[ c= dom f holds ( f is_differentiable_on ].p,g.[ & f | ].p,g.[ is V8() ) let f be PartFunc of REAL,REAL; ::_thesis: ( ( for r1, r2 being Real st r1 in ].p,g.[ & r2 in ].p,g.[ holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) & ].p,g.[ c= dom f implies ( f is_differentiable_on ].p,g.[ & f | ].p,g.[ is V8() ) ) assume that A1: for r1, r2 being Real st r1 in ].p,g.[ & r2 in ].p,g.[ holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 and A2: ].p,g.[ c= dom f ; ::_thesis: ( f is_differentiable_on ].p,g.[ & f | ].p,g.[ is V8() ) thus A3: f is_differentiable_on ].p,g.[ by A1, A2, Th24; ::_thesis: f | ].p,g.[ is V8() for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) = 0 by A1, A2, Th24; hence f | ].p,g.[ is V8() by A2, A3, ROLLE:7; ::_thesis: verum end; theorem :: FDIFF_2:26 for r being Real for f being PartFunc of REAL,REAL st left_open_halfline r c= dom f & ( for r1, r2 being Real st r1 in left_open_halfline r & r2 in left_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) holds ( f is_differentiable_on left_open_halfline r & f | (left_open_halfline r) is V8() ) proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st left_open_halfline r c= dom f & ( for r1, r2 being Real st r1 in left_open_halfline r & r2 in left_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) holds ( f is_differentiable_on left_open_halfline r & f | (left_open_halfline r) is V8() ) let f be PartFunc of REAL,REAL; ::_thesis: ( left_open_halfline r c= dom f & ( for r1, r2 being Real st r1 in left_open_halfline r & r2 in left_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) implies ( f is_differentiable_on left_open_halfline r & f | (left_open_halfline r) is V8() ) ) assume that A1: left_open_halfline r c= dom f and A2: for r1, r2 being Real st r1 in left_open_halfline r & r2 in left_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ; ::_thesis: ( f is_differentiable_on left_open_halfline r & f | (left_open_halfline r) is V8() ) now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_(left_open_halfline_r)_/\_(dom_f)_&_r2_in_(left_open_halfline_r)_/\_(dom_f)_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) 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) ; ::_thesis: f . r1 = f . r2 set rr = min (r1,r2); A5: ].((min (r1,r2)) - 1),r.[ c= left_open_halfline r by XXREAL_1:263; then A6: for g1, g2 being Real st g1 in ].((min (r1,r2)) - 1),r.[ & g2 in ].((min (r1,r2)) - 1),r.[ holds abs ((f . g1) - (f . g2)) <= (g1 - g2) ^2 by A2; 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 A7: ex g2 being Real st ( g2 = r2 & g2 < r ) ; (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < r ) } by A7; then A8: r2 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r2 in dom f by A4, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A8, XBOOLE_0:def_4; 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 A10: ex g1 being Real st ( g1 = r1 & g1 < r ) ; (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < r ) } by A10; then A11: r1 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r1 in dom f by A3, XBOOLE_0:def_4; then A12: r1 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A11, XBOOLE_0:def_4; ].((min (r1,r2)) - 1),r.[ c= dom f by A1, A5, XBOOLE_1:1; then f | ].((min (r1,r2)) - 1),r.[ is V8() by A6, Th25; hence f . r1 = f . r2 by A12, A9, PARTFUN2:58; ::_thesis: verum end; hence ( f is_differentiable_on left_open_halfline r & f | (left_open_halfline r) is V8() ) by A1, A2, Th24, PARTFUN2:58; ::_thesis: verum end; theorem :: FDIFF_2:27 for r being Real for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & ( for r1, r2 being Real st r1 in right_open_halfline r & r2 in right_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) holds ( f is_differentiable_on right_open_halfline r & f | (right_open_halfline r) is V8() ) proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & ( for r1, r2 being Real st r1 in right_open_halfline r & r2 in right_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) holds ( f is_differentiable_on right_open_halfline r & f | (right_open_halfline r) is V8() ) let f be PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline r c= dom f & ( for r1, r2 being Real st r1 in right_open_halfline r & r2 in right_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) implies ( f is_differentiable_on right_open_halfline r & f | (right_open_halfline r) is V8() ) ) assume that A1: right_open_halfline r c= dom f and A2: for r1, r2 being Real st r1 in right_open_halfline r & r2 in right_open_halfline r holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ; ::_thesis: ( f is_differentiable_on right_open_halfline r & f | (right_open_halfline r) is V8() ) now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_(right_open_halfline_r)_/\_(dom_f)_&_r2_in_(right_open_halfline_r)_/\_(dom_f)_holds_ f_._r1_=_f_._r2 let r1, r2 be Real; ::_thesis: ( r1 in (right_open_halfline r) /\ (dom f) & r2 in (right_open_halfline r) /\ (dom f) implies f . r1 = f . r2 ) assume that A3: r1 in (right_open_halfline r) /\ (dom f) and A4: r2 in (right_open_halfline r) /\ (dom f) ; ::_thesis: f . r1 = f . r2 set rr = max (r1,r2); A5: ].r,((max (r1,r2)) + 1).[ c= right_open_halfline r by XXREAL_1:247; then A6: for g1, g2 being Real st g1 in ].r,((max (r1,r2)) + 1).[ & g2 in ].r,((max (r1,r2)) + 1).[ holds abs ((f . g1) - (f . g2)) <= (g1 - g2) ^2 by A2; r2 in right_open_halfline r by A4, XBOOLE_0:def_4; then r2 in { p where p is Real : r < p } by XXREAL_1:230; then A7: ex g2 being Real st ( g2 = r2 & r < g2 ) ; r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; then r2 in { g2 where g2 is Real : ( r < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A4, XBOOLE_0:def_4; then A9: r2 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; r1 in right_open_halfline r by A3, XBOOLE_0:def_4; then r1 in { g where g is Real : r < g } by XXREAL_1:230; then A10: ex g1 being Real st ( g1 = r1 & r < g1 ) ; r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; then r1 in { g1 where g1 is Real : ( r < g1 & g1 < (max (r1,r2)) + 1 ) } by A10; then A11: r1 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A3, XBOOLE_0:def_4; then A12: r1 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A11, XBOOLE_0:def_4; ].r,((max (r1,r2)) + 1).[ c= dom f by A1, A5, XBOOLE_1:1; then f | ].r,((max (r1,r2)) + 1).[ is V8() by A6, Th25; hence f . r1 = f . r2 by A12, A9, PARTFUN2:58; ::_thesis: verum end; hence ( f is_differentiable_on right_open_halfline r & f | (right_open_halfline r) is V8() ) by A1, A2, Th24, PARTFUN2:58; ::_thesis: verum end; theorem :: FDIFF_2:28 for f being PartFunc of REAL,REAL st f is total & ( for r1, r2 being Real holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) holds ( f is_differentiable_on [#] REAL & f | ([#] REAL) is V8() ) proof let f be PartFunc of REAL,REAL; ::_thesis: ( f is total & ( for r1, r2 being Real holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ) implies ( f is_differentiable_on [#] REAL & f | ([#] REAL) is V8() ) ) assume that A1: f is total and A2: for r1, r2 being Real holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 ; ::_thesis: ( f is_differentiable_on [#] REAL & f | ([#] REAL) is V8() ) A3: dom f = [#] REAL by A1, PARTFUN1:def_2; A4: now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_([#]_REAL)_/\_(dom_f)_&_r2_in_([#]_REAL)_/\_(dom_f)_holds_ f_._r1_=_f_._r2 let r1, r2 be Real; ::_thesis: ( r1 in ([#] REAL) /\ (dom f) & r2 in ([#] REAL) /\ (dom f) implies f . r1 = f . r2 ) assume that A5: r1 in ([#] REAL) /\ (dom f) and A6: r2 in ([#] REAL) /\ (dom f) ; ::_thesis: f . r1 = f . r2 set rx = max (r1,r2); set rn = min (r1,r2); A7: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; A8: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < (max (r1,r2)) + 1 ) } by A8; then A9: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A6, XBOOLE_0:def_4; then A10: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A9, XBOOLE_0:def_4; (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < (max (r1,r2)) + 1 ) } by A7; then A11: r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A5, XBOOLE_0:def_4; then A12: r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A11, XBOOLE_0:def_4; for g1, g2 being Real st g1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ & g2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ holds abs ((f . g1) - (f . g2)) <= (g1 - g2) ^2 by A2; then f | ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ is V8() by A3, Th25; hence f . r1 = f . r2 by A12, A10, PARTFUN2:58; ::_thesis: verum end; for r1, r2 being Real st r1 in [#] REAL & r2 in [#] REAL holds abs ((f . r1) - (f . r2)) <= (r1 - r2) ^2 by A2; hence ( f is_differentiable_on [#] REAL & f | ([#] REAL) is V8() ) by A3, A4, Th24, PARTFUN2:58; ::_thesis: verum end; theorem Th29: :: FDIFF_2:29 for r being Real 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 increasing & f | (left_open_halfline r) is one-to-one ) proof 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 increasing & f | (left_open_halfline r) is one-to-one ) 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 increasing & f | (left_open_halfline r) is one-to-one ) ) assume A1: 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 increasing & f | (left_open_halfline r) is one-to-one ) ) assume that A2: f is_differentiable_on left_open_halfline r and A3: for x0 being Real st x0 in left_open_halfline r holds 0 < diff (f,x0) ; ::_thesis: ( f | (left_open_halfline r) is increasing & f | (left_open_halfline r) is one-to-one ) 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 A4: r1 in (left_open_halfline r) /\ (dom f) and A5: r2 in (left_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r1 < f . r2 set rr = min (r1,r2); A7: (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; r2 in left_open_halfline r by A5, 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 A7; then A8: r2 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].((min (r1,r2)) - 1),r.[ by A2, FDIFF_1:26, XXREAL_1:263; A11: ].((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 A3; then A12: f | ].((min (r1,r2)) - 1),r.[ is increasing by A1, A11, A10, ROLLE:9, XBOOLE_1:1; A13: (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; r1 in left_open_halfline r by A4, 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 A13; then A14: r1 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r1 < f . r2 by A6, A12, A9, RFUNCT_2:20; ::_thesis: verum end; hence f | (left_open_halfline r) is increasing by RFUNCT_2:20; ::_thesis: f | (left_open_halfline r) is one-to-one hence f | (left_open_halfline r) is one-to-one by FCONT_3:8; ::_thesis: verum end; theorem Th30: :: FDIFF_2:30 for r being Real 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 diff (f,x0) < 0 ) holds ( f | (left_open_halfline r) is decreasing & f | (left_open_halfline r) is one-to-one ) proof 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 diff (f,x0) < 0 ) holds ( f | (left_open_halfline r) is decreasing & f | (left_open_halfline r) is one-to-one ) 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 diff (f,x0) < 0 ) implies ( f | (left_open_halfline r) is decreasing & f | (left_open_halfline r) is one-to-one ) ) assume A1: 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 diff (f,x0) < 0 ) or ( f | (left_open_halfline r) is decreasing & f | (left_open_halfline r) is one-to-one ) ) assume that A2: f is_differentiable_on left_open_halfline r and A3: for x0 being Real st x0 in left_open_halfline r holds diff (f,x0) < 0 ; ::_thesis: ( f | (left_open_halfline r) is decreasing & f | (left_open_halfline r) is one-to-one ) 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_._r2_<_f_._r1 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 . r2 < f . r1 ) assume that A4: r1 in (left_open_halfline r) /\ (dom f) and A5: r2 in (left_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r2 < f . r1 set rr = min (r1,r2); A7: (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; r2 in left_open_halfline r by A5, 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 A7; then A8: r2 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].((min (r1,r2)) - 1),r.[ by A2, FDIFF_1:26, XXREAL_1:263; A11: ].((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 diff (f,g1) < 0 by A3; then A12: f | ].((min (r1,r2)) - 1),r.[ is decreasing by A1, A11, A10, ROLLE:10, XBOOLE_1:1; A13: (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; r1 in left_open_halfline r by A4, 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 A13; then A14: r1 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r2 < f . r1 by A6, A12, A9, RFUNCT_2:21; ::_thesis: verum end; hence f | (left_open_halfline r) is decreasing by RFUNCT_2:21; ::_thesis: f | (left_open_halfline r) is one-to-one hence f | (left_open_halfline r) is one-to-one by FCONT_3:8; ::_thesis: verum end; theorem :: FDIFF_2:31 for r being Real 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 proof 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 A1: 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 A2: f is_differentiable_on left_open_halfline r and A3: 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 A4: r1 in (left_open_halfline r) /\ (dom f) and A5: r2 in (left_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r1 <= f . r2 set rr = min (r1,r2); A7: (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; r2 in left_open_halfline r by A5, 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 A7; then A8: r2 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].((min (r1,r2)) - 1),r.[ by A2, FDIFF_1:26, XXREAL_1:263; A11: ].((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 A3; then A12: f | ].((min (r1,r2)) - 1),r.[ is non-decreasing by A1, A11, A10, ROLLE:11, XBOOLE_1:1; A13: (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; r1 in left_open_halfline r by A4, 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 A13; then A14: r1 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r1 <= f . r2 by A6, A12, A9, RFUNCT_2:22; ::_thesis: verum end; hence f | (left_open_halfline r) is non-decreasing by RFUNCT_2:22; ::_thesis: verum end; theorem :: FDIFF_2:32 for r being Real 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 diff (f,x0) <= 0 ) holds f | (left_open_halfline r) is non-increasing proof 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 diff (f,x0) <= 0 ) holds f | (left_open_halfline r) is non-increasing 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 diff (f,x0) <= 0 ) implies f | (left_open_halfline r) is non-increasing ) assume A1: 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 diff (f,x0) <= 0 ) or f | (left_open_halfline r) is non-increasing ) assume that A2: f is_differentiable_on left_open_halfline r and A3: for x0 being Real st x0 in left_open_halfline r holds diff (f,x0) <= 0 ; ::_thesis: f | (left_open_halfline r) is non-increasing 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_._r2_<=_f_._r1 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 . r2 <= f . r1 ) assume that A4: r1 in (left_open_halfline r) /\ (dom f) and A5: r2 in (left_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r2 <= f . r1 set rr = min (r1,r2); A7: (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; r2 in left_open_halfline r by A5, 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 A7; then A8: r2 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].((min (r1,r2)) - 1),r.[ by A2, FDIFF_1:26, XXREAL_1:263; A11: ].((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 diff (f,g1) <= 0 by A3; then A12: f | ].((min (r1,r2)) - 1),r.[ is non-increasing by A1, A11, A10, ROLLE:12, XBOOLE_1:1; A13: (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; r1 in left_open_halfline r by A4, 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 A13; then A14: r1 in ].((min (r1,r2)) - 1),r.[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),r.[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r2 <= f . r1 by A6, A12, A9, RFUNCT_2:23; ::_thesis: verum end; hence f | (left_open_halfline r) is non-increasing by RFUNCT_2:23; ::_thesis: verum end; theorem Th33: :: FDIFF_2:33 for r being Real for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds 0 < diff (f,x0) ) holds ( f | (right_open_halfline r) is increasing & f | (right_open_halfline r) is one-to-one ) proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds 0 < diff (f,x0) ) holds ( f | (right_open_halfline r) is increasing & f | (right_open_halfline r) is one-to-one ) let f be PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds 0 < diff (f,x0) ) implies ( f | (right_open_halfline r) is increasing & f | (right_open_halfline r) is one-to-one ) ) assume A1: right_open_halfline r c= dom f ; ::_thesis: ( not f is_differentiable_on right_open_halfline r or ex x0 being Real st ( x0 in right_open_halfline r & not 0 < diff (f,x0) ) or ( f | (right_open_halfline r) is increasing & f | (right_open_halfline r) is one-to-one ) ) assume that A2: f is_differentiable_on right_open_halfline r and A3: for x0 being Real st x0 in right_open_halfline r holds 0 < diff (f,x0) ; ::_thesis: ( f | (right_open_halfline r) is increasing & f | (right_open_halfline r) is one-to-one ) now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_(right_open_halfline_r)_/\_(dom_f)_&_r2_in_(right_open_halfline_r)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r1_<_f_._r2 let r1, r2 be Real; ::_thesis: ( r1 in (right_open_halfline r) /\ (dom f) & r2 in (right_open_halfline r) /\ (dom f) & r1 < r2 implies f . r1 < f . r2 ) assume that A4: r1 in (right_open_halfline r) /\ (dom f) and A5: r2 in (right_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r1 < f . r2 set rr = max (r1,r2); A7: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r2 in right_open_halfline r by A5, XBOOLE_0:def_4; then r2 in { p where p is Real : r < p } by XXREAL_1:230; then ex g2 being Real st ( g2 = r2 & r < g2 ) ; then r2 in { g2 where g2 is Real : ( r < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].r,((max (r1,r2)) + 1).[ by A2, FDIFF_1:26, XXREAL_1:247; A11: ].r,((max (r1,r2)) + 1).[ c= right_open_halfline r by XXREAL_1:247; then for g1 being Real st g1 in ].r,((max (r1,r2)) + 1).[ holds 0 < diff (f,g1) by A3; then A12: f | ].r,((max (r1,r2)) + 1).[ is increasing by A1, A11, A10, ROLLE:9, XBOOLE_1:1; A13: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r1 in right_open_halfline r by A4, XBOOLE_0:def_4; then r1 in { g where g is Real : r < g } by XXREAL_1:230; then ex g1 being Real st ( g1 = r1 & r < g1 ) ; then r1 in { g1 where g1 is Real : ( r < g1 & g1 < (max (r1,r2)) + 1 ) } by A13; then A14: r1 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r1 < f . r2 by A6, A12, A9, RFUNCT_2:20; ::_thesis: verum end; hence f | (right_open_halfline r) is increasing by RFUNCT_2:20; ::_thesis: f | (right_open_halfline r) is one-to-one hence f | (right_open_halfline r) is one-to-one by FCONT_3:8; ::_thesis: verum end; theorem Th34: :: FDIFF_2:34 for r being Real for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) < 0 ) holds ( f | (right_open_halfline r) is decreasing & f | (right_open_halfline r) is one-to-one ) proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) < 0 ) holds ( f | (right_open_halfline r) is decreasing & f | (right_open_halfline r) is one-to-one ) let f be PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) < 0 ) implies ( f | (right_open_halfline r) is decreasing & f | (right_open_halfline r) is one-to-one ) ) assume A1: right_open_halfline r c= dom f ; ::_thesis: ( not f is_differentiable_on right_open_halfline r or ex x0 being Real st ( x0 in right_open_halfline r & not diff (f,x0) < 0 ) or ( f | (right_open_halfline r) is decreasing & f | (right_open_halfline r) is one-to-one ) ) assume that A2: f is_differentiable_on right_open_halfline r and A3: for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) < 0 ; ::_thesis: ( f | (right_open_halfline r) is decreasing & f | (right_open_halfline r) is one-to-one ) now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_(right_open_halfline_r)_/\_(dom_f)_&_r2_in_(right_open_halfline_r)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r2_<_f_._r1 let r1, r2 be Real; ::_thesis: ( r1 in (right_open_halfline r) /\ (dom f) & r2 in (right_open_halfline r) /\ (dom f) & r1 < r2 implies f . r2 < f . r1 ) assume that A4: r1 in (right_open_halfline r) /\ (dom f) and A5: r2 in (right_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r2 < f . r1 set rr = max (r1,r2); A7: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r2 in right_open_halfline r by A5, XBOOLE_0:def_4; then r2 in { p where p is Real : r < p } by XXREAL_1:230; then ex g2 being Real st ( g2 = r2 & r < g2 ) ; then r2 in { g2 where g2 is Real : ( r < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].r,((max (r1,r2)) + 1).[ by A2, FDIFF_1:26, XXREAL_1:247; A11: ].r,((max (r1,r2)) + 1).[ c= right_open_halfline r by XXREAL_1:247; then for g1 being Real st g1 in ].r,((max (r1,r2)) + 1).[ holds diff (f,g1) < 0 by A3; then A12: f | ].r,((max (r1,r2)) + 1).[ is decreasing by A1, A11, A10, ROLLE:10, XBOOLE_1:1; A13: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r1 in right_open_halfline r by A4, XBOOLE_0:def_4; then r1 in { g where g is Real : r < g } by XXREAL_1:230; then ex g1 being Real st ( g1 = r1 & r < g1 ) ; then r1 in { g1 where g1 is Real : ( r < g1 & g1 < (max (r1,r2)) + 1 ) } by A13; then A14: r1 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r2 < f . r1 by A6, A12, A9, RFUNCT_2:21; ::_thesis: verum end; hence f | (right_open_halfline r) is decreasing by RFUNCT_2:21; ::_thesis: f | (right_open_halfline r) is one-to-one hence f | (right_open_halfline r) is one-to-one by FCONT_3:8; ::_thesis: verum end; theorem :: FDIFF_2:35 for r being Real for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds 0 <= diff (f,x0) ) holds f | (right_open_halfline r) is non-decreasing proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds 0 <= diff (f,x0) ) holds f | (right_open_halfline r) is non-decreasing let f be PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds 0 <= diff (f,x0) ) implies f | (right_open_halfline r) is non-decreasing ) assume A1: right_open_halfline r c= dom f ; ::_thesis: ( not f is_differentiable_on right_open_halfline r or ex x0 being Real st ( x0 in right_open_halfline r & not 0 <= diff (f,x0) ) or f | (right_open_halfline r) is non-decreasing ) assume that A2: f is_differentiable_on right_open_halfline r and A3: for x0 being Real st x0 in right_open_halfline r holds 0 <= diff (f,x0) ; ::_thesis: f | (right_open_halfline r) is non-decreasing now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_(right_open_halfline_r)_/\_(dom_f)_&_r2_in_(right_open_halfline_r)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r1_<=_f_._r2 let r1, r2 be Real; ::_thesis: ( r1 in (right_open_halfline r) /\ (dom f) & r2 in (right_open_halfline r) /\ (dom f) & r1 < r2 implies f . r1 <= f . r2 ) assume that A4: r1 in (right_open_halfline r) /\ (dom f) and A5: r2 in (right_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r1 <= f . r2 set rr = max (r1,r2); A7: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r2 in right_open_halfline r by A5, XBOOLE_0:def_4; then r2 in { p where p is Real : r < p } by XXREAL_1:230; then ex g2 being Real st ( g2 = r2 & r < g2 ) ; then r2 in { g2 where g2 is Real : ( r < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].r,((max (r1,r2)) + 1).[ by A2, FDIFF_1:26, XXREAL_1:247; A11: ].r,((max (r1,r2)) + 1).[ c= right_open_halfline r by XXREAL_1:247; then for g1 being Real st g1 in ].r,((max (r1,r2)) + 1).[ holds 0 <= diff (f,g1) by A3; then A12: f | ].r,((max (r1,r2)) + 1).[ is non-decreasing by A1, A11, A10, ROLLE:11, XBOOLE_1:1; A13: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r1 in right_open_halfline r by A4, XBOOLE_0:def_4; then r1 in { g where g is Real : r < g } by XXREAL_1:230; then ex g1 being Real st ( g1 = r1 & r < g1 ) ; then r1 in { g1 where g1 is Real : ( r < g1 & g1 < (max (r1,r2)) + 1 ) } by A13; then A14: r1 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r1 <= f . r2 by A6, A12, A9, RFUNCT_2:22; ::_thesis: verum end; hence f | (right_open_halfline r) is non-decreasing by RFUNCT_2:22; ::_thesis: verum end; theorem :: FDIFF_2:36 for r being Real for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) <= 0 ) holds f | (right_open_halfline r) is non-increasing proof let r be Real; ::_thesis: for f being PartFunc of REAL,REAL st right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) <= 0 ) holds f | (right_open_halfline r) is non-increasing let f be PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline r c= dom f & f is_differentiable_on right_open_halfline r & ( for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) <= 0 ) implies f | (right_open_halfline r) is non-increasing ) assume A1: right_open_halfline r c= dom f ; ::_thesis: ( not f is_differentiable_on right_open_halfline r or ex x0 being Real st ( x0 in right_open_halfline r & not diff (f,x0) <= 0 ) or f | (right_open_halfline r) is non-increasing ) assume that A2: f is_differentiable_on right_open_halfline r and A3: for x0 being Real st x0 in right_open_halfline r holds diff (f,x0) <= 0 ; ::_thesis: f | (right_open_halfline r) is non-increasing now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_(right_open_halfline_r)_/\_(dom_f)_&_r2_in_(right_open_halfline_r)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r2_<=_f_._r1 let r1, r2 be Real; ::_thesis: ( r1 in (right_open_halfline r) /\ (dom f) & r2 in (right_open_halfline r) /\ (dom f) & r1 < r2 implies f . r2 <= f . r1 ) assume that A4: r1 in (right_open_halfline r) /\ (dom f) and A5: r2 in (right_open_halfline r) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r2 <= f . r1 set rr = max (r1,r2); A7: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r2 in right_open_halfline r by A5, XBOOLE_0:def_4; then r2 in { p where p is Real : r < p } by XXREAL_1:230; then ex g2 being Real st ( g2 = r2 & r < g2 ) ; then r2 in { g2 where g2 is Real : ( r < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: f is_differentiable_on ].r,((max (r1,r2)) + 1).[ by A2, FDIFF_1:26, XXREAL_1:247; A11: ].r,((max (r1,r2)) + 1).[ c= right_open_halfline r by XXREAL_1:247; then for g1 being Real st g1 in ].r,((max (r1,r2)) + 1).[ holds diff (f,g1) <= 0 by A3; then A12: f | ].r,((max (r1,r2)) + 1).[ is non-increasing by A1, A11, A10, ROLLE:12, XBOOLE_1:1; A13: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; r1 in right_open_halfline r by A4, XBOOLE_0:def_4; then r1 in { g where g is Real : r < g } by XXREAL_1:230; then ex g1 being Real st ( g1 = r1 & r < g1 ) ; then r1 in { g1 where g1 is Real : ( r < g1 & g1 < (max (r1,r2)) + 1 ) } by A13; then A14: r1 in ].r,((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].r,((max (r1,r2)) + 1).[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r2 <= f . r1 by A6, A12, A9, RFUNCT_2:23; ::_thesis: verum end; hence f | (right_open_halfline r) is non-increasing by RFUNCT_2:23; ::_thesis: verum end; theorem Th37: :: FDIFF_2:37 for f being PartFunc of REAL,REAL st [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 < diff (f,x0) ) holds ( f | ([#] REAL) is increasing & f is one-to-one ) proof let f be PartFunc of REAL,REAL; ::_thesis: ( [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 < diff (f,x0) ) implies ( f | ([#] REAL) is increasing & f is one-to-one ) ) assume A1: [#] REAL c= dom f ; ::_thesis: ( not f is_differentiable_on [#] REAL or ex x0 being Real st not 0 < diff (f,x0) or ( f | ([#] REAL) is increasing & f is one-to-one ) ) assume that A2: f is_differentiable_on [#] REAL and A3: for x0 being Real holds 0 < diff (f,x0) ; ::_thesis: ( f | ([#] REAL) is increasing & f is one-to-one ) A4: now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_([#]_REAL)_/\_(dom_f)_&_r2_in_([#]_REAL)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r1_<_f_._r2 let r1, r2 be Real; ::_thesis: ( r1 in ([#] REAL) /\ (dom f) & r2 in ([#] REAL) /\ (dom f) & r1 < r2 implies f . r1 < f . r2 ) assume that A5: r1 in ([#] REAL) /\ (dom f) and A6: r2 in ([#] REAL) /\ (dom f) and A7: r1 < r2 ; ::_thesis: f . r1 < f . r2 set rx = max (r1,r2); set rn = min (r1,r2); A8: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < (max (r1,r2)) + 1 ) } by A8; then A9: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A6, XBOOLE_0:def_4; then A10: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A9, XBOOLE_0:def_4; A11: for g1 being Real st g1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ holds 0 < diff (f,g1) by A3; f is_differentiable_on ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by A2, FDIFF_1:26; then A12: f | ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ is increasing by A1, A11, ROLLE:9, XBOOLE_1:1; A13: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < (max (r1,r2)) + 1 ) } by A13; then A14: r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A5, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r1 < f . r2 by A7, A12, A10, RFUNCT_2:20; ::_thesis: verum end; hence f | ([#] REAL) is increasing by RFUNCT_2:20; ::_thesis: f is one-to-one now__::_thesis:_for_r1,_r2_being_Real_holds_ (_not_r1_in_dom_f_or_not_r2_in_dom_f_or_not_f_._r1_=_f_._r2_or_not_r1_<>_r2_) given r1, r2 being Real such that A15: r1 in dom f and A16: r2 in dom f and A17: f . r1 = f . r2 and A18: r1 <> r2 ; ::_thesis: contradiction A19: r2 in ([#] REAL) /\ (dom f) by A16, XBOOLE_0:def_4; A20: r1 in ([#] REAL) /\ (dom f) by A15, XBOOLE_0:def_4; now__::_thesis:_contradiction percases ( r1 < r2 or r2 < r1 ) by A18, XXREAL_0:1; suppose r1 < r2 ; ::_thesis: contradiction hence contradiction by A4, A17, A20, A19; ::_thesis: verum end; suppose r2 < r1 ; ::_thesis: contradiction hence contradiction by A4, A17, A20, A19; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; hence f is one-to-one by PARTFUN1:8; ::_thesis: verum end; theorem Th38: :: FDIFF_2:38 for f being PartFunc of REAL,REAL st [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds diff (f,x0) < 0 ) holds ( f | ([#] REAL) is decreasing & f is one-to-one ) proof let f be PartFunc of REAL,REAL; ::_thesis: ( [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds diff (f,x0) < 0 ) implies ( f | ([#] REAL) is decreasing & f is one-to-one ) ) assume A1: [#] REAL c= dom f ; ::_thesis: ( not f is_differentiable_on [#] REAL or ex x0 being Real st not diff (f,x0) < 0 or ( f | ([#] REAL) is decreasing & f is one-to-one ) ) assume that A2: f is_differentiable_on [#] REAL and A3: for x0 being Real holds diff (f,x0) < 0 ; ::_thesis: ( f | ([#] REAL) is decreasing & f is one-to-one ) A4: now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_([#]_REAL)_/\_(dom_f)_&_r2_in_([#]_REAL)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r2_<_f_._r1 let r1, r2 be Real; ::_thesis: ( r1 in ([#] REAL) /\ (dom f) & r2 in ([#] REAL) /\ (dom f) & r1 < r2 implies f . r2 < f . r1 ) assume that A5: r1 in ([#] REAL) /\ (dom f) and A6: r2 in ([#] REAL) /\ (dom f) and A7: r1 < r2 ; ::_thesis: f . r2 < f . r1 set rx = max (r1,r2); set rn = min (r1,r2); A8: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < (max (r1,r2)) + 1 ) } by A8; then A9: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A6, XBOOLE_0:def_4; then A10: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A9, XBOOLE_0:def_4; A11: for g1 being Real st g1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ holds diff (f,g1) < 0 by A3; f is_differentiable_on ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by A2, FDIFF_1:26; then A12: f | ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ is decreasing by A1, A11, ROLLE:10, XBOOLE_1:1; A13: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < (max (r1,r2)) + 1 ) } by A13; then A14: r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A5, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A14, XBOOLE_0:def_4; hence f . r2 < f . r1 by A7, A12, A10, RFUNCT_2:21; ::_thesis: verum end; hence f | ([#] REAL) is decreasing by RFUNCT_2:21; ::_thesis: f is one-to-one now__::_thesis:_for_r1,_r2_being_Real_holds_ (_not_r1_in_dom_f_or_not_r2_in_dom_f_or_not_f_._r1_=_f_._r2_or_not_r1_<>_r2_) given r1, r2 being Real such that A15: r1 in dom f and A16: r2 in dom f and A17: f . r1 = f . r2 and A18: r1 <> r2 ; ::_thesis: contradiction A19: r2 in ([#] REAL) /\ (dom f) by A16, XBOOLE_0:def_4; A20: r1 in ([#] REAL) /\ (dom f) by A15, XBOOLE_0:def_4; now__::_thesis:_contradiction percases ( r1 < r2 or r2 < r1 ) by A18, XXREAL_0:1; suppose r1 < r2 ; ::_thesis: contradiction hence contradiction by A4, A17, A20, A19; ::_thesis: verum end; suppose r2 < r1 ; ::_thesis: contradiction hence contradiction by A4, A17, A20, A19; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; hence f is one-to-one by PARTFUN1:8; ::_thesis: verum end; theorem :: FDIFF_2:39 for f being PartFunc of REAL,REAL st [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 <= diff (f,x0) ) holds f | ([#] REAL) is non-decreasing proof let f be PartFunc of REAL,REAL; ::_thesis: ( [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 <= diff (f,x0) ) implies f | ([#] REAL) is non-decreasing ) assume A1: [#] REAL c= dom f ; ::_thesis: ( not f is_differentiable_on [#] REAL or ex x0 being Real st not 0 <= diff (f,x0) or f | ([#] REAL) is non-decreasing ) assume that A2: f is_differentiable_on [#] REAL and A3: for x0 being Real holds 0 <= diff (f,x0) ; ::_thesis: f | ([#] REAL) is non-decreasing now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_([#]_REAL)_/\_(dom_f)_&_r2_in_([#]_REAL)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r1_<=_f_._r2 let r1, r2 be Real; ::_thesis: ( r1 in ([#] REAL) /\ (dom f) & r2 in ([#] REAL) /\ (dom f) & r1 < r2 implies f . r1 <= f . r2 ) assume that A4: r1 in ([#] REAL) /\ (dom f) and A5: r2 in ([#] REAL) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r1 <= f . r2 set rx = max (r1,r2); set rn = min (r1,r2); A7: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: for g1 being Real st g1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ holds 0 <= diff (f,g1) by A3; f is_differentiable_on ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by A2, FDIFF_1:26; then A11: f | ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ is non-decreasing by A1, A10, ROLLE:11, XBOOLE_1:1; A12: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < (max (r1,r2)) + 1 ) } by A12; then A13: r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A13, XBOOLE_0:def_4; hence f . r1 <= f . r2 by A6, A11, A9, RFUNCT_2:22; ::_thesis: verum end; hence f | ([#] REAL) is non-decreasing by RFUNCT_2:22; ::_thesis: verum end; theorem :: FDIFF_2:40 for f being PartFunc of REAL,REAL st [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds diff (f,x0) <= 0 ) holds f | ([#] REAL) is non-increasing proof let f be PartFunc of REAL,REAL; ::_thesis: ( [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds diff (f,x0) <= 0 ) implies f | ([#] REAL) is non-increasing ) assume A1: [#] REAL c= dom f ; ::_thesis: ( not f is_differentiable_on [#] REAL or ex x0 being Real st not diff (f,x0) <= 0 or f | ([#] REAL) is non-increasing ) assume that A2: f is_differentiable_on [#] REAL and A3: for x0 being Real holds diff (f,x0) <= 0 ; ::_thesis: f | ([#] REAL) is non-increasing now__::_thesis:_for_r1,_r2_being_Real_st_r1_in_([#]_REAL)_/\_(dom_f)_&_r2_in_([#]_REAL)_/\_(dom_f)_&_r1_<_r2_holds_ f_._r2_<=_f_._r1 let r1, r2 be Real; ::_thesis: ( r1 in ([#] REAL) /\ (dom f) & r2 in ([#] REAL) /\ (dom f) & r1 < r2 implies f . r2 <= f . r1 ) assume that A4: r1 in ([#] REAL) /\ (dom f) and A5: r2 in ([#] REAL) /\ (dom f) and A6: r1 < r2 ; ::_thesis: f . r2 <= f . r1 set rx = max (r1,r2); set rn = min (r1,r2); A7: r2 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r2 - 0 by XREAL_1:15, XXREAL_0:17; then r2 in { g2 where g2 is Real : ( (min (r1,r2)) - 1 < g2 & g2 < (max (r1,r2)) + 1 ) } by A7; then A8: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r2 in dom f by A5, XBOOLE_0:def_4; then A9: r2 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A8, XBOOLE_0:def_4; A10: for g1 being Real st g1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ holds diff (f,g1) <= 0 by A3; f is_differentiable_on ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by A2, FDIFF_1:26; then A11: f | ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ is non-increasing by A1, A10, ROLLE:12, XBOOLE_1:1; A12: r1 + 0 < (max (r1,r2)) + 1 by XREAL_1:8, XXREAL_0:25; (min (r1,r2)) - 1 < r1 - 0 by XREAL_1:15, XXREAL_0:17; then r1 in { g1 where g1 is Real : ( (min (r1,r2)) - 1 < g1 & g1 < (max (r1,r2)) + 1 ) } by A12; then A13: r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ by RCOMP_1:def_2; r1 in dom f by A4, XBOOLE_0:def_4; then r1 in ].((min (r1,r2)) - 1),((max (r1,r2)) + 1).[ /\ (dom f) by A13, XBOOLE_0:def_4; hence f . r2 <= f . r1 by A6, A11, A9, RFUNCT_2:23; ::_thesis: verum end; hence f | ([#] REAL) is non-increasing by RFUNCT_2:23; ::_thesis: verum end; theorem Th41: :: FDIFF_2:41 for p, g being Real for f being PartFunc of REAL,REAL st ].p,g.[ c= dom f & f is_differentiable_on ].p,g.[ & ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) holds rng (f | ].p,g.[) is open proof let p, g be Real; ::_thesis: for f being PartFunc of REAL,REAL st ].p,g.[ c= dom f & f is_differentiable_on ].p,g.[ & ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) holds rng (f | ].p,g.[) is open let f be PartFunc of REAL,REAL; ::_thesis: ( ].p,g.[ c= dom f & f is_differentiable_on ].p,g.[ & ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) implies rng (f | ].p,g.[) is open ) assume A1: ].p,g.[ c= dom f ; ::_thesis: ( not f is_differentiable_on ].p,g.[ or ( ex x0 being Real st ( x0 in ].p,g.[ & not 0 < diff (f,x0) ) & ex x0 being Real st ( x0 in ].p,g.[ & not diff (f,x0) < 0 ) ) or rng (f | ].p,g.[) is open ) assume that A2: f is_differentiable_on ].p,g.[ and A3: ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) ; ::_thesis: rng (f | ].p,g.[) is open A4: f | ].p,g.[ is continuous by A2, FDIFF_1:25; now__::_thesis:_rng_(f_|_].p,g.[)_is_open percases ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) by A3; suppose for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) ; ::_thesis: rng (f | ].p,g.[) is open then f | ].p,g.[ is increasing by A1, A2, ROLLE:9; hence rng (f | ].p,g.[) is open by A1, A4, FCONT_3:23; ::_thesis: verum end; suppose for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ; ::_thesis: rng (f | ].p,g.[) is open then f | ].p,g.[ is decreasing by A1, A2, ROLLE:10; hence rng (f | ].p,g.[) is open by A1, A4, FCONT_3:23; ::_thesis: verum end; end; end; hence rng (f | ].p,g.[) is open ; ::_thesis: verum end; theorem Th42: :: FDIFF_2:42 for p being Real for f being PartFunc of REAL,REAL st left_open_halfline p c= dom f & f is_differentiable_on left_open_halfline p & ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) holds rng (f | (left_open_halfline p)) is open proof let p be Real; ::_thesis: for f being PartFunc of REAL,REAL st left_open_halfline p c= dom f & f is_differentiable_on left_open_halfline p & ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) holds rng (f | (left_open_halfline p)) is open let f be PartFunc of REAL,REAL; ::_thesis: ( left_open_halfline p c= dom f & f is_differentiable_on left_open_halfline p & ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) implies rng (f | (left_open_halfline p)) is open ) set L = left_open_halfline p; assume A1: left_open_halfline p c= dom f ; ::_thesis: ( not f is_differentiable_on left_open_halfline p or ( ex x0 being Real st ( x0 in left_open_halfline p & not 0 < diff (f,x0) ) & ex x0 being Real st ( x0 in left_open_halfline p & not diff (f,x0) < 0 ) ) or rng (f | (left_open_halfline p)) is open ) assume that A2: f is_differentiable_on left_open_halfline p and A3: ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) ; ::_thesis: rng (f | (left_open_halfline p)) is open A4: f | (left_open_halfline p) is continuous by A2, FDIFF_1:25; now__::_thesis:_rng_(f_|_(left_open_halfline_p))_is_open percases ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) by A3; suppose for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) ; ::_thesis: rng (f | (left_open_halfline p)) is open then f | (left_open_halfline p) is increasing by A1, A2, Th29; hence rng (f | (left_open_halfline p)) is open by A1, A4, FCONT_3:24; ::_thesis: verum end; suppose for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ; ::_thesis: rng (f | (left_open_halfline p)) is open then f | (left_open_halfline p) is decreasing by A1, A2, Th30; hence rng (f | (left_open_halfline p)) is open by A1, A4, FCONT_3:24; ::_thesis: verum end; end; end; hence rng (f | (left_open_halfline p)) is open ; ::_thesis: verum end; theorem Th43: :: FDIFF_2:43 for p being Real for f being PartFunc of REAL,REAL st right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) holds rng (f | (right_open_halfline p)) is open proof let p be Real; ::_thesis: for f being PartFunc of REAL,REAL st right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) holds rng (f | (right_open_halfline p)) is open let f be PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) implies rng (f | (right_open_halfline p)) is open ) set l = right_open_halfline p; assume A1: right_open_halfline p c= dom f ; ::_thesis: ( not f is_differentiable_on right_open_halfline p or ( ex x0 being Real st ( x0 in right_open_halfline p & not 0 < diff (f,x0) ) & ex x0 being Real st ( x0 in right_open_halfline p & not diff (f,x0) < 0 ) ) or rng (f | (right_open_halfline p)) is open ) assume that A2: f is_differentiable_on right_open_halfline p and A3: ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) ; ::_thesis: rng (f | (right_open_halfline p)) is open A4: f | (right_open_halfline p) is continuous by A2, FDIFF_1:25; now__::_thesis:_rng_(f_|_(right_open_halfline_p))_is_open percases ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) by A3; suppose for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) ; ::_thesis: rng (f | (right_open_halfline p)) is open then f | (right_open_halfline p) is increasing by A1, A2, Th33; hence rng (f | (right_open_halfline p)) is open by A1, A4, FCONT_3:25; ::_thesis: verum end; suppose for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ; ::_thesis: rng (f | (right_open_halfline p)) is open then f | (right_open_halfline p) is decreasing by A1, A2, Th34; hence rng (f | (right_open_halfline p)) is open by A1, A4, FCONT_3:25; ::_thesis: verum end; end; end; hence rng (f | (right_open_halfline p)) is open ; ::_thesis: verum end; theorem Th44: :: FDIFF_2:44 for f being PartFunc of REAL,REAL st [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) holds rng f is open proof let f be PartFunc of REAL,REAL; ::_thesis: ( [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) implies rng f is open ) assume A1: [#] REAL c= dom f ; ::_thesis: ( not f is_differentiable_on [#] REAL or ( not for x0 being Real holds 0 < diff (f,x0) & not for x0 being Real holds diff (f,x0) < 0 ) or rng f is open ) assume that A2: f is_differentiable_on [#] REAL and A3: ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) ; ::_thesis: rng f is open A4: f | ([#] REAL) is continuous by A2, FDIFF_1:25; now__::_thesis:_rng_f_is_open percases ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) by A3; suppose for x0 being Real holds 0 < diff (f,x0) ; ::_thesis: rng f is open then f | ([#] REAL) is increasing by A1, A2, Th37; hence rng f is open by A1, A4, FCONT_3:26; ::_thesis: verum end; suppose for x0 being Real holds diff (f,x0) < 0 ; ::_thesis: rng f is open then f | ([#] REAL) is decreasing by A1, A2, Th38; hence rng f is open by A1, A4, FCONT_3:26; ::_thesis: verum end; end; end; hence rng f is open ; ::_thesis: verum end; theorem :: FDIFF_2:45 for f being one-to-one PartFunc of REAL,REAL st [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) holds ( f is one-to-one & f " is_differentiable_on dom (f ") & ( for x0 being Real st x0 in dom (f ") holds diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) ) ) proof let f be one-to-one PartFunc of REAL,REAL; ::_thesis: ( [#] REAL c= dom f & f is_differentiable_on [#] REAL & ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) implies ( f is one-to-one & f " is_differentiable_on dom (f ") & ( for x0 being Real st x0 in dom (f ") holds diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) ) ) ) assume that A1: [#] REAL c= dom f and A2: f is_differentiable_on [#] REAL and A3: ( for x0 being Real holds 0 < diff (f,x0) or for x0 being Real holds diff (f,x0) < 0 ) ; ::_thesis: ( f is one-to-one & f " is_differentiable_on dom (f ") & ( for x0 being Real st x0 in dom (f ") holds diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) ) ) A4: rng f is open by A1, A2, A3, Th44; thus f is one-to-one ; ::_thesis: ( f " is_differentiable_on dom (f ") & ( for x0 being Real st x0 in dom (f ") holds diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) ) ) A5: dom (f ") = rng f by FUNCT_1:33; A6: rng (f ") = dom f by FUNCT_1:33; A7: for y0 being Real st y0 in dom (f ") holds ( f " is_differentiable_in y0 & diff ((f "),y0) = 1 / (diff (f,((f ") . y0))) ) proof let y0 be Real; ::_thesis: ( y0 in dom (f ") implies ( f " is_differentiable_in y0 & diff ((f "),y0) = 1 / (diff (f,((f ") . y0))) ) ) assume A8: y0 in dom (f ") ; ::_thesis: ( f " is_differentiable_in y0 & diff ((f "),y0) = 1 / (diff (f,((f ") . y0))) ) then consider x0 being Real such that A9: x0 in dom f and A10: y0 = f . x0 by A5, PARTFUN1:3; A11: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom (f ") holds ( (h ") (#) (((f ") /* (h + c)) - ((f ") /* c)) is convergent & lim ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) = 1 / (diff (f,((f ") . y0))) ) proof reconsider a = NAT --> ((f ") . y0) as Real_Sequence by FUNCOP_1:45; let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom (f ") holds ( (h ") (#) (((f ") /* (h + c)) - ((f ") /* c)) is convergent & lim ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) = 1 / (diff (f,((f ") . y0))) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {y0} & rng (h + c) c= dom (f ") implies ( (h ") (#) (((f ") /* (h + c)) - ((f ") /* c)) is convergent & lim ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) = 1 / (diff (f,((f ") . y0))) ) ) assume that A12: rng c = {y0} and A13: rng (h + c) c= dom (f ") ; ::_thesis: ( (h ") (#) (((f ") /* (h + c)) - ((f ") /* c)) is convergent & lim ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) = 1 / (diff (f,((f ") . y0))) ) A14: lim (h + c) = y0 by A12, Th4; reconsider a = a as V8() Real_Sequence ; defpred S1[ Element of NAT , real number ] means for r1, r2 being real number st r1 = (h + c) . $1 & r2 = a . $1 holds r1 = f . (r2 + $2); A15: for n being Element of NAT ex r being Real st S1[n,r] proof let n be Element of NAT ; ::_thesis: ex r being Real st S1[n,r] (h + c) . n in rng (h + c) by VALUED_0:28; then consider g being Real such that g in dom f and A16: (h + c) . n = f . g by A5, A13, PARTFUN1:3; take r = g - x0; ::_thesis: S1[n,r] let r1, r2 be real number ; ::_thesis: ( r1 = (h + c) . n & r2 = a . n implies r1 = f . (r2 + r) ) assume that A17: r1 = (h + c) . n and A18: r2 = a . n ; ::_thesis: r1 = f . (r2 + r) a . n = (f ") . (f . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; hence r1 = f . (r2 + r) by A16, A17, A18; ::_thesis: verum end; consider b being Real_Sequence such that A19: for n being Element of NAT holds S1[n,b . n] from FUNCT_2:sch_3(A15); A20: now__::_thesis:_for_n_being_Element_of_NAT_holds_c_._n_=_f_._x0 let n be Element of NAT ; ::_thesis: c . n = f . x0 c . n in rng c by VALUED_0:28; hence c . n = f . x0 by A10, A12, TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_not_b_._n_=_0 given n being Element of NAT such that A22: b . n = 0 ; ::_thesis: contradiction A23: (h + c) . n = (h . n) + (c . n) by SEQ_1:7 .= (h . n) + (f . x0) by A20 ; f . ((a . n) + (b . n)) = f . ((f ") . (f . x0)) by A10, A22, FUNCOP_1:7 .= f . x0 by A9, FUNCT_1:34 ; then (h . n) + (f . x0) = f . x0 by A19, A23; hence contradiction by SEQ_1:5; ::_thesis: verum end; then A24: b is non-zero by SEQ_1:5; A25: [#] REAL c= dom f by A2, FDIFF_1:def_6; then dom f = REAL by XBOOLE_0:def_10; then A26: f is total by PARTFUN1:def_2; A27: y0 in dom ((f ") | (rng f)) by A5, A8, RELAT_1:69; ( f | ([#] REAL) is increasing or f | ([#] REAL) is decreasing ) by A1, A2, A3, Th37, Th38; then (f ") | (rng f) is continuous by A26, FCONT_3:22; then (f ") | (dom (f ")) is_continuous_in y0 by A5, A27, FCONT_1:def_2; then A28: f " is_continuous_in y0 by RELAT_1:68; A29: now__::_thesis:_for_n_being_Element_of_NAT_holds_(((f_")_/*_(h_+_c))_-_a)_._n_=_b_._n let n be Element of NAT ; ::_thesis: (((f ") /* (h + c)) - a) . n = b . n A30: (b . n) + (a . n) in [#] REAL ; thus (((f ") /* (h + c)) - a) . n = (((f ") /* (h + c)) . n) - (a . n) by RFUNCT_2:1 .= ((f ") . ((h + c) . n)) - (a . n) by A13, FUNCT_2:108 .= ((f ") . (f . ((b . n) + (a . n)))) - (a . n) by A19 .= ((b . n) + (a . n)) - (a . n) by A25, A30, FUNCT_1:34 .= b . n ; ::_thesis: verum end; A31: h + c is convergent by A12, Th4; then A32: (f ") /* (h + c) is convergent by A13, A14, A28, FCONT_1:def_1; then ((f ") /* (h + c)) - a is convergent by SEQ_2:11; then A33: b is convergent by A29, FUNCT_2:63; A34: lim a = a . 0 by SEQ_4:26 .= (f ") . y0 by FUNCOP_1:7 ; (f ") . y0 = lim ((f ") /* (h + c)) by A13, A31, A14, A28, FCONT_1:def_1; then lim (((f ") /* (h + c)) - a) = ((f ") . y0) - ((f ") . y0) by A32, A34, SEQ_2:12 .= 0 ; then A35: lim b = 0 by A29, FUNCT_2:63; A36: rng (b + a) c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (b + a) or x in dom f ) assume x in rng (b + a) ; ::_thesis: x in dom f then x in REAL ; hence x in dom f by A25; ::_thesis: verum end; reconsider b = b as non-zero 0 -convergent Real_Sequence by A24, A33, A35, FDIFF_1:def_1; A37: b " is non-zero by SEQ_1:33; A38: rng a = {((f ") . y0)} proof thus rng a c= {((f ") . y0)} :: according to XBOOLE_0:def_10 ::_thesis: {((f ") . y0)} c= rng a proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in {((f ") . y0)} ) assume x in rng a ; ::_thesis: x in {((f ") . y0)} then ex n being Element of NAT st x = a . n by FUNCT_2:113; then x = (f ") . y0 by FUNCOP_1:7; hence x in {((f ") . y0)} by TARSKI:def_1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {((f ") . y0)} or x in rng a ) assume x in {((f ") . y0)} ; ::_thesis: x in rng a then x = (f ") . y0 by TARSKI:def_1; then a . 0 = x by FUNCOP_1:7; hence x in rng a by VALUED_0:28; ::_thesis: verum end; A39: rng a c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in dom f ) assume x in rng a ; ::_thesis: x in dom f then x = (f ") . y0 by A38, TARSKI:def_1; hence x in dom f by A6, A8, FUNCT_1:def_3; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_(f_/*_a)_._n_=_c_._n let n be Element of NAT ; ::_thesis: (f /* a) . n = c . n c . n in rng c by VALUED_0:28; then A40: c . n = y0 by A12, TARSKI:def_1; thus (f /* a) . n = f . (a . n) by A39, FUNCT_2:108 .= f . ((f ") . y0) by FUNCOP_1:7 .= c . n by A5, A8, A40, FUNCT_1:35 ; ::_thesis: verum end; then A41: f /* a = c by FUNCT_2:63; now__::_thesis:_for_n_being_Element_of_NAT_holds_h_._n_=_((f_/*_(b_+_a))_-_(f_/*_a))_._n let n be Element of NAT ; ::_thesis: h . n = ((f /* (b + a)) - (f /* a)) . n (h + c) . n = f . ((a . n) + (b . n)) by A19; then (h . n) + (c . n) = f . ((a . n) + (b . n)) by SEQ_1:7; hence h . n = (f . ((b . n) + (a . n))) - ((f /* a) . n) by A41 .= (f . ((b + a) . n)) - ((f /* a) . n) by SEQ_1:7 .= ((f /* (b + a)) . n) - ((f /* a) . n) by A36, FUNCT_2:108 .= ((f /* (b + a)) - (f /* a)) . n by RFUNCT_2:1 ; ::_thesis: verum end; then A42: h = (f /* (b + a)) - (f /* a) by FUNCT_2:63; then (f /* (b + a)) - (f /* a) is non-zero ; then A43: (b ") (#) ((f /* (b + a)) - (f /* a)) is non-zero by A37, SEQ_1:35; A44: rng c c= dom (f ") proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom (f ") ) assume x in rng c ; ::_thesis: x in dom (f ") hence x in dom (f ") by A8, A12, TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_((h_")_(#)_(((f_")_/*_(h_+_c))_-_((f_")_/*_c)))_._n_=_(((b_")_(#)_((f_/*_(b_+_a))_-_(f_/*_a)))_")_._n let n be Element of NAT ; ::_thesis: ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) . n = (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n A45: (a . n) + (b . n) in [#] REAL ; c . n in rng c by VALUED_0:28; then A46: c . n = y0 by A12, TARSKI:def_1; thus ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) . n = ((h ") . n) * ((((f ") /* (h + c)) - ((f ") /* c)) . n) by SEQ_1:8 .= ((h ") . n) * ((((f ") /* (h + c)) . n) - (((f ") /* c) . n)) by RFUNCT_2:1 .= ((h ") . n) * (((f ") . ((h + c) . n)) - (((f ") /* c) . n)) by A13, FUNCT_2:108 .= ((h ") . n) * (((f ") . (f . ((a . n) + (b . n)))) - (((f ") /* c) . n)) by A19 .= ((h ") . n) * (((a . n) + (b . n)) - (((f ") /* c) . n)) by A25, A45, FUNCT_1:34 .= ((h ") . n) * (((a . n) + (b . n)) - ((f ") . (c . n))) by A44, FUNCT_2:108 .= ((h ") . n) * (((a . n) + (b . n)) - (a . n)) by A46, FUNCOP_1:7 .= ((h ") (#) ((b ") ")) . n by SEQ_1:8 .= (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n by A42, SEQ_1:36 ; ::_thesis: verum end; then A47: (h ") (#) (((f ") /* (h + c)) - ((f ") /* c)) = ((b ") (#) ((f /* (b + a)) - (f /* a))) " by FUNCT_2:63; A48: f is_differentiable_in (f ") . y0 by A2, FDIFF_1:9; then A49: lim ((b ") (#) ((f /* (b + a)) - (f /* a))) = diff (f,((f ") . y0)) by A38, A36, Th12; diff (f,((f ") . y0)) = diff (f,((f ") . y0)) ; then A50: (b ") (#) ((f /* (b + a)) - (f /* a)) is convergent by A38, A36, A48, Th12; A51: 0 <> diff (f,((f ") . y0)) by A3; hence (h ") (#) (((f ") /* (h + c)) - ((f ") /* c)) is convergent by A47, A43, A50, A49, SEQ_2:21; ::_thesis: lim ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) = 1 / (diff (f,((f ") . y0))) thus lim ((h ") (#) (((f ") /* (h + c)) - ((f ") /* c))) = (diff (f,((f ") . y0))) " by A47, A43, A50, A49, A51, SEQ_2:22 .= 1 / (diff (f,((f ") . y0))) by XCMPLX_1:215 ; ::_thesis: verum end; ex N being Neighbourhood of y0 st N c= dom (f ") by A4, A5, A8, RCOMP_1:18; hence ( f " is_differentiable_in y0 & diff ((f "),y0) = 1 / (diff (f,((f ") . y0))) ) by A11, Th12; ::_thesis: verum end; then for y0 being Real st y0 in dom (f ") holds f " is_differentiable_in y0 ; hence f " is_differentiable_on dom (f ") by A4, A5, FDIFF_1:9; ::_thesis: for x0 being Real st x0 in dom (f ") holds diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) let x0 be Real; ::_thesis: ( x0 in dom (f ") implies diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) ) assume x0 in dom (f ") ; ::_thesis: diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) hence diff ((f "),x0) = 1 / (diff (f,((f ") . x0))) by A7; ::_thesis: verum end; theorem :: FDIFF_2:46 for p being Real for f being one-to-one PartFunc of REAL,REAL st left_open_halfline p c= dom f & f is_differentiable_on left_open_halfline p & ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) holds ( f | (left_open_halfline p) is one-to-one & (f | (left_open_halfline p)) " is_differentiable_on dom ((f | (left_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (left_open_halfline p)) ") holds diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) ) ) proof let p be Real; ::_thesis: for f being one-to-one PartFunc of REAL,REAL st left_open_halfline p c= dom f & f is_differentiable_on left_open_halfline p & ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) holds ( f | (left_open_halfline p) is one-to-one & (f | (left_open_halfline p)) " is_differentiable_on dom ((f | (left_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (left_open_halfline p)) ") holds diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) ) ) let f be one-to-one PartFunc of REAL,REAL; ::_thesis: ( left_open_halfline p c= dom f & f is_differentiable_on left_open_halfline p & ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) implies ( f | (left_open_halfline p) is one-to-one & (f | (left_open_halfline p)) " is_differentiable_on dom ((f | (left_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (left_open_halfline p)) ") holds diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) ) ) ) set l = left_open_halfline p; assume that A1: left_open_halfline p c= dom f and A2: f is_differentiable_on left_open_halfline p and A3: ( for x0 being Real st x0 in left_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in left_open_halfline p holds diff (f,x0) < 0 ) ; ::_thesis: ( f | (left_open_halfline p) is one-to-one & (f | (left_open_halfline p)) " is_differentiable_on dom ((f | (left_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (left_open_halfline p)) ") holds diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) ) ) A4: rng (f | (left_open_halfline p)) is open by A1, A2, A3, Th42; set f1 = f | (left_open_halfline p); thus f | (left_open_halfline p) is one-to-one ; ::_thesis: ( (f | (left_open_halfline p)) " is_differentiable_on dom ((f | (left_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (left_open_halfline p)) ") holds diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) ) ) A5: dom ((f | (left_open_halfline p)) ") = rng (f | (left_open_halfline p)) by FUNCT_1:33; A6: rng ((f | (left_open_halfline p)) ") = dom (f | (left_open_halfline p)) by FUNCT_1:33; A7: for y0 being Real st y0 in dom ((f | (left_open_halfline p)) ") holds ( (f | (left_open_halfline p)) " is_differentiable_in y0 & diff (((f | (left_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) proof let y0 be Real; ::_thesis: ( y0 in dom ((f | (left_open_halfline p)) ") implies ( (f | (left_open_halfline p)) " is_differentiable_in y0 & diff (((f | (left_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) ) assume A8: y0 in dom ((f | (left_open_halfline p)) ") ; ::_thesis: ( (f | (left_open_halfline p)) " is_differentiable_in y0 & diff (((f | (left_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) then consider x0 being Real such that A9: x0 in dom (f | (left_open_halfline p)) and A10: y0 = (f | (left_open_halfline p)) . x0 by A5, PARTFUN1:3; A11: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | (left_open_halfline p)) ") holds ( (h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) proof A12: left_open_halfline p c= dom f by A2, FDIFF_1:def_6; ( f | (left_open_halfline p) is increasing or f | (left_open_halfline p) is decreasing ) by A1, A2, A3, Th29, Th30; then ((f | (left_open_halfline p)) ") | (f .: (left_open_halfline p)) is continuous by A12, FCONT_3:18; then A13: ((f | (left_open_halfline p)) ") | (rng (f | (left_open_halfline p))) is continuous by RELAT_1:115; y0 in dom (((f | (left_open_halfline p)) ") | (rng (f | (left_open_halfline p)))) by A5, A8, RELAT_1:69; then ((f | (left_open_halfline p)) ") | (rng (f | (left_open_halfline p))) is_continuous_in y0 by A13, FCONT_1:def_2; then A14: (f | (left_open_halfline p)) " is_continuous_in y0 by A5, RELAT_1:68; reconsider a = NAT --> (((f | (left_open_halfline p)) ") . y0) as Real_Sequence by FUNCOP_1:45; let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | (left_open_halfline p)) ") holds ( (h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {y0} & rng (h + c) c= dom ((f | (left_open_halfline p)) ") implies ( (h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) ) assume that A15: rng c = {y0} and A16: rng (h + c) c= dom ((f | (left_open_halfline p)) ") ; ::_thesis: ( (h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) A17: lim (h + c) = y0 by A15, Th4; reconsider a = a as V8() Real_Sequence ; defpred S1[ Element of NAT , real number ] means for r1, r2 being real number st r1 = (h + c) . $1 & r2 = a . $1 holds ( r1 = f . (r2 + $2) & r2 + $2 in dom f & r2 + $2 in dom (f | (left_open_halfline p)) ); A18: for n being Element of NAT ex r being Real st S1[n,r] proof let n be Element of NAT ; ::_thesis: ex r being Real st S1[n,r] (h + c) . n in rng (h + c) by VALUED_0:28; then consider g being Real such that A19: g in dom (f | (left_open_halfline p)) and A20: (h + c) . n = (f | (left_open_halfline p)) . g by A5, A16, PARTFUN1:3; take r = g - x0; ::_thesis: S1[n,r] let r1, r2 be real number ; ::_thesis: ( r1 = (h + c) . n & r2 = a . n implies ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | (left_open_halfline p)) ) ) assume that A21: r1 = (h + c) . n and A22: r2 = a . n ; ::_thesis: ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | (left_open_halfline p)) ) A23: a . n = ((f | (left_open_halfline p)) ") . ((f | (left_open_halfline p)) . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; hence r1 = f . (r2 + r) by A19, A20, A21, A22, FUNCT_1:47; ::_thesis: ( r2 + r in dom f & r2 + r in dom (f | (left_open_halfline p)) ) g in (dom f) /\ (left_open_halfline p) by A19, RELAT_1:61; hence ( r2 + r in dom f & r2 + r in dom (f | (left_open_halfline p)) ) by A19, A23, A22, XBOOLE_0:def_4; ::_thesis: verum end; consider b being Real_Sequence such that A24: for n being Element of NAT holds S1[n,b . n] from FUNCT_2:sch_3(A18); A25: now__::_thesis:_for_n_being_Element_of_NAT_holds_((((f_|_(left_open_halfline_p))_")_/*_(h_+_c))_-_a)_._n_=_b_._n let n be Element of NAT ; ::_thesis: ((((f | (left_open_halfline p)) ") /* (h + c)) - a) . n = b . n A26: (h + c) . n = (h + c) . n ; then A27: (a . n) + (b . n) in dom (f | (left_open_halfline p)) by A24; thus ((((f | (left_open_halfline p)) ") /* (h + c)) - a) . n = ((((f | (left_open_halfline p)) ") /* (h + c)) . n) - (a . n) by RFUNCT_2:1 .= (((f | (left_open_halfline p)) ") . ((h + c) . n)) - (a . n) by A16, FUNCT_2:108 .= (((f | (left_open_halfline p)) ") . (f . ((a . n) + (b . n)))) - (a . n) by A24 .= (((f | (left_open_halfline p)) ") . ((f | (left_open_halfline p)) . ((a . n) + (b . n)))) - (a . n) by A24, A26, FUNCT_1:47 .= ((a . n) + (b . n)) - (a . n) by A27, FUNCT_1:34 .= b . n ; ::_thesis: verum end; A28: h + c is convergent by A15, Th4; then A29: ((f | (left_open_halfline p)) ") /* (h + c) is convergent by A16, A17, A14, FCONT_1:def_1; then (((f | (left_open_halfline p)) ") /* (h + c)) - a is convergent by SEQ_2:11; then A30: b is convergent by A25, FUNCT_2:63; A31: lim a = a . 0 by SEQ_4:26 .= ((f | (left_open_halfline p)) ") . y0 by FUNCOP_1:7 ; ((f | (left_open_halfline p)) ") . y0 = lim (((f | (left_open_halfline p)) ") /* (h + c)) by A16, A28, A17, A14, FCONT_1:def_1; then lim ((((f | (left_open_halfline p)) ") /* (h + c)) - a) = (((f | (left_open_halfline p)) ") . y0) - (((f | (left_open_halfline p)) ") . y0) by A29, A31, SEQ_2:12 .= 0 ; then A32: lim b = 0 by A25, FUNCT_2:63; A33: rng (b + a) c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (b + a) or x in dom f ) assume x in rng (b + a) ; ::_thesis: x in dom f then consider n being Element of NAT such that A34: x = (b + a) . n by FUNCT_2:113; A35: (h + c) . n = (h + c) . n ; x = (a . n) + (b . n) by A34, SEQ_1:7; hence x in dom f by A24, A35; ::_thesis: verum end; ((f | (left_open_halfline p)) ") . y0 in dom (f | (left_open_halfline p)) by A6, A8, FUNCT_1:def_3; then ((f | (left_open_halfline p)) ") . y0 in (dom f) /\ (left_open_halfline p) by RELAT_1:61; then A36: ((f | (left_open_halfline p)) ") . y0 in left_open_halfline p by XBOOLE_0:def_4; then A37: f is_differentiable_in ((f | (left_open_halfline p)) ") . y0 by A2, FDIFF_1:9; A38: now__::_thesis:_for_n_being_Element_of_NAT_holds_c_._n_=_(f_|_(left_open_halfline_p))_._x0 let n be Element of NAT ; ::_thesis: c . n = (f | (left_open_halfline p)) . x0 c . n in rng c by VALUED_0:28; hence c . n = (f | (left_open_halfline p)) . x0 by A10, A15, TARSKI:def_1; ::_thesis: verum end; A39: 0 <> diff (f,(((f | (left_open_halfline p)) ") . y0)) by A3, A36; now__::_thesis:_for_n_being_Element_of_NAT_holds_not_b_._n_=_0 given n being Element of NAT such that A41: b . n = 0 ; ::_thesis: contradiction a . n = ((f | (left_open_halfline p)) ") . ((f | (left_open_halfline p)) . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; then A42: f . ((a . n) + (b . n)) = (f | (left_open_halfline p)) . x0 by A9, A41, FUNCT_1:47; (h + c) . n = (h . n) + (c . n) by SEQ_1:7 .= (h . n) + ((f | (left_open_halfline p)) . x0) by A38 ; then (h . n) + ((f | (left_open_halfline p)) . x0) = (f | (left_open_halfline p)) . x0 by A24, A42; hence contradiction by SEQ_1:5; ::_thesis: verum end; then b is non-zero by SEQ_1:5; then reconsider b = b as non-zero 0 -convergent Real_Sequence by A30, A32, FDIFF_1:def_1; A44: b " is non-zero by SEQ_1:33; A45: rng a = {(((f | (left_open_halfline p)) ") . y0)} proof thus rng a c= {(((f | (left_open_halfline p)) ") . y0)} :: according to XBOOLE_0:def_10 ::_thesis: {(((f | (left_open_halfline p)) ") . y0)} c= rng a proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in {(((f | (left_open_halfline p)) ") . y0)} ) assume x in rng a ; ::_thesis: x in {(((f | (left_open_halfline p)) ") . y0)} then ex n being Element of NAT st x = a . n by FUNCT_2:113; then x = ((f | (left_open_halfline p)) ") . y0 by FUNCOP_1:7; hence x in {(((f | (left_open_halfline p)) ") . y0)} by TARSKI:def_1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(((f | (left_open_halfline p)) ") . y0)} or x in rng a ) assume x in {(((f | (left_open_halfline p)) ") . y0)} ; ::_thesis: x in rng a then x = ((f | (left_open_halfline p)) ") . y0 by TARSKI:def_1; then a . 0 = x by FUNCOP_1:7; hence x in rng a by VALUED_0:28; ::_thesis: verum end; A46: rng a c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in dom f ) assume x in rng a ; ::_thesis: x in dom f then x = ((f | (left_open_halfline p)) ") . y0 by A45, TARSKI:def_1; then x = x0 by A9, A10, FUNCT_1:34; then x in (dom f) /\ (left_open_halfline p) by A9, RELAT_1:61; hence x in dom f by XBOOLE_0:def_4; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_(f_/*_a)_._n_=_c_._n let n be Element of NAT ; ::_thesis: (f /* a) . n = c . n A47: ((f | (left_open_halfline p)) ") . y0 in rng ((f | (left_open_halfline p)) ") by A8, FUNCT_1:def_3; c . n in rng c by VALUED_0:28; then A48: c . n = y0 by A15, TARSKI:def_1; thus (f /* a) . n = f . (a . n) by A46, FUNCT_2:108 .= f . (((f | (left_open_halfline p)) ") . y0) by FUNCOP_1:7 .= (f | (left_open_halfline p)) . (((f | (left_open_halfline p)) ") . y0) by A6, A47, FUNCT_1:47 .= c . n by A5, A8, A48, FUNCT_1:35 ; ::_thesis: verum end; then A49: f /* a = c by FUNCT_2:63; now__::_thesis:_for_n_being_Element_of_NAT_holds_h_._n_=_((f_/*_(b_+_a))_-_(f_/*_a))_._n let n be Element of NAT ; ::_thesis: h . n = ((f /* (b + a)) - (f /* a)) . n (h + c) . n = f . ((a . n) + (b . n)) by A24; then (h . n) + (c . n) = f . ((a . n) + (b . n)) by SEQ_1:7; hence h . n = (f . ((b . n) + (a . n))) - ((f /* a) . n) by A49 .= (f . ((b + a) . n)) - ((f /* a) . n) by SEQ_1:7 .= ((f /* (b + a)) . n) - ((f /* a) . n) by A33, FUNCT_2:108 .= ((f /* (b + a)) - (f /* a)) . n by RFUNCT_2:1 ; ::_thesis: verum end; then A50: h = (f /* (b + a)) - (f /* a) by FUNCT_2:63; then (f /* (b + a)) - (f /* a) is non-zero ; then A51: (b ") (#) ((f /* (b + a)) - (f /* a)) is non-zero by A44, SEQ_1:35; A52: rng c c= dom ((f | (left_open_halfline p)) ") proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom ((f | (left_open_halfline p)) ") ) assume x in rng c ; ::_thesis: x in dom ((f | (left_open_halfline p)) ") hence x in dom ((f | (left_open_halfline p)) ") by A8, A15, TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_((h_")_(#)_((((f_|_(left_open_halfline_p))_")_/*_(h_+_c))_-_(((f_|_(left_open_halfline_p))_")_/*_c)))_._n_=_(((b_")_(#)_((f_/*_(b_+_a))_-_(f_/*_a)))_")_._n let n be Element of NAT ; ::_thesis: ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) . n = (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n A53: (h + c) . n = (h + c) . n ; then A54: (a . n) + (b . n) in dom (f | (left_open_halfline p)) by A24; c . n in rng c by VALUED_0:28; then A55: c . n = y0 by A15, TARSKI:def_1; thus ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) . n = ((h ") . n) * (((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) . n) by SEQ_1:8 .= ((h ") . n) * (((((f | (left_open_halfline p)) ") /* (h + c)) . n) - ((((f | (left_open_halfline p)) ") /* c) . n)) by RFUNCT_2:1 .= ((h ") . n) * ((((f | (left_open_halfline p)) ") . ((h + c) . n)) - ((((f | (left_open_halfline p)) ") /* c) . n)) by A16, FUNCT_2:108 .= ((h ") . n) * ((((f | (left_open_halfline p)) ") . (f . ((a . n) + (b . n)))) - ((((f | (left_open_halfline p)) ") /* c) . n)) by A24 .= ((h ") . n) * ((((f | (left_open_halfline p)) ") . ((f | (left_open_halfline p)) . ((a . n) + (b . n)))) - ((((f | (left_open_halfline p)) ") /* c) . n)) by A24, A53, FUNCT_1:47 .= ((h ") . n) * (((a . n) + (b . n)) - ((((f | (left_open_halfline p)) ") /* c) . n)) by A54, FUNCT_1:34 .= ((h ") . n) * (((a . n) + (b . n)) - (((f | (left_open_halfline p)) ") . (c . n))) by A52, FUNCT_2:108 .= ((h ") . n) * (((a . n) + (b . n)) - (a . n)) by A55, FUNCOP_1:7 .= ((h ") (#) ((b ") ")) . n by SEQ_1:8 .= (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n by A50, SEQ_1:36 ; ::_thesis: verum end; then A56: (h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) = ((b ") (#) ((f /* (b + a)) - (f /* a))) " by FUNCT_2:63; diff (f,(((f | (left_open_halfline p)) ") . y0)) = diff (f,(((f | (left_open_halfline p)) ") . y0)) ; then A57: (b ") (#) ((f /* (b + a)) - (f /* a)) is convergent by A45, A33, A37, Th12; A58: lim ((b ") (#) ((f /* (b + a)) - (f /* a))) = diff (f,(((f | (left_open_halfline p)) ") . y0)) by A45, A33, A37, Th12; hence (h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c)) is convergent by A56, A51, A57, A39, SEQ_2:21; ::_thesis: lim ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) thus lim ((h ") (#) ((((f | (left_open_halfline p)) ") /* (h + c)) - (((f | (left_open_halfline p)) ") /* c))) = (diff (f,(((f | (left_open_halfline p)) ") . y0))) " by A56, A51, A57, A58, A39, SEQ_2:22 .= 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) by XCMPLX_1:215 ; ::_thesis: verum end; ex N being Neighbourhood of y0 st N c= dom ((f | (left_open_halfline p)) ") by A4, A5, A8, RCOMP_1:18; hence ( (f | (left_open_halfline p)) " is_differentiable_in y0 & diff (((f | (left_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . y0))) ) by A11, Th12; ::_thesis: verum end; then for y0 being Real st y0 in dom ((f | (left_open_halfline p)) ") holds (f | (left_open_halfline p)) " is_differentiable_in y0 ; hence (f | (left_open_halfline p)) " is_differentiable_on dom ((f | (left_open_halfline p)) ") by A4, A5, FDIFF_1:9; ::_thesis: for x0 being Real st x0 in dom ((f | (left_open_halfline p)) ") holds diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) let x0 be Real; ::_thesis: ( x0 in dom ((f | (left_open_halfline p)) ") implies diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) ) assume x0 in dom ((f | (left_open_halfline p)) ") ; ::_thesis: diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) hence diff (((f | (left_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (left_open_halfline p)) ") . x0))) by A7; ::_thesis: verum end; theorem :: FDIFF_2:47 for p being Real for f being one-to-one PartFunc of REAL,REAL st right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) holds ( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) ") holds diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) ) ) proof let p be Real; ::_thesis: for f being one-to-one PartFunc of REAL,REAL st right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) holds ( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) ") holds diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) ) ) let f be one-to-one PartFunc of REAL,REAL; ::_thesis: ( right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) implies ( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) ") holds diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) ) ) ) set l = right_open_halfline p; assume that A1: right_open_halfline p c= dom f and A2: f is_differentiable_on right_open_halfline p and A3: ( for x0 being Real st x0 in right_open_halfline p holds 0 < diff (f,x0) or for x0 being Real st x0 in right_open_halfline p holds diff (f,x0) < 0 ) ; ::_thesis: ( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) ") holds diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) ) ) A4: rng (f | (right_open_halfline p)) is open by A1, A2, A3, Th43; set f1 = f | (right_open_halfline p); thus f | (right_open_halfline p) is one-to-one ; ::_thesis: ( (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) ") & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) ") holds diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) ) ) A5: dom ((f | (right_open_halfline p)) ") = rng (f | (right_open_halfline p)) by FUNCT_1:33; A6: rng ((f | (right_open_halfline p)) ") = dom (f | (right_open_halfline p)) by FUNCT_1:33; A7: for y0 being Real st y0 in dom ((f | (right_open_halfline p)) ") holds ( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff (((f | (right_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) proof let y0 be Real; ::_thesis: ( y0 in dom ((f | (right_open_halfline p)) ") implies ( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff (((f | (right_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) ) assume A8: y0 in dom ((f | (right_open_halfline p)) ") ; ::_thesis: ( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff (((f | (right_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) then consider x0 being Real such that A9: x0 in dom (f | (right_open_halfline p)) and A10: y0 = (f | (right_open_halfline p)) . x0 by A5, PARTFUN1:3; A11: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | (right_open_halfline p)) ") holds ( (h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) proof A12: right_open_halfline p c= dom f by A2, FDIFF_1:def_6; ( f | (right_open_halfline p) is increasing or f | (right_open_halfline p) is decreasing ) by A1, A2, A3, Th33, Th34; then ((f | (right_open_halfline p)) ") | (f .: (right_open_halfline p)) is continuous by A12, FCONT_3:19; then A13: ((f | (right_open_halfline p)) ") | (rng (f | (right_open_halfline p))) is continuous by RELAT_1:115; y0 in dom (((f | (right_open_halfline p)) ") | (rng (f | (right_open_halfline p)))) by A5, A8, RELAT_1:69; then ((f | (right_open_halfline p)) ") | (rng (f | (right_open_halfline p))) is_continuous_in y0 by A13, FCONT_1:def_2; then A14: (f | (right_open_halfline p)) " is_continuous_in y0 by A5, RELAT_1:68; reconsider a = NAT --> (((f | (right_open_halfline p)) ") . y0) as Real_Sequence by FUNCOP_1:45; let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | (right_open_halfline p)) ") holds ( (h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {y0} & rng (h + c) c= dom ((f | (right_open_halfline p)) ") implies ( (h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) ) assume that A15: rng c = {y0} and A16: rng (h + c) c= dom ((f | (right_open_halfline p)) ") ; ::_thesis: ( (h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) is convergent & lim ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) A17: lim (h + c) = y0 by A15, Th4; reconsider a = a as V8() Real_Sequence ; defpred S1[ Element of NAT , real number ] means for r1, r2 being real number st r1 = (h + c) . $1 & r2 = a . $1 holds ( r1 = f . (r2 + $2) & r2 + $2 in dom f & r2 + $2 in dom (f | (right_open_halfline p)) ); A18: for n being Element of NAT ex r being Real st S1[n,r] proof let n be Element of NAT ; ::_thesis: ex r being Real st S1[n,r] (h + c) . n in rng (h + c) by VALUED_0:28; then consider g being Real such that A19: g in dom (f | (right_open_halfline p)) and A20: (h + c) . n = (f | (right_open_halfline p)) . g by A5, A16, PARTFUN1:3; take r = g - x0; ::_thesis: S1[n,r] let r1, r2 be real number ; ::_thesis: ( r1 = (h + c) . n & r2 = a . n implies ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) ) ) assume that A21: r1 = (h + c) . n and A22: r2 = a . n ; ::_thesis: ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) ) A23: a . n = ((f | (right_open_halfline p)) ") . ((f | (right_open_halfline p)) . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; hence r1 = f . (r2 + r) by A19, A20, A21, A22, FUNCT_1:47; ::_thesis: ( r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) ) g in (dom f) /\ (right_open_halfline p) by A19, RELAT_1:61; hence ( r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) ) by A19, A23, A22, XBOOLE_0:def_4; ::_thesis: verum end; consider b being Real_Sequence such that A24: for n being Element of NAT holds S1[n,b . n] from FUNCT_2:sch_3(A18); A25: now__::_thesis:_for_n_being_Element_of_NAT_holds_((((f_|_(right_open_halfline_p))_")_/*_(h_+_c))_-_a)_._n_=_b_._n let n be Element of NAT ; ::_thesis: ((((f | (right_open_halfline p)) ") /* (h + c)) - a) . n = b . n A26: (h + c) . n = (h + c) . n ; then A27: (a . n) + (b . n) in dom (f | (right_open_halfline p)) by A24; thus ((((f | (right_open_halfline p)) ") /* (h + c)) - a) . n = ((((f | (right_open_halfline p)) ") /* (h + c)) . n) - (a . n) by RFUNCT_2:1 .= (((f | (right_open_halfline p)) ") . ((h + c) . n)) - (a . n) by A16, FUNCT_2:108 .= (((f | (right_open_halfline p)) ") . (f . ((a . n) + (b . n)))) - (a . n) by A24 .= (((f | (right_open_halfline p)) ") . ((f | (right_open_halfline p)) . ((a . n) + (b . n)))) - (a . n) by A24, A26, FUNCT_1:47 .= ((a . n) + (b . n)) - (a . n) by A27, FUNCT_1:34 .= b . n ; ::_thesis: verum end; A28: h + c is convergent by A15, Th4; then A29: ((f | (right_open_halfline p)) ") /* (h + c) is convergent by A16, A17, A14, FCONT_1:def_1; then (((f | (right_open_halfline p)) ") /* (h + c)) - a is convergent by SEQ_2:11; then A30: b is convergent by A25, FUNCT_2:63; A31: lim a = a . 0 by SEQ_4:26 .= ((f | (right_open_halfline p)) ") . y0 by FUNCOP_1:7 ; ((f | (right_open_halfline p)) ") . y0 = lim (((f | (right_open_halfline p)) ") /* (h + c)) by A16, A28, A17, A14, FCONT_1:def_1; then lim ((((f | (right_open_halfline p)) ") /* (h + c)) - a) = (((f | (right_open_halfline p)) ") . y0) - (((f | (right_open_halfline p)) ") . y0) by A29, A31, SEQ_2:12 .= 0 ; then A32: lim b = 0 by A25, FUNCT_2:63; A33: rng (b + a) c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (b + a) or x in dom f ) assume x in rng (b + a) ; ::_thesis: x in dom f then consider n being Element of NAT such that A34: x = (b + a) . n by FUNCT_2:113; A35: (h + c) . n = (h + c) . n ; x = (a . n) + (b . n) by A34, SEQ_1:7; hence x in dom f by A24, A35; ::_thesis: verum end; ((f | (right_open_halfline p)) ") . y0 in dom (f | (right_open_halfline p)) by A6, A8, FUNCT_1:def_3; then ((f | (right_open_halfline p)) ") . y0 in (dom f) /\ (right_open_halfline p) by RELAT_1:61; then A36: ((f | (right_open_halfline p)) ") . y0 in right_open_halfline p by XBOOLE_0:def_4; then A37: f is_differentiable_in ((f | (right_open_halfline p)) ") . y0 by A2, FDIFF_1:9; A38: now__::_thesis:_for_n_being_Element_of_NAT_holds_c_._n_=_(f_|_(right_open_halfline_p))_._x0 let n be Element of NAT ; ::_thesis: c . n = (f | (right_open_halfline p)) . x0 c . n in rng c by VALUED_0:28; hence c . n = (f | (right_open_halfline p)) . x0 by A10, A15, TARSKI:def_1; ::_thesis: verum end; A39: 0 <> diff (f,(((f | (right_open_halfline p)) ") . y0)) by A3, A36; now__::_thesis:_for_n_being_Element_of_NAT_holds_not_b_._n_=_0 given n being Element of NAT such that A41: b . n = 0 ; ::_thesis: contradiction a . n = ((f | (right_open_halfline p)) ") . ((f | (right_open_halfline p)) . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; then A42: f . ((a . n) + (b . n)) = (f | (right_open_halfline p)) . x0 by A9, A41, FUNCT_1:47; (h + c) . n = (h . n) + (c . n) by SEQ_1:7 .= (h . n) + ((f | (right_open_halfline p)) . x0) by A38 ; then (h . n) + ((f | (right_open_halfline p)) . x0) = (f | (right_open_halfline p)) . x0 by A24, A42; hence contradiction by SEQ_1:5; ::_thesis: verum end; then b is non-zero by SEQ_1:5; then reconsider b = b as non-zero 0 -convergent Real_Sequence by A30, A32, FDIFF_1:def_1; A44: b " is non-zero by SEQ_1:33; A45: rng a = {(((f | (right_open_halfline p)) ") . y0)} proof thus rng a c= {(((f | (right_open_halfline p)) ") . y0)} :: according to XBOOLE_0:def_10 ::_thesis: {(((f | (right_open_halfline p)) ") . y0)} c= rng a proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in {(((f | (right_open_halfline p)) ") . y0)} ) assume x in rng a ; ::_thesis: x in {(((f | (right_open_halfline p)) ") . y0)} then ex n being Element of NAT st x = a . n by FUNCT_2:113; then x = ((f | (right_open_halfline p)) ") . y0 by FUNCOP_1:7; hence x in {(((f | (right_open_halfline p)) ") . y0)} by TARSKI:def_1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(((f | (right_open_halfline p)) ") . y0)} or x in rng a ) assume x in {(((f | (right_open_halfline p)) ") . y0)} ; ::_thesis: x in rng a then x = ((f | (right_open_halfline p)) ") . y0 by TARSKI:def_1; then a . 0 = x by FUNCOP_1:7; hence x in rng a by VALUED_0:28; ::_thesis: verum end; A46: rng a c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in dom f ) assume x in rng a ; ::_thesis: x in dom f then x = ((f | (right_open_halfline p)) ") . y0 by A45, TARSKI:def_1; then x = x0 by A9, A10, FUNCT_1:34; then x in (dom f) /\ (right_open_halfline p) by A9, RELAT_1:61; hence x in dom f by XBOOLE_0:def_4; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_(f_/*_a)_._n_=_c_._n let n be Element of NAT ; ::_thesis: (f /* a) . n = c . n A47: ((f | (right_open_halfline p)) ") . y0 in rng ((f | (right_open_halfline p)) ") by A8, FUNCT_1:def_3; c . n in rng c by VALUED_0:28; then A48: c . n = y0 by A15, TARSKI:def_1; thus (f /* a) . n = f . (a . n) by A46, FUNCT_2:108 .= f . (((f | (right_open_halfline p)) ") . y0) by FUNCOP_1:7 .= (f | (right_open_halfline p)) . (((f | (right_open_halfline p)) ") . y0) by A6, A47, FUNCT_1:47 .= c . n by A5, A8, A48, FUNCT_1:35 ; ::_thesis: verum end; then A49: f /* a = c by FUNCT_2:63; now__::_thesis:_for_n_being_Element_of_NAT_holds_h_._n_=_((f_/*_(b_+_a))_-_(f_/*_a))_._n let n be Element of NAT ; ::_thesis: h . n = ((f /* (b + a)) - (f /* a)) . n (h + c) . n = f . ((a . n) + (b . n)) by A24; then (h . n) + (c . n) = f . ((a . n) + (b . n)) by SEQ_1:7; hence h . n = (f . ((b . n) + (a . n))) - ((f /* a) . n) by A49 .= (f . ((b + a) . n)) - ((f /* a) . n) by SEQ_1:7 .= ((f /* (b + a)) . n) - ((f /* a) . n) by A33, FUNCT_2:108 .= ((f /* (b + a)) - (f /* a)) . n by RFUNCT_2:1 ; ::_thesis: verum end; then A50: h = (f /* (b + a)) - (f /* a) by FUNCT_2:63; then (f /* (b + a)) - (f /* a) is non-zero ; then A51: (b ") (#) ((f /* (b + a)) - (f /* a)) is non-zero by A44, SEQ_1:35; A52: rng c c= dom ((f | (right_open_halfline p)) ") proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom ((f | (right_open_halfline p)) ") ) assume x in rng c ; ::_thesis: x in dom ((f | (right_open_halfline p)) ") hence x in dom ((f | (right_open_halfline p)) ") by A8, A15, TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_((h_")_(#)_((((f_|_(right_open_halfline_p))_")_/*_(h_+_c))_-_(((f_|_(right_open_halfline_p))_")_/*_c)))_._n_=_(((b_")_(#)_((f_/*_(b_+_a))_-_(f_/*_a)))_")_._n let n be Element of NAT ; ::_thesis: ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) . n = (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n A53: (h + c) . n = (h + c) . n ; then A54: (a . n) + (b . n) in dom (f | (right_open_halfline p)) by A24; c . n in rng c by VALUED_0:28; then A55: c . n = y0 by A15, TARSKI:def_1; thus ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) . n = ((h ") . n) * (((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) . n) by SEQ_1:8 .= ((h ") . n) * (((((f | (right_open_halfline p)) ") /* (h + c)) . n) - ((((f | (right_open_halfline p)) ") /* c) . n)) by RFUNCT_2:1 .= ((h ") . n) * ((((f | (right_open_halfline p)) ") . ((h + c) . n)) - ((((f | (right_open_halfline p)) ") /* c) . n)) by A16, FUNCT_2:108 .= ((h ") . n) * ((((f | (right_open_halfline p)) ") . (f . ((a . n) + (b . n)))) - ((((f | (right_open_halfline p)) ") /* c) . n)) by A24 .= ((h ") . n) * ((((f | (right_open_halfline p)) ") . ((f | (right_open_halfline p)) . ((a . n) + (b . n)))) - ((((f | (right_open_halfline p)) ") /* c) . n)) by A24, A53, FUNCT_1:47 .= ((h ") . n) * (((a . n) + (b . n)) - ((((f | (right_open_halfline p)) ") /* c) . n)) by A54, FUNCT_1:34 .= ((h ") . n) * (((a . n) + (b . n)) - (((f | (right_open_halfline p)) ") . (c . n))) by A52, FUNCT_2:108 .= ((h ") . n) * (((a . n) + (b . n)) - (a . n)) by A55, FUNCOP_1:7 .= ((h ") (#) ((b ") ")) . n by SEQ_1:8 .= (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n by A50, SEQ_1:36 ; ::_thesis: verum end; then A56: (h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) = ((b ") (#) ((f /* (b + a)) - (f /* a))) " by FUNCT_2:63; diff (f,(((f | (right_open_halfline p)) ") . y0)) = diff (f,(((f | (right_open_halfline p)) ") . y0)) ; then A57: (b ") (#) ((f /* (b + a)) - (f /* a)) is convergent by A45, A33, A37, Th12; A58: lim ((b ") (#) ((f /* (b + a)) - (f /* a))) = diff (f,(((f | (right_open_halfline p)) ") . y0)) by A45, A33, A37, Th12; hence (h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c)) is convergent by A56, A51, A57, A39, SEQ_2:21; ::_thesis: lim ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) thus lim ((h ") (#) ((((f | (right_open_halfline p)) ") /* (h + c)) - (((f | (right_open_halfline p)) ") /* c))) = (diff (f,(((f | (right_open_halfline p)) ") . y0))) " by A56, A51, A57, A58, A39, SEQ_2:22 .= 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) by XCMPLX_1:215 ; ::_thesis: verum end; ex N being Neighbourhood of y0 st N c= dom ((f | (right_open_halfline p)) ") by A4, A5, A8, RCOMP_1:18; hence ( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff (((f | (right_open_halfline p)) "),y0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . y0))) ) by A11, Th12; ::_thesis: verum end; then for y0 being Real st y0 in dom ((f | (right_open_halfline p)) ") holds (f | (right_open_halfline p)) " is_differentiable_in y0 ; hence (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) ") by A4, A5, FDIFF_1:9; ::_thesis: for x0 being Real st x0 in dom ((f | (right_open_halfline p)) ") holds diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) let x0 be Real; ::_thesis: ( x0 in dom ((f | (right_open_halfline p)) ") implies diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) ) assume x0 in dom ((f | (right_open_halfline p)) ") ; ::_thesis: diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) hence diff (((f | (right_open_halfline p)) "),x0) = 1 / (diff (f,(((f | (right_open_halfline p)) ") . x0))) by A7; ::_thesis: verum end; theorem :: FDIFF_2:48 for p, g being Real for f being one-to-one PartFunc of REAL,REAL st ].p,g.[ c= dom f & f is_differentiable_on ].p,g.[ & ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) holds ( f | ].p,g.[ is one-to-one & (f | ].p,g.[) " is_differentiable_on dom ((f | ].p,g.[) ") & ( for x0 being Real st x0 in dom ((f | ].p,g.[) ") holds diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) ) ) proof let p, g be Real; ::_thesis: for f being one-to-one PartFunc of REAL,REAL st ].p,g.[ c= dom f & f is_differentiable_on ].p,g.[ & ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) holds ( f | ].p,g.[ is one-to-one & (f | ].p,g.[) " is_differentiable_on dom ((f | ].p,g.[) ") & ( for x0 being Real st x0 in dom ((f | ].p,g.[) ") holds diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) ) ) let f be one-to-one PartFunc of REAL,REAL; ::_thesis: ( ].p,g.[ c= dom f & f is_differentiable_on ].p,g.[ & ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) implies ( f | ].p,g.[ is one-to-one & (f | ].p,g.[) " is_differentiable_on dom ((f | ].p,g.[) ") & ( for x0 being Real st x0 in dom ((f | ].p,g.[) ") holds diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) ) ) ) set l = ].p,g.[; assume that A1: ].p,g.[ c= dom f and A2: f is_differentiable_on ].p,g.[ and A3: ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) ; ::_thesis: ( f | ].p,g.[ is one-to-one & (f | ].p,g.[) " is_differentiable_on dom ((f | ].p,g.[) ") & ( for x0 being Real st x0 in dom ((f | ].p,g.[) ") holds diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) ) ) A4: rng (f | ].p,g.[) is open by A1, A2, A3, Th41; set f1 = f | ].p,g.[; thus f | ].p,g.[ is one-to-one ; ::_thesis: ( (f | ].p,g.[) " is_differentiable_on dom ((f | ].p,g.[) ") & ( for x0 being Real st x0 in dom ((f | ].p,g.[) ") holds diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) ) ) A5: dom ((f | ].p,g.[) ") = rng (f | ].p,g.[) by FUNCT_1:33; A6: rng ((f | ].p,g.[) ") = dom (f | ].p,g.[) by FUNCT_1:33; A7: for y0 being Real st y0 in dom ((f | ].p,g.[) ") holds ( (f | ].p,g.[) " is_differentiable_in y0 & diff (((f | ].p,g.[) "),y0) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) proof let y0 be Real; ::_thesis: ( y0 in dom ((f | ].p,g.[) ") implies ( (f | ].p,g.[) " is_differentiable_in y0 & diff (((f | ].p,g.[) "),y0) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) ) assume A8: y0 in dom ((f | ].p,g.[) ") ; ::_thesis: ( (f | ].p,g.[) " is_differentiable_in y0 & diff (((f | ].p,g.[) "),y0) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) then consider x0 being Real such that A9: x0 in dom (f | ].p,g.[) and A10: y0 = (f | ].p,g.[) . x0 by A5, PARTFUN1:3; A11: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | ].p,g.[) ") holds ( (h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) is convergent & lim ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) proof A12: ( f | ].p,g.[ is increasing or f | ].p,g.[ is decreasing ) proof percases ( for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) or for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ) by A3; suppose for x0 being Real st x0 in ].p,g.[ holds 0 < diff (f,x0) ; ::_thesis: ( f | ].p,g.[ is increasing or f | ].p,g.[ is decreasing ) hence ( f | ].p,g.[ is increasing or f | ].p,g.[ is decreasing ) by A1, A2, ROLLE:9; ::_thesis: verum end; suppose for x0 being Real st x0 in ].p,g.[ holds diff (f,x0) < 0 ; ::_thesis: ( f | ].p,g.[ is increasing or f | ].p,g.[ is decreasing ) hence ( f | ].p,g.[ is increasing or f | ].p,g.[ is decreasing ) by A1, A2, ROLLE:10; ::_thesis: verum end; end; end; ].p,g.[ c= dom f by A2, FDIFF_1:def_6; then ((f | ].p,g.[) ") | (f .: ].p,g.[) is continuous by A12, FCONT_3:17; then A13: ((f | ].p,g.[) ") | (rng (f | ].p,g.[)) is continuous by RELAT_1:115; y0 in dom (((f | ].p,g.[) ") | (rng (f | ].p,g.[))) by A5, A8, RELAT_1:69; then ((f | ].p,g.[) ") | (rng (f | ].p,g.[)) is_continuous_in y0 by A13, FCONT_1:def_2; then A14: (f | ].p,g.[) " is_continuous_in y0 by A5, RELAT_1:68; reconsider a = NAT --> (((f | ].p,g.[) ") . y0) as Real_Sequence by FUNCOP_1:45; let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | ].p,g.[) ") holds ( (h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) is convergent & lim ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {y0} & rng (h + c) c= dom ((f | ].p,g.[) ") implies ( (h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) is convergent & lim ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) ) assume that A15: rng c = {y0} and A16: rng (h + c) c= dom ((f | ].p,g.[) ") ; ::_thesis: ( (h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) is convergent & lim ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) A17: lim (h + c) = y0 by A15, Th4; reconsider a = a as V8() Real_Sequence ; defpred S1[ Element of NAT , real number ] means for r1, r2 being real number st r1 = (h + c) . $1 & r2 = a . $1 holds ( r1 = f . (r2 + $2) & r2 + $2 in dom f & r2 + $2 in dom (f | ].p,g.[) ); A18: for n being Element of NAT ex r being Real st S1[n,r] proof let n be Element of NAT ; ::_thesis: ex r being Real st S1[n,r] (h + c) . n in rng (h + c) by VALUED_0:28; then consider g being Real such that A19: g in dom (f | ].p,g.[) and A20: (h + c) . n = (f | ].p,g.[) . g by A5, A16, PARTFUN1:3; take r = g - x0; ::_thesis: S1[n,r] let r1, r2 be real number ; ::_thesis: ( r1 = (h + c) . n & r2 = a . n implies ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | ].p,g.[) ) ) assume that A21: r1 = (h + c) . n and A22: r2 = a . n ; ::_thesis: ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | ].p,g.[) ) A23: a . n = ((f | ].p,g.[) ") . ((f | ].p,g.[) . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; hence r1 = f . (r2 + r) by A19, A20, A21, A22, FUNCT_1:47; ::_thesis: ( r2 + r in dom f & r2 + r in dom (f | ].p,g.[) ) g in (dom f) /\ ].p,g.[ by A19, RELAT_1:61; hence ( r2 + r in dom f & r2 + r in dom (f | ].p,g.[) ) by A19, A23, A22, XBOOLE_0:def_4; ::_thesis: verum end; consider b being Real_Sequence such that A24: for n being Element of NAT holds S1[n,b . n] from FUNCT_2:sch_3(A18); A25: now__::_thesis:_for_n_being_Element_of_NAT_holds_((((f_|_].p,g.[)_")_/*_(h_+_c))_-_a)_._n_=_b_._n let n be Element of NAT ; ::_thesis: ((((f | ].p,g.[) ") /* (h + c)) - a) . n = b . n A26: (h + c) . n = (h + c) . n ; then A27: (a . n) + (b . n) in dom (f | ].p,g.[) by A24; thus ((((f | ].p,g.[) ") /* (h + c)) - a) . n = ((((f | ].p,g.[) ") /* (h + c)) . n) - (a . n) by RFUNCT_2:1 .= (((f | ].p,g.[) ") . ((h + c) . n)) - (a . n) by A16, FUNCT_2:108 .= (((f | ].p,g.[) ") . (f . ((a . n) + (b . n)))) - (a . n) by A24 .= (((f | ].p,g.[) ") . ((f | ].p,g.[) . ((a . n) + (b . n)))) - (a . n) by A24, A26, FUNCT_1:47 .= ((a . n) + (b . n)) - (a . n) by A27, FUNCT_1:34 .= b . n ; ::_thesis: verum end; A28: h + c is convergent by A15, Th4; then A29: ((f | ].p,g.[) ") /* (h + c) is convergent by A16, A17, A14, FCONT_1:def_1; then (((f | ].p,g.[) ") /* (h + c)) - a is convergent by SEQ_2:11; then A30: b is convergent by A25, FUNCT_2:63; A31: lim a = a . 0 by SEQ_4:26 .= ((f | ].p,g.[) ") . y0 by FUNCOP_1:7 ; ((f | ].p,g.[) ") . y0 = lim (((f | ].p,g.[) ") /* (h + c)) by A16, A28, A17, A14, FCONT_1:def_1; then lim ((((f | ].p,g.[) ") /* (h + c)) - a) = (((f | ].p,g.[) ") . y0) - (((f | ].p,g.[) ") . y0) by A29, A31, SEQ_2:12 .= 0 ; then A32: lim b = 0 by A25, FUNCT_2:63; A33: rng (b + a) c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng (b + a) or x in dom f ) assume x in rng (b + a) ; ::_thesis: x in dom f then consider n being Element of NAT such that A34: x = (b + a) . n by FUNCT_2:113; A35: (h + c) . n = (h + c) . n ; x = (a . n) + (b . n) by A34, SEQ_1:7; hence x in dom f by A24, A35; ::_thesis: verum end; ((f | ].p,g.[) ") . y0 in dom (f | ].p,g.[) by A6, A8, FUNCT_1:def_3; then ((f | ].p,g.[) ") . y0 in (dom f) /\ ].p,g.[ by RELAT_1:61; then A36: ((f | ].p,g.[) ") . y0 in ].p,g.[ by XBOOLE_0:def_4; then A37: f is_differentiable_in ((f | ].p,g.[) ") . y0 by A2, FDIFF_1:9; A38: now__::_thesis:_for_n_being_Element_of_NAT_holds_c_._n_=_(f_|_].p,g.[)_._x0 let n be Element of NAT ; ::_thesis: c . n = (f | ].p,g.[) . x0 c . n in rng c by VALUED_0:28; hence c . n = (f | ].p,g.[) . x0 by A10, A15, TARSKI:def_1; ::_thesis: verum end; A39: 0 <> diff (f,(((f | ].p,g.[) ") . y0)) by A3, A36; now__::_thesis:_for_n_being_Element_of_NAT_holds_not_b_._n_=_0 given n being Element of NAT such that A41: b . n = 0 ; ::_thesis: contradiction a . n = ((f | ].p,g.[) ") . ((f | ].p,g.[) . x0) by A10, FUNCOP_1:7 .= x0 by A9, FUNCT_1:34 ; then A42: f . ((a . n) + (b . n)) = (f | ].p,g.[) . x0 by A9, A41, FUNCT_1:47; (h + c) . n = (h . n) + (c . n) by SEQ_1:7 .= (h . n) + ((f | ].p,g.[) . x0) by A38 ; then (h . n) + ((f | ].p,g.[) . x0) = (f | ].p,g.[) . x0 by A24, A42; hence contradiction by SEQ_1:5; ::_thesis: verum end; then b is non-zero by SEQ_1:5; then reconsider b = b as non-zero 0 -convergent Real_Sequence by A30, A32, FDIFF_1:def_1; A44: b " is non-zero by SEQ_1:33; A45: rng a = {(((f | ].p,g.[) ") . y0)} proof thus rng a c= {(((f | ].p,g.[) ") . y0)} :: according to XBOOLE_0:def_10 ::_thesis: {(((f | ].p,g.[) ") . y0)} c= rng a proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in {(((f | ].p,g.[) ") . y0)} ) assume x in rng a ; ::_thesis: x in {(((f | ].p,g.[) ") . y0)} then ex n being Element of NAT st x = a . n by FUNCT_2:113; then x = ((f | ].p,g.[) ") . y0 by FUNCOP_1:7; hence x in {(((f | ].p,g.[) ") . y0)} by TARSKI:def_1; ::_thesis: verum end; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {(((f | ].p,g.[) ") . y0)} or x in rng a ) assume x in {(((f | ].p,g.[) ") . y0)} ; ::_thesis: x in rng a then x = ((f | ].p,g.[) ") . y0 by TARSKI:def_1; then a . 0 = x by FUNCOP_1:7; hence x in rng a by VALUED_0:28; ::_thesis: verum end; A46: rng a c= dom f proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng a or x in dom f ) assume x in rng a ; ::_thesis: x in dom f then x = ((f | ].p,g.[) ") . y0 by A45, TARSKI:def_1; then x = x0 by A9, A10, FUNCT_1:34; then x in (dom f) /\ ].p,g.[ by A9, RELAT_1:61; hence x in dom f by XBOOLE_0:def_4; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_(f_/*_a)_._n_=_c_._n let n be Element of NAT ; ::_thesis: (f /* a) . n = c . n A47: ((f | ].p,g.[) ") . y0 in rng ((f | ].p,g.[) ") by A8, FUNCT_1:def_3; c . n in rng c by VALUED_0:28; then A48: c . n = y0 by A15, TARSKI:def_1; thus (f /* a) . n = f . (a . n) by A46, FUNCT_2:108 .= f . (((f | ].p,g.[) ") . y0) by FUNCOP_1:7 .= (f | ].p,g.[) . (((f | ].p,g.[) ") . y0) by A6, A47, FUNCT_1:47 .= c . n by A5, A8, A48, FUNCT_1:35 ; ::_thesis: verum end; then A49: f /* a = c by FUNCT_2:63; now__::_thesis:_for_n_being_Element_of_NAT_holds_h_._n_=_((f_/*_(b_+_a))_-_(f_/*_a))_._n let n be Element of NAT ; ::_thesis: h . n = ((f /* (b + a)) - (f /* a)) . n (h + c) . n = f . ((a . n) + (b . n)) by A24; then (h . n) + (c . n) = f . ((a . n) + (b . n)) by SEQ_1:7; hence h . n = (f . ((b . n) + (a . n))) - ((f /* a) . n) by A49 .= (f . ((b + a) . n)) - ((f /* a) . n) by SEQ_1:7 .= ((f /* (b + a)) . n) - ((f /* a) . n) by A33, FUNCT_2:108 .= ((f /* (b + a)) - (f /* a)) . n by RFUNCT_2:1 ; ::_thesis: verum end; then A50: h = (f /* (b + a)) - (f /* a) by FUNCT_2:63; then (f /* (b + a)) - (f /* a) is non-zero ; then A51: (b ") (#) ((f /* (b + a)) - (f /* a)) is non-zero by A44, SEQ_1:35; A52: rng c c= dom ((f | ].p,g.[) ") proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng c or x in dom ((f | ].p,g.[) ") ) assume x in rng c ; ::_thesis: x in dom ((f | ].p,g.[) ") hence x in dom ((f | ].p,g.[) ") by A8, A15, TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_for_n_being_Element_of_NAT_holds_((h_")_(#)_((((f_|_].p,g.[)_")_/*_(h_+_c))_-_(((f_|_].p,g.[)_")_/*_c)))_._n_=_(((b_")_(#)_((f_/*_(b_+_a))_-_(f_/*_a)))_")_._n let n be Element of NAT ; ::_thesis: ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) . n = (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n A53: (h + c) . n = (h + c) . n ; then A54: (a . n) + (b . n) in dom (f | ].p,g.[) by A24; c . n in rng c by VALUED_0:28; then A55: c . n = y0 by A15, TARSKI:def_1; thus ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) . n = ((h ") . n) * (((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) . n) by SEQ_1:8 .= ((h ") . n) * (((((f | ].p,g.[) ") /* (h + c)) . n) - ((((f | ].p,g.[) ") /* c) . n)) by RFUNCT_2:1 .= ((h ") . n) * ((((f | ].p,g.[) ") . ((h + c) . n)) - ((((f | ].p,g.[) ") /* c) . n)) by A16, FUNCT_2:108 .= ((h ") . n) * ((((f | ].p,g.[) ") . (f . ((a . n) + (b . n)))) - ((((f | ].p,g.[) ") /* c) . n)) by A24 .= ((h ") . n) * ((((f | ].p,g.[) ") . ((f | ].p,g.[) . ((a . n) + (b . n)))) - ((((f | ].p,g.[) ") /* c) . n)) by A24, A53, FUNCT_1:47 .= ((h ") . n) * (((a . n) + (b . n)) - ((((f | ].p,g.[) ") /* c) . n)) by A54, FUNCT_1:34 .= ((h ") . n) * (((a . n) + (b . n)) - (((f | ].p,g.[) ") . (c . n))) by A52, FUNCT_2:108 .= ((h ") . n) * (((a . n) + (b . n)) - (a . n)) by A55, FUNCOP_1:7 .= ((h ") (#) ((b ") ")) . n by SEQ_1:8 .= (((b ") (#) ((f /* (b + a)) - (f /* a))) ") . n by A50, SEQ_1:36 ; ::_thesis: verum end; then A56: (h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) = ((b ") (#) ((f /* (b + a)) - (f /* a))) " by FUNCT_2:63; diff (f,(((f | ].p,g.[) ") . y0)) = diff (f,(((f | ].p,g.[) ") . y0)) ; then A57: (b ") (#) ((f /* (b + a)) - (f /* a)) is convergent by A45, A33, A37, Th12; A58: lim ((b ") (#) ((f /* (b + a)) - (f /* a))) = diff (f,(((f | ].p,g.[) ") . y0)) by A45, A33, A37, Th12; hence (h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c)) is convergent by A56, A51, A57, A39, SEQ_2:21; ::_thesis: lim ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) thus lim ((h ") (#) ((((f | ].p,g.[) ") /* (h + c)) - (((f | ].p,g.[) ") /* c))) = (diff (f,(((f | ].p,g.[) ") . y0))) " by A56, A51, A57, A58, A39, SEQ_2:22 .= 1 / (diff (f,(((f | ].p,g.[) ") . y0))) by XCMPLX_1:215 ; ::_thesis: verum end; ex N being Neighbourhood of y0 st N c= dom ((f | ].p,g.[) ") by A4, A5, A8, RCOMP_1:18; hence ( (f | ].p,g.[) " is_differentiable_in y0 & diff (((f | ].p,g.[) "),y0) = 1 / (diff (f,(((f | ].p,g.[) ") . y0))) ) by A11, Th12; ::_thesis: verum end; then for y0 being Real st y0 in dom ((f | ].p,g.[) ") holds (f | ].p,g.[) " is_differentiable_in y0 ; hence (f | ].p,g.[) " is_differentiable_on dom ((f | ].p,g.[) ") by A4, A5, FDIFF_1:9; ::_thesis: for x0 being Real st x0 in dom ((f | ].p,g.[) ") holds diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) let x0 be Real; ::_thesis: ( x0 in dom ((f | ].p,g.[) ") implies diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) ) assume x0 in dom ((f | ].p,g.[) ") ; ::_thesis: diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) hence diff (((f | ].p,g.[) "),x0) = 1 / (diff (f,(((f | ].p,g.[) ") . x0))) by A7; ::_thesis: verum end; theorem :: FDIFF_2:49 for x0 being Real for f being PartFunc of REAL,REAL st f is_differentiable_in x0 holds for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f & rng ((- h) + c) c= dom f holds ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) proof let x0 be Real; ::_thesis: for f being PartFunc of REAL,REAL st f is_differentiable_in x0 holds for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f & rng ((- h) + c) c= dom f holds ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) let f be PartFunc of REAL,REAL; ::_thesis: ( f is_differentiable_in x0 implies for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f & rng ((- h) + c) c= dom f holds ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) ) assume A1: f is_differentiable_in x0 ; ::_thesis: for h being non-zero 0 -convergent Real_Sequence for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f & rng ((- h) + c) c= dom f holds ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) let h be non-zero 0 -convergent Real_Sequence; ::_thesis: for c being V8() Real_Sequence st rng c = {x0} & rng (h + c) c= dom f & rng ((- h) + c) c= dom f holds ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) let c be V8() Real_Sequence; ::_thesis: ( rng c = {x0} & rng (h + c) c= dom f & rng ((- h) + c) c= dom f implies ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) ) assume that A2: rng c = {x0} and A3: rng (h + c) c= dom f and A4: rng ((- h) + c) c= dom f ; ::_thesis: ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) set fm = ((- h) ") (#) ((f /* ((- h) + c)) - (f /* c)); lim (- h) = - (lim h) by SEQ_2:10; then A: - h is 0 -convergent by FDIFF_1:def_1; A5: lim (((- h) ") (#) ((f /* ((- h) + c)) - (f /* c))) = diff (f,x0) by A1, A2, A4, Th12, A; set fp = (h ") (#) ((f /* (h + c)) - (f /* c)); A6: diff (f,x0) = diff (f,x0) ; then A7: ((- h) ") (#) ((f /* ((- h) + c)) - (f /* c)) is convergent by A1, A2, A4, Th12, A; A8: (h ") (#) ((f /* (h + c)) - (f /* c)) is convergent by A1, A2, A3, A6, Th12; then A9: ((h ") (#) ((f /* (h + c)) - (f /* c))) + (((- h) ") (#) ((f /* ((- h) + c)) - (f /* c))) is convergent by A7, SEQ_2:5; A10: now__::_thesis:_for_n_being_Element_of_NAT_holds_(((f_/*_(c_+_h))_-_(f_/*_(c_-_h)))_+_((f_/*_c)_-_(f_/*_c)))_._n_=_((f_/*_(c_+_h))_-_(f_/*_(c_-_h)))_._n let n be Element of NAT ; ::_thesis: (((f /* (c + h)) - (f /* (c - h))) + ((f /* c) - (f /* c))) . n = ((f /* (c + h)) - (f /* (c - h))) . n thus (((f /* (c + h)) - (f /* (c - h))) + ((f /* c) - (f /* c))) . n = (((f /* (c + h)) - (f /* (c - h))) . n) + (((f /* c) - (f /* c)) . n) by SEQ_1:7 .= (((f /* (c + h)) - (f /* (c - h))) . n) + (((f /* c) . n) - ((f /* c) . n)) by RFUNCT_2:1 .= ((f /* (c + h)) - (f /* (c - h))) . n ; ::_thesis: verum end; A11: (2 ") (#) (((h ") (#) ((f /* (h + c)) - (f /* c))) + (((- h) ") (#) ((f /* ((- h) + c)) - (f /* c)))) = (2 ") (#) (((h ") (#) ((f /* (c + h)) - (f /* c))) + (((- 1) (#) (h ")) (#) ((f /* (c + (- h))) - (f /* c)))) by SEQ_1:47 .= (2 ") (#) (((h ") (#) ((f /* (c + h)) - (f /* c))) + ((- 1) (#) ((h ") (#) ((f /* (c + (- h))) - (f /* c))))) by SEQ_1:18 .= (2 ") (#) (((h ") (#) ((f /* (c + h)) - (f /* c))) + ((h ") (#) ((- 1) (#) ((f /* (c + (- h))) - (f /* c))))) by SEQ_1:19 .= (2 ") (#) ((h ") (#) (((f /* (c + h)) - (f /* c)) + ((- 1) (#) ((f /* (c + (- h))) - (f /* c))))) by SEQ_1:16 .= ((2 ") (#) (h ")) (#) (((f /* (c + h)) - (f /* c)) + ((- 1) (#) ((f /* (c + (- h))) - (f /* c)))) by SEQ_1:18 .= ((2 (#) h) ") (#) (((f /* (c + h)) - (f /* c)) + ((- 1) (#) ((f /* (c + (- h))) - (f /* c)))) by SEQ_1:46 .= ((2 (#) h) ") (#) ((f /* (c + h)) - ((f /* c) - (- ((f /* (c + (- h))) - (f /* c))))) by SEQ_1:30 .= ((2 (#) h) ") (#) ((f /* (c + h)) - ((f /* (c + (- h))) - ((f /* c) - (f /* c)))) by SEQ_1:30 .= ((2 (#) h) ") (#) (((f /* (c + h)) - (f /* (c - h))) + ((f /* c) - (f /* c))) by SEQ_1:30 ; lim ((h ") (#) ((f /* (h + c)) - (f /* c))) = diff (f,x0) by A1, A2, A3, Th12; then lim (((h ") (#) ((f /* (h + c)) - (f /* c))) + (((- h) ") (#) ((f /* ((- h) + c)) - (f /* c)))) = (1 * (diff (f,x0))) + (diff (f,x0)) by A8, A7, A5, SEQ_2:6 .= 2 * (diff (f,x0)) ; then A12: lim ((2 ") (#) (((h ") (#) ((f /* (h + c)) - (f /* c))) + (((- h) ") (#) ((f /* ((- h) + c)) - (f /* c))))) = (2 ") * (2 * (diff (f,x0))) by A9, SEQ_2:8 .= diff (f,x0) ; (2 ") (#) (((h ") (#) ((f /* (h + c)) - (f /* c))) + (((- h) ") (#) ((f /* ((- h) + c)) - (f /* c)))) is convergent by A9, SEQ_2:7; hence ( ((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h))) is convergent & lim (((2 (#) h) ") (#) ((f /* (c + h)) - (f /* (c - h)))) = diff (f,x0) ) by A12, A11, A10, FUNCT_2:63; ::_thesis: verum end;