Applying Machine Learning to Automatic Theorem Proving The Nature of the Research The aim of my research is to use machine learning techniques to detect.

Slides:



Advertisements
Similar presentations
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Advertisements

Artificial Intelligence 9. Resolution Theorem Proving
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
NEURAL NETWORKS Perceptron
UIUC CS 497: Section EA Lecture #2 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004.
Generating Random Numbers
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
13 Automated Reasoning 13.0 Introduction to Weak Methods in Theorem Proving 13.1 The General Problem Solver and Difference Tables 13.2 Resolution.
Data Mining Methodology 1. Why have a Methodology  Don’t want to learn things that aren’t true May not represent any underlying reality ○ Spurious correlation.
G. Alonso, D. Kossmann Systems Group
SAT and Model Checking. Bounded Model Checking (BMC) A.I. Planning problems: can we reach a desired state in k steps? Verification of safety properties:
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Proof methods Proof methods divide into (roughly) two kinds: –Application of inference rules Legitimate (sound) generation of new sentences from old Proof.
CSE (c) S. Tanimoto, 2008 Propositional Logic
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
LEARNING FROM OBSERVATIONS Yılmaz KILIÇASLAN. Definition Learning takes place as the agent observes its interactions with the world and its own decision-making.
CSE115/ENGR160 Discrete Mathematics 02/07/12
1 Automated Reasoning Introduction to Weak Methods in Theorem Proving 13.1The General Problem Solver and Difference Tables 13.2Resolution Theorem.
Inference and Resolution for Problem Solving
Analysis of Algorithms CS 477/677
Artificial Intelligence
Support Vector Machines
THE TRANSITION FROM ARITHMETIC TO ALGEBRA: WHAT WE KNOW AND WHAT WE DO NOT KNOW (Some ways of asking questions about this transition)‏
Algebra Problems… Solutions
1 Psych 5500/6500 Statistics and Parameters Fall, 2008.
October 8, 2013Computer Vision Lecture 11: The Hough Transform 1 Fitting Curve Models to Edges Most contours can be well described by combining several.
Boolean Algebra – the ‘Lingua Franca’ of the Digital World The goal of developing an automata is based on the following (loosely described) ‘ideal’: if.
INTRODUCTION TO MACHINE LEARNING. $1,000,000 Machine Learning  Learn models from data  Three main types of learning :  Supervised learning  Unsupervised.
A Brief Summary for Exam 1 Subject Topics Propositional Logic (sections 1.1, 1.2) –Propositions Statement, Truth value, Proposition, Propositional symbol,
Boolean Satisfiability and SAT Solvers
Large-scale Hybrid Parallel SAT Solving Nishant Totla, Aditya Devarakonda, Sanjit Seshia.
CHAPTERS 7, 8 Oliver Schulte Logical Inference: Through Proof to Truth.
1 Inference Rules and Proofs (Z); Program Specification and Verification Inference Rules and Proofs (Z); Program Specification and Verification.
1 Sections 1.5 & 3.1 Methods of Proof / Proof Strategy.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Formal Verification Lecture 9. Formal Verification Formal verification relies on Descriptions of the properties or requirements Descriptions of systems.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
March 23 & 28, Csci 2111: Data and File Structures Week 10, Lectures 1 & 2 Hashing.
March 23 & 28, Hashing. 2 What is Hashing? A Hash function is a function h(K) which transforms a key K into an address. Hashing is like indexing.
Logical Agents Chapter 7. Knowledge bases Knowledge base (KB): set of sentences in a formal language Inference: deriving new sentences from the KB. E.g.:
Automated Reasoning Early AI explored how to automated several reasoning tasks – these were solved by what we might call weak problem solving methods as.
1 Chapter 34: NP-Completeness. 2 About this Tutorial What is NP ? How to check if a problem is in NP ? Cook-Levin Theorem Showing one of the most difficult.
CSE Winter 2008 Introduction to Program Verification January 15 tautology checking.
© Copyright 2008 STI INNSBRUCK Intelligent Systems Propositional Logic.
Random Interpretation Sumit Gulwani UC-Berkeley. 1 Program Analysis Applications in all aspects of software development, e.g. Program correctness Compiler.
1 Reasoning with Infinite stable models Piero A. Bonatti presented by Axel Polleres (IJCAI 2001,
Data Mining and Decision Support
Application of machine learning to RCF decision procedures Zongyan Huang.
1 Propositional Logic Limits The expressive power of propositional logic is limited. The assumption is that everything can be expressed by simple facts.
Modeling K The Common Core State Standards in Mathematics Geometry Measurement and Data The Number System Number and Operations.
Logical Agents Chapter 7. Outline Knowledge-based agents Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules and theorem.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View Basic Concepts and Background.
Proof Methods for Propositional Logic CIS 391 – Intro to Artificial Intelligence.
Non-parametric Methods for Clustering Continuous and Categorical Data Steven X. Wang Dept. of Math. and Stat. York University May 13, 2010.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
Logical Agents. Outline Knowledge-based agents Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability.
NP-Completeness A problem is NP-complete if: It is in NP
Inference and search for the propositional satisfiability problem
Rule Induction for Classification Using
Computability and Complexity
Wed June 12 Goals of today’s lecture. Learning Mechanisms
Lecture 2 Propositional Logic
Lifting Propositional Interpolants to the Word-Level
Fitting Curve Models to Edges
Complexity 6-1 The Class P Complexity Andrei Bulatov.
Programming Languages 2nd edition Tucker and Noonan
Emergence of Intelligent Machines: Challenges and Opportunities
Spreadsheets, Modelling & Databases
Programming Languages 2nd edition Tucker and Noonan
Presentation transcript:

Applying Machine Learning to Automatic Theorem Proving The Nature of the Research The aim of my research is to use machine learning techniques to detect patterns within logical theorems and use them to guide automated theorem provers. The Intended Outcome of the Research The primary aim is to extend the range of theorems that can be proved automatically in reasonable time. A secondary aim is to develop an understanding of structure within theorems and how this may be exploited in theorem proving heuristics. The Present Status of the Work In initial experiments Ive run a theorem prover for a short time, collected data, then run to completion. I then applied machine learning to generate a classifier to predict whether or not a theorem will be proved without needing to run the proof process to completion. Results are promising but inconclusive. I now plan to extend the work to learning heuristic selection from theorem data. The Challenge to be Addressed Using computers to search for logical proofs of theorems has many applications ranging from pure maths to hardware and software verification. But the power of computer theorem provers falls well short of the initial promise of early work. The main challenge is the enormous size of the search space containing the proof being looked for. Much progress in search heuristics has been made but different heuristics work better with different theorems and determining which heuristic to pick for a new theorem is not straight forward. Preliminary Results and Conclusions Logic Systems and Theorem Provers In logic there is a trade off between expressive power in stating theorems and the decidability of the proof process. The simplest logic is propositional logic where theorems are Boolean expressions and the proof process is described as satisfiability or SAT. SAT is decidable but propositional logic is too simple to express many mathematical ideas and problems. Even at this level, for general expressions SAT is NP-complete and there is unlikely to be a polynomial time algorithm to solve it. First order logic adds existential and universal quantifiers and allows functions so is significantly more powerful than propositional logic. It is semi-decidable. Most automatic theorem provers work in first order logic. Beyond first order logic, higher order logics are widely used and are particularly useful for expressing complex hardware and software verification conditions but cannot generally be solved automatically. Instead proof assistants are used which require expert human intervention in the process. Much work is being done on combining automated first order logic provers with higher order logic proof assistants. Automatic Theorem Proving and the E-prover Automated theorem proving does not reproduce the complex but relatively short proofs that human mathematicians produce. Instead simple logic rules are applied to many clauses until a contradiction is reached. Theorems are proved by demonstrating a contradiction if the negation of the theorem is assumed. One such rule that may be applied is resolution (showed to be complete and sound in 1965 by Robinson). Though more complicated rules are now applied, such solvers are often described as being resolution based. The problem with only applying resolution as a rule in a naïve manner is that the number of new clauses generated can rapidly grow to an enormous size and this is particularly true where the clauses are encoding equality as a logical concept. One answer is to treat equality as a special case. Other improvements to make provers practical are to impose order on the parts of the logical expression (literals and terms), use a set of rules rather than just resolution and remove redundant clauses efficiently at an early stage. An efficient solver using such an approach is E written mainly by Stephan Schulz at Munich. This is the prover that I have been working with. A Proof in Robbins Algebra – A Success for Automated Theorem Proving! Despite becoming increasingly sophisticated and useful in a range of fields such as software verification and security protocols, automated theorem proving has not become a tool for mathematicians in the way that computer algebra packages have. A notable exception was the proof in 1996 by McCune of a conjecture by Robbins in Boolean algebra which had eluded human mathematicians for over sixty years. This story made the New York Times. Though the likes of Andrew Wiles are probably safe for the time being, the original aim of theorem proving, to do maths, has been given a fillip. Machine Learning – Support Vector Machines Machine learning involves using a computer to find a relationship between measurable features of a problem (eg temperature of a patient etc) and some outcome, typically a classification (the patient has measles or does not have measles). Rather than analytically model the relationship; instead, parameter values in a model are estimated by looking at historic data (the learning process). If this is done correctly, the same parameters can be used to classify previously unseen data. In a support vector machine the numerical values are transformed to new values in a multi-dimensional space which may be of different dimension to the original feature set. In the new space the values can be partitioned in a linear fashion and classification is determined by which side of the partition a transformed point lies. Following advice from Sean Holden, an expert in the field, I have so far used the program SVMlite to generate classifiers in the form of support vector machines. At the same time I have passed the data on to Sean and to Andrew Naish at the Cambridge Computer Lab who are able to apply more sophisticated methods. Finding Features in Proof States In theorem proving a proof state is the collection of logical clauses, divided into processed and unprocessed sets, that provide a snap shot of the proof process. The initial proof state generally consists of the negated theorem to be proved together with the associated axioms all of which are in an unprocessed state. As the search for a proof progresses the number of clauses increases and some are moved to a processed set. The proof state also contains information as to how the generated clauses arose. To apply machine learning to theorem proving requires a means of measuring features in the proof state, either for the original theorem and axioms or by running the prover for a short while to reach a more complex proof state. Possible features are clause related (eg clause length), or involve whole sets of clauses. My initial runs used 16 features, the number was increased to 60 in later runs. James Bridge supervised by Professor Larry Paulson Acknowledgements I have received much guidance from my supervisor Larry Paulson and from Sean Holden. Andrew Naish has analysed the data I have generated using his own software and Stephan Schulz, the author of E has provided ideas and patiently answered my s despite having a full-time job outside of academia. Working with approximately 1200 theorems in the SET classification of the TPTP library led to a classifier that was correct 70% of the time but the sample was skewed so the base line would be 57%. The tentative conclusion is that useful results may be obtained from machine learning but that more work is needed on feature selection and learning methods. Rather than remain with classifying theorems into solvable or not, the new work will be applied to the more useful area of heuristic selection. Applying Theorem Proving The obvious and original application is checking mathematical theorems as a tool for mathematicians but this has proved an elusive goal (with some exceptions one of which is described below). But theorem provers can be applied to any problem where you want to prove that a complicated process doesnt alter some desired invariant or an outcome follows from the input conditions. Computer software and hardware are obvious candidates but other applications include security protocols (for example Cohens TAPS system), commonsense reasoning in AI and even geometric proofs and the generation of consistent three dimensional models from images. 5 th June 2007