equal
deleted
inserted
replaced
1 (* Title: HOL/IMPP/Com.thy |
1 (* Title: HOL/IMPP/Com.thy |
2 Author: David von Oheimb (based on a theory by Tobias Nipkow et al), TUM |
2 Author: David von Oheimb (based on a theory by Tobias Nipkow et al), TUM |
3 *) |
3 *) |
4 |
4 |
5 section {* Semantics of arithmetic and boolean expressions, Syntax of commands *} |
5 section \<open>Semantics of arithmetic and boolean expressions, Syntax of commands\<close> |
6 |
6 |
7 theory Com |
7 theory Com |
8 imports Main |
8 imports Main |
9 begin |
9 begin |
10 |
10 |
81 definition |
81 definition |
82 WT_bodies :: bool where |
82 WT_bodies :: bool where |
83 "WT_bodies = (!(pn,b):set bodies. WT b)" |
83 "WT_bodies = (!(pn,b):set bodies. WT b)" |
84 |
84 |
85 |
85 |
86 ML {* |
86 ML \<open> |
87 fun make_imp_tac ctxt = |
87 fun make_imp_tac ctxt = |
88 EVERY' [resolve_tac ctxt [mp], fn i => assume_tac ctxt (i + 1), eresolve_tac ctxt [thin_rl]] |
88 EVERY' [resolve_tac ctxt [mp], fn i => assume_tac ctxt (i + 1), eresolve_tac ctxt [thin_rl]] |
89 *} |
89 \<close> |
90 |
90 |
91 lemma finite_dom_body: "finite (dom body)" |
91 lemma finite_dom_body: "finite (dom body)" |
92 apply (unfold body_def) |
92 apply (unfold body_def) |
93 apply (rule finite_dom_map_of) |
93 apply (rule finite_dom_map_of) |
94 done |
94 done |