901 qed |
901 qed |
902 hence "d' \<le> y" |
902 hence "d' \<le> y" |
903 unfolding y_def |
903 unfolding y_def |
904 by (rule cSup_upper) simp |
904 by (rule cSup_upper) simp |
905 thus False using \<open>d > 0\<close> \<open>y < b\<close> |
905 thus False using \<open>d > 0\<close> \<open>y < b\<close> |
906 by (simp add: d'_def min_def split: split_if_asm) |
906 by (simp add: d'_def min_def split: if_split_asm) |
907 qed |
907 qed |
908 } moreover { |
908 } moreover { |
909 assume "a = y" |
909 assume "a = y" |
910 with \<open>a < b\<close> have "y < b" by simp |
910 with \<open>a < b\<close> have "y < b" by simp |
911 with \<open>a = y\<close> f_cont phi_cont \<open>e2 > 0\<close> |
911 with \<open>a = y\<close> f_cont phi_cont \<open>e2 > 0\<close> |
2689 moreover |
2689 moreover |
2690 let ?le = "\<lambda>x'. norm (f x' y - f x y - (fx x y) (x' - x)) \<le> norm (x' - x) * e" |
2690 let ?le = "\<lambda>x'. norm (f x' y - f x y - (fx x y) (x' - x)) \<le> norm (x' - x) * e" |
2691 from fx[OF \<open>x \<in> X\<close> \<open>y \<in> Y\<close>, unfolded has_derivative_within, THEN conjunct2, THEN tendstoD, OF \<open>0 < e\<close>] |
2691 from fx[OF \<open>x \<in> X\<close> \<open>y \<in> Y\<close>, unfolded has_derivative_within, THEN conjunct2, THEN tendstoD, OF \<open>0 < e\<close>] |
2692 have "\<forall>\<^sub>F x' in at x within X. ?le x'" |
2692 have "\<forall>\<^sub>F x' in at x within X. ?le x'" |
2693 by eventually_elim |
2693 by eventually_elim |
2694 (auto simp: dist_norm divide_simps blinfun.bilinear_simps field_simps split: split_if_asm) |
2694 (auto simp: dist_norm divide_simps blinfun.bilinear_simps field_simps split: if_split_asm) |
2695 then have "\<forall>\<^sub>F (x', y') in at (x, y) within X \<times> Y. ?le x'" |
2695 then have "\<forall>\<^sub>F (x', y') in at (x, y) within X \<times> Y. ?le x'" |
2696 by (rule eventually_at_Pair_within_TimesI1) |
2696 by (rule eventually_at_Pair_within_TimesI1) |
2697 (simp add: blinfun.bilinear_simps) |
2697 (simp add: blinfun.bilinear_simps) |
2698 moreover have "\<forall>\<^sub>F (x', y') in at (x, y) within X \<times> Y. norm ((x', y') - (x, y)) \<noteq> 0" |
2698 moreover have "\<forall>\<^sub>F (x', y') in at (x, y) within X \<times> Y. norm ((x', y') - (x, y)) \<noteq> 0" |
2699 unfolding norm_eq_zero right_minus_eq |
2699 unfolding norm_eq_zero right_minus_eq |