src/HOL/Analysis/Elementary_Metric_Spaces.thy
changeset 77490 2c86ea8961b5
parent 77273 f82317de6f28
child 78037 37894dff0111
equal deleted inserted replaced
77435:df1150ec6cd7 77490:2c86ea8961b5
   891     by (metis compactE_image)
   891     by (metis compactE_image)
   892   from \<open>finite D\<close> have "bounded (\<Union>x\<in>D. ball x 1)"
   892   from \<open>finite D\<close> have "bounded (\<Union>x\<in>D. ball x 1)"
   893     by (simp add: bounded_UN)
   893     by (simp add: bounded_UN)
   894   then show "bounded U" using \<open>U \<subseteq> (\<Union>x\<in>D. ball x 1)\<close>
   894   then show "bounded U" using \<open>U \<subseteq> (\<Union>x\<in>D. ball x 1)\<close>
   895     by (rule bounded_subset)
   895     by (rule bounded_subset)
       
   896 qed
       
   897 
       
   898 lemma continuous_on_compact_bound:
       
   899   assumes "compact A" "continuous_on A f"
       
   900   obtains B where "B \<ge> 0" "\<And>x. x \<in> A \<Longrightarrow> norm (f x) \<le> B"
       
   901 proof -
       
   902   have "compact (f ` A)" by (metis assms compact_continuous_image)
       
   903   then obtain B where "\<forall>x\<in>A. norm (f x) \<le> B"
       
   904     by (auto dest!: compact_imp_bounded simp: bounded_iff)
       
   905   hence "max B 0 \<ge> 0" and "\<forall>x\<in>A. norm (f x) \<le> max B 0" by auto
       
   906   thus ?thesis using that by blast
   896 qed
   907 qed
   897 
   908 
   898 lemma closure_Int_ball_not_empty:
   909 lemma closure_Int_ball_not_empty:
   899   assumes "S \<subseteq> closure T" "x \<in> S" "r > 0"
   910   assumes "S \<subseteq> closure T" "x \<in> S" "r > 0"
   900   shows "T \<inter> ball x r \<noteq> {}"
   911   shows "T \<inter> ball x r \<noteq> {}"