rename function 'strict' to 'seq', which is its name in Haskell
authorhuffman
Sat, 27 Nov 2010 12:26:18 -0800
changeset 41015a3e505b236e7
parent 40993 d73659e8ccdd
child 41016 50a80cf4b7ef
rename function 'strict' to 'seq', which is its name in Haskell
src/HOLCF/Cfun.thy
src/HOLCF/Fixrec.thy
src/HOLCF/One.thy
src/HOLCF/Sprod.thy
src/HOLCF/Ssum.thy
     1.1 --- a/src/HOLCF/Cfun.thy	Sat Nov 27 18:51:15 2010 +0100
     1.2 +++ b/src/HOLCF/Cfun.thy	Sat Nov 27 12:26:18 2010 -0800
     1.3 @@ -484,28 +484,28 @@
     1.4  default_sort pcpo
     1.5  
     1.6  definition
     1.7 -  strict :: "'a \<rightarrow> 'b \<rightarrow> 'b" where
     1.8 -  "strict = (\<Lambda> x. if x = \<bottom> then \<bottom> else ID)"
     1.9 +  seq :: "'a \<rightarrow> 'b \<rightarrow> 'b" where
    1.10 +  "seq = (\<Lambda> x. if x = \<bottom> then \<bottom> else ID)"
    1.11  
    1.12 -lemma cont_strict: "cont (\<lambda>x. if x = \<bottom> then \<bottom> else y)"
    1.13 +lemma cont_seq: "cont (\<lambda>x. if x = \<bottom> then \<bottom> else y)"
    1.14  unfolding cont_def is_lub_def is_ub_def ball_simps
    1.15  by (simp add: lub_eq_bottom_iff)
    1.16  
    1.17 -lemma strict_conv_if: "strict\<cdot>x = (if x = \<bottom> then \<bottom> else ID)"
    1.18 -unfolding strict_def by (simp add: cont_strict)
    1.19 +lemma seq_conv_if: "seq\<cdot>x = (if x = \<bottom> then \<bottom> else ID)"
    1.20 +unfolding seq_def by (simp add: cont_seq)
    1.21  
    1.22 -lemma strict1 [simp]: "strict\<cdot>\<bottom> = \<bottom>"
    1.23 -by (simp add: strict_conv_if)
    1.24 +lemma seq1 [simp]: "seq\<cdot>\<bottom> = \<bottom>"
    1.25 +by (simp add: seq_conv_if)
    1.26  
    1.27 -lemma strict2 [simp]: "x \<noteq> \<bottom> \<Longrightarrow> strict\<cdot>x = ID"
    1.28 -by (simp add: strict_conv_if)
    1.29 +lemma seq2 [simp]: "x \<noteq> \<bottom> \<Longrightarrow> seq\<cdot>x = ID"
    1.30 +by (simp add: seq_conv_if)
    1.31  
    1.32 -lemma strict3 [simp]: "strict\<cdot>x\<cdot>\<bottom> = \<bottom>"
    1.33 -by (simp add: strict_conv_if)
    1.34 +lemma seq3 [simp]: "seq\<cdot>x\<cdot>\<bottom> = \<bottom>"
    1.35 +by (simp add: seq_conv_if)
    1.36  
    1.37  definition
    1.38    strictify  :: "('a \<rightarrow> 'b) \<rightarrow> 'a \<rightarrow> 'b" where
    1.39 -  "strictify = (\<Lambda> f x. strict\<cdot>x\<cdot>(f\<cdot>x))"
    1.40 +  "strictify = (\<Lambda> f x. seq\<cdot>x\<cdot>(f\<cdot>x))"
    1.41  
    1.42  lemma strictify_conv_if: "strictify\<cdot>f\<cdot>x = (if x = \<bottom> then \<bottom> else f\<cdot>x)"
    1.43  unfolding strictify_def by simp
     2.1 --- a/src/HOLCF/Fixrec.thy	Sat Nov 27 18:51:15 2010 +0100
     2.2 +++ b/src/HOLCF/Fixrec.thy	Sat Nov 27 12:26:18 2010 -0800
     2.3 @@ -107,7 +107,7 @@
     2.4  definition
     2.5    match_UU :: "'a \<rightarrow> 'c match \<rightarrow> 'c match"
     2.6  where
     2.7 -  "match_UU = (\<Lambda> x k. strict\<cdot>x\<cdot>fail)"
     2.8 +  "match_UU = (\<Lambda> x k. seq\<cdot>x\<cdot>fail)"
     2.9  
    2.10  definition
    2.11    match_Pair :: "'a::cpo \<times> 'b::cpo \<rightarrow> ('a \<rightarrow> 'b \<rightarrow> 'c match) \<rightarrow> 'c match"
     3.1 --- a/src/HOLCF/One.thy	Sat Nov 27 18:51:15 2010 +0100
     3.2 +++ b/src/HOLCF/One.thy	Sat Nov 27 12:26:18 2010 -0800
     3.3 @@ -54,7 +54,7 @@
     3.4  
     3.5  definition
     3.6    one_case :: "'a::pcpo \<rightarrow> one \<rightarrow> 'a" where
     3.7 -  "one_case = (\<Lambda> a x. strict\<cdot>x\<cdot>a)"
     3.8 +  "one_case = (\<Lambda> a x. seq\<cdot>x\<cdot>a)"
     3.9  
    3.10  translations
    3.11    "case x of XCONST ONE \<Rightarrow> t" == "CONST one_case\<cdot>t\<cdot>x"
     4.1 --- a/src/HOLCF/Sprod.thy	Sat Nov 27 18:51:15 2010 +0100
     4.2 +++ b/src/HOLCF/Sprod.thy	Sat Nov 27 12:26:18 2010 -0800
     4.3 @@ -37,11 +37,11 @@
     4.4  
     4.5  definition
     4.6    spair :: "'a \<rightarrow> 'b \<rightarrow> ('a ** 'b)" where
     4.7 -  "spair = (\<Lambda> a b. Abs_sprod (strict\<cdot>b\<cdot>a, strict\<cdot>a\<cdot>b))"
     4.8 +  "spair = (\<Lambda> a b. Abs_sprod (seq\<cdot>b\<cdot>a, seq\<cdot>a\<cdot>b))"
     4.9  
    4.10  definition
    4.11    ssplit :: "('a \<rightarrow> 'b \<rightarrow> 'c) \<rightarrow> ('a ** 'b) \<rightarrow> 'c" where
    4.12 -  "ssplit = (\<Lambda> f p. strict\<cdot>p\<cdot>(f\<cdot>(sfst\<cdot>p)\<cdot>(ssnd\<cdot>p)))"
    4.13 +  "ssplit = (\<Lambda> f p. seq\<cdot>p\<cdot>(f\<cdot>(sfst\<cdot>p)\<cdot>(ssnd\<cdot>p)))"
    4.14  
    4.15  syntax
    4.16    "_stuple" :: "['a, args] => 'a ** 'b"  ("(1'(:_,/ _:'))")
    4.17 @@ -54,10 +54,10 @@
    4.18  
    4.19  subsection {* Case analysis *}
    4.20  
    4.21 -lemma spair_sprod: "(strict\<cdot>b\<cdot>a, strict\<cdot>a\<cdot>b) \<in> sprod"
    4.22 -by (simp add: sprod_def strict_conv_if)
    4.23 +lemma spair_sprod: "(seq\<cdot>b\<cdot>a, seq\<cdot>a\<cdot>b) \<in> sprod"
    4.24 +by (simp add: sprod_def seq_conv_if)
    4.25  
    4.26 -lemma Rep_sprod_spair: "Rep_sprod (:a, b:) = (strict\<cdot>b\<cdot>a, strict\<cdot>a\<cdot>b)"
    4.27 +lemma Rep_sprod_spair: "Rep_sprod (:a, b:) = (seq\<cdot>b\<cdot>a, seq\<cdot>a\<cdot>b)"
    4.28  by (simp add: spair_def cont_Abs_sprod Abs_sprod_inverse spair_sprod)
    4.29  
    4.30  lemmas Rep_sprod_simps =
    4.31 @@ -82,16 +82,16 @@
    4.32  by (simp add: Rep_sprod_simps)
    4.33  
    4.34  lemma spair_bottom_iff [simp]: "((:x, y:) = \<bottom>) = (x = \<bottom> \<or> y = \<bottom>)"
    4.35 -by (simp add: Rep_sprod_simps strict_conv_if)
    4.36 +by (simp add: Rep_sprod_simps seq_conv_if)
    4.37  
    4.38  lemma spair_below_iff:
    4.39    "((:a, b:) \<sqsubseteq> (:c, d:)) = (a = \<bottom> \<or> b = \<bottom> \<or> (a \<sqsubseteq> c \<and> b \<sqsubseteq> d))"
    4.40 -by (simp add: Rep_sprod_simps strict_conv_if)
    4.41 +by (simp add: Rep_sprod_simps seq_conv_if)
    4.42  
    4.43  lemma spair_eq_iff:
    4.44    "((:a, b:) = (:c, d:)) =
    4.45      (a = c \<and> b = d \<or> (a = \<bottom> \<or> b = \<bottom>) \<and> (c = \<bottom> \<or> d = \<bottom>))"
    4.46 -by (simp add: Rep_sprod_simps strict_conv_if)
    4.47 +by (simp add: Rep_sprod_simps seq_conv_if)
    4.48  
    4.49  lemma spair_strict: "x = \<bottom> \<or> y = \<bottom> \<Longrightarrow> (:x, y:) = \<bottom>"
    4.50  by simp
    4.51 @@ -177,7 +177,7 @@
    4.52  by (rule compactI, simp add: ssnd_below_iff)
    4.53  
    4.54  lemma compact_spair: "\<lbrakk>compact x; compact y\<rbrakk> \<Longrightarrow> compact (:x, y:)"
    4.55 -by (rule compact_sprod, simp add: Rep_sprod_spair strict_conv_if)
    4.56 +by (rule compact_sprod, simp add: Rep_sprod_spair seq_conv_if)
    4.57  
    4.58  lemma compact_spair_iff:
    4.59    "compact (:x, y:) = (x = \<bottom> \<or> y = \<bottom> \<or> (compact x \<and> compact y))"
     5.1 --- a/src/HOLCF/Ssum.thy	Sat Nov 27 18:51:15 2010 +0100
     5.2 +++ b/src/HOLCF/Ssum.thy	Sat Nov 27 12:26:18 2010 -0800
     5.3 @@ -32,22 +32,22 @@
     5.4  
     5.5  definition
     5.6    sinl :: "'a \<rightarrow> ('a ++ 'b)" where
     5.7 -  "sinl = (\<Lambda> a. Abs_ssum (strict\<cdot>a\<cdot>TT, a, \<bottom>))"
     5.8 +  "sinl = (\<Lambda> a. Abs_ssum (seq\<cdot>a\<cdot>TT, a, \<bottom>))"
     5.9  
    5.10  definition
    5.11    sinr :: "'b \<rightarrow> ('a ++ 'b)" where
    5.12 -  "sinr = (\<Lambda> b. Abs_ssum (strict\<cdot>b\<cdot>FF, \<bottom>, b))"
    5.13 +  "sinr = (\<Lambda> b. Abs_ssum (seq\<cdot>b\<cdot>FF, \<bottom>, b))"
    5.14  
    5.15 -lemma sinl_ssum: "(strict\<cdot>a\<cdot>TT, a, \<bottom>) \<in> ssum"
    5.16 -by (simp add: ssum_def strict_conv_if)
    5.17 +lemma sinl_ssum: "(seq\<cdot>a\<cdot>TT, a, \<bottom>) \<in> ssum"
    5.18 +by (simp add: ssum_def seq_conv_if)
    5.19  
    5.20 -lemma sinr_ssum: "(strict\<cdot>b\<cdot>FF, \<bottom>, b) \<in> ssum"
    5.21 -by (simp add: ssum_def strict_conv_if)
    5.22 +lemma sinr_ssum: "(seq\<cdot>b\<cdot>FF, \<bottom>, b) \<in> ssum"
    5.23 +by (simp add: ssum_def seq_conv_if)
    5.24  
    5.25 -lemma Rep_ssum_sinl: "Rep_ssum (sinl\<cdot>a) = (strict\<cdot>a\<cdot>TT, a, \<bottom>)"
    5.26 +lemma Rep_ssum_sinl: "Rep_ssum (sinl\<cdot>a) = (seq\<cdot>a\<cdot>TT, a, \<bottom>)"
    5.27  by (simp add: sinl_def cont_Abs_ssum Abs_ssum_inverse sinl_ssum)
    5.28  
    5.29 -lemma Rep_ssum_sinr: "Rep_ssum (sinr\<cdot>b) = (strict\<cdot>b\<cdot>FF, \<bottom>, b)"
    5.30 +lemma Rep_ssum_sinr: "Rep_ssum (sinr\<cdot>b) = (seq\<cdot>b\<cdot>FF, \<bottom>, b)"
    5.31  by (simp add: sinr_def cont_Abs_ssum Abs_ssum_inverse sinr_ssum)
    5.32  
    5.33  lemmas Rep_ssum_simps =
    5.34 @@ -60,16 +60,16 @@
    5.35  text {* Ordering *}
    5.36  
    5.37  lemma sinl_below [simp]: "(sinl\<cdot>x \<sqsubseteq> sinl\<cdot>y) = (x \<sqsubseteq> y)"
    5.38 -by (simp add: Rep_ssum_simps strict_conv_if)
    5.39 +by (simp add: Rep_ssum_simps seq_conv_if)
    5.40  
    5.41  lemma sinr_below [simp]: "(sinr\<cdot>x \<sqsubseteq> sinr\<cdot>y) = (x \<sqsubseteq> y)"
    5.42 -by (simp add: Rep_ssum_simps strict_conv_if)
    5.43 +by (simp add: Rep_ssum_simps seq_conv_if)
    5.44  
    5.45  lemma sinl_below_sinr [simp]: "(sinl\<cdot>x \<sqsubseteq> sinr\<cdot>y) = (x = \<bottom>)"
    5.46 -by (simp add: Rep_ssum_simps strict_conv_if)
    5.47 +by (simp add: Rep_ssum_simps seq_conv_if)
    5.48  
    5.49  lemma sinr_below_sinl [simp]: "(sinr\<cdot>x \<sqsubseteq> sinl\<cdot>y) = (x = \<bottom>)"
    5.50 -by (simp add: Rep_ssum_simps strict_conv_if)
    5.51 +by (simp add: Rep_ssum_simps seq_conv_if)
    5.52  
    5.53  text {* Equality *}
    5.54