automated reasoning introduction
play

Automated Reasoning Introduction Jacques Fleuriot Automated - PowerPoint PPT Presentation

Automated Reasoning Introduction Jacques Fleuriot Automated Reasoning Introduction Lecture 1, page 1 What is it to Reason? Informally, reasoning is: to seek or attain knowledge or truth or the process of drawing conclusions with


  1. Automated Reasoning Introduction Jacques Fleuriot Automated Reasoning Introduction Lecture 1, page 1

  2. What is it to Reason? Informally, reasoning is: ● to seek or attain knowledge or truth or the process of drawing conclusions with justification How can we be sure our reasoning does attain the truth? ● Establishing truth is done in many different ways in everyday life: ● ● Word of Authority: truth given by trusted source, eg religion. ● Experimental science: hypothesis is formulated then confirmed or refuted by experiments ● Sampling: truth obtained by statistical analysis of many bits of evidence ● Mathematics: truth established through mathematical proof Are any of the above methods proof of correctness? ● Automated Reasoning Introduction Lecture 1, page 2

  3. What is a Proof? (I) ● For centuries proof was showing something by breaking it down into agreed-upon steps ● Social aspect as peers have to be convinced by argument ● However, this process is open to flaws ● Could automation avoid the flaws? ● We can require that a proof be a deductive chain of inference – formalisation of proof using logic Automated Reasoning Introduction Lecture 1, page 3

  4. Logic (Deductive Reasoning) ● Formal proof notion developed in 20 th century by logicians and mathematicians such as Russell, Frege and Hilbert. ● Benefit of formal logic is that it is a pure syntax. – precisely defined language with predefined inference rules allowing for deducing new statements from old ones. ● No intuition needed, merely applications of agreed upon rules to a set of agreed upon formulae. Automated Reasoning Introduction Lecture 1, page 4

  5. Automated Reasoning ● Automated Reasoning (AR) refers to reasoning in a computer using logic. ● AR has been an active area of research since the 1950s. ● It uses deductive reasoning to tackle problems such as: – constructing formal mathematical proofs; – verifying programs meet their specifications; – modelling human reasoning. Automated Reasoning Introduction Lecture 1, page 5

  6. Mathematical Reasoning Automated mathematical theorem proving is a good test domain. Why? Intelligent, often non-trivial activity ● Circumscribed domain with neat bounds which help control ● reasoning Notions of proof ● – derivation of statements from axioms (facts or truths) using logical rules (inference rules) – so inference is a central aspect Numerous applications ● – the need for formal mathematical reasoning is increasing: need for well-developed theories – e.g. hardware and software verification Automated Reasoning Introduction Lecture 1, page 6

  7. Understanding mathematical reasoning Two main aspects have been of interest ● – logical : how should we reason, i.e. what are the legal modes of reasoning. Want a calculus with rigorous rules. – psychological : how we actually reason Both aspects contribute to our understanding ● (Mathematical) Logic: ● – shows how we represent knowledge and inference rules – does not tell us how to guide the reasoning process Psychological studies: ● – do not provide a detailed and precise recipe for how to reason, but can provide advice and hints or heuristics – heuristics are especially valuable in automatic theorem proving- however, finding good heuristics is a hard task Automated Reasoning Introduction Lecture 1, page 7

  8. Automated Theorem Proving ● Many systems: Isabelle, Coq, HOL, Otter, ... – provide a mechanism to formalise proof – user defines concepts in an object-logic – user expresses formal conjectures about concepts ● Can these systems find proofs automatically? – In some cases, yes! – But sometimes too difficult ● Complicated verification tasks usually done in interactive setting Automated Reasoning Introduction Lecture 1, page 8

  9. Interactive Proof ● User guides the inference process to prove a conjecture (hopefully!) ● Systems provide: – tedious bookkeeping – standard libraries (e.g. lists, complex numbers) – guarantee of correct reasoning – varying degrees of automation ● powerful simplification process ● may have decision procedures for decidable theories such as linear arithmetic, propositional logic etc. Automated Reasoning Introduction Lecture 1, page 9

  10. What's it like? ● Interactive proof can be difficult but is also very rewarding ● Combines aspects of programming and mathematics ● Difficult to learn: – important that you know how to look up and apply theorems – often many tactics for automation, and takes time to understand them ● Representation matters! Automated Reasoning Introduction Lecture 1, page 10

  11. Can we prove everything? (I) Do you think mathematics is: – complete ( can every statement be proved or disproved)? – consistent (no statement can be both true and false)? – decidable (there exists a terminating procedure to determine the truth or falsity of any statement)? Automated Reasoning Introduction Lecture 1, page 11

  12. Can we prove everything? (II) ● Gödel's incompleteness theorem showed there are true statements that cannot be proven in inductive theories, eg. arithmetic. ● Church and Turing showed that first-order logic was undecidable. ● Do not be disheartened! ● We can still prove many interesting results using logic. Automated Reasoning Introduction Lecture 1, page 12

  13. What is a proof? (II) ● Computerised proofs are causing controversy in the mathematical community – proof steps may be in the hundreds of thousands – impractical for mathematicians to check by hand – can be hard to guarantee proofs are not flawed – example: Hales' proof of Kepler's Conjecture ● The acceptance of a computerised proof can rely on – formal specifications of the concepts and conjectures – soundness of the prover used – size of the community using the prover – surveyability of the proof Automated Reasoning Introduction Lecture 1, page 13

  14. Isabelle ● In this course we will be using the popular interactive theorem prover Isabelle: – developed at Cambridge University (Larry Paulson) and TU Munich (Tobias Nipkow) – provides many different object-logics (e.g. FOL, HOL, ZF Set Theory) – extensive theory library – decision procedures for decidable fragments – widely accepted as a sound and rigorous system! Automated Reasoning Introduction Lecture 1, page 14

  15. Soundness in Isabelle ● Isabelle follows the LCF approach to ensure soundness – declare a goal – split into subgoals using fixed set of commands – subgoals proved by simplifier or split into more subgoals – these commands create data structures which represents the formal proof ● Inference rules are the only functions that can create and manipulate theorems ● Axioms are generally not allowed; only definitions ● New concepts should be conservative extensions of old ones Automated Reasoning Introduction Lecture 1, page 15

  16. Course contents ● Logics: propositional, first order, aspects of higher order logics and linear temporal logic ● Formalized mathematics ● Interactive theorem proving: introduction to theorem proving with Isabelle ● Formal verification using model checking ● Proof planning and rippling: AI approach used to automatically guide proofs e.g. inductive proofs Automated Reasoning Introduction Lecture 1, page 16

  17. Module Outline ● 2 lectures per week: 16.10-17.00 Mon/Thurs. ● 2 coursework assignments and exams ● Examination: 75% ● Coursework: 25% (12.5% each) ● Help? – Lecturer – Office 6.06b Appleton Tower – Email (jdf@inf.ed.ac.uk) – Coursework demonstrators – AR web pages: http://www.inf.ed.ac.uk/teaching/courses/ar Automated Reasoning Introduction Lecture 1, page 17

  18. Useful course material Lecture slides found on the course website ● Set Course Textbooks: ● – M. Huth and M. Ryan. Logic in Computer Science: Modelling and Reasoning about Systems, Cambridge University Press, 2 nd Ed. 2004 – T. Nipkow, L. C. Paulson, and M. Wenzel. Isabelle/HOL: A Proof Assistant for Higher-Order Logic , Springer-Verlag, 2002 available on-line at http://www.cl.cam.ac.uk/Research/HVG/Isabelle/dist/packages/Isabelle/doc/tutorial.pdf – A. Bundy. The Computational Modelling of Mathematical Reasoning , Academic Press, 1983 available on-line at http://www.inf.ed.ac.uk/teaching/courses/ar/book/book-postcript Other material - recent research papers, technical reports, etc. ● Automated Reasoning Introduction Lecture 1, page 18

Recommend


More recommend