src/HOL/Multivariate_Analysis/Derivative.thy
changeset 63079 e9ad90ce926c
parent 63040 eb4ddd18d635
child 63128 24708cf4ba61
equal deleted inserted replaced
63078:e49dc94eb624 63079:e9ad90ce926c
   124     by (simp add: bounded_linear_mult_right has_derivative_within)
   124     by (simp add: bounded_linear_mult_right has_derivative_within)
   125 qed
   125 qed
   126 
   126 
   127 subsubsection \<open>Caratheodory characterization\<close>
   127 subsubsection \<open>Caratheodory characterization\<close>
   128 
   128 
   129 lemma DERIV_within_iff:
   129 lemmas DERIV_within_iff = has_field_derivative_iff
   130   "(f has_field_derivative D) (at a within s) \<longleftrightarrow> ((\<lambda>z. (f z - f a) / (z - a)) \<longlongrightarrow> D) (at a within s)"
       
   131 proof -
       
   132   have 1: "\<And>w y. ~(w = a) ==> y / (w - a) - D = (y - (w - a)*D)/(w - a)"
       
   133     by (metis divide_diff_eq_iff eq_iff_diff_eq_0 mult.commute)
       
   134   show ?thesis
       
   135     apply (simp add: has_field_derivative_def has_derivative_within bounded_linear_mult_right)
       
   136     apply (simp add: LIM_zero_iff [where l = D, symmetric])
       
   137     apply (simp add: Lim_within dist_norm)
       
   138     apply (simp add: nonzero_norm_divide [symmetric])
       
   139     apply (simp add: 1 diff_diff_eq ac_simps)
       
   140     done
       
   141 qed
       
   142 
   130 
   143 lemma DERIV_caratheodory_within:
   131 lemma DERIV_caratheodory_within:
   144   "(f has_field_derivative l) (at x within s) \<longleftrightarrow>
   132   "(f has_field_derivative l) (at x within s) \<longleftrightarrow>
   145    (\<exists>g. (\<forall>z. f z - f x = g z * (z - x)) \<and> continuous (at x within s) g \<and> g x = l)"
   133    (\<exists>g. (\<forall>z. f z - f x = g z * (z - x)) \<and> continuous (at x within s) g \<and> g x = l)"
   146       (is "?lhs = ?rhs")
   134       (is "?lhs = ?rhs")