# HG changeset patch # User paulson # Date 1538559720 -3600 # Node ID a3efc22181a882f9821d2d0f17ad4b083444365d # Parent e2780bb2639537beb940bb0878d364670357ac89# Parent 697789794af15e1ecafa77e214b996e0a5455ea4 merged diff -r e2780bb26395 -r a3efc22181a8 src/HOL/Deriv.thy --- a/src/HOL/Deriv.thy Wed Oct 03 11:09:08 2018 +0200 +++ b/src/HOL/Deriv.thy Wed Oct 03 10:42:00 2018 +0100 @@ -1384,19 +1384,19 @@ assumes "a < b" and contf: "continuous_on {a..b} f" and derf: "\x. \a < x; x < b\ \ (f has_derivative f' x) (at x)" - obtains z where "a < z" "z < b" "f b - f a = (f' z) (b - a)" + obtains \ where "a < \" "\ < b" "f b - f a = (f' \) (b - a)" proof - have "\x. a < x \ x < b \ (\y. f' x y - (f b - f a) / (b - a) * y) = (\v. 0)" proof (intro Rolle_deriv[OF \a < b\]) fix x assume x: "a < x" "x < b" - show "((\x. f x - (f b - f a) / (b - a) * x) has_derivative - (\xa. f' x xa - (f b - f a) / (b - a) * xa)) (at x)" + show "((\x. f x - (f b - f a) / (b - a) * x) + has_derivative (\y. f' x y - (f b - f a) / (b - a) * y)) (at x)" by (intro derivative_intros derf[OF x]) qed (use assms in \auto intro!: continuous_intros simp: field_simps\) - then obtain x where - "a < x" "x < b" - "(\y. f' x y - (f b - f a) / (b - a) * y) = (\v. 0)" by metis + then obtain \ where + "a < \" "\ < b" "(\y. f' \ y - (f b - f a) / (b - a) * y) = (\v. 0)" + by metis then show ?thesis by (metis (no_types, hide_lams) that add.right_neutral add_diff_cancel_left' add_diff_eq \a < b\ less_irrefl nonzero_eq_divide_eq)