# HG changeset patch # User nipkow # Date 1348228617 -7200 # Node ID 860b7c6bd913ded93d8606ae6b8e3787a7b54154 # Parent 2694d1615eefe43d314f9fb690a46bc354f51527 tuned names diff -r 2694d1615eef -r 860b7c6bd913 src/HOL/IMP/Abs_Int0.thy --- a/src/HOL/IMP/Abs_Int0.thy Fri Sep 21 13:39:30 2012 +0200 +++ b/src/HOL/IMP/Abs_Int0.thy Fri Sep 21 13:56:57 2012 +0200 @@ -275,16 +275,16 @@ by(induct C arbitrary: S) (simp_all add: Let_def) -abbreviation \\<^isub>f :: "'av st \ state set" -where "\\<^isub>f == \_fun \" +abbreviation \\<^isub>s :: "'av st \ state set" +where "\\<^isub>s == \_fun \" abbreviation \\<^isub>o :: "'av st option \ state set" -where "\\<^isub>o == \_option \\<^isub>f" +where "\\<^isub>o == \_option \\<^isub>s" abbreviation \\<^isub>c :: "'av st option acom \ state set acom" where "\\<^isub>c == map_acom \\<^isub>o" -lemma gamma_f_Top[simp]: "\\<^isub>f Top = UNIV" +lemma gamma_s_Top[simp]: "\\<^isub>s Top = UNIV" by(simp add: Top_fun_def \_fun_def) lemma gamma_o_Top[simp]: "\\<^isub>o Top = UNIV" @@ -292,23 +292,23 @@ (* FIXME (maybe also le \ sqle?) *) -lemma mono_gamma_f: "f1 \ f2 \ \\<^isub>f f1 \ \\<^isub>f f2" +lemma mono_gamma_s: "f1 \ f2 \ \\<^isub>s f1 \ \\<^isub>s f2" by(auto simp: le_fun_def \_fun_def dest: mono_gamma) lemma mono_gamma_o: "S1 \ S2 \ \\<^isub>o S1 \ \\<^isub>o S2" -by(induction S1 S2 rule: le_option.induct)(simp_all add: mono_gamma_f) +by(induction S1 S2 rule: le_option.induct)(simp_all add: mono_gamma_s) lemma mono_gamma_c: "C1 \ C2 \ \\<^isub>c C1 \ \\<^isub>c C2" by (induction C1 C2 rule: le_acom.induct) (simp_all add:mono_gamma_o) text{* Soundness: *} -lemma aval'_sound: "s : \\<^isub>f S \ aval a s : \(aval' a S)" +lemma aval'_sound: "s : \\<^isub>s S \ aval a s : \(aval' a S)" by (induct a) (auto simp: gamma_num' gamma_plus' \_fun_def) lemma in_gamma_update: - "\ s : \\<^isub>f S; i : \ a \ \ s(x := i) : \\<^isub>f(S(x := a))" + "\ s : \\<^isub>s S; i : \ a \ \ s(x := i) : \\<^isub>s(S(x := a))" by(simp add: \_fun_def) lemma step_preserves_le: diff -r 2694d1615eef -r 860b7c6bd913 src/HOL/IMP/Abs_Int1.thy --- a/src/HOL/IMP/Abs_Int1.thy Fri Sep 21 13:39:30 2012 +0200 +++ b/src/HOL/IMP/Abs_Int1.thy Fri Sep 21 13:56:57 2012 +0200 @@ -48,7 +48,7 @@ "aval' (V x) S = fun S x" | "aval' (Plus a1 a2) S = plus' (aval' a1 S) (aval' a2 S)" -lemma aval'_sound: "s : \\<^isub>f S \ vars a \ dom S \ aval a s : \(aval' a S)" +lemma aval'_sound: "s : \\<^isub>s S \ vars a \ dom S \ aval a s : \(aval' a S)" by (induction a) (auto simp: gamma_num' gamma_plus' \_st_def) end @@ -81,7 +81,7 @@ text{* Soundness: *} lemma in_gamma_update: - "\ s : \\<^isub>f S; i : \ a \ \ s(x := i) : \\<^isub>f(update S x a)" + "\ s : \\<^isub>s S; i : \ a \ \ s(x := i) : \\<^isub>s(update S x a)" by(simp add: \_st_def) theorem step_preserves_le: diff -r 2694d1615eef -r 860b7c6bd913 src/HOL/IMP/Abs_Int2.thy --- a/src/HOL/IMP/Abs_Int2.thy Fri Sep 21 13:39:30 2012 +0200 +++ b/src/HOL/IMP/Abs_Int2.thy Fri Sep 21 13:56:57 2012 +0200 @@ -119,7 +119,7 @@ case N thus ?case by simp (metis test_num') next case (V x) - obtain S' where "S = Some S'" and "s : \\<^isub>f S'" using `s : \\<^isub>o S` + obtain S' where "S = Some S'" and "s : \\<^isub>s S'" using `s : \\<^isub>o S` by(auto simp: in_gamma_option_iff) moreover hence "s x : \ (fun S' x)" using V(1,2) by(simp add: \_st_def L_st_def) @@ -176,7 +176,7 @@ subsubsection "Soundness" lemma in_gamma_update: - "\ s : \\<^isub>f S; i : \ a \ \ s(x := i) : \\<^isub>f(update S x a)" + "\ s : \\<^isub>s S; i : \ a \ \ s(x := i) : \\<^isub>s(update S x a)" by(simp add: \_st_def) theorem step_preserves_le: diff -r 2694d1615eef -r 860b7c6bd913 src/HOL/IMP/Abs_State.thy --- a/src/HOL/IMP/Abs_State.thy Fri Sep 21 13:39:30 2012 +0200 +++ b/src/HOL/IMP/Abs_State.thy Fri Sep 21 13:56:57 2012 +0200 @@ -184,16 +184,16 @@ locale Gamma = Val_abs where \=\ for \ :: "'av::semilattice \ val set" begin -abbreviation \\<^isub>f :: "'av st \ state set" -where "\\<^isub>f == \_st \" +abbreviation \\<^isub>s :: "'av st \ state set" +where "\\<^isub>s == \_st \" abbreviation \\<^isub>o :: "'av st option \ state set" -where "\\<^isub>o == \_option \\<^isub>f" +where "\\<^isub>o == \_option \\<^isub>s" abbreviation \\<^isub>c :: "'av st option acom \ state set acom" where "\\<^isub>c == map_acom \\<^isub>o" -lemma gamma_f_Top[simp]: "\\<^isub>f (top c) = UNIV" +lemma gamma_s_Top[simp]: "\\<^isub>s (top c) = UNIV" by(auto simp: top_st_def \_st_def) lemma gamma_o_Top[simp]: "\\<^isub>o (top c) = UNIV" @@ -201,13 +201,13 @@ (* FIXME (maybe also le \ sqle?) *) -lemma mono_gamma_f: "f \ g \ \\<^isub>f f \ \\<^isub>f g" +lemma mono_gamma_s: "f \ g \ \\<^isub>s f \ \\<^isub>s g" apply(simp add:\_st_def subset_iff le_st_def split: if_splits) by (metis mono_gamma subsetD) lemma mono_gamma_o: "S1 \ S2 \ \\<^isub>o S1 \ \\<^isub>o S2" -by(induction S1 S2 rule: le_option.induct)(simp_all add: mono_gamma_f) +by(induction S1 S2 rule: le_option.induct)(simp_all add: mono_gamma_s) lemma mono_gamma_c: "C1 \ C2 \ \\<^isub>c C1 \ \\<^isub>c C2" by (induction C1 C2 rule: le_acom.induct) (simp_all add:mono_gamma_o)