src/HOL/Topological_Spaces.thy
changeset 62343 24106dc44def
parent 62217 527488dc8b90
child 62367 d2bc8a7e5fec
equal deleted inserted replaced
62342:1cf129590be8 62343:24106dc44def
  1131       by (auto simp: decseq_def)
  1131       by (auto simp: decseq_def)
  1132     show "\<And>n. x \<in> (\<Inter>i\<le>n. A i)" "\<And>n. open (\<Inter>i\<le>n. A i)"
  1132     show "\<And>n. x \<in> (\<Inter>i\<le>n. A i)" "\<And>n. open (\<Inter>i\<le>n. A i)"
  1133       using A by auto
  1133       using A by auto
  1134     show "nhds x = (INF n. principal (\<Inter>i\<le>n. A i))"
  1134     show "nhds x = (INF n. principal (\<Inter>i\<le>n. A i))"
  1135       using A unfolding nhds_def
  1135       using A unfolding nhds_def
  1136       apply (intro INF_eq)
  1136       apply -
       
  1137       apply (rule INF_eq)
  1137       apply simp_all
  1138       apply simp_all
  1138       apply force
  1139       apply fastforce
  1139       apply (intro exI[of _ "\<Inter>i\<le>n. A i" for n] conjI open_INT)
  1140       apply (intro exI [of _ "\<Inter>i\<le>n. A i" for n] conjI open_INT)
  1140       apply auto
  1141       apply auto
  1141       done
  1142       done
  1142   qed
  1143   qed
  1143 qed
  1144 qed
  1144 
  1145 
  1462   "(\<And>s. s \<in> S \<Longrightarrow> open s) \<Longrightarrow> (\<And>s. s \<in> S \<Longrightarrow> continuous_on s f) \<Longrightarrow> continuous_on (\<Union>S) f"
  1463   "(\<And>s. s \<in> S \<Longrightarrow> open s) \<Longrightarrow> (\<And>s. s \<in> S \<Longrightarrow> continuous_on s f) \<Longrightarrow> continuous_on (\<Union>S) f"
  1463   unfolding continuous_on_def by safe (metis open_Union at_within_open UnionI)
  1464   unfolding continuous_on_def by safe (metis open_Union at_within_open UnionI)
  1464 
  1465 
  1465 lemma continuous_on_open_UN:
  1466 lemma continuous_on_open_UN:
  1466   "(\<And>s. s \<in> S \<Longrightarrow> open (A s)) \<Longrightarrow> (\<And>s. s \<in> S \<Longrightarrow> continuous_on (A s) f) \<Longrightarrow> continuous_on (\<Union>s\<in>S. A s) f"
  1467   "(\<And>s. s \<in> S \<Longrightarrow> open (A s)) \<Longrightarrow> (\<And>s. s \<in> S \<Longrightarrow> continuous_on (A s) f) \<Longrightarrow> continuous_on (\<Union>s\<in>S. A s) f"
  1467   unfolding Union_image_eq[symmetric] by (rule continuous_on_open_Union) auto
  1468   by (rule continuous_on_open_Union) auto
  1468 
  1469 
  1469 lemma continuous_on_open_Un:
  1470 lemma continuous_on_open_Un:
  1470   "open s \<Longrightarrow> open t \<Longrightarrow> continuous_on s f \<Longrightarrow> continuous_on t f \<Longrightarrow> continuous_on (s \<union> t) f"
  1471   "open s \<Longrightarrow> open t \<Longrightarrow> continuous_on s f \<Longrightarrow> continuous_on t f \<Longrightarrow> continuous_on (s \<union> t) f"
  1471   using continuous_on_open_Union [of "{s,t}"] by auto
  1472   using continuous_on_open_Union [of "{s,t}"] by auto
  1472 
  1473 
  1687   using assms unfolding compact_eq_heine_borel by metis
  1688   using assms unfolding compact_eq_heine_borel by metis
  1688 
  1689 
  1689 lemma compactE_image:
  1690 lemma compactE_image:
  1690   assumes "compact s" and "\<forall>t\<in>C. open (f t)" and "s \<subseteq> (\<Union>c\<in>C. f c)"
  1691   assumes "compact s" and "\<forall>t\<in>C. open (f t)" and "s \<subseteq> (\<Union>c\<in>C. f c)"
  1691   obtains C' where "C' \<subseteq> C" and "finite C'" and "s \<subseteq> (\<Union>c\<in>C'. f c)"
  1692   obtains C' where "C' \<subseteq> C" and "finite C'" and "s \<subseteq> (\<Union>c\<in>C'. f c)"
  1692   using assms unfolding ball_simps[symmetric] SUP_def
  1693   using assms unfolding ball_simps [symmetric]
  1693   by (metis (lifting) finite_subset_image compact_eq_heine_borel[of s])
  1694   by (metis (lifting) finite_subset_image compact_eq_heine_borel[of s])
  1694 
  1695 
  1695 lemma compact_inter_closed [intro]:
  1696 lemma compact_inter_closed [intro]:
  1696   assumes "compact s" and "closed t"
  1697   assumes "compact s" and "closed t"
  1697   shows "compact (s \<inter> t)"
  1698   shows "compact (s \<inter> t)"