multiagent theorem proving: towards automating the...

33
MultiAgent Theorem Proving: Towards automating the dynamics of a proof Priya.G Supervisors: Prof. Alan Bundy and Dr. Graham Steel 15 June 2006 Abstract The proof planning systems available today are sequential systems. The hypothesis of this project is that the engineering of a proof planning system that is capable of dynamic, distributed, parallel proof planning will empower the paradigm of proof planning by unlocking its latent potential for these fea- tures. The system will be built on IsaPlanner, which is a proof planning sys- tem developed by Lucas Dixon (Dixon, 2005), based on the theorem prover, Isabelle. Alice, is an extension of Standard ML, with additional features for supporting concurrent, distributed programming. This is the choice for the implementation language for the purpose of this project. The methodology for the evaluation and the choice of test cases will also be outlined. Ph.D. Thesis Proposal School of Informatics University of Edinburgh 15 June 2006

Upload: vumien

Post on 24-Aug-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

MultiAgent Theorem Proving: Towards automatingthe dynamics of a proof

Priya.GSupervisors: Prof. Alan Bundy and Dr. Graham Steel

15 June 2006

Abstract

The proof planning systems available today are sequential systems. Thehypothesis of this project is that the engineering of a proofplanning systemthat is capable of dynamic, distributed, parallel proof planning will empowerthe paradigm of proof planning by unlocking its latent potential for these fea-tures. The system will be built on IsaPlanner, which is a proof planning sys-tem developed by Lucas Dixon (Dixon, 2005), based on the theorem prover,Isabelle. Alice, is an extension of Standard ML, with additional features forsupporting concurrent, distributed programming. This is the choice for theimplementation language for the purpose of this project. The methodologyfor the evaluation and the choice of test cases will also be outlined.

Ph.D. Thesis ProposalSchool of Informatics

University of Edinburgh15 June 2006

Contents

1 Introduction 11.1 Automation of reasoning . . . . . . . . . . . . . . . . . . . . . . 11.2 The purpose of a proof . . . . . . . . . . . . . . . . . . . . . . . 11.3 Proof Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.4 How do mathematicians discover proofs? . . . . . . . . . . . . . 21.5 Restrictions imposed by existing proof planning systems . . . . . 31.6 Core issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.7 Hypothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Review of existing literature 52.1 Proof Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 More on restrictions imposed by existing proof planning systems . 62.3 Goal interaction in Proof planning . . . . . . . . . . . . . . . . . 62.4 Omega and OANTS . . . . . . . . . . . . . . . . . . . . . . . . . 72.5 IsaPlanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.6 Parallel Vs Distributed theorem proving . . . . . . . . . . . . . . 82.7 Taxonomy of parallel theorem proving . . . . . . . . . . . . . . . 92.8 P-SETHEO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.9 Distributed Automated Reasoning system-DARES . . . . . . . . 102.10 TEAMWORK-PaReDuX . . . . . . . . . . . . . . . . . . . . . . 10

3 Description of central ideas 123.1 Multiagent approach, is it worthwhile? . . . . . . . . . . . . . . . 123.2 Engineering Paradigm . . . . . . . . . . . . . . . . . . . . . . . 123.3 Multiagent systems . . . . . . . . . . . . . . . . . . . . . . . . . 133.4 Use of multiagent systems machinery . . . . . . . . . . . . . . . 133.5 Communication protocol . . . . . . . . . . . . . . . . . . . . . . 143.6 Use of AI techniques . . . . . . . . . . . . . . . . . . . . . . . . 153.7 Formal results about the system . . . . . . . . . . . . . . . . . . 153.8 Co-routining scope in Middle-out reasoning . . . . . . . . . . . . 163.9 The Dynamic Creation of Induction Rules Using Proof Planning . 173.10 IsaPlanner-Alice . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.10.1 Alice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.10.2 System Design . . . . . . . . . . . . . . . . . . . . . . . 19

3.11 Workflow synthesis in Intuitionist linear logic framework in Isabelle 203.12 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4 Work plan 224.1 Requirement capture via Workflow synthesis . . . . . . . . . . . . 224.2 Alice-Isabelle-Integration . . . . . . . . . . . . . . . . . . . . . . 224.3 Automation of Workflow synthesis . . . . . . . . . . . . . . . . . 224.4 Alice-IsaPlanner-Integration. . . . . . . . . . . . . . . . . . . . . 23

4.5 Base version of multiagent system . . . . . . . . . . . . . . . . . 234.6 Test case identification . . . . . . . . . . . . . . . . . . . . . . . 234.7 System revision . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.8 Formal results . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.9 Thesis writing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.10 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.11 Thesis writing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.12 Thesis revision . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5 Conclusion 255.1 Likely outcome . . . . . . . . . . . . . . . . . . . . . . . . . . . 255.2 Future directions . . . . . . . . . . . . . . . . . . . . . . . . . . 25

References 28

MultiAgent Theorem Proving 3

1 Introduction

1.1 Automation of reasoning

The pursuit of understanding human reasoning has captivated the humanmindsince long as illustrated by the many philosophical works found across a wholespan of cultures. This pursuit has manifested itself in a variety of ways over theages, one of which happens to be the birth of Logic. The genesis of Logiccameabout as an answer to the need for formalising reasoning and understanding thestructure of arguments.

The formalisation of reasoning in the form of logic went on to become anunwitting foundation for the automation of reasoning, enabling machines to doreasoning either in a completely autonomous way or interactively. The advent ofcomputers has fueled the automation of reasoning in both ways by enabling theconstruction of automated reasoning systems as well as providing applications forthe automated reasoning systems, in the form of hardware and software verifica-tion, to name a few.

The understanding and hence the feasibility of formalisation and automationof mathematical reasoning in particular is an active area of research. Theformal-isation of mathematical reasoning finds applications in formal methods of systemdevelopment, both hardware and software. The tasks of verification, synthesis, andtransformation all require mathematical proof. Machine assistance is useful here,given the length and complexity of these proofs.

1.2 The purpose of a proof

The work on logic has been especially influential in the automation of reasoning. Asurvey of the automated reasoning systems of today (Wiedijk, 2006) show that themajority of them conceive a proof in terms of application of the low-level calculusrules. These proofs provide a low-level step by step understanding, whereas a high-level strategic understanding does not come free always, though verydesirable forthe purpose of a proof as captured in the following slogan (Robinson, 2000):

Proof = Guarantee + Explanation

where ”Guarantee” is provided by the logical, low-level, step by step check ofsoundness and the ”Explanation” is a high-level outline showing how the parts ofa proof relate to each other.

1.3 Proof Planning

In his Science of Reasoning manifesto (Bundy, 1991), Bundy proposes a method-ology for reaching a multi-level understanding of mathematical proofs as part of a

MultiAgent Theorem Proving 1

science of reasoning.

