equal
deleted
inserted
replaced
2620 by (metis less_not_sym mult_less_0_iff poly_IVT_neg poly_IVT_pos) |
2620 by (metis less_not_sym mult_less_0_iff poly_IVT_neg poly_IVT_pos) |
2621 |
2621 |
2622 lemma poly_MVT: "a < b \<Longrightarrow> \<exists>x. a < x \<and> x < b \<and> poly p b - poly p a = (b - a) * poly (pderiv p) x" |
2622 lemma poly_MVT: "a < b \<Longrightarrow> \<exists>x. a < x \<and> x < b \<and> poly p b - poly p a = (b - a) * poly (pderiv p) x" |
2623 for a b :: real |
2623 for a b :: real |
2624 using MVT [of a b "poly p"] |
2624 using MVT [of a b "poly p"] |
2625 apply auto |
2625 apply simp |
2626 apply (rule_tac x = z in exI) |
2626 by (metis (full_types) DERIV_continuous_on DERIV_unique has_field_derivative_at_within poly_DERIV) |
2627 apply (auto simp add: mult_left_cancel poly_DERIV [THEN DERIV_unique]) |
|
2628 done |
|
2629 |
2627 |
2630 lemma poly_MVT': |
2628 lemma poly_MVT': |
2631 fixes a b :: real |
2629 fixes a b :: real |
2632 assumes "{min a b..max a b} \<subseteq> A" |
2630 assumes "{min a b..max a b} \<subseteq> A" |
2633 shows "\<exists>x\<in>A. poly p b - poly p a = (b - a) * poly (pderiv p) x" |
2631 shows "\<exists>x\<in>A. poly p b - poly p a = (b - a) * poly (pderiv p) x" |