equal
deleted
inserted
replaced
204 by (etac hoare_derivs.asm 1); |
204 by (etac hoare_derivs.asm 1); |
205 qed "thin"; |
205 qed "thin"; |
206 *) |
206 *) |
207 lemma thin [rule_format]: "G'||-ts ==> !G. G' <= G --> G||-ts" |
207 lemma thin [rule_format]: "G'||-ts ==> !G. G' <= G --> G||-ts" |
208 apply (erule hoare_derivs.induct) |
208 apply (erule hoare_derivs.induct) |
209 apply (tactic {* ALLGOALS (EVERY'[Clarify_tac, REPEAT o smp_tac 1]) *}) |
209 apply (tactic {* ALLGOALS (EVERY'[clarify_tac @{claset}, REPEAT o smp_tac 1]) *}) |
210 apply (rule hoare_derivs.empty) |
210 apply (rule hoare_derivs.empty) |
211 apply (erule (1) hoare_derivs.insert) |
211 apply (erule (1) hoare_derivs.insert) |
212 apply (fast intro: hoare_derivs.asm) |
212 apply (fast intro: hoare_derivs.asm) |
213 apply (fast intro: hoare_derivs.cut) |
213 apply (fast intro: hoare_derivs.cut) |
214 apply (fast intro: hoare_derivs.weaken) |
214 apply (fast intro: hoare_derivs.weaken) |