Proof planning(Bundy et al., 1996) aims to realise this manifesto within thecontext of mathematical reasoning. A proof plan is an outline or plan of a proof.To prove a conjecture, proof planning first constructs the proof plan for a proofand then uses it to guide the construction of the proof itself. Common structureinproofs can be captured in proof plans. A proof plan consists of two parts: atacticand amethod. A tactic is a procedure which constructs part of a proof by applyinga sequence of rules of inference. A method is a partial specification of a tactic. Itconsists of preconditions which must be satisfied before the tactic is executed andsome effects which will be true provided the tactic application is successful.

Thus a multi-level explanation of a proof of a conjecture is obtained. Theproof plan associated with the whole proof provides the top-level explanation. Theimmediate sub-tactics and sub-methods of this proof plan provide a medium-levelexplanation of the major sub-proofs. The tactics and methods associated withtheindividual rules of inference provide a bottom-level explanation, which issimilarto that already provided by Logic.

1.4 How do mathematicians discover proofs?

It is worth mentioning here that for the purpose of this project, we are not conduct-ing any cognitive experiments to substantiate our claims and hence this section ismeant as a brief interlude, merely to communicate the fundamental motivation ofthis project.

There are not many accounts of how mathematicians actually discover proofs,as the published work invariably is the polished result and the details of the pro-cess of discovery is seldom documented. The paper ’How the proof of Baudet’sconjecture was found’ (der Waerden, 1971) is a rare account of a mathematician’sattempt to explain the process by which a proof was constructed. This accountillustrates the interplay of the processes involved in the discovery of a proof by ahuman mathematician: trial and error, proposal of an induction hypothesis,modifi-cation, and learning from failure.It illustrates the interaction and communicationthat happens between the proof processes in course of the discoveryof a proof, i.e.,there is indeeddynamics present within the proof. And dynamics of this kind iswhat this project is looking to automate.

Proof planning accounts for the planning aspects of the process of mathemati-cal proof discovery. However, as seen in the aforementioned paper,the planning asdone by the human mathematician is dynamic and the various atomic processes ofthe proof work synergetically leading towards the discovery of the proof, i.e, Dy-namism and distributionare crucial elements of the proof planning as the humanmathematician practises it.

MultiAgent Theorem Proving 2

1.5 Restrictions imposed by existing proof planning systems

Within the proof planning paradigm, the structuring that theproof planbrings tothe problem offers latent opportunities for parallelism. So far, the approaches toproof planning that have been pursued have been dictated and limited by theim-plementation systems which are:

• Oyster-Clam (Bundy et al., 1990)

• Lambda Clam (Richardson et al., 1998)

• Omega (Melis and Siekmann, 1999)

• IsaPlanner (Dixon, 2005)

All these systems are based on a sequential mode of execution and this hasproved to be a limiting factor in not being able to tap the aforementioned potentialof proof planning in terms ofdistribution and parallelism .

The other aspect is of the lack of support fordynamic reconfigurationof proofplans in the existing proof planning systems, as discussed in this paper (Fisher andIreland). ”A proof plan has a fixed hierarchical structure, which is compensated tosome extent by the critics mechanism, which provides a degree of flexibility. How-ever, reconfiguration of the core architecture of a proof plan is still notpossible.The subcomponents of the proof plan for induction form the basis for a proof planfor loop invariant discovery (Ireland and Stark., 1997).While the sharing of proofmethods and critics was automatic, the process of constructing the new overallproof plan was still done by hand.”

For the current proof planning systems, a result which warrants replanningamounts to restarting of the plan. A multiagent approach can help to alleviate thisby allowing for a dynamic reconfiguration of the architecture.

1.6 Core issues

Thus, as a paradigm, proof planning provides scope fordynamism, distributionand parallelism. It is appropriate to add here that these features complement thefundamental motivations enshrined in the science of reasoning manifesto, that ofproof planning as a tool to understand reasoning within the mathematical domain.

Also, today, distribution and parallelisation are ubiquitous trends in the worldof computing in general, and this is partly dictated by the limitations of processingpower. This is enormously applicable to the pursuit of automation of reasoning,given the huge search spaces involved.

MultiAgent systems proves to be a good fit as a paradigm to address theseissues. The amenability to parallelism, the inherent distributed architecture, and

MultiAgent Theorem Proving 3

communication facilities are the crucial features that make multiagent systems asuitable paradigmatic candidate.

1.7 Hypothesis

The hypothesis of this project is that

The engineering of a system that is capable of dynamic, distributed,parallel proof planning will empower the paradigm of proof planningby unlocking its latent potential for these features. Multiagent systemsserves as an effective paradigm to model the distributed proof plan-ning architecture.

The realisation of this hypothesis, which will be described in detail in section3, is as follows:

• Analysis of the requirements, and design of a distributed architecture thatwill allow for distributed, dynamic proof plans using the MultiAgent systemsparadigm

• The ideas developed will be implemented in a system, tentatively named as

P3− ParallelProofP lanner

This system will be an implementation of the distributed architecture, builton top of IsaPlanner (Dixon, 2005)

The system is intended not as a mere speedup tool of the kind that is achievableby running multiple instances on a massively parallel machine, but the thrust istoutilise theintrinsic co-routining and distribution possibilities present in the proofplanning paradigm at a fine level of granularity.

The efficacy of this approach will be tested using classes of problems thathaveproved difficult for existing proof planners, but which could have benefited fromthe presence of dynamism, distribution and co-routining features. To this end, testcases will be derived from these two projects:

• The Dynamic Creation of Induction Rules Using Proof Planning (Gow, 2004)

• Proof Planning for Logic Program Synthesis (Kraan, 1994)

Further details on these can be found in section 2.2.

MultiAgent Theorem Proving 4

2 Review of existing literature

In this section, we will review the existing literature that has led to the genesis ofthis project. We will first review proof planning related work, which will elucidatefurther the need for dynamism and distribution features for proof planning.

We then go on to briefly review significant published work, addressing paral-lel and/or distributed approaches to theorem proving and how they do notfill ourrequirement as spelt out in the hypothesis in section 1. The proceedings of theworkshop on agent oriented theorem proving held in conjunction with IJCAI-03(Sorge et al., 2003) serves as a very useful snapshot of currenttrends in the fieldand this section reviews the relevant projects mentioned here.

2.1 Proof Planning

In this section, we give the details of the proof planning paradigm (Bundy et al.,1996) and the terminology that will be used extensively in the rest of the document.

The proof planning paradigm aims to capture common patterns of reasoning infamilies of similar proofs and represent them computationally as proof plans.

A proof plan consists of three main kinds of objects:

Tactics: are computer programs which construct part of a proof by applying rulesof inference in a theorem proving system. A simple tactic might apply onlya single rule of inference; a composite tactic will be defined in terms ofsimpler tactics and might construct a whole proof. Tactics are hierarchical;some tactics unpack into sub-tactics. Tactics can be composed from rulesand sub-tactics sequentially, iteratively and conditionally.

