5 research outputs found
Synthesising Graphical Theories
In recent years, diagrammatic languages have been shown to be a powerful and
expressive tool for reasoning about physical, logical, and semantic processes
represented as morphisms in a monoidal category. In particular, categorical
quantum mechanics, or "Quantum Picturalism", aims to turn concrete features of
quantum theory into abstract structural properties, expressed in the form of
diagrammatic identities. One way we search for these properties is to start
with a concrete model (e.g. a set of linear maps or finite relations) and start
composing generators into diagrams and looking for graphical identities.
Naively, we could automate this procedure by enumerating all diagrams up to a
given size and check for equalities, but this is intractable in practice
because it produces far too many equations. Luckily, many of these identities
are not primitive, but rather derivable from simpler ones. In 2010, Johansson,
Dixon, and Bundy developed a technique called conjecture synthesis for
automatically generating conjectured term equations to feed into an inductive
theorem prover. In this extended abstract, we adapt this technique to
diagrammatic theories, expressed as graph rewrite systems, and demonstrate its
application by synthesising a graphical theory for studying entangled quantum
states.Comment: 10 pages, 22 figures. Shortened and one theorem adde
MATHsAiD: Automated Mathematical Theory Exploration
The aim of the MATHsAiD project is to build a tool for automated theorem-discovery; to design and build a tool to automatically conjecture and prove theorems (lemmas, corollaries, etc.) from a set of user-supplied axioms and definitions. No other input is required. This tool would, for instance, allow a mathematician to try several versions of a particular definition, and in a relatively small amount of time, be able to see some of the consequences, in terms of the resulting theorems, of each version. Moreover, the automatically discovered theorems could perhaps help the users to discover and prove further theorems for themselves. The tool could also easily be used by educators (to generate exercise sets, for instance) and by students as well. In a similar fashion, it might also prove useful in enabling automated theorem provers to dispatch many of the more difficult proof obligations arising in software verification, by automatically generating lemmas which are needed by the prover, in order to finish these proofs
Automating Event-B invariant proofs by rippling and proof patching
This work is supported by EPSRC grants EP/H024204/1, EP/E005713/1, EP/M018407/1 and EP/J001058/1.The use of formal method techniques can contribute to the production of more reliable and dependable systems. However, a common bottleneck for industrial adoption of such techniques is the needs for interactive proofs. We use a popular formal method, called Event-B, as our working domain, and set invariant preservation (INV) proofs as targets, because INV proofs can account for a significant proportion of the proofs requiring human interactions. We apply an inductive theorem proving technique, called rippling, for Event-B INV proofs. Rippling automates proofs using meta-level guidance. The guidance is in particular useful to develop proof patches to recover failed proof attempts. We are interested in the case when a missing lemma is required. We combine a scheme-based theory-exploration system, called IsaScheme [MRMDB10], with rippling to develop a proof patch via lemma discovery. We also develop two new proof patches to unfold operator definitions and to suggest case-splits, respectively. The combined use of rippling with these three proof patches as a proof method significantly improves the proof automation for our evaluation set.Publisher PDFPeer reviewe
Capturing proof process
PhD ThesisProof automation is a common bottleneck for industrial adoption of formal methods.
Heuristic search techniques fail to discharge every proof obligation (PO), and
significant effort is spent on proving the remaining ones interactively. Luckily,
they usually fall into several proof families, where a single idea is required to discharge
all similar POs. However, interactive formal proof requires expertise and
is expensive: repeating the ideas over multiple proofs adds up to significant costs.
The AI4FM research project aims to alleviate the repetitive effort by âlearningâ
from an expert doing interactive proof. The expertâs proof attempts can give rise
to reusable strategies, which capture the ideas necessary to discharge similar POs.
Automatic replay of these strategies would complete the remaining proof tasks
within the same family, enabling the expert to focus on novel proof ideas.
This thesis presents an architecture to capture the expertâs proof ideas as a highlevel
proof process. Expert insight is not reflected in low-level proof scripts, therefore
a generic ProofProcess framework is developed to capture high-level proof information,
such as proof intent and important proof features of the proof steps taken.
The framework accommodates branching to represent the actual proof structure
as well as layers of abstraction to accommodate different granularities. The full
history of how the proof was discovered is recorded, including multiple attempts
to capture alternative, failed or unfinished versions.
A prototype implementation of the ProofProcess framework is available, including
integrations with Isabelle and Z/EVES theorem provers. Two case studies illustrate
how the ProofProcess systems are used to capture high-level proof processes
in examples from industrial-style formal developments. Reuse of the captured
information to discharge similar proofs within the examples is also explored.
The captured high-level information facilitates extraction of reusable proof
strategies. Furthermore, the data could be used for proof maintenance, training,
proof metrics, and other use cases
Scheme-Based Synthesis of Inductive Theories
We describe an approach to automatically invent/explore new mathematical theories, with the goal of producing results comparable to those produced by humans, as represented, for example, in the libraries of the Isabelle proof assistant. Our approach is based on âschemesâ, which are terms in higher-order logic. We show that it is possible to automate the instantiation process of schemes to generate conjectures and definitions. We also show how the new definitions and the lemmata discovered during the exploration of the theory can be used not only to help with the proof obligations during the exploration, but also to reduce redundancies inherent in most theory formation systems. We implemented our ideas in an automated tool, called IsaScheme, which employs Knuth-Bendix completion and recent automatic inductive proof tools. We have evaluated our system in a theory of natural numbers and a theory of lists