src/HOLCF/IOA/meta_theory/TLS.thy
changeset 27208 5fe899199f85
parent 26359 6d437bde2f1d
child 35174 e15040ae75d7
equal deleted inserted replaced
27207:548e2d3105b9 27208:5fe899199f85
   147 declare ex2seqC_UU [simp del] ex2seqC_nil [simp del] ex2seqC_cons [simp del]
   147 declare ex2seqC_UU [simp del] ex2seqC_nil [simp del] ex2seqC_cons [simp del]
   148 declare ex2seq_UU [simp] ex2seq_nil [simp] ex2seq_cons [simp]
   148 declare ex2seq_UU [simp] ex2seq_nil [simp] ex2seq_cons [simp]
   149 
   149 
   150 
   150 
   151 lemma ex2seq_nUUnnil: "ex2seq exec ~= UU & ex2seq exec ~= nil"
   151 lemma ex2seq_nUUnnil: "ex2seq exec ~= UU & ex2seq exec ~= nil"
   152 apply (tactic {* pair_tac "exec" 1 *})
   152 apply (tactic {* pair_tac @{context} "exec" 1 *})
   153 apply (tactic {* Seq_case_simp_tac "y" 1 *})
   153 apply (tactic {* Seq_case_simp_tac @{context} "y" 1 *})
   154 apply (tactic {* pair_tac "a" 1 *})
   154 apply (tactic {* pair_tac @{context} "a" 1 *})
   155 done
   155 done
   156 
   156 
   157 
   157 
   158 subsection {* Interface TL -- TLS *}
   158 subsection {* Interface TL -- TLS *}
   159 
   159 
   168 
   168 
   169 apply clarify
   169 apply clarify
   170 apply (simp split add: split_if)
   170 apply (simp split add: split_if)
   171 (* TL = UU *)
   171 (* TL = UU *)
   172 apply (rule conjI)
   172 apply (rule conjI)
   173 apply (tactic {* pair_tac "ex" 1 *})
   173 apply (tactic {* pair_tac @{context} "ex" 1 *})
   174 apply (tactic {* Seq_case_simp_tac "y" 1 *})
   174 apply (tactic {* Seq_case_simp_tac @{context} "y" 1 *})
   175 apply (tactic {* pair_tac "a" 1 *})
   175 apply (tactic {* pair_tac @{context} "a" 1 *})
   176 apply (tactic {* Seq_case_simp_tac "s" 1 *})
   176 apply (tactic {* Seq_case_simp_tac @{context} "s" 1 *})
   177 apply (tactic {* pair_tac "a" 1 *})
   177 apply (tactic {* pair_tac @{context} "a" 1 *})
   178 (* TL = nil *)
   178 (* TL = nil *)
   179 apply (rule conjI)
   179 apply (rule conjI)
   180 apply (tactic {* pair_tac "ex" 1 *})
   180 apply (tactic {* pair_tac @{context} "ex" 1 *})
   181 apply (tactic {* Seq_case_tac "y" 1 *})
   181 apply (tactic {* Seq_case_tac @{context} "y" 1 *})
   182 apply (simp add: unlift_def)
   182 apply (simp add: unlift_def)
   183 apply fast
   183 apply fast
   184 apply (simp add: unlift_def)
   184 apply (simp add: unlift_def)
   185 apply fast
   185 apply fast
   186 apply (simp add: unlift_def)
   186 apply (simp add: unlift_def)
   187 apply (tactic {* pair_tac "a" 1 *})
   187 apply (tactic {* pair_tac @{context} "a" 1 *})
   188 apply (tactic {* Seq_case_simp_tac "s" 1 *})
   188 apply (tactic {* Seq_case_simp_tac @{context} "s" 1 *})
   189 apply (tactic {* pair_tac "a" 1 *})
   189 apply (tactic {* pair_tac @{context} "a" 1 *})
   190 (* TL =cons *)
   190 (* TL =cons *)
   191 apply (simp add: unlift_def)
   191 apply (simp add: unlift_def)
   192 
   192 
   193 apply (tactic {* pair_tac "ex" 1 *})
   193 apply (tactic {* pair_tac @{context} "ex" 1 *})
   194 apply (tactic {* Seq_case_simp_tac "y" 1 *})
   194 apply (tactic {* Seq_case_simp_tac @{context} "y" 1 *})
   195 apply (tactic {* pair_tac "a" 1 *})
   195 apply (tactic {* pair_tac @{context} "a" 1 *})
   196 apply (tactic {* Seq_case_simp_tac "s" 1 *})
   196 apply (tactic {* Seq_case_simp_tac @{context} "s" 1 *})
   197 apply blast
   197 apply blast
   198 apply fastsimp
   198 apply fastsimp
   199 apply (tactic {* pair_tac "a" 1 *})
   199 apply (tactic {* pair_tac @{context} "a" 1 *})
   200  apply fastsimp
   200  apply fastsimp
   201 done
   201 done
   202 
   202 
   203 end
   203 end