Methods: are specifications of tactics. In particular, a method describes the pre-conditions for the use of a tactic and the effects of using it. These precondi-tions and effects are syntactic properties of the logical expressions manipu-lated by the tactic and are expressed in meta-logic

Critics: capture common patters on failure of methods and suggest patches to thepartial proof. A critic is associated with a method and is similar in structure,except that its preconditions describe a situation in which the method fails.Instead of effects, it has instructions on how to patch the failed proof plan.

Writing methods requires designing new terminology to represent the relevantcommon structure in proofs from the same family. An example is Rippling (Bundyet al., 2005a), which is a common structure in inductive proofs.

Theproductive use of failurevia critics is made possible by proof planning andis one of its most powerful features.

MultiAgent Theorem Proving 5

2.2 More on restrictions imposed by existing proof planning systems

The structuring that theproof planbrings to the problem offers latent opportunitiesfor parallelism.

So far, the approaches to proof planning that have been pursued have beendictated and limited by the implementation systems which are:

• Oyster-Clam (Bundy et al., 1990)

• Lambda Clam (Richardson et al., 1998)

• Omega (Melis and Siekmann, 1999)

• IsaPlanner (Dixon, 2005)

All these systems are based on a sequential mode of execution and this hasproved to be a limiting factor in not being able to tap the aforementioned potentialof proof planning in terms ofdistribution and parallelism .

In (Fisher and Ireland), Andrew Ireland proposes the realisation of the scienceof reasoning through a society of proof planning agents. Our project shares a lotin common with this proposal. This paper also identifies the lack of support fordynamic reconfiguration of proof plans in the existing proof planning systems.”A proof plan has a fixed hierarchical structure, which is compensated tosomeextent by the critics mechanism, which provides a degree of flexibility. However,reconfiguration of the core architecture of a proof plan is still not possible. Thesubcomponents of the proof plan for induction form the basis for a proofplan forloop invariant discovery (Ireland and Stark., 1997).While the sharing of proofmethods and critics was automatic, the process of constructing the new overallproof plan was still done by hand.”

To elucidate further the restrictions of the existing proof planning systems, hereare two cases of systems that tackled problems using proof planning, but whichcould have gained with the presence of dynamism, distribution and co-routiningfeatures.

• The work onThe Dynamic Creation of Induction Rules Using Proof Plan-ning (Gow, 2004)(Bundy et al., 2005b)

• The work onProof Planning for Logic Program Synthesis(Kraan, 1994)

we present thought experiments on the use of a distributed proof planningparadigm to these scenarios in 3.8 and 3.9.

2.3 Goal interaction in Proof planning

In (Bundy, 1998), Bundy discusses the correspondence between proof planningand plan formation in the AI sense. Further, the importance of goal interaction

MultiAgent Theorem Proving 6

for proof planning is also discussed. ”Goal interaction is a major issue in planformation and has led to the development of nonlinear planning, (Sacerdoti;Tate).Goal interaction has not, so far, been a major issue in proof planning, so we havenot needed to use nonlinear planning. Something a little like it does arise in ourwork on critics. For instance, the point at which a proof breaks down maynot bethe point at which the proof patch needs to be applied. For instance, we mightdetect the need for a case split, but this split might need to be made at an earlierstage in the proof than where the need for it is detected, as in the example of usingproof planning to synthesise an algorithm for sorting colours (Fisher andIreland).This is an example ofretrospective case discovery. Similarly, with changes to theform of induction or generalizations of the theorem. The critics currently dothisby restarting the proof from an earlier point. It is possible that a nonlinearproofrepresentation might facilitate the incremental growth, patching and reorganisationof proofs.”

The work reviewed so far in this section brings out the utility of the introductionof dynamism and distribution features to proof planning.

2.4 Omega and OANTS

TheOmegasystem is an implementation of knowledge-based proof planning, anextension of the proof planning paradigm. In knowledge-based proof planning theplan operators represent general or domain-specific mathematical techniques fa-miliar to a working mathematician. While the knowledge of a domain is specific tothe mathematical field, the representational techniques and reasoning proceduresare general-purpose. The general-purpose planner makes use of this mathemati-cal domain knowledge and of the guidance provided by declaratively representedcontrol-rules which correspond to mathematical intuition about how to prove athe-orem in a particular situation.

OANTS Benzm̈uller and Sorge (2001) which has been built on the Omega sys-tem, focusses on resource allocation strategies and reactive agents using heteroge-neous systems. It focusses on the integration and cooperation of external reasoningsystems, which can possibly be heterogeneous, for example, a first-order theoremprover, a constrain solver, a computer algebra system and so on. This approach isfundamentally different from our approach in terms of granularity at which distri-bution is being applied.

The agent based approach which has been adopted in the OANTS systemad-dresses one particular aspect of command suggestion mechanism. The agent mech-anism used here is a purely reactive agent mechanism. A blackboard architecturefor communication has been used here. The messages passed are not rich andthereby not allowing for the possibility of making effective use of failure. Also,the various useful features of agent based systems, like utility functions,negoti-ation protocols have not been put to use in this project. Another critique of this

MultiAgent Theorem Proving 7

system is that in its current shape, this system has too many dependencies intermsof deployment making it very difficult to get it working.

Also, this work does not address the possibilities of co-routining at fine levelsof granularity and that of distributed proof planning.

2.5 IsaPlanner

Isabelle(Nipkow et al., 2002) is a generic proof assistant. It allows mathematicalformulas to be expressed in a formal language and provides tools for proving thoseformulae in a logical calculus. The main application is the formalization of math-ematical proofs and in particular formal verification, which includes proving thecorrectness of computer hardware or software and proving properties of computerlanguages and protocols.

Compared with similar tools, Isabelle’s distinguishing feature is its flexibility.Most proof assistants are built around a single formal calculus, typically higher-order logic. Isabelle has the capacity to accept a variety of formal calculi.

IsaPlanner(Dixon, 2005) is a generic framework for proof planning in theinteractive theorem prover Isabelle. It facilitates the encoding of reasoning tech-niques, which can be used to conjecture and prove theorems automatically. Thefunctional programming language,ML is the implementation language for thesesystems.

IsaPlanner provides scope for extension to parallelisation and distribution, thoughthese features are not present explicitly in the system in its current state, as it wasnot built as a distributed proof planner. Also, this is based on the proof planningparadigm . And a more practical consideration is that this project is being activelydeveloped and hence the support level can be expected to be high. These factorshave made IsaPlanner as the system of choice on which the distributed proof plan-ning approach is going to be implemented.

2.6 Parallel Vs Distributed theorem proving

