| author | berghofe | 
| Wed, 11 Jul 2007 11:46:44 +0200 | |
| changeset 23767 | 7272a839ccd9 | 
| parent 17272 | c63e5220ed77 | 
| child 35416 | d8d7d1b785af | 
| permissions | -rw-r--r-- | 
| 6466 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 1 | (* Title: HOL/Modelcheck/MuckeExample2.thy | 
| 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 2 | ID: $Id$ | 
| 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 3 | Author: Olaf Mueller, Jan Philipps, Robert Sandner | 
| 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 4 | Copyright 1997 TU Muenchen | 
| 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 5 | *) | 
| 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 6 | |
| 17272 | 7 | theory MuckeExample2 | 
| 8 | imports MuckeSyn | |
| 9 | begin | |
| 6466 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 10 | |
| 17272 | 11 | constdefs | 
| 12 | Init :: "bool pred" | |
| 13 | "Init x == x" | |
| 14 | R :: "[bool,bool] => bool" | |
| 15 | "R x y == (x & ~y) | (~x & y)" | |
| 16 | Reach :: "bool pred" | |
| 17 | "Reach == mu (%Q x. Init x | (? y. Q y & R y x))" | |
| 18 | Reach2:: "bool pred" | |
| 19 | "Reach2 == mu (%Q x. Reach x | (? y. Q y & R y x))" | |
| 6466 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 20 | |
| 17272 | 21 | lemmas Reach_rws = Init_def R_def Reach_def Reach2_def | 
| 6466 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 22 | |
| 17272 | 23 | lemma Reach: "Reach2 True" | 
| 24 |   apply (tactic {* simp_tac (Mucke_ss addsimps (thms "Reach_rws")) 1 *})
 | |
| 25 |   apply (tactic {* mc_mucke_tac [] 1 *})
 | |
| 26 | done | |
| 6466 
2eba94dc5951
added modelchecker mucke besides modelchecker eindhoven;
 mueller parents: diff
changeset | 27 | |
| 17272 | 28 | (*alternative:*) | 
| 29 | lemma Reach': "Reach2 True" | |
| 30 |   by (tactic {* mc_mucke_tac (thms "Reach_rws") 1 *})
 | |
| 31 | ||
| 32 | end |