[isabelle-dev] NEWS: cases from goals
Makarius
makarius at sketis.net
Tue Jun 30 17:42:10 CEST 2015
Here is an updated NEWS entry from Isabelle/0eb41780449b -- no changes,
just more explanations:
* Proof method "goals" turns the current subgoals into cases within the
context; the conclusion is bound to variable ?case in each case.
For example:
lemma "⋀x. A x ⟹ B x ⟹ C x"
and "⋀y z. U y ⟹ V u ⟹ W y z"
proof goals
case prems: 1
then show ?case using prems sorry
next
case prems: 2
then show ?case using prems sorry
qed
* The undocumented feature of implicit cases goal1, goal2, goal3, etc.
is marked as legacy, and will be removed eventually. The proof method
"goals" achieves a similar effect within regular Isar; often it can be
done more adequately by other means (e.g. 'consider').
Above I am using a new idiom, to name "prems" uniformly in each case.
This helps to avoid specific names like "1", "2" etc. intrude the proof
body. Thus cases may be re-arranged later, without changing all the proof
cases.
Moreover note, that the above example provides a solution to the
occasional problem of ?thesis1, ?thesis2, etc. -- which are not provided
by the system. It just becomes ?case in each case.
Makarius
More information about the isabelle-dev
mailing list