The approaches to non-sequential search in general, fall into two conceptual classes,namely,parallelisation approaches, and those which are based onconcurrent ordistributed search. A pure parallelisation approach aims at spreading the compu-tations over processing units and the computation follows the same course throughthe search space as in the sequential case, only faster. In contrast, in aconcurrentsearch approach, each processing unit (agent) works on different parts of the searchspace at the same time. Each agent performs one or several functions and commu-nicate with other units until the given search is solved. Due to the communicationbetween the agents and cooperative or competitive approaches followedby the

MultiAgent Theorem Proving 8

agents, the search space traversed by each agent need not be the same and thereis scope for the parallel work to become less and hence possibly give considerablesuper-linear speedups.

2.7 Taxonomy of parallel theorem proving

In (Bonacina, 2000), a taxonomy of parallel strategies for tackling theorem provingis presented, the gist of which is presented in this section.

• Fine, medium-grain methods

• Master-slave methods

• Methods that do not modify the sequential search plan

• Parallel search methods that can combine sequential search plans (multi-search)

• Concurrent search methods that extend the search plan with the capability ofsubdividing the search space (distributed-search)

• Parallelisation of the atomic algorithm used within a theorem proving strat-egy, for example, parallel rewriting, , but not modifying the search plan itself.

• Parallel scheduling of inference steps prescribed by the sequential searchplan, but not modifying the search plan itself.

If parallelisation changes the search plan, the parallel strategy generates dif-ferent searches rather than simply executing faster the same step of the sequentialsearch. Communication, subdivision of the work, control of deduction and con-trol of parallelism are some of the distinguishing characteristics of a distributedapproach as opposed to a purely parallel approach.

We now go on to review work on these approaches to theorem proving, but arenot directly based on the proof planning paradigm.

2.8 P-SETHEO

PSETHEOLetz et al. (1998)focusses on using strategy parallelism. In thisap-proach, a proof task is attempted in parallel by a set of uniform strategies whiledistributing the given amount of computing resources according to a certainsched-ule. This approach is more of a purely parallel approach and does not make use ofany co-routining or distribution possibilities.

MultiAgent Theorem Proving 9

2.9 Distributed Automated Reasoning system-DARES

Distributed Automated Reasoning system (DARES)? claims to address the is-sues of distribution by viewing the problem solving environment as a collectionofloosely coupled intelligent agents, each of which reasons based on its ownincom-plete knowledge of the state of the world. This project focusses on proving using ahomogeneous collection of resolution provers running in parallel on a setof LISPmachines. There is no further literature available on this work.

2.10 TEAMWORK-PaReDuX

TEAMWORK-PaReDuX? focusses on Distributed Knowledge-based Search. Itwas developed to distribute certain kinds of search processes that represent theirstates as sets of objects. The method was inspired by so-called project teams,temporary teams in business companies that are put together to solve one specificproblem, for example, developing a certain product, a project.

The agents performing the search processes are calledexperts. They areho-mogeneousand use the basic search model with different controls. A team ofexperts work independently with different heuristics on the problem. Aftera cer-tain amount of time, referees judge their results using the impact of the results onthe behaviour of the expert and a supervisor combines the selected results to a newstarting point. The supervisor also selects the experts that can work on theprob-lem in the next round.Performance evaluationandresource allocationare the twomain thrust areas of the project. The possibilities of co-routining at a fine level ofgranularity and dynamically reconfiguring the approach have not been addressed.

”The TEAMWORK approach has been designed overcome the problem thatsubtasks of a proof problem cannot be detected beforehand, thus preventing theuse of known planning and distribution techniques.”?

This premise of the project is not applicable to our approach, as proof planningis our cornerstone and our aim is to distribute the planning involved in there.

To summarise, the work that we have reviewed in this section brings out clearlycertain important issues that have not been addressed, but which can prove to be ofhuge importance to the pursuit of theorem proving.

• Co-routining possibilities at fine granularities of the proof

• Peer-to-peer communication

• Negotiation possibilities

• Making effective use of failure

MultiAgent Theorem Proving 10

• Dynamic reconfiguration and refinement of proof plans

• Utilisation of the evolved mechanisms available in the field of multiagentsystems.

This project is intended to address these issues by adopting a distributed ap-proach to proof planning realised via the multiagent systems paradigm and imple-mented on IsaPlanner.

MultiAgent Theorem Proving 11

3 Description of central ideas

In the previous sections, we saw the motivation behind the project and whatthisproject proposes to do. In this section, we will elaborate on the features tobeincorporated and how we propose to do it.

3.1 Multiagent approach, is it worthwhile?

Mere parallelisation is effective when dependent components can be identified.However, such techniques are less effective if all elements are tightly coupled andinteracting, which is the case in proof planning, for example, induction rule syn-thesis. Other domains of AI including AI planning have successfully adopted thedistributed paradigm (dis, 1992; Durfee, 1999).

In general, the reasons to go for multiagent systems are as follows:

• Necessity to treat distributed knowledge and/or distributed activity in a do-main. As described earlier, proof planning certainly meets this criteria.

• Need to distribute control for reasons of speedup which can be achievedby virtue of concurrency. The combinatorial explosion of the search spacesinvolved in automated reasoning makes a case for the adoption of multiagentsystems here.

• The complexity of the problem being so high that it makes it better to breakit into communicating entities. Middle-out reasoning?? is a particular illus-tration of this, in our case.

Within proof planning, there are also possibilities of adopting multiple strate-gies which has been explored in the work in the Omega group (Melis and Meier,2000). The multiagent approach will allow us to accommodate this aspect as well.

It has been observed in the various projects that have been based on proofplanning that there are plenty of co-routining possibilities (Bundy et al., 2005b) atfine levels of granularity, that have not been utilised so far. This topic is discussedfurther in 3.8 and 3.9.

3.2 Engineering Paradigm

Dynamism, distribution, concurrency, and communication between the processesof the proof are the key issues that emerge from our discussion thus farand henceform the core attributes for the choices for a paradigm to be employed. Forourpurpose, what we are looking for is a paradigm that allows us to model the pres-ence of the different components of a proof and the proof being the outcome oftheir interactions, thereby enabling us to achievemore than the sum of their parts.

MultiAgent Theorem Proving 12

MultiAgent systems proves to be a good fit as a paradigm to address theseissues, as we will see below.

3.3 Multiagent systems

The amenability to parallelism, the inherent distributed architecture, and commu-nication facilities are the crucial features that make Multiagent systems a suitableparadigmatic candidate, for our purpose. It needs to be emphasised here that theruntime interaction is a key issue here for our purpose which is different from tra-ditional distributed systems, as used in operating systems parlance for example. Inthese fields, the distribution is decided at design-time. Multiagent systems allowsruntime interaction among the distributed agents and that is in favour of its case asa paradigmatic choice.

