Advanced Decision Methods for Symbolic Reasoning: A Summer School Overview
This overview discusses decision methods for symbolic reasoning, emphasizing the importance of logic in computer science, as highlighted in the summer school conducted by Leonardo de Moura at Microsoft Research. Key concepts like SAT, CNF, clauses, literals, and resolution procedures are explored, showcasing techniques for conflict resolution, model finding, and proof generation. Additionally, the significance of finite basis theories, including those related to uninterpreted functions and arrays, is addressed. The complexities of conflict-driven clause learning (CDCL) and DPLL algorithms are also examined, along with their application in software analysis and verification.
Advanced Decision Methods for Symbolic Reasoning: A Summer School Overview
E N D
Presentation Transcript
Decision methods for arithmeticThird summer school on formal methods Leonardo de Moura Microsoft Research
Symbolic Reasoning Software analysis/verification tools need some form of symbolic reasoning Logic is “The Calculus of Computer Science” Zohar Manna
Saturation x Search Proof-finding Model-finding Proofs Conflict Resolution Models
SAT CNF is a set (conjunction) set of clauses Clause is a disjunction of literals Literal is an atom or the negation of an atom
Resolution Improvements Delete tautologies Ordered Resolution Subsumption (delete redundant clauses) …
Resolution: Problem Exponential time and space
Unit Resolution subsumes Complete for Horn Clauses
DPLL Split rule DPLL = Unit Resolution + Split rule
CDCL: Conflict Driven Clause Learning DPLL Conflict Resolution Resolution Model Proof
MCSat Propagations
MCSat Propagations
MCSat Propagations
MCSat Decisions
MCSat Model Assignments
MCSat Model Assignments We can’t falsify any fact in the trail.
MCSat Conflict We can’t find a value of s.t.
MCSat Conflict Learning that = 2) is not productive We can’t find a value of s.t.
MCSat Conflict
MCSat Learned by resolution
MCSat – Finite Basis Every theory that admits quantifier elimination has a finite basis (given a fixed assignment order)
MCSat – Finite Basis Every “finite” theory has a finite basis
MCSat – Finite Basis Theory of uninterpreted functions has a finite basis Theory of arrays has a finite basis [Brummayer- Biere 2009] In both cases the Finite Basis is essentially composed of equalities between existing terms.
MCSat: Termination Propagations Decisions Model Assignments
MCSat Propagations Decisions Model Assignments
MCSat Propagations Decisions Model Assignments
MCSat Maximal Elements …