src/HOL/Decision_Procs/Approximation.thy
changeset 80034 95b4fb2b5359
parent 74397 e80c4cde6064
--- a/src/HOL/Decision_Procs/Approximation.thy	Wed Mar 27 10:54:47 2024 +0100
+++ b/src/HOL/Decision_Procs/Approximation.thy	Wed Mar 27 15:16:09 2024 +0000
@@ -390,26 +390,6 @@
 "DERIV_floatarith x (Num f)           = Num 0" |
 "DERIV_floatarith x (Var n)          = (if x = n then Num 1 else Num 0)"
 
-lemma has_real_derivative_powr':
-  fixes f g :: "real \<Rightarrow> real"
-  assumes "(f has_real_derivative f') (at x)"
-  assumes "(g has_real_derivative g') (at x)"
-  assumes "f x > 0"
-  defines "h \<equiv> \<lambda>x. f x powr g x * (g' * ln (f x) + f' * g x / f x)"
-  shows   "((\<lambda>x. f x powr g x) has_real_derivative h x) (at x)"
-proof (subst DERIV_cong_ev[OF refl _ refl])
-  from assms have "isCont f x"
-    by (simp add: DERIV_continuous)
-  hence "f \<midarrow>x\<rightarrow> f x" by (simp add: continuous_at)
-  with \<open>f x > 0\<close> have "eventually (\<lambda>x. f x > 0) (nhds x)"
-    by (auto simp: tendsto_at_iff_tendsto_nhds dest: order_tendstoD)
-  thus "eventually (\<lambda>x. f x powr g x = exp (g x * ln (f x))) (nhds x)"
-    by eventually_elim (simp add: powr_def)
-next
-  from assms show "((\<lambda>x. exp (g x * ln (f x))) has_real_derivative h x) (at x)"
-    by (auto intro!: derivative_eq_intros simp: h_def powr_def)
-qed
-
 lemma DERIV_floatarith:
   assumes "n < length vs"
   assumes isDERIV: "isDERIV n f (vs[n := x])"