For our purpose, an agent is a computational entity situated in an environmentand is capable of autonomous action in that environment in order to meet its designobjectives. A MultiAgent system is a society of agents that are capable of com-munication and interaction amongst each other.The two issues that directly emergefrom this are that of agent design and that of the society design.

The elementary question faced while designing a multiagent system is the fol-lowing Durfee (1999):When and how should which agents interact with whom -to successfully meet their design objectives.

This naturally leads us to the discussion of agent design and society designforthis project. One possibility as discussed in (Fisher and Ireland) is for the agent toencapsulate both the method and critic component of the existing proof planningframework and an instantiation of a proof plan maps to the society of agents eachof which holds part of the tactic corresponding to an object-level proof.

A simple-minded scenario is as follows: we will have a society of agents for aninduction proof, with the individual autonomous agents being: agents for findingthe well-founded measures, agents for synthesising the induction rules, base caseagents, step-case agents, rippling agents and counter example finding agents, thatwill be empowered to communicate as they proceed andthe proof will be a resultof their interactions.

3.4 Use of multiagent systems machinery

MultiAgent systems also provide useful machinery like the notion of utilities andan agents rational action being based on trying to maximise its expected utility.These can be used to port many heuristics of existing theorem provers.

MultiAgent Theorem Proving 13

In the MultiAgent systems parlance,utility functions are used as a means ofexpressing preferences and as a tool to making decisions. One commonly adoptednotion of an utility function is for it to be defined as a function from the possibleset of outcomes to the real numbers domain. The possible set of outcomes has apreference ordering defined on it and utility function is defined in a natural way byassigning a higher number for a more preferred outcome.

The notion ofadjustable autonomy(et al, 2002.) can be used to model theinteraction aspects of the proof planner or theorem prover. This paperoutlines apreliminary perspective on teamwork and adjustable autonomy in groups involv-ing a mix of humans and autonomous agents. Unlike other approaches to agentteamwork, a human-centered perspective to human-agent interaction is used. Thisis a solution from the viewpoint of implementation, and should not obscure theinteraction from the viewpoint of the user.

There is also scope to facilitate introduction of new agents, some possible can-didates for which are: heuristics, learning agent. As discussed before, proof plansare hand-crafted, informed by empirical study of patterns of proofs. The possibilityof introduction of new agents can be put to good use to accommodate the introduc-tion of new methods for example, into the distributed proof planning framework.

3.5 Communication protocol

The choice of protocol for communication between the agents is a crucial issue.A definitive choice has not been made on this. A blackboard architecture will beemployed in the basic prototype, to start with, but some of peer-to-peer communi-cation will be preferred in the eventual implementation.

The choice of protocol will be determined by the following two important fac-tors:

• The nature of interaction between the agents

• The requirement of task-allocation

We discuss below some of the other desirable criteria for a protocol and thepossible choices.

Contract-net protocol (Smith, 1980.) is a possible choice as discussed in (?).”Agents will have two styles of communication. Firstly, within established proofplan hierarchies, agents will use contract net, a protocol for managing distributedtasks amongst a group of agents. Here, an agent can split its task into sub-tasks,can advertise for other known agents to undertake sub-tasks, and canthen analyseand combine solutions it receives. Secondly, where no appropriate hierarchy existswe envisage that a broadcast message passing style of communication used. Thisless focussed mechanism will enable us to introduce a more flexible organisation

MultiAgent Theorem Proving 14

of the proof plans.”

Auction-like protocols can prove to be useful in some scenarios. Agents canwith the help of heuristics and appropriate representation be empowered to judgetheir abilities to solve a task. In an auction-like protocol, this ability can be put touse by the agent to bid to solve a problem.

A protocol that will allow fornegotiation between the agents will prove to beuseful.

The protocol should allow richness of messages to facilitateproductive use offailure. An agent should be able to supply information on the reasons of failure,apart from just the failure message.

Agents should be able to request for and communicate partial results as wellwhich can help for example, in pruning the search space of other agents apart fromcommunicating complete results. An agent can say something like ”Do not botherto solve this for this range, as I have worked it out already that it is not needed” or”Solve the problem preferably for this range”.

3.6 Use of AI techniques

Though grounded in the theorem-proving area, this approach can utilise resultsfrom both distributed AI and multi-agent systems research.

Proof Planning shares a lot with traditional AI planning, and this facilitates theemployment of many AI techniques in proof planning. This has been attemptedpreviously, though not using a multiagent approach (Melis and Meier, 1998).Theknowledgebased proof planning approach that is implemented in the OMEGAproof planner evaluates controlrules in order to restrict the otherwise intractablesearch spaces and combines proof planning with domainspecific constraint solv-ing. Several AItechniques contribute to the successful planning of proofs that werebeyond the capabilities of theorem provers and proof planners previously.

3.7 Formal results about the system

We aim to derive some formal results on the distributed system that will give someformal notion of guarantee of the system. The soundness part is taken care bythe fact that it will be built on top of IsaPlanner which in turn has been built onIsabelle/HOL, a higher order logic theorem prover. We are consideringone-wayequivalence results, that will prove that the distributed theorem prover can proveall theorems that the sequential theorem prover, IsaPlanner can prove. We are alsoconsidering deriving fairness results, i.e, that all possible choices will be looked at,for example.

MultiAgent Theorem Proving 15

To end this section, we present below thought experiments on the applicationof distributed proof planning to two particular projects that have used sequentialproof planning. It is worth mentioning here that it is planned that some of the testcases for the evaluation of this project will be derived form the failed testcases ofthese projects.

3.8 Co-routining scope in Middle-out reasoning

The work onProof Planning for Logic Program Synthesis(Kraan, 1994) demon-strates how the combined techniques ofmiddle-out reasoningand proof planningcan be exploited to automate logic program synthesis.Middle-out reasoningis aterm used to refer to the technique of representing unspecified objects in the proofwith meta-variables— as a least commitment mechanism— and instantiates themvia unification in the course of planning. This project implemented middle-out rea-soning in proof planning for program synthesis, as an extension of the proof plan-ning system CLAM (Bundy et al., 1990)—a sequential proof planning system—and the extended system,Periwinklewas used to synthesise a variety of programs.

Middle-out-reasoning gives a lot of opportunities for co-routining, dynamismand distribution, as explained below. Hence, a task involving application ofmiddle-out reasoningand proof planning can be tackled more efficiently when a distributedproof planning system is used.

The induction critics make a lot of use of meta-variables as a least commit-ment mechanism. For instance, consider the proof planning critic that does the jobof lemma speculation. Referring to theRippling technique (Bundy et al., 2005a),analysis of a failed ripple can determine a lot of the structure of a missing wave-rule, but not all of it. Those bits that cannot be fully determined are represented bymeta-variables. These meta-variables are subsequently instantiated by higher-orderunification during subsequent rippling. Similar remarks apply to the generalisationcritic.

When the lemma speculation (or generalisation) critic is invoked there are twosubgoals to be proved:

