src/HOL/Library/Product_Vector.thy
changeset 36660 1cc4ab4b7ff7
parent 36332 3ddb2bc07784
child 36661 0a5b7b818d65
equal deleted inserted replaced
36659:f794e92784aa 36660:1cc4ab4b7ff7
   310   show "eventually (\<lambda>x. (f x, g x) \<in> S) net"
   310   show "eventually (\<lambda>x. (f x, g x) \<in> S) net"
   311     by (rule eventually_elim2)
   311     by (rule eventually_elim2)
   312        (simp add: subsetD [OF `A \<times> B \<subseteq> S`])
   312        (simp add: subsetD [OF `A \<times> B \<subseteq> S`])
   313 qed
   313 qed
   314 
   314 
   315 lemma LIMSEQ_fst: "(X ----> a) \<Longrightarrow> (\<lambda>n. fst (X n)) ----> fst a"
       
   316 unfolding LIMSEQ_conv_tendsto by (rule tendsto_fst)
       
   317 
       
   318 lemma LIMSEQ_snd: "(X ----> a) \<Longrightarrow> (\<lambda>n. snd (X n)) ----> snd a"
       
   319 unfolding LIMSEQ_conv_tendsto by (rule tendsto_snd)
       
   320 
       
   321 lemma LIMSEQ_Pair:
       
   322   assumes "X ----> a" and "Y ----> b"
       
   323   shows "(\<lambda>n. (X n, Y n)) ----> (a, b)"
       
   324 using assms unfolding LIMSEQ_conv_tendsto
       
   325 by (rule tendsto_Pair)
       
   326 
       
   327 lemma LIM_fst: "f -- x --> a \<Longrightarrow> (\<lambda>x. fst (f x)) -- x --> fst a"
   315 lemma LIM_fst: "f -- x --> a \<Longrightarrow> (\<lambda>x. fst (f x)) -- x --> fst a"
   328 unfolding LIM_conv_tendsto by (rule tendsto_fst)
   316 unfolding LIM_conv_tendsto by (rule tendsto_fst)
   329 
   317 
   330 lemma LIM_snd: "f -- x --> a \<Longrightarrow> (\<lambda>x. snd (f x)) -- x --> snd a"
   318 lemma LIM_snd: "f -- x --> a \<Longrightarrow> (\<lambda>x. snd (f x)) -- x --> snd a"
   331 unfolding LIM_conv_tendsto by (rule tendsto_snd)
   319 unfolding LIM_conv_tendsto by (rule tendsto_snd)
   372     by (simp add: Cauchy_convergent_iff convergent_LIMSEQ_iff)
   360     by (simp add: Cauchy_convergent_iff convergent_LIMSEQ_iff)
   373   have 2: "(\<lambda>n. snd (X n)) ----> lim (\<lambda>n. snd (X n))"
   361   have 2: "(\<lambda>n. snd (X n)) ----> lim (\<lambda>n. snd (X n))"
   374     using Cauchy_snd [OF `Cauchy X`]
   362     using Cauchy_snd [OF `Cauchy X`]
   375     by (simp add: Cauchy_convergent_iff convergent_LIMSEQ_iff)
   363     by (simp add: Cauchy_convergent_iff convergent_LIMSEQ_iff)
   376   have "X ----> (lim (\<lambda>n. fst (X n)), lim (\<lambda>n. snd (X n)))"
   364   have "X ----> (lim (\<lambda>n. fst (X n)), lim (\<lambda>n. snd (X n)))"
   377     using LIMSEQ_Pair [OF 1 2] by simp
   365     using tendsto_Pair [OF 1 2] by simp
   378   then show "convergent X"
   366   then show "convergent X"
   379     by (rule convergentI)
   367     by (rule convergentI)
   380 qed
   368 qed
   381 
   369 
   382 subsection {* Product is a normed vector space *}
   370 subsection {* Product is a normed vector space *}