equal
deleted
inserted
replaced
73 by (simp add: cex_abs_def) |
73 by (simp add: cex_abs_def) |
74 |
74 |
75 lemma cex_abs_nil: "cex_abs f (s,nil) = (f s, nil)" |
75 lemma cex_abs_nil: "cex_abs f (s,nil) = (f s, nil)" |
76 by (simp add: cex_abs_def) |
76 by (simp add: cex_abs_def) |
77 |
77 |
78 lemma cex_abs_cons: "cex_abs f (s,(a,t)>>ex) = (f s, (a,f t) >> (snd (cex_abs f (t,ex))))" |
78 lemma cex_abs_cons: "cex_abs f (s,(a,t)\<leadsto>ex) = (f s, (a,f t) \<leadsto> (snd (cex_abs f (t,ex))))" |
79 by (simp add: cex_abs_def) |
79 by (simp add: cex_abs_def) |
80 |
80 |
81 declare cex_abs_UU [simp] cex_abs_nil [simp] cex_abs_cons [simp] |
81 declare cex_abs_UU [simp] cex_abs_nil [simp] cex_abs_cons [simp] |
82 |
82 |
83 |
83 |
175 |
175 |
176 lemma abstraction_is_ref_map: |
176 lemma abstraction_is_ref_map: |
177 "is_abstraction h C A ==> is_ref_map h C A" |
177 "is_abstraction h C A ==> is_ref_map h C A" |
178 apply (unfold is_abstraction_def is_ref_map_def) |
178 apply (unfold is_abstraction_def is_ref_map_def) |
179 apply auto |
179 apply auto |
180 apply (rule_tac x = "(a,h t) >>nil" in exI) |
180 apply (rule_tac x = "(a,h t) \<leadsto>nil" in exI) |
181 apply (simp add: move_def) |
181 apply (simp add: move_def) |
182 done |
182 done |
183 |
183 |
184 |
184 |
185 lemma abs_safety: "[| inp(C)=inp(A); out(C)=out(A); |
185 lemma abs_safety: "[| inp(C)=inp(A); out(C)=out(A); |