1. The original goal must now be proved with the aid of the lemma (generalisedgoal).

2. The lemma (generalised goal) must be solved.

Either of these sub-proofs could cause the meta-variables to be instantiated.Note that an instantiation that would suit the proof of one of the sub-goals mightmake the other sub-goal unprovable (e.g. false). It is necessary to find instantia-tions that are compatible with both sub-proofs. In a sequential planner, it iseasiestto arrange for one sub-proof to be completed before the other is started.This can

MultiAgent Theorem Proving 16

lead to a lot of wasted effort if the instantiations made during the first sub-proof areincompatible with those needed for the second sub-proof. Moreover, there mightbe a large branching factor associated with some of these instantiations, leading tothe need to search each branch in turn. It is more efficient to do the instantiationsin the sub-proof with the lowest branching factor, since this keeps the search spacesmall. More generally, we might want to co-routine between the two sub-proofs,instantiating meta-variables incrementally and picking the sub-proof that offers thelowest branching factor at each phase of the instantiation. For instance,F(x) mightbe instantiated to g(F’(x)) by the first process, then to g(h(x)) by the second. Thiskind of co-routining can be organised as a multi-agent process with one agent foreach of the sub-proofs. Note that the agents must communicate their meta-variableinstantiations to each other, with failure reporting if the instantiations made by oneagent cause another agent’s sub-proof to fail.

3.9 The Dynamic Creation of Induction Rules Using Proof Planning

This section discusses the parallelism opportunities in the work onThe DynamicCreation of Induction Rules Using Proof Planning(Gow, 2004) and the work onprogram construction via deductive synthesis(Bundy et al., 2005b).

The former was implemented as theDynamissystem, which usedLambdaClam, a sequential proof planning system, as its proof planner. For the purpose ofprogram construction via deductive synthesis, the induction rules to be used cannotbe determined from the usual heuristics. So, middle-out induction, as developedin the Dynamissystem is used. That is, a meta-variable is used to stand for theinduction term. This meta-variable is instantiated during rippling, fertilization, etc.A well-founded induction rule is then constructed that is based on the instantiatedinduction term. Details can be found in the aforementioned citations.

This process effectively determines the step case of the induction. It is then nec-essary to construct the remaining cases to cover the data-type; we will require basecases and sometimes additional step cases. The induction rule must be shownto bewell-founded. Sub-syntheses maybe required to construct sub-routines needed forthe original program. All these sub-goals may share meta-variables. To summarisethe parallelism here:

1. The process is initiated by the development of a step case with meta-variablesarising from the induction term being instantiated. In Dynamis, processingwas sequential, with this step case being completed before the other taskswere tackled. But we could, alternatively, start some of the other subgoals,in parallel, as soon as the meta-variables are partially instantiated. Indeed,if there are choices in this step case, we can explore them in parallel. Somesubset of them might be combined to form the final induction rule. Theremay be several alternative ways of combining these step cases to provide

MultiAgent Theorem Proving 17

alternative induction rules.

Note that the presence of existential quantification in the conjectures to beproved means than mere counter-example finding to detect false conjecturesis not generally sufficient. False conjectures containing existential quantifi-cation will require refutation, i.e. proof of their negations, not just coun-terexamples. The dual of this remark also applies.

2. The rule must be proved well-founded. This involves finding a measureunder which the induction variable and the various induction terms are well-ordered. This process can start as soon as the meta-variables standingforthe induction terms begin to be instantiated. This process can interact withprocess 1 above, since the failure to show an induction term strictly well-ordered w.r.t the induction variable might cause a step case proof attempt tobe rejected.

3. Missing cases must be detected and proved. Again, these detection andproofprocesses can start as soon as the induction term meta-variables are partiallyinstantiated. In Dynamis, there was a lack of symmetry between the first stepcase and the remainder, but this need not be the case in a parallel implemen-tation.

4. Sub-synthesis of co-routines may be necessary. This is triggered byanyproperties that are required to be proved of residual meta-variables left afterfertilization. These properties become specifications to be satisfied. Thesesub-syntheses can be initiated as soon as fertilization occurs and will con-tribute to the completion of the base and step cases.

All four of these processes involve shared meta-variables. Co-routining be-tween them provides the advantages discussed in 3.8. But it introduces theproblem of exchanging information about the instantiations of these meta-variables and the success and failure of these instantiations.

MultiAgent Theorem Proving 18

3.10 IsaPlanner-Alice

The distributed proof planning framework developed in this project will be imple-mented on IsaPlanner (Dixon, 2005).

3.10.1 Alice

Alice (Systems) is a functional programming language based on Standard ML, ex-tended with rich support for concurrent, distributed, and constraint programming.The Alice System is a rich open-source programming system and uses a portableVirtual Machine with support for just-in-time compilation and an interpreter-likeinteractive toplevel.

Being an extension of ML and possessing support for concurrent programmingmakes Alice a good choice as the implementation language to build a layer ontop of IsaPlanner with the scope for all of our desired features. IsaPlanner usesML as its implementation language which again favours the choice of Alice as theimplementation language.

3.10.2 System Design

Figure 1: System design

MultiAgent Theorem Proving 19

3.11 Workflow synthesis in Intuitionist linear logic framework in Is-abelle

Requirements capture is a logical step for any software development exercise. Tothis end, we had started an exercise to study the feasibility to develop a genericframework for the middle-out reasoning procedures adopted in the workinvolvedin the projectProof Planning for Logic Program Synthesis(Kraan, 1994). Thiseffort did not yield the desired results. We figured out that the reasonswere theabsence of a system that will allow for concurrency, to experiment with.

To alleviate this, we have devised a work package to use the intuitionist linearlogic (ILL) workflow synthesis framework that has been built in Isabelle (Dixonet al., 2006) to synthesise customised tactics for proving theorems from somedo-main. This should give us a concrete starting point while serving as an independentunit of work.

This can be interpreted as a multi-agent approach to theorem proving becauseeach sub-tactic considered during synthesis can be regarded as a separate agent.These agents can be run while the synthesis is only partially complete and the re-sults can inform the rest of the synthesis process by (a) determining whether thesub-tactic can succeed and (b) instantiating meta-variables in both the sub-tacticand the theorem. The sub-tactics can belong to alternative synthesis branches; theycan be run in any order, while only partially instantiated and in parallel. The over-all synthesis process will automate the book-keeping process, keeping track of thealternate synthesis attempts, checking when one of them is complete, etc.

There has been work in the Omega system, to synthesise MathWeb workflows(Zimmer, 2004). In this work, customised tactics are synthesised using calls tothevarious MathWeb reasoning systems in the role of sub-tactics.

It is planned that as a first step some of these workflows can be synthesisedusing the ILL-Isabelle framework. Subsequently, the system can be adapted sothat it is combining the various known Isabelle and IsaPlanner tactics instead. Theplan is to experiment with calling these tactics by hand during the overall synthesisprocess, to get a feel for the process and with that knowledge in the sleeve, attemptto automate it, using Isabelle-Alice.

