src/HOL/Multivariate_Analysis/Finite_Cartesian_Product.thy
changeset 61973 0c7e865fa7cb
parent 61969 e01015e49041
child 62101 26c0a70f78a3
equal deleted inserted replaced
61972:a70b89a3e02e 61973:0c7e865fa7cb
   194   thus "\<forall>i. closed (S i) \<Longrightarrow> closed {x. \<forall>i. x $ i \<in> S i}"
   194   thus "\<forall>i. closed (S i) \<Longrightarrow> closed {x. \<forall>i. x $ i \<in> S i}"
   195     by (simp add: closed_INT closed_vimage_vec_nth)
   195     by (simp add: closed_INT closed_vimage_vec_nth)
   196 qed
   196 qed
   197 
   197 
   198 lemma tendsto_vec_nth [tendsto_intros]:
   198 lemma tendsto_vec_nth [tendsto_intros]:
   199   assumes "((\<lambda>x. f x) ---> a) net"
   199   assumes "((\<lambda>x. f x) \<longlongrightarrow> a) net"
   200   shows "((\<lambda>x. f x $ i) ---> a $ i) net"
   200   shows "((\<lambda>x. f x $ i) \<longlongrightarrow> a $ i) net"
   201 proof (rule topological_tendstoI)
   201 proof (rule topological_tendstoI)
   202   fix S assume "open S" "a $ i \<in> S"
   202   fix S assume "open S" "a $ i \<in> S"
   203   then have "open ((\<lambda>y. y $ i) -` S)" "a \<in> ((\<lambda>y. y $ i) -` S)"
   203   then have "open ((\<lambda>y. y $ i) -` S)" "a \<in> ((\<lambda>y. y $ i) -` S)"
   204     by (simp_all add: open_vimage_vec_nth)
   204     by (simp_all add: open_vimage_vec_nth)
   205   with assms have "eventually (\<lambda>x. f x \<in> (\<lambda>y. y $ i) -` S) net"
   205   with assms have "eventually (\<lambda>x. f x \<in> (\<lambda>y. y $ i) -` S) net"
   210 
   210 
   211 lemma isCont_vec_nth [simp]: "isCont f a \<Longrightarrow> isCont (\<lambda>x. f x $ i) a"
   211 lemma isCont_vec_nth [simp]: "isCont f a \<Longrightarrow> isCont (\<lambda>x. f x $ i) a"
   212   unfolding isCont_def by (rule tendsto_vec_nth)
   212   unfolding isCont_def by (rule tendsto_vec_nth)
   213 
   213 
   214 lemma vec_tendstoI:
   214 lemma vec_tendstoI:
   215   assumes "\<And>i. ((\<lambda>x. f x $ i) ---> a $ i) net"
   215   assumes "\<And>i. ((\<lambda>x. f x $ i) \<longlongrightarrow> a $ i) net"
   216   shows "((\<lambda>x. f x) ---> a) net"
   216   shows "((\<lambda>x. f x) \<longlongrightarrow> a) net"
   217 proof (rule topological_tendstoI)
   217 proof (rule topological_tendstoI)
   218   fix S assume "open S" and "a \<in> S"
   218   fix S assume "open S" and "a \<in> S"
   219   then obtain A where A: "\<And>i. open (A i)" "\<And>i. a $ i \<in> A i"
   219   then obtain A where A: "\<And>i. open (A i)" "\<And>i. a $ i \<in> A i"
   220     and S: "\<And>y. \<forall>i. y $ i \<in> A i \<Longrightarrow> y \<in> S"
   220     and S: "\<And>y. \<forall>i. y $ i \<in> A i \<Longrightarrow> y \<in> S"
   221     unfolding open_vec_def by metis
   221     unfolding open_vec_def by metis
   226   thus "eventually (\<lambda>x. f x \<in> S) net"
   226   thus "eventually (\<lambda>x. f x \<in> S) net"
   227     by (rule eventually_mono, simp add: S)
   227     by (rule eventually_mono, simp add: S)
   228 qed
   228 qed
   229 
   229 
   230 lemma tendsto_vec_lambda [tendsto_intros]:
   230 lemma tendsto_vec_lambda [tendsto_intros]:
   231   assumes "\<And>i. ((\<lambda>x. f x i) ---> a i) net"
   231   assumes "\<And>i. ((\<lambda>x. f x i) \<longlongrightarrow> a i) net"
   232   shows "((\<lambda>x. \<chi> i. f x i) ---> (\<chi> i. a i)) net"
   232   shows "((\<lambda>x. \<chi> i. f x i) \<longlongrightarrow> (\<chi> i. a i)) net"
   233   using assms by (simp add: vec_tendstoI)
   233   using assms by (simp add: vec_tendstoI)
   234 
   234 
   235 lemma open_image_vec_nth: assumes "open S" shows "open ((\<lambda>x. x $ i) ` S)"
   235 lemma open_image_vec_nth: assumes "open S" shows "open ((\<lambda>x. x $ i) ` S)"
   236 proof (rule openI)
   236 proof (rule openI)
   237   fix a assume "a \<in> (\<lambda>x. x $ i) ` S"
   237   fix a assume "a \<in> (\<lambda>x. x $ i) ` S"