equal
deleted
inserted
replaced
99 by (rtac (premp RS weaken_left_insert) 1); |
99 by (rtac (premp RS weaken_left_insert) 1); |
100 qed "imp_false"; |
100 qed "imp_false"; |
101 |
101 |
102 (*This formulation is required for strong induction hypotheses*) |
102 (*This formulation is required for strong induction hypotheses*) |
103 goal PropLog.thy "hyps p tt |- (if tt[p] then p else p->false)"; |
103 goal PropLog.thy "hyps p tt |- (if tt[p] then p else p->false)"; |
104 by (rtac (expand_if RS iffD2) 1); |
104 by (rtac (split_if RS iffD2) 1); |
105 by (PropLog.pl.induct_tac "p" 1); |
105 by (PropLog.pl.induct_tac "p" 1); |
106 by (ALLGOALS (simp_tac (simpset() addsimps [thms_I, thms.H]))); |
106 by (ALLGOALS (simp_tac (simpset() addsimps [thms_I, thms.H]))); |
107 by (fast_tac (claset() addIs [weaken_left_Un1, weaken_left_Un2, |
107 by (fast_tac (claset() addIs [weaken_left_Un1, weaken_left_Un2, |
108 weaken_right, imp_false] |
108 weaken_right, imp_false] |
109 addSEs [false_imp]) 1); |
109 addSEs [false_imp]) 1); |