src/HOLCF/Cprod.thy
changeset 27310 d0229bc6c461
parent 26962 c8b20f615d6c
child 27413 3154f3765cc7
equal deleted inserted replaced
27309:c74270fd72a8 27310:d0229bc6c461
   349   approx_cprod_def:
   349   approx_cprod_def:
   350     "approx = (\<lambda>n. \<Lambda>\<langle>x, y\<rangle>. \<langle>approx n\<cdot>x, approx n\<cdot>y\<rangle>)"
   350     "approx = (\<lambda>n. \<Lambda>\<langle>x, y\<rangle>. \<langle>approx n\<cdot>x, approx n\<cdot>y\<rangle>)"
   351 
   351 
   352 instance proof
   352 instance proof
   353   fix i :: nat and x :: "'a \<times> 'b"
   353   fix i :: nat and x :: "'a \<times> 'b"
   354   show "chain (\<lambda>i. approx i\<cdot>x)"
   354   show "chain (approx :: nat \<Rightarrow> 'a \<times> 'b \<rightarrow> 'a \<times> 'b)"
   355     unfolding approx_cprod_def by simp
   355     unfolding approx_cprod_def by simp
   356   show "(\<Squnion>i. approx i\<cdot>x) = x"
   356   show "(\<Squnion>i. approx i\<cdot>x) = x"
   357     unfolding approx_cprod_def
   357     unfolding approx_cprod_def
   358     by (simp add: lub_distribs eta_cfun)
   358     by (simp add: lub_distribs eta_cfun)
   359   show "approx i\<cdot>(approx i\<cdot>x) = approx i\<cdot>x"
   359   show "approx i\<cdot>(approx i\<cdot>x) = approx i\<cdot>x"