src/HOL/BNF_Examples/Stream_Processor.thy
changeset 57398 882091eb1e9a
parent 57206 d9be905d6283
child 57634 efc00b9b8680
equal deleted inserted replaced
57397:5004aca20821 57398:882091eb1e9a
   124   by (induct sp sp' rule: sp\<^sub>\<mu>_comp.induct) auto
   124   by (induct sp sp' rule: sp\<^sub>\<mu>_comp.induct) auto
   125 
   125 
   126 (*will be provided by the package*)
   126 (*will be provided by the package*)
   127 lemma sp\<^sub>\<mu>_rel_map_map[unfolded vimage2p_def, simp]:
   127 lemma sp\<^sub>\<mu>_rel_map_map[unfolded vimage2p_def, simp]:
   128   "rel_sp\<^sub>\<mu> R1 R2 (map_sp\<^sub>\<mu> f1 f2 sp) (map_sp\<^sub>\<mu> g1 g2 sp') =
   128   "rel_sp\<^sub>\<mu> R1 R2 (map_sp\<^sub>\<mu> f1 f2 sp) (map_sp\<^sub>\<mu> g1 g2 sp') =
   129   rel_sp\<^sub>\<mu> (BNF_Util.vimage2p f1 g1 R1) (BNF_Util.vimage2p f2 g2 R2) sp sp'"
   129   rel_sp\<^sub>\<mu> (BNF_Def.vimage2p f1 g1 R1) (BNF_Def.vimage2p f2 g2 R2) sp sp'"
   130 by (tactic {*
   130 by (tactic {*
   131   let val ks = 1 upto 2;
   131   let val ks = 1 upto 2;
   132   in
   132   in
   133     BNF_Tactics.unfold_thms_tac @{context}
   133     BNF_Tactics.unfold_thms_tac @{context}
   134       @{thms sp\<^sub>\<mu>.rel_compp sp\<^sub>\<mu>.rel_conversep sp\<^sub>\<mu>.rel_Grp vimage2p_Grp} THEN
   134       @{thms sp\<^sub>\<mu>.rel_compp sp\<^sub>\<mu>.rel_conversep sp\<^sub>\<mu>.rel_Grp vimage2p_Grp} THEN