Attempts to synthesise these workflows using the ILL-Isabelle framework willserve as requirements capture exercise and give us useful insights about the salientfeatures that we will need to synthesise proof plans. And when automated,this canconstitute original and publishable research.

MultiAgent Theorem Proving 20

3.12 Evaluation

The efficacy of this approach will be tested using classes of problems thathaveproved difficult for existing proof planners, but which could have benefited withthe presence of dynamism, distribution and co-routining features. To this end, testcases will be derived from these two projects, details of which can be found in 3.8and 3.9:

• The Dynamic Creation of Induction Rules Using Proof Planning (Gow, 2004)

• Proof Planning for Logic Program Synthesis (Kraan, 1994)

These are examples of systems that tackled problems using sequential proofplanners, but which could have benefited with the presence of dynamism, distribu-tion and co-routining features. And hence, these domains will serve as aneffectivesource of test-cases for the efficacy of the dynamic, distributed features of the sys-tem.

The system will also be tested on standard benchmarks available for theoremproving, like the TPTP (TPT).

MultiAgent Theorem Proving 21

4 Work plan

4.1 Requirement capture via Workflow synthesis

Description:Workflow synthesis in the ILL framework in Isabelle as described in 3.11

Deliverables:

1. Theory file to model the synthesis scenario

2. Results of workflow synthesis

3. Base-version for requirements for the MultiAgent architecture, in termsofagent design and the agent-society design. Requirement-specification-document.

4.2 Alice-Isabelle-Integration

Description:Alice-Isabelle-Integration. Isabelle uses Standard ML as its implementation lan-guage. Alice is an extension of Standard ML with support for concurrency anduses a virtual machine called SEAM. As with most systems, there are dependen-cies that need to be addressed to recompile a system on a different platform andthis is what this work package is about.

Deliverable:Working version of Isabelle recompiled on Alice, with the scope for using Alice asthe implementation language.

This should enable testing of simple concurrent proof scripts, allowing foruseof existing features of Isabelle, like the Isar proof scripts and the counter-examplefinder,QuickCheck.

4.3 Automation of Workflow synthesis

Description:Using 4.1 and 4.2, and the various known Isabelle and IsaPlanner tactics,automatethe workflow synthesis.

Deliverable:

1. Isabelle-Alice system that allows for automated synthesis of workflows andproof plans

2. Publishable work, perhaps a workshop paper.

MultiAgent Theorem Proving 22

4.4 Alice-IsaPlanner-Integration.

Description:IsaPlanner has been built on Isabelle using ML and may require some additionaleffort to work seamlessly with Alice.

Deliverable: Working version of IsaPlanner with the scope for using Alice asthe implementation language.

4.5 Base version of multiagent system

Description:

Agent-Design and Society-Design for the MultiAgent framework.

The agent design will involve porting the work on IsaPlanner to Alice as wellas accounting for the additional features that will be needed, feeding off from thedeliverable 3 of 4.1

Deliverable:

A prototype of the MultiAgent system written in Alice, built on IsaPlanner

This should allow for using test-cases with the intention of refining the require-ments of the multiAgent architecture, i.e, refining deliverable 3 of Package 1andhence the system.

4.6 Test case identification

Description:

Identify test-cases that offer lot of scope for distribution and co-routining. Ifwe end up using linear logic in some way at this point, it will be imperative to takethat into account as well, while choosing the test-cases, i.e, to go for test-cases thatwill give scope for constructive aspects.

Run these test cases on the prototype. This should serves as a sanity-checkof requirements and possibly lead to refinement of the requirements, i.e, refiningdeliverable 3 of Package 1 and hence the system.

Deliverables:

1. Refined Requirements specification

2. Document outlining the classes of test cases that give scope for distributedproof planning.

MultiAgent Theorem Proving 23

4.7 System revision

Description:Revise the agent-framework with the refined requirements specification. Incorpo-rate the agent specific features that were described in?? in light of the refinedrequirements. Freeze the system.

Deliverable: Final system

4.8 Formal results

Description:Derive formal results about the proposed architecture as described in3.7.

Deliverable:Publishable work.

4.9 Thesis writing

Description: Preparation of evaluation of test cases.Deliverable: Test cases.

4.10 Evaluation

Description:Evaluate the system using test cases described in 3.12.

Deliverable:Results for the evaluation chapter of the thesis.

4.11 Thesis writing

Description: Writing-up the thesis.Deliverable:

1. Thesis draft.

2. Publishable work.

4.12 Thesis revision

Description: Incorporate the feedback from supervisors into the thesis draft andproduce the final copy of the thesis and submit.

Deliverable:Final thesis.

MultiAgent Theorem Proving 24

5 Conclusion

5.1 Likely outcome

I envisage that this project will prove to be a small step towards adopting a dis-tributed approach to proof planning. It is hoped that this project will serve as proofof concept of the efficacy of the distributed approach to proof planningand auto-mated reasoning, with Multiagent systems having provided an effective vehicle tocarry the distributed framework.

The likely outcomes of this project, when completed, are the following:

1. Definition of a distributed framework for proof planning

2. The Pˆ{3} system, the Parallel Proof Planner

3. Identification of criteria that renders conjectures more amenable to be provedby a distributed proof planner

4. Corpus of test cases that satisfy the above criteria

5. Time permitting, formal results about the distributed proof planner.

5.2 Future directions

1. Incorporation of more heuristics

2. Incorporation of learning abilities

3. Building a GUI and possible integration with Proof General

4. The distributed framework of Pˆ{3} can serve as aplug-in component (without too much of effort) for other pro of planners,in the least, can be ported.

5. Can possibly be ported to a system for visual representation of proofs, likethe HiProof project.

6. Accessibility of machine proofs to humans: When the proof is done, theuser can tell the whole story as the proof, the story being: who the agentswere and what their interactions were; but choosing to leave all the irrelevantinteractions, and presenting only the interactions that are relevant to the finalproof, in much the same way as a human mathematician gives his polished,elegant result. He can even go back and replay the whole story with only thenecessary players and get the system to work the whole thing. As a furtherstep though, the system itself can be made to do this.

MultiAgent Theorem Proving 25

Figure 2: thesisProposal-ganttChart

MultiAgent Theorem Proving 26

7. As an aid to mathematician for research and proof-discovery:The dynamicinteraction between the agents is certainly closer to the way mathematiciansthink during the evolution of the proof (As for example illustrated in thepaper ”How the proof of Baudet’s conjecture was found”. With this underits sleeve, our system can prove to be popular with mathematicians and if wegive the system the ability for the mathematician to be a participant or as adesigner, then all the more better. After all, as Dijkstra said:”Why delegateto a machine what is so much fun to do yourself?”So, the mathematiciancan have all the fun bit and choose to leave the non-fun ones to the machineand can also control the interaction, what he chooses as the fun-bit andsoon.

8. Some tertiary outputs can be recycled to be used in ateaching aid, by whichstudents can get taught proofs in the way it evolves, i.e., by conceiving theproof as a result of the interactions of the processes of a proof, rather than amere application of a bunch of rules in sequence.

9. And lastly, a rather utopian possibility can be the following:

The reasoning agents can havepersistent knowledge, which can be acquiredby learning, training or can be populated by external sources. Agents canbe empowered with the abilities to validate the knowledge, bases on log-ical soundness and other pieces of knowledge that it may have access to.By knowledge, here, we are referring to information like useful heuristics,knowing which kind of agent to talk to, when stuck or when successful.

MultiAgent Theorem Proving 27

References

The tptp problem library for automated theorem proving. URLhttp://www.tptp.org/ .

Distributed artificial intelligence: an annotated bibliography.SIGART Bull., 3(3):20–37, 1992.

Christoph Benzm̈uller and Volker Sorge. Oants: An open approach at combininginteractive and automated theorem proving. In M. Kerber and M. Kohlhase,editors,8th Symposium on the Integration of Symbolic Computation and Mech-anized Reasoning (Calculemus-2000), St. Andrews, UK, 6–7 August 2001. AKPeters, New York, NY, USA.

Maria Paola Bonacina. A taxonomy of parallel strategies for deduction.Annals ofMathematics and Artificial Intelligence, 29(1–4):223–257, 2000. Published inFebruary 2001.

A. Bundy. A science of reasoning. In J.-L. Lassez and G. Plotkin, editors, Com-putational Logic: Essays in Honor of Alan Robinson, page 178198. MIT Press,1991.

A. Bundy, F. van Harmelen, C. Horn, and A. Smaill. The Oyster-Clam system. InM. E. Stickel, editor,10th International Conference on Automated Deduction,pages 647–648. Springer-Verlag, 1990. Lecture Notes in Artificial IntelligenceNo. 449. Also available from Edinburgh as DAI Research Paper 507.

A. Bundy, D. Basin, D. Hutter, and A. Ireland.Rippling: Meta-level Guidancefor Mathematical Reasoning, volume 56 ofCambridge Tracts in TheoreticalComputer Science. Cambridge University Press, 2005a.

A. Bundy, J. Gow, J. Fleuriot, and L. Dixon. Constructing induction rulesfor de-ductive synthesis proofs. In S. Allen, J. Crossley, K.K. Lau, and I Poernomo,editors,Proceedings of the ETAPS-05 Workshop on Constructive Logic for Au-tomated Software Engineering (CLASE-05), Edinburgh, pages 4–18. LFCS Uni-versity of Edinburgh, 2005b.

Alan Bundy. Proof planning. Technical Report 886, School of Informatics, Uni-versity of Edinburgh, 1998.

Alan Bundy, Frank Van Harmelen, Jane Hesketh, and Alan Smaill. Proof planning.In 3rd International Conference on AI Planning Systems, 1996.

Van der Waerden. How the proof of baudet’s conjecture was found. 1971.

Lucas Dixon.A Proof Planning Framework for Isabelle. PhD thesis, ,Universityof Edinburgh, 2005.

MultiAgent Theorem Proving 28

Lucas Dixon, Alan Smaill, and Alan Bundy. Planning as deductive synthesisinintuitionistic linear logic. Technical Report 0786, School of Informatics, Uni-versity of Edinburgh, 2006.

E. H. Durfee. Distributed problem solving and planning. In G. Weiß, editor, Mul-tiagent Systems, pages 121–164. MITP, 1999.

M.Tambe et al. Towards adjustable autonomy for the real world.Journal of ArticialIntelligence Research, 2002.

Michael Fisher and Andrew Ireland. Towards a science of reasoningthrough soci-eties of proof planning agents. InCADE-15.

Jeremy Gow. The Dynamic Creation of Induction Rules Using Proof Planning.PhD thesis, University of Edinburgh, 2004.

A. Ireland and J. Stark. On the automatic discovery of loop invariants. InIn Pro-ceedings of the Fourth NASA Langley Formal Methods Workshop. NASACon-ference Publication 3356, 1997.

Ina Kraan.Proof Planning for Logic Program Synthesis. PhD thesis, University ofEdinburgh, 1994.

Reinhold Letz, Gernot Stenz, and Andreas Wolf. P-setheo: Strategy parallelismin automated theorem proving.LECTURE NOTES IN COMPUTER SCIENCE,1397:320–324, 1998.

E. Melis and J. Siekmann. Knowledge-based proof planning.AI, 115(1):65–105,1999.

Erica Melis and Andreas Meier. Proof planning with multiple strategies. pagespp.644 – 659. c Springer-Verlag Berlin Heidelberg, 2000.

Erica Melis and Andreas Meier. Ai-techniques in proof planning. In Henri Prade,editor, 13th European Conference on Artificial Intelligence. John Wiley andSons, Ltd., 1998.

Tobias Nipkow, Lawrence C. Paulson, and Markus Wenzel.Isabelle/HOL — AProof Assistant for Higher-Order Logic, volume 2283 ofLNCS. Springer, 2002.

J. D. C Richardson, A. Smaill, and I. Green. System description: proof planningin higher-order logic with Lambda-Clam. pages 129–133, 1998.

John Alan Robinson. Proof = guarantee + explanation. InIntellectics and Com-putational Logic (to Wolfgang Bibel on the occasion of his 60th birthday, pages277–294, Deventer, The Netherlands, The Netherlands, 2000. Kluwer, B.V.

E. D. Sacerdoti.A Structure for Plans and Behaviour. Artificial Intelligence Series.North Holland, 1977. Also as SRI AI Technical note number 109, August1975.

MultiAgent Theorem Proving 29

R. G. Smith. A framework for distributed problem solving.UMI Research Press,1980.

Volker Sorge, Simon Colton, Michael Fisher, and Jeremy Gow, editors.Agentsand Automated Reasoning Workshop in conjunction with the 18th InternationalJoint Conference on Artificial Intelligence (IJCAI03), Acapulco, Mexico,, Au-gust 2003.

Saarland University Informatics Programming Systems. Alice. URLhttp://www.ps.uni-sb.de/alice/ .

A. Tate. Generating project networks. In R. Reddy, editor,Proceedings of IJCAI-77, pages 888–893, Boston, Ma, 1977.

Freek Wiedijk, editor.The Seventeen Provers of the World, Foreword by Dana S.Scott, volume 3600 ofLecture Notes in Computer Science, 2006. Springer.

Jrgen Zimmer. A framework for agent-based brokering of reasoning services.MI-CAI, 2972, 2004.

MultiAgent Theorem Proving 30