src/HOL/HOLCF/IOA/RefCorrectness.thy
changeset 62390 842917225d56
parent 62195 799a5306e2ed
child 63549 b0d31c7def86
equal deleted inserted replaced
62380:29800666e526 62390:842917225d56
   180 
   180 
   181 lemma lemma_1:
   181 lemma lemma_1:
   182   "is_ref_map f C A \<Longrightarrow> ext C = ext A \<Longrightarrow>
   182   "is_ref_map f C A \<Longrightarrow> ext C = ext A \<Longrightarrow>
   183     \<forall>s. reachable C s \<and> is_exec_frag C (s, xs) \<longrightarrow>
   183     \<forall>s. reachable C s \<and> is_exec_frag C (s, xs) \<longrightarrow>
   184       mk_trace C $ xs = mk_trace A $ (snd (corresp_ex A f (s, xs)))"
   184       mk_trace C $ xs = mk_trace A $ (snd (corresp_ex A f (s, xs)))"
   185   supply split_if [split del]
   185   supply if_split [split del]
   186   apply (unfold corresp_ex_def)
   186   apply (unfold corresp_ex_def)
   187   apply (pair_induct xs simp: is_exec_frag_def)
   187   apply (pair_induct xs simp: is_exec_frag_def)
   188   text \<open>cons case\<close>
   188   text \<open>cons case\<close>
   189   apply (auto simp add: mk_traceConc)
   189   apply (auto simp add: mk_traceConc)
   190   apply (frule reachable.reachable_n)
   190   apply (frule reachable.reachable_n)
   191   apply assumption
   191   apply assumption
   192   apply (auto simp add: move_subprop4 split add: split_if)
   192   apply (auto simp add: move_subprop4 split add: if_split)
   193   done
   193   done
   194 
   194 
   195 
   195 
   196 subsection \<open>TRACE INCLUSION Part 2: corresp_ex is execution\<close>
   196 subsection \<open>TRACE INCLUSION Part 2: corresp_ex is execution\<close>
   197 
   197