SlideShare a Scribd company logo
MetiTarski's Menagerie 
of Cooperating Systems 
Lawrence C. Paulson 
Computer Laboratory 
University of Cambridge
1. On Combining Systems
Combining Systems is Hard! 
Example 1: “Integrating decision procedures into 
heuristic theorem provers: A case study of linear 
arithmetic” (Boyer and Moore, 1988) 
Example 2: “Reachability programming in HOL98 using 
BDDs” (MJC Gordon, 2000) 
Example 3: Isabelle’s Sledgehammer (2007) 
Example 4: Resolution + RCF = MetiTarski (2008)
Adding Linear Arithmetic to 
the Boyer/Moore Prover 
Simply adding their (custom-made!) decision procedure 
to the Boyer/Moore prover had little effect. 
Deep integration with the rewriter was necessary: 
their decision procedure was no black box. 
Final version “like the software for the space shuttle”
Adding BDDs to HOL98 
What’s the point of BDDs here? Proof assistants don’t 
need to check huge tautologies. But… 
Mike Gordon added the BDD data structure to HOL. 
assertions relating formulas to their BDDs 
BDD-level operations directly available 
This package was general enough to implement 
model checking in HOL!
Adding ATPs to Isabelle 
Similar integrations were attempted before, but how to 
make it usable for novices — and useful to experts? 
Sledgehammer provides automatic… 
problem translation (into FOL or whatever) 
lemma selection (out of the entire lemma library) 
process management (remote invocations, etc.) 
ATPs are invoked as black boxes—and are not trusted!
Combining Clause Methods 
with Decision Procedures 
SMT: propositional over-approximation 
DPLL(Γ+!): a calculus for DPLL + superposition 
MetiTarski: a modified resolution prover 
using decision procedures to simplify clauses… 
and to delete redundant ones
2. MetiTarski
MetiTarski: the Key Ideas 
proving statements about exp, ln, sin, cos, tan-1 — via 
axioms bounding the functions by rational functions 
heuristics to isolate and remove function occurrences 
decision procedures for real arithmetic (RCF) 
(Real polynomial arithmetic is decidable! 
— though doubly exponential…)
Some Upper/Lower Bounds 
Taylor series, … continued fractions, …
Division Laws, abs, etc… 
x > 0 ) |x| = x 
x < 0 ) |x| = -x
Analysing A Simple Problem 
split on signs of split on sign of x 
expressions 
How do we bring about 
these transformations? 
isolate occurrences of functions 
… replace them by their bounds 
replace division by multiplication 
call decision procedure
Architectural Alternatives 
Roll your own 
tableau prover? 
Analytica (1993) 
Weierstrass (2001) 
we have full 
control — must 
micromanage 
the proof search 
Hack an existing 
resolution prover? 
no calculus—it’s ad-hoc 
(what is “the algorithm”?) 
resolution can surprise us
3. Details of the Integration
Resolution Refresher Course 
Resolution operates on 
clauses: disjunctions of 
literals. 
Resolving two clauses 
yields a new one. 
The aim is to contradict 
the negation of the 
goal — by deriving the 
empty clause.
Algebraic Literal Deletion 
Retain a list of the 
ground polynomial 
clauses (no variables). 
Delete any literal that is 
inconsistent with them… 
by calling an RCF 
decision procedure. 
Deleting literals helps to 
derive the empty clause. 
This process yields a 
fine-grained integration 
between resolution and a 
decision procedure.
Literal Deletion Examples 
Unsatisfiable literals such as p2 < 0 are deleted. 
If x(y+1) > 1 is known, then x=0 will be deleted. 
The context includes the negations of adjacent literals 
in the clause: z2 > 3 ∨ z > 5 
… the decision procedure reduces 
∃z [z2 ! 3 ∧ z > 5] to false.
A Tiny Proof: 8x |ex - 1| 6 e|x| - 1 
absolute value (neg) 
0 6 c _ e-c < 1 + |ec - 1| 
absolute value (neg) 
1 6 ec _ 0 6 c _ e-c < 2 - ec 
lower bound: 1-c ! e-c 
1 6 ec _ 0 6 c _ ec < 1 + c 
lower bound: 1+c ! ec 
1 6 ec _ 0 6 c 
0 ! c ⇒ 1 ! ec 
1 6 ec 
absolute value (pos) 
e|c| < ec _ ec < 1 
⇤ 
negating the claim 
e|c| < 1 + |ec - 1| 
absolute value, etc. 
c < 0
To Summarise… 
Replace functions by 
rational function upper or 
lower bounds, 
We obtain conjunctions of 
polynomial inequalities, 
and then get rid of division. 
... which are decidable. 
Resolution theorem proving 
applies these steps “in its own way”.
A Few Easy Examples…
Our Decision Procedures 
QEPCAD (Hoon Hong, C. W. Brown et al.) 
venerable — very fast for univariate problems 
Mathematica (Wolfram research) 
much faster than QEPCAD for 3–4 variables 
Z3 (de Moura et al., Microsoft Research) 
an SMT solver with non-linear reasoning
Integration Issues 
QEPCAD was purposely 
designed for human use 
— not as a back-end. 
With Z3 we go beyond 
black box integration, 
feeding back models to 
speed later execution. 
Machine learning can 
help identify the best 
decision procedure for a 
given problem. 
Many integration issues 
are trivial (e.g. buffer 
blocking) but vexing.
4. Applications
MetiTarski's Applications 
Analogue circuit verifi-cation 
(Denman et al., 
2009) 
Linear hybrid systems 
(Akbarpour & LCP, 2009) 
Abstracting non-polynomial 
dynamical 
systems (Denman, 2012) 
KeYmaera linkup: non-linear 
hybrid systems 
(Sogokon et al.) 
PVS linkup: NASA 
collision-avoidance 
projects (Muñoz & 
Denman)
(What are Hybrid Systems?) 
dynamical systems where the state space has 
discrete modes (with transitions to other modes) 
continuous dynamics in each mode 
simple examples: bouncing ball, water tank 
any computer-controlled physical process 
autopilots, driverless trains, automated factories, …
The Theromstat (sorry) 
x > 24 
˙x = -Kx 
x = 24 
x = 25 
off 
(cooling down) 
x < 25 
˙x = K(h - x) 
on 
(warming up)
KeYmaera 
a verification tool for hybrid systems (Platzer) 
extends the KeY interactive prover with a dynamic logic 
a free-variable tableau calculus 
“differential induction” 
integration with RCF decision procedures 
MetiTarski extends its language from polynomials to 
allow transcendental functions.
KeYmaera + MetiTarski 
ODE 
Solver 
Simplifier 
Mathematica 
QEPCAD 
MetiTarski 
Z3 
Redlog 
KeYmaera QE
Some KeYmaera Examples 
Damped pendulum, described by the second-order 
differential equation 
Ultimately, MetiTarski has to prove 
(This takes 1/4 sec) 
Stability proofs using Lyapunov functions
MetiTarski + PVS 
Trusted interface, complementing PVS support of 
interval methods for polynomial estimation 
It’s being tried within NASA’s ACCoRD project. 
MetiTarski has been effective in early experiments 
… but there’s much more to do.
Future Possibilities 
Refinements to the RCF decision process 
Integration with Isabelle? 
Formal proofs of all upper/lower bounds 
Can decision procedures return certificates? 
Machine learning within the decision procedures
The Cambridge Team 
James Bridge William Denman Zongyan Huang 
(to 2008: Behzad Akbarpour)
Acknowledgements 
Edinburgh: Paul Jackson, G Passmore, A Sogokon; 
Manchester: Eva Navarro 
Assistance from C. W. Brown, A. Cuyt, J. H. Davenport, J. 
Harrison, J. Hurd, D. Lester, C. Muñoz, U. Waldmann, etc. 
The research was supported by the Engineering and 
Physical Sciences Research Council [grant numbers EP/ 
C013409/1,EP/I011005/1,EP/I010335/1].

More Related Content

What's hot

Daa unit 2
Daa unit 2Daa unit 2
Daa unit 2
snehajiyani
 
Cryptographic system in polynomial residue classes for channels with noise an...
Cryptographic system in polynomial residue classes for channels with noise an...Cryptographic system in polynomial residue classes for channels with noise an...
Cryptographic system in polynomial residue classes for channels with noise an...
International Journal of Science and Research (IJSR)
 
LITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEM
LITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEMLITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEM
LITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEM
IJNSA Journal
 
Chapter 3 pc
Chapter 3 pcChapter 3 pc
Chapter 3 pc
Hanif Durad
 
머피의 머신러닝: 17장 Markov Chain and HMM
머피의 머신러닝: 17장  Markov Chain and HMM머피의 머신러닝: 17장  Markov Chain and HMM
머피의 머신러닝: 17장 Markov Chain and HMMJungkyu Lee
 
Composition of Clans for Solving Linear Systems on Parallel Architectures
Composition of Clans for Solving Linear Systems on Parallel ArchitecturesComposition of Clans for Solving Linear Systems on Parallel Architectures
Composition of Clans for Solving Linear Systems on Parallel Architectures
DmitryZaitsev5
 
Chapter 2 ds
Chapter 2 dsChapter 2 ds
Chapter 2 ds
Hanif Durad
 
Dynamic clustering algorithm using fuzzy c means
Dynamic clustering algorithm using fuzzy c meansDynamic clustering algorithm using fuzzy c means
Dynamic clustering algorithm using fuzzy c means
Wrishin Bhattacharya
 
A Novel Design Architecture of Secure Communication System with Reduced-Order...
A Novel Design Architecture of Secure Communication System with Reduced-Order...A Novel Design Architecture of Secure Communication System with Reduced-Order...
A Novel Design Architecture of Secure Communication System with Reduced-Order...
ijtsrd
 
Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...
Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...
Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...
Ryutaroh Matsumoto
 
New approach for wolfe’s modified simplex method to solve quadratic programmi...
New approach for wolfe’s modified simplex method to solve quadratic programmi...New approach for wolfe’s modified simplex method to solve quadratic programmi...
New approach for wolfe’s modified simplex method to solve quadratic programmi...
eSAT Journals
 
Tensor representations in signal processing and machine learning (tutorial ta...
Tensor representations in signal processing and machine learning (tutorial ta...Tensor representations in signal processing and machine learning (tutorial ta...
Tensor representations in signal processing and machine learning (tutorial ta...
Tatsuya Yokota
 
Icmtea
IcmteaIcmtea
Algorithm review
Algorithm reviewAlgorithm review
Algorithm reviewchidabdu
 
Matrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer VisionMatrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer Vision
ActiveEon
 
A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...
A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...
A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...
ijfls
 

What's hot (19)

Daa unit 2
Daa unit 2Daa unit 2
Daa unit 2
 
Cryptographic system in polynomial residue classes for channels with noise an...
Cryptographic system in polynomial residue classes for channels with noise an...Cryptographic system in polynomial residue classes for channels with noise an...
Cryptographic system in polynomial residue classes for channels with noise an...
 
LITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEM
LITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEMLITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEM
LITTLE DRAGON TWO: AN EFFICIENT MULTIVARIATE PUBLIC KEY CRYPTOSYSTEM
 
Chapter 3 pc
Chapter 3 pcChapter 3 pc
Chapter 3 pc
 
머피의 머신러닝: 17장 Markov Chain and HMM
머피의 머신러닝: 17장  Markov Chain and HMM머피의 머신러닝: 17장  Markov Chain and HMM
머피의 머신러닝: 17장 Markov Chain and HMM
 
Composition of Clans for Solving Linear Systems on Parallel Architectures
Composition of Clans for Solving Linear Systems on Parallel ArchitecturesComposition of Clans for Solving Linear Systems on Parallel Architectures
Composition of Clans for Solving Linear Systems on Parallel Architectures
 
Chapter 2 ds
Chapter 2 dsChapter 2 ds
Chapter 2 ds
 
Dynamic clustering algorithm using fuzzy c means
Dynamic clustering algorithm using fuzzy c meansDynamic clustering algorithm using fuzzy c means
Dynamic clustering algorithm using fuzzy c means
 
algorithm Unit 2
algorithm Unit 2 algorithm Unit 2
algorithm Unit 2
 
A Novel Design Architecture of Secure Communication System with Reduced-Order...
A Novel Design Architecture of Secure Communication System with Reduced-Order...A Novel Design Architecture of Secure Communication System with Reduced-Order...
A Novel Design Architecture of Secure Communication System with Reduced-Order...
 
Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...
Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...
Exploring Quantum Supremacy in Access Structures of Secret Sharing by Coding ...
 
New approach for wolfe’s modified simplex method to solve quadratic programmi...
New approach for wolfe’s modified simplex method to solve quadratic programmi...New approach for wolfe’s modified simplex method to solve quadratic programmi...
New approach for wolfe’s modified simplex method to solve quadratic programmi...
 
Tensor representations in signal processing and machine learning (tutorial ta...
Tensor representations in signal processing and machine learning (tutorial ta...Tensor representations in signal processing and machine learning (tutorial ta...
Tensor representations in signal processing and machine learning (tutorial ta...
 
Paper_KST
Paper_KSTPaper_KST
Paper_KST
 
Icmtea
IcmteaIcmtea
Icmtea
 
Algorithm review
Algorithm reviewAlgorithm review
Algorithm review
 
Matrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer VisionMatrix and Tensor Tools for Computer Vision
Matrix and Tensor Tools for Computer Vision
 
A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...
A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...
A Counterexample to the Forward Recursion in Fuzzy Critical Path Analysis Und...
 
Efficient projections
Efficient projectionsEfficient projections
Efficient projections
 

Viewers also liked (8)

Liga Nacional de Fútbol Sala
Liga Nacional de Fútbol SalaLiga Nacional de Fútbol Sala
Liga Nacional de Fútbol Sala
 
Ppw nacho22
Ppw nacho22Ppw nacho22
Ppw nacho22
 
Sin título 1
Sin título 1Sin título 1
Sin título 1
 
Cooperative Groups In The English Classroom
Cooperative Groups In The English ClassroomCooperative Groups In The English Classroom
Cooperative Groups In The English Classroom
 
English Day Week Planning
English Day Week PlanningEnglish Day Week Planning
English Day Week Planning
 
Ppw nacho
Ppw nachoPpw nacho
Ppw nacho
 
Lesson 13: Cooperative learning with the Computer
Lesson 13: Cooperative learning with the ComputerLesson 13: Cooperative learning with the Computer
Lesson 13: Cooperative learning with the Computer
 
Lnfs
LnfsLnfs
Lnfs
 

Similar to MetiTarski's menagerie of cooperating systems

Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautzbutest
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautzbutest
 
My Postdoctoral Research
My Postdoctoral ResearchMy Postdoctoral Research
My Postdoctoral Research
Po-Ting Wu
 
Theorem proving and the real numbers: overview and challenges
Theorem proving and the real numbers: overview and challengesTheorem proving and the real numbers: overview and challenges
Theorem proving and the real numbers: overview and challenges
Lawrence Paulson
 
3 article azojete vol 7 24 33
3 article azojete vol 7 24 333 article azojete vol 7 24 33
3 article azojete vol 7 24 33
Oyeniyi Samuel
 
Jörg Stelzer
Jörg StelzerJörg Stelzer
Jörg Stelzerbutest
 
The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)
theijes
 
modeling.ppt
modeling.pptmodeling.ppt
modeling.ppt
ssuser1d6968
 
Optimization Using Evolutionary Computing Techniques
Optimization Using Evolutionary Computing Techniques Optimization Using Evolutionary Computing Techniques
Optimization Using Evolutionary Computing Techniques
Siksha 'O' Anusandhan (Deemed to be University )
 
Bounded Model Checking
Bounded Model CheckingBounded Model Checking
Bounded Model Checking
Ilham Amezzane
 
Simulation Software Performances And Examples
Simulation Software Performances And ExamplesSimulation Software Performances And Examples
Simulation Software Performances And Examples
Hector Alberto Cerdan Arteaga
 
Parallel Computing 2007: Bring your own parallel application
Parallel Computing 2007: Bring your own parallel applicationParallel Computing 2007: Bring your own parallel application
Parallel Computing 2007: Bring your own parallel application
Geoffrey Fox
 
Acm Tech Talk - Decomposition Paradigms for Large Scale Systems
Acm Tech Talk - Decomposition Paradigms for Large Scale SystemsAcm Tech Talk - Decomposition Paradigms for Large Scale Systems
Acm Tech Talk - Decomposition Paradigms for Large Scale Systems
Vinayak Hegde
 
Quantum Computation simplified.pptx
Quantum Computation simplified.pptxQuantum Computation simplified.pptx
Quantum Computation simplified.pptx
SundarappanKathiresa
 
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
Martha Brown
 
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
SSA KPI
 
20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrison20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrisonComputer Science Club
 
Research Inventy : International Journal of Engineering and Science
Research Inventy : International Journal of Engineering and ScienceResearch Inventy : International Journal of Engineering and Science
Research Inventy : International Journal of Engineering and Science
researchinventy
 
Heuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient searchHeuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient search
Greg Makowski
 
Epsrcws08 campbell kbm_01
Epsrcws08 campbell kbm_01Epsrcws08 campbell kbm_01
Epsrcws08 campbell kbm_01
Cheng Feng
 

Similar to MetiTarski's menagerie of cooperating systems (20)

Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautz
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautz
 
My Postdoctoral Research
My Postdoctoral ResearchMy Postdoctoral Research
My Postdoctoral Research
 
Theorem proving and the real numbers: overview and challenges
Theorem proving and the real numbers: overview and challengesTheorem proving and the real numbers: overview and challenges
Theorem proving and the real numbers: overview and challenges
 
3 article azojete vol 7 24 33
3 article azojete vol 7 24 333 article azojete vol 7 24 33
3 article azojete vol 7 24 33
 
Jörg Stelzer
Jörg StelzerJörg Stelzer
Jörg Stelzer
 
The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)The International Journal of Engineering and Science (The IJES)
The International Journal of Engineering and Science (The IJES)
 
modeling.ppt
modeling.pptmodeling.ppt
modeling.ppt
 
Optimization Using Evolutionary Computing Techniques
Optimization Using Evolutionary Computing Techniques Optimization Using Evolutionary Computing Techniques
Optimization Using Evolutionary Computing Techniques
 
Bounded Model Checking
Bounded Model CheckingBounded Model Checking
Bounded Model Checking
 
Simulation Software Performances And Examples
Simulation Software Performances And ExamplesSimulation Software Performances And Examples
Simulation Software Performances And Examples
 
Parallel Computing 2007: Bring your own parallel application
Parallel Computing 2007: Bring your own parallel applicationParallel Computing 2007: Bring your own parallel application
Parallel Computing 2007: Bring your own parallel application
 
Acm Tech Talk - Decomposition Paradigms for Large Scale Systems
Acm Tech Talk - Decomposition Paradigms for Large Scale SystemsAcm Tech Talk - Decomposition Paradigms for Large Scale Systems
Acm Tech Talk - Decomposition Paradigms for Large Scale Systems
 
Quantum Computation simplified.pptx
Quantum Computation simplified.pptxQuantum Computation simplified.pptx
Quantum Computation simplified.pptx
 
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
 
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
 
20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrison20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrison
 
Research Inventy : International Journal of Engineering and Science
Research Inventy : International Journal of Engineering and ScienceResearch Inventy : International Journal of Engineering and Science
Research Inventy : International Journal of Engineering and Science
 
Heuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient searchHeuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient search
 
Epsrcws08 campbell kbm_01
Epsrcws08 campbell kbm_01Epsrcws08 campbell kbm_01
Epsrcws08 campbell kbm_01
 

More from Lawrence Paulson

Proving Security Protocols Correct
Proving Security Protocols CorrectProving Security Protocols Correct
Proving Security Protocols Correct
Lawrence Paulson
 
Automated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phaseAutomated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phase
Lawrence Paulson
 
Source-Level Proof Reconstruction for Interactive Proving
Source-Level Proof Reconstruction for Interactive ProvingSource-Level Proof Reconstruction for Interactive Proving
Source-Level Proof Reconstruction for Interactive Proving
Lawrence Paulson
 
Defining Functions on Equivalence Classes
Defining Functions on Equivalence ClassesDefining Functions on Equivalence Classes
Defining Functions on Equivalence Classes
Lawrence Paulson
 
Organizing Numerical Theories using Axiomatic Type Classes
Organizing Numerical Theories using Axiomatic Type ClassesOrganizing Numerical Theories using Axiomatic Type Classes
Organizing Numerical Theories using Axiomatic Type Classes
Lawrence Paulson
 
A Generic Tableau Prover and Its Integration with Isabelle
A Generic Tableau Prover and Its Integration with IsabelleA Generic Tableau Prover and Its Integration with Isabelle
A Generic Tableau Prover and Its Integration with Isabelle
Lawrence Paulson
 
Mechanized Proofs for a Recursive Authentication Protocol
Mechanized Proofs for a Recursive Authentication ProtocolMechanized Proofs for a Recursive Authentication Protocol
Mechanized Proofs for a Recursive Authentication Protocol
Lawrence Paulson
 
Mechanizing set theory: cardinal arithmetic and the axiom of choice
Mechanizing set theory: cardinal arithmetic and the axiom of choiceMechanizing set theory: cardinal arithmetic and the axiom of choice
Mechanizing set theory: cardinal arithmetic and the axiom of choice
Lawrence Paulson
 
MetiTarski: An Automatic Prover for Real-Valued Special Functions
MetiTarski: An Automatic Prover for Real-Valued Special FunctionsMetiTarski: An Automatic Prover for Real-Valued Special Functions
MetiTarski: An Automatic Prover for Real-Valued Special FunctionsLawrence Paulson
 
The Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZF
The Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZFThe Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZF
The Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZFLawrence Paulson
 
The Reflection Theorem: Formalizing Meta-Theoretic Reasoning
The Reflection Theorem: Formalizing Meta-Theoretic ReasoningThe Reflection Theorem: Formalizing Meta-Theoretic Reasoning
The Reflection Theorem: Formalizing Meta-Theoretic ReasoningLawrence Paulson
 
Proving Properties of Security Protocols by Induction
Proving Properties of Security Protocols by InductionProving Properties of Security Protocols by Induction
Proving Properties of Security Protocols by InductionLawrence Paulson
 
A Machine-Assisted Proof of Gödel's Incompleteness Theorems
A Machine-Assisted Proof of Gödel's Incompleteness TheoremsA Machine-Assisted Proof of Gödel's Incompleteness Theorems
A Machine-Assisted Proof of Gödel's Incompleteness TheoremsLawrence Paulson
 

More from Lawrence Paulson (13)

Proving Security Protocols Correct
Proving Security Protocols CorrectProving Security Protocols Correct
Proving Security Protocols Correct
 
Automated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phaseAutomated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phase
 
Source-Level Proof Reconstruction for Interactive Proving
Source-Level Proof Reconstruction for Interactive ProvingSource-Level Proof Reconstruction for Interactive Proving
Source-Level Proof Reconstruction for Interactive Proving
 
Defining Functions on Equivalence Classes
Defining Functions on Equivalence ClassesDefining Functions on Equivalence Classes
Defining Functions on Equivalence Classes
 
Organizing Numerical Theories using Axiomatic Type Classes
Organizing Numerical Theories using Axiomatic Type ClassesOrganizing Numerical Theories using Axiomatic Type Classes
Organizing Numerical Theories using Axiomatic Type Classes
 
A Generic Tableau Prover and Its Integration with Isabelle
A Generic Tableau Prover and Its Integration with IsabelleA Generic Tableau Prover and Its Integration with Isabelle
A Generic Tableau Prover and Its Integration with Isabelle
 
Mechanized Proofs for a Recursive Authentication Protocol
Mechanized Proofs for a Recursive Authentication ProtocolMechanized Proofs for a Recursive Authentication Protocol
Mechanized Proofs for a Recursive Authentication Protocol
 
Mechanizing set theory: cardinal arithmetic and the axiom of choice
Mechanizing set theory: cardinal arithmetic and the axiom of choiceMechanizing set theory: cardinal arithmetic and the axiom of choice
Mechanizing set theory: cardinal arithmetic and the axiom of choice
 
MetiTarski: An Automatic Prover for Real-Valued Special Functions
MetiTarski: An Automatic Prover for Real-Valued Special FunctionsMetiTarski: An Automatic Prover for Real-Valued Special Functions
MetiTarski: An Automatic Prover for Real-Valued Special Functions
 
The Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZF
The Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZFThe Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZF
The Relative Consistency of the Axiom of Choice — Mechanized Using Isabelle/ZF
 
The Reflection Theorem: Formalizing Meta-Theoretic Reasoning
The Reflection Theorem: Formalizing Meta-Theoretic ReasoningThe Reflection Theorem: Formalizing Meta-Theoretic Reasoning
The Reflection Theorem: Formalizing Meta-Theoretic Reasoning
 
Proving Properties of Security Protocols by Induction
Proving Properties of Security Protocols by InductionProving Properties of Security Protocols by Induction
Proving Properties of Security Protocols by Induction
 
A Machine-Assisted Proof of Gödel's Incompleteness Theorems
A Machine-Assisted Proof of Gödel's Incompleteness TheoremsA Machine-Assisted Proof of Gödel's Incompleteness Theorems
A Machine-Assisted Proof of Gödel's Incompleteness Theorems
 

Recently uploaded

LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 

Recently uploaded (20)

LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 

MetiTarski's menagerie of cooperating systems

  • 1. MetiTarski's Menagerie of Cooperating Systems Lawrence C. Paulson Computer Laboratory University of Cambridge
  • 2. 1. On Combining Systems
  • 3. Combining Systems is Hard! Example 1: “Integrating decision procedures into heuristic theorem provers: A case study of linear arithmetic” (Boyer and Moore, 1988) Example 2: “Reachability programming in HOL98 using BDDs” (MJC Gordon, 2000) Example 3: Isabelle’s Sledgehammer (2007) Example 4: Resolution + RCF = MetiTarski (2008)
  • 4. Adding Linear Arithmetic to the Boyer/Moore Prover Simply adding their (custom-made!) decision procedure to the Boyer/Moore prover had little effect. Deep integration with the rewriter was necessary: their decision procedure was no black box. Final version “like the software for the space shuttle”
  • 5. Adding BDDs to HOL98 What’s the point of BDDs here? Proof assistants don’t need to check huge tautologies. But… Mike Gordon added the BDD data structure to HOL. assertions relating formulas to their BDDs BDD-level operations directly available This package was general enough to implement model checking in HOL!
  • 6. Adding ATPs to Isabelle Similar integrations were attempted before, but how to make it usable for novices — and useful to experts? Sledgehammer provides automatic… problem translation (into FOL or whatever) lemma selection (out of the entire lemma library) process management (remote invocations, etc.) ATPs are invoked as black boxes—and are not trusted!
  • 7. Combining Clause Methods with Decision Procedures SMT: propositional over-approximation DPLL(Γ+!): a calculus for DPLL + superposition MetiTarski: a modified resolution prover using decision procedures to simplify clauses… and to delete redundant ones
  • 9. MetiTarski: the Key Ideas proving statements about exp, ln, sin, cos, tan-1 — via axioms bounding the functions by rational functions heuristics to isolate and remove function occurrences decision procedures for real arithmetic (RCF) (Real polynomial arithmetic is decidable! — though doubly exponential…)
  • 10. Some Upper/Lower Bounds Taylor series, … continued fractions, …
  • 11. Division Laws, abs, etc… x > 0 ) |x| = x x < 0 ) |x| = -x
  • 12. Analysing A Simple Problem split on signs of split on sign of x expressions How do we bring about these transformations? isolate occurrences of functions … replace them by their bounds replace division by multiplication call decision procedure
  • 13. Architectural Alternatives Roll your own tableau prover? Analytica (1993) Weierstrass (2001) we have full control — must micromanage the proof search Hack an existing resolution prover? no calculus—it’s ad-hoc (what is “the algorithm”?) resolution can surprise us
  • 14. 3. Details of the Integration
  • 15. Resolution Refresher Course Resolution operates on clauses: disjunctions of literals. Resolving two clauses yields a new one. The aim is to contradict the negation of the goal — by deriving the empty clause.
  • 16. Algebraic Literal Deletion Retain a list of the ground polynomial clauses (no variables). Delete any literal that is inconsistent with them… by calling an RCF decision procedure. Deleting literals helps to derive the empty clause. This process yields a fine-grained integration between resolution and a decision procedure.
  • 17. Literal Deletion Examples Unsatisfiable literals such as p2 < 0 are deleted. If x(y+1) > 1 is known, then x=0 will be deleted. The context includes the negations of adjacent literals in the clause: z2 > 3 ∨ z > 5 … the decision procedure reduces ∃z [z2 ! 3 ∧ z > 5] to false.
  • 18. A Tiny Proof: 8x |ex - 1| 6 e|x| - 1 absolute value (neg) 0 6 c _ e-c < 1 + |ec - 1| absolute value (neg) 1 6 ec _ 0 6 c _ e-c < 2 - ec lower bound: 1-c ! e-c 1 6 ec _ 0 6 c _ ec < 1 + c lower bound: 1+c ! ec 1 6 ec _ 0 6 c 0 ! c ⇒ 1 ! ec 1 6 ec absolute value (pos) e|c| < ec _ ec < 1 ⇤ negating the claim e|c| < 1 + |ec - 1| absolute value, etc. c < 0
  • 19. To Summarise… Replace functions by rational function upper or lower bounds, We obtain conjunctions of polynomial inequalities, and then get rid of division. ... which are decidable. Resolution theorem proving applies these steps “in its own way”.
  • 20. A Few Easy Examples…
  • 21. Our Decision Procedures QEPCAD (Hoon Hong, C. W. Brown et al.) venerable — very fast for univariate problems Mathematica (Wolfram research) much faster than QEPCAD for 3–4 variables Z3 (de Moura et al., Microsoft Research) an SMT solver with non-linear reasoning
  • 22. Integration Issues QEPCAD was purposely designed for human use — not as a back-end. With Z3 we go beyond black box integration, feeding back models to speed later execution. Machine learning can help identify the best decision procedure for a given problem. Many integration issues are trivial (e.g. buffer blocking) but vexing.
  • 24. MetiTarski's Applications Analogue circuit verifi-cation (Denman et al., 2009) Linear hybrid systems (Akbarpour & LCP, 2009) Abstracting non-polynomial dynamical systems (Denman, 2012) KeYmaera linkup: non-linear hybrid systems (Sogokon et al.) PVS linkup: NASA collision-avoidance projects (Muñoz & Denman)
  • 25. (What are Hybrid Systems?) dynamical systems where the state space has discrete modes (with transitions to other modes) continuous dynamics in each mode simple examples: bouncing ball, water tank any computer-controlled physical process autopilots, driverless trains, automated factories, …
  • 26. The Theromstat (sorry) x > 24 ˙x = -Kx x = 24 x = 25 off (cooling down) x < 25 ˙x = K(h - x) on (warming up)
  • 27. KeYmaera a verification tool for hybrid systems (Platzer) extends the KeY interactive prover with a dynamic logic a free-variable tableau calculus “differential induction” integration with RCF decision procedures MetiTarski extends its language from polynomials to allow transcendental functions.
  • 28. KeYmaera + MetiTarski ODE Solver Simplifier Mathematica QEPCAD MetiTarski Z3 Redlog KeYmaera QE
  • 29. Some KeYmaera Examples Damped pendulum, described by the second-order differential equation Ultimately, MetiTarski has to prove (This takes 1/4 sec) Stability proofs using Lyapunov functions
  • 30. MetiTarski + PVS Trusted interface, complementing PVS support of interval methods for polynomial estimation It’s being tried within NASA’s ACCoRD project. MetiTarski has been effective in early experiments … but there’s much more to do.
  • 31. Future Possibilities Refinements to the RCF decision process Integration with Isabelle? Formal proofs of all upper/lower bounds Can decision procedures return certificates? Machine learning within the decision procedures
  • 32. The Cambridge Team James Bridge William Denman Zongyan Huang (to 2008: Behzad Akbarpour)
  • 33. Acknowledgements Edinburgh: Paul Jackson, G Passmore, A Sogokon; Manchester: Eva Navarro Assistance from C. W. Brown, A. Cuyt, J. H. Davenport, J. Harrison, J. Hurd, D. Lester, C. Muñoz, U. Waldmann, etc. The research was supported by the Engineering and Physical Sciences Research Council [grant numbers EP/ C013409/1,EP/I011005/1,EP/I010335/1].