equal
deleted
inserted
replaced
21 |
21 |
22 Goalw [is_bcv_def,welltyping_def,stables_def] |
22 Goalw [is_bcv_def,welltyping_def,stables_def] |
23 "[| order r; top r T; \ |
23 "[| order r; top r T; \ |
24 \ wti_is_stable_topless r T step wti succs n A; \ |
24 \ wti_is_stable_topless r T step wti succs n A; \ |
25 \ is_dfa r dfa step succs n A |] ==> is_bcv r T wti n A dfa"; |
25 \ is_dfa r dfa step succs n A |] ==> is_bcv r T wti n A dfa"; |
26 by(Clarify_tac 1); |
26 by (Clarify_tac 1); |
27 by (dtac is_dfaD 1); |
27 by (dtac is_dfaD 1); |
28 by (assume_tac 1); |
28 by (assume_tac 1); |
29 by(Clarify_tac 1); |
29 by (Clarify_tac 1); |
30 br iffI 1; |
30 by (rtac iffI 1); |
31 br bexI 1; |
31 by (rtac bexI 1); |
32 br conjI 1; |
32 by (rtac conjI 1); |
33 ba 1; |
33 by (assume_tac 1); |
34 by (asm_full_simp_tac |
34 by (asm_full_simp_tac |
35 (simpset() addsimps[wti_is_stable_toplessD,stables_def]) 1); |
35 (simpset() addsimps[wti_is_stable_toplessD,stables_def]) 1); |
36 ba 1; |
36 by (assume_tac 1); |
37 by(Clarify_tac 1); |
37 by (Clarify_tac 1); |
38 by(asm_full_simp_tac |
38 by (asm_full_simp_tac |
39 (simpset() addsimps [imp_conjR,all_conj_distrib,wti_is_stable_toplessD, |
39 (simpset() addsimps [imp_conjR,all_conj_distrib,wti_is_stable_toplessD, |
40 stables_def] addcongs [conj_cong]) 1); |
40 stables_def] addcongs [conj_cong]) 1); |
41 by(dres_inst_tac [("x","ts")] bspec 1); |
41 by (dres_inst_tac [("x","ts")] bspec 1); |
42 ba 1; |
42 by (assume_tac 1); |
43 by (force_tac (claset()addDs [le_listD],simpset()) 1); |
43 by (force_tac (claset()addDs [le_listD],simpset()) 1); |
44 qed "is_bcv_dfa"; |
44 qed "is_bcv_dfa"; |
45 |
45 |
46 (* |
46 (* |
47 Goal |
47 Goal |