The first thing to notice is that simple_quantifier_tac repeatedly ( REPEAT) applies three components in sequence (using THEN). To pass a goal over a wire, it has to satisfy the wire’s goal type. These are passed between tactics over the wires. Each goal becomes a special goal node on the graph. The labels are called goal types and are predicates describing expected properties of a goal Footnote 2. The boxes contain tactics provided by the underlying prover or nested graphs. To overcome these issues we have developed PSGraph, a graphical proof strategy language, where tacticals are replaced by directed, typed and hierarchical graphs. writeln statements to see the proof state at various points during evaluation. The most common solution to find bugs is to manually break the tactic apart into sub-tactics and use, e.g. Debugging is made even harder by “defensive programming” through the TRY tactical, which either applies a tactic or does nothing, as it is hard to see the overall strategy. How can one find the cause of a failure of the tactic? Or, possibly worse, the cause of a success but with an unexpected result. For example, when does REPEAT terminate? Does it require the given tactic to run at least once? Or will it succeed if it cannot run to begin with? We have found that many mistakes are due to misunderstanding of such corner cases. To fully grasp this strategy one needs to understand the detailed semantics of the various tacticals, such as REPEAT and ORELSE. We then show practical use of PSGraph and Tinker by developing several proof patterns using the language and tool. In this paper we provide a detailed and formal account of PSGraph and show how theorem prover independence is achieved by Tinker. Springer, Berlin, pp 573–579, 2016): a theorem prover-independent system, which is connected to several different provers, with a graphical user interface including novel features to develop and debug proof tactics graphically. in Tools and algorithms for the construction and analysis of systems. Open Publishing Association, London, pp 23–34, 2014 Lin et al. Tool support for PSGraph is achieved by Tinker (Grov et al. By using labelled hierarchical graphs this formalisation improves upon analysis and maintenance found in traditional tactic languages. Springer, Berlin, pp 324–339, 2013) is a graphical language to support the development and maintenance of proof tactics for interactive theorem provers.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |