0

I am attempting to use the fundamental theorem of calculus to prove the lemma lm1:

lemma lm1:
fixes f :: "real ⇒ real"
assumes "∀x∈{a..b}. (f has_vector_derivative f' x) (at x within {a .. b})"
"∀x∈{a..b}. a ≤ x"
"∀x∈{a..b}. x ≤ b"
shows "∀x∈{a..b}. (f' has_integral (f x - f a)) {a .. x}"

This is just an extension of the following lemma lm2, which proves the integration over the whole set.

lemma lm2:
fixes f :: "real ⇒ real"
assumes "∀x∈{a..b}. (f has_vector_derivative f' x) (at x within {a .. b})"
"a ≤ b"
shows "∀x∈{a..b}. (f' has_integral (f b - f a)) {a .. b}"
using assms
apply(simp add: fundamental_theorem_of_calculus)

Instead, I want to prove that the integration is true for any value in the set, not just the lower and upper bound. How am I able to show this?

A K
  • 65
  • 5

1 Answers1

1

first of all, the second and third assumption in lm1 are trivial:

lemma "∀x∈{a..b}. a ≤ x ⟷ True" by simp
lemma "∀x∈{a..b}. x ≤ b ⟷ True" by simp

Therefore, you better assume "a <= b". To apply the fundamental_theorem_of_calculus "for any value in the set", you also need the derivative for variable bounds,

∀x∈{a..b}. ∀y∈{a..x}. (f has_vector_derivative f' y) (at y within {a..x})

for which you can use has_vector_derivative_within_subset in your proof:

lemma lm1':
fixes f :: "real ⇒ real"
assumes "∀x∈{a..b}. (f has_vector_derivative f' x) (at x within {a .. b})"
assumes "a ≤ b"
shows "∀x∈{a..b}. (f' has_integral (f x - f a)) {a .. x}"
using assms
apply safe
apply (rule fundamental_theorem_of_calculus)
 apply simp
apply safe
apply (rule has_vector_derivative_within_subset[where s="{a .. b}"])
 apply simp
apply simp
done

or more compact:

using assms
by (auto intro!: fundamental_theorem_of_calculus
  intro: has_vector_derivative_within_subset[where s="{a .. b}"])