removed dead internal constants/theorems
authortraytel
Tue May 07 18:40:23 2013 +0200 (2013-05-07)
changeset 51909eb3169abcbd5
parent 51908 5aaa9e2f7dd1
child 51910 31bb70ddee7e
removed dead internal constants/theorems
src/HOL/BNF/BNF.thy
src/HOL/BNF/BNF_Def.thy
src/HOL/BNF/BNF_GFP.thy
     1.1 --- a/src/HOL/BNF/BNF.thy	Tue May 07 17:35:29 2013 +0200
     1.2 +++ b/src/HOL/BNF/BNF.thy	Tue May 07 18:40:23 2013 +0200
     1.3 @@ -14,7 +14,7 @@
     1.4  begin
     1.5  
     1.6  hide_const (open) Gr Grp collect fsts snds setl setr 
     1.7 -  convol thePull pick_middle pick_middlep fstO sndO fstOp sndOp csquare inver
     1.8 +  convol thePull pick_middlep fstOp sndOp csquare inver
     1.9    image2 relImage relInvImage prefCl PrefCl Succ Shift shift
    1.10  
    1.11  end
     2.1 --- a/src/HOL/BNF/BNF_Def.thy	Tue May 07 17:35:29 2013 +0200
     2.2 +++ b/src/HOL/BNF/BNF_Def.thy	Tue May 07 18:40:23 2013 +0200
     2.3 @@ -46,10 +46,6 @@
     2.4  apply(rule ext)
     2.5  unfolding convol_def by simp
     2.6  
     2.7 -lemma convol_memI:
     2.8 -"\<lbrakk>f x = f' x; g x = g' x; P x\<rbrakk> \<Longrightarrow> <f , g> x \<in> {(f' a, g' a) |a. P a}"
     2.9 -unfolding convol_def by auto
    2.10 -
    2.11  lemma convol_mem_GrpI:
    2.12  "\<lbrakk>g x = g' x; x \<in> A\<rbrakk> \<Longrightarrow> <id , g> x \<in> (Collect (split (Grp A g)))"
    2.13  unfolding convol_def Grp_def by auto
    2.14 @@ -100,9 +96,6 @@
    2.15     wppull UNIV UNIV UNIV f1 f2 e1 e2 p1 p2"
    2.16  by (erule wpull_wppull) auto
    2.17  
    2.18 -lemma Id_alt: "Id = Gr UNIV id"
    2.19 -unfolding Gr_def by auto
    2.20 -
    2.21  lemma eq_alt: "op = = Grp UNIV id"
    2.22  unfolding Grp_def by auto
    2.23  
    2.24 @@ -112,18 +105,12 @@
    2.25  lemma eq_OOI: "R = op = \<Longrightarrow> R = R OO R"
    2.26    by auto
    2.27  
    2.28 -lemma Gr_UNIV_id: "f = id \<Longrightarrow> (Gr UNIV f)^-1 O Gr UNIV f = Gr UNIV f"
    2.29 -unfolding Gr_def by auto
    2.30 -
    2.31  lemma Grp_UNIV_id: "f = id \<Longrightarrow> (Grp UNIV f)^--1 OO Grp UNIV f = Grp UNIV f"
    2.32  unfolding Grp_def by auto
    2.33  
    2.34  lemma Grp_UNIV_idI: "x = y \<Longrightarrow> Grp UNIV id x y"
    2.35  unfolding Grp_def by auto
    2.36  
    2.37 -lemma Gr_mono: "A \<subseteq> B \<Longrightarrow> Gr A f \<subseteq> Gr B f"
    2.38 -unfolding Gr_def by auto
    2.39 -
    2.40  lemma Grp_mono: "A \<le> B \<Longrightarrow> Grp A f \<le> Grp B f"
    2.41  unfolding Grp_def by auto
    2.42  
    2.43 @@ -139,73 +126,40 @@
    2.44  lemma Collect_split_Grp_inD: "z \<in> Collect (split (Grp A f)) \<Longrightarrow> fst z \<in> A"
    2.45  unfolding Grp_def o_def by auto
    2.46  
    2.47 -lemma wpull_Gr:
    2.48 -"wpull (Gr A f) A (f ` A) f id fst snd"
    2.49 -unfolding wpull_def Gr_def by auto
    2.50 -
    2.51  lemma wpull_Grp:
    2.52  "wpull (Collect (split (Grp A f))) A (f ` A) f id fst snd"
    2.53  unfolding wpull_def Grp_def by auto
    2.54  
    2.55 -definition "pick_middle P Q a c = (SOME b. (a,b) \<in> P \<and> (b,c) \<in> Q)"
    2.56 -
    2.57  definition "pick_middlep P Q a c = (SOME b. P a b \<and> Q b c)"
    2.58  
    2.59 -lemma pick_middle:
    2.60 -"(a,c) \<in> P O Q \<Longrightarrow> (a, pick_middle P Q a c) \<in> P \<and> (pick_middle P Q a c, c) \<in> Q"
    2.61 -unfolding pick_middle_def apply(rule someI_ex) by auto
    2.62 -
    2.63  lemma pick_middlep:
    2.64  "(P OO Q) a c \<Longrightarrow> P a (pick_middlep P Q a c) \<and> Q (pick_middlep P Q a c) c"
    2.65  unfolding pick_middlep_def apply(rule someI_ex) by auto
    2.66  
    2.67 -definition fstO where "fstO P Q ac = (fst ac, pick_middle P Q (fst ac) (snd ac))"
    2.68 -definition sndO where "sndO P Q ac = (pick_middle P Q (fst ac) (snd ac), snd ac)"
    2.69 -
    2.70  definition fstOp where "fstOp P Q ac = (fst ac, pick_middlep P Q (fst ac) (snd ac))"
    2.71  definition sndOp where "sndOp P Q ac = (pick_middlep P Q (fst ac) (snd ac), (snd ac))"
    2.72  
    2.73 -lemma fstO_in: "ac \<in> P O Q \<Longrightarrow> fstO P Q ac \<in> P"
    2.74 -unfolding fstO_def by (subst (asm) surjective_pairing) (rule pick_middle[THEN conjunct1])
    2.75 -
    2.76  lemma fstOp_in: "ac \<in> Collect (split (P OO Q)) \<Longrightarrow> fstOp P Q ac \<in> Collect (split P)"
    2.77  unfolding fstOp_def mem_Collect_eq
    2.78  by (subst (asm) surjective_pairing, unfold prod.cases) (erule pick_middlep[THEN conjunct1])
    2.79  
    2.80 -lemma fst_fstO: "fst bc = (fst \<circ> fstO P Q) bc"
    2.81 -unfolding comp_def fstO_def by simp
    2.82 -
    2.83  lemma fst_fstOp: "fst bc = (fst \<circ> fstOp P Q) bc"
    2.84  unfolding comp_def fstOp_def by simp
    2.85  
    2.86 -lemma snd_sndO: "snd bc = (snd \<circ> sndO P Q) bc"
    2.87 -unfolding comp_def sndO_def by simp
    2.88 -
    2.89  lemma snd_sndOp: "snd bc = (snd \<circ> sndOp P Q) bc"
    2.90  unfolding comp_def sndOp_def by simp
    2.91  
    2.92 -lemma sndO_in: "ac \<in> P O Q \<Longrightarrow> sndO P Q ac \<in> Q"
    2.93 -unfolding sndO_def
    2.94 -by (subst (asm) surjective_pairing) (rule pick_middle[THEN conjunct2])
    2.95 -
    2.96  lemma sndOp_in: "ac \<in> Collect (split (P OO Q)) \<Longrightarrow> sndOp P Q ac \<in> Collect (split Q)"
    2.97  unfolding sndOp_def mem_Collect_eq
    2.98  by (subst (asm) surjective_pairing, unfold prod.cases) (erule pick_middlep[THEN conjunct2])
    2.99  
   2.100 -lemma csquare_fstO_sndO:
   2.101 -"csquare (P O Q) snd fst (fstO P Q) (sndO P Q)"
   2.102 -unfolding csquare_def fstO_def sndO_def using pick_middle by simp
   2.103 -
   2.104  lemma csquare_fstOp_sndOp:
   2.105  "csquare (Collect (split (P OO Q))) snd fst (fstOp P Q) (sndOp P Q)"
   2.106  unfolding csquare_def fstOp_def sndOp_def using pick_middlep by simp
   2.107  
   2.108 -lemma wppull_fstO_sndO:
   2.109 -shows "wppull (P O Q) P Q snd fst fst snd (fstO P Q) (sndO P Q)"
   2.110 -using pick_middle unfolding wppull_def fstO_def sndO_def relcomp_def by auto
   2.111 -
   2.112  lemma wppull_fstOp_sndOp:
   2.113 -shows "wppull (Collect (split (P OO Q))) (Collect (split P)) (Collect (split Q)) snd fst fst snd (fstOp P Q) (sndOp P Q)"
   2.114 +shows "wppull (Collect (split (P OO Q))) (Collect (split P)) (Collect (split Q))
   2.115 +  snd fst fst snd (fstOp P Q) (sndOp P Q)"
   2.116  using pick_middlep unfolding wppull_def fstOp_def sndOp_def relcompp.simps by auto
   2.117  
   2.118  lemma snd_fst_flip: "snd xy = (fst o (%(x, y). (y, x))) xy"
   2.119 @@ -214,9 +168,6 @@
   2.120  lemma fst_snd_flip: "fst xy = (snd o (%(x, y). (y, x))) xy"
   2.121  by (simp split: prod.split)
   2.122  
   2.123 -lemma flip_rel: "A \<subseteq> (R ^-1) \<Longrightarrow> (%(x, y). (y, x)) ` A \<subseteq> R"
   2.124 -by auto
   2.125 -
   2.126  lemma flip_pred: "A \<subseteq> Collect (split (R ^--1)) \<Longrightarrow> (%(x, y). (y, x)) ` A \<subseteq> Collect (split R)"
   2.127  by auto
   2.128  
     3.1 --- a/src/HOL/BNF/BNF_GFP.thy	Tue May 07 17:35:29 2013 +0200
     3.2 +++ b/src/HOL/BNF/BNF_GFP.thy	Tue May 07 18:40:23 2013 +0200
     3.3 @@ -76,9 +76,6 @@
     3.4  lemma image2_eqI: "\<lbrakk>b = f x; c = g x; x \<in> A\<rbrakk> \<Longrightarrow> (b, c) \<in> image2 A f g"
     3.5  unfolding image2_def by auto
     3.6  
     3.7 -lemma Id_subset: "Id \<subseteq> {(a, b). P a b \<or> a = b}"
     3.8 -by auto
     3.9 -
    3.10  lemma eq_subset: "op = \<le> (\<lambda>a b. P a b \<or> a = b)"
    3.11  by auto
    3.12  
    3.13 @@ -88,12 +85,6 @@
    3.14  lemma image2_Gr: "image2 A f g = (Gr A f)^-1 O (Gr A g)"
    3.15  unfolding image2_def Gr_def by auto
    3.16  
    3.17 -lemma GrI: "\<lbrakk>x \<in> A; f x = fx\<rbrakk> \<Longrightarrow> (x, fx) \<in> Gr A f"
    3.18 -unfolding Gr_def by simp
    3.19 -
    3.20 -lemma GrE: "(x, fx) \<in> Gr A f \<Longrightarrow> (x \<in> A \<Longrightarrow> f x = fx \<Longrightarrow> P) \<Longrightarrow> P"
    3.21 -unfolding Gr_def by simp
    3.22 -
    3.23  lemma GrD1: "(x, fx) \<in> Gr A f \<Longrightarrow> x \<in> A"
    3.24  unfolding Gr_def by simp
    3.25