1 / 57

Decision methods for arithmetic Third summer school on formal methods

Decision methods for arithmetic Third 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.

donoma
Download Presentation

Decision methods for arithmetic Third summer school on formal methods

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Decision methods for arithmeticThird summer school on formal methods Leonardo de Moura Microsoft Research

  2. Symbolic Reasoning Software analysis/verification tools need some form of symbolic reasoning Logic is “The Calculus of Computer Science” Zohar Manna

  3. Saturation x Search Proof-finding Model-finding Proofs Conflict Resolution Models

  4. 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

  5. Two procedures

  6. Resolution Improvements Delete tautologies Ordered Resolution Subsumption (delete redundant clauses) …

  7. Resolution: Example

  8. Resolution: Example

  9. Resolution: Example

  10. Resolution: Example

  11. Resolution: Example

  12. Resolution: Problem Exponential time and space

  13. Unit Resolution subsumes Complete for Horn Clauses

  14. DPLL Split rule DPLL = Unit Resolution + Split rule

  15. DPLL

  16. DPLL

  17. DPLL

  18. DPLL

  19. DPLL

  20. DPLL

  21. CDCL: Conflict Driven Clause Learning DPLL Conflict Resolution Resolution Model Proof

  22. MCSat

  23. MCSat Propagations

  24. MCSat Propagations

  25. MCSat Propagations

  26. MCSat Decisions

  27. MCSat Model Assignments

  28. MCSat Model Assignments We can’t falsify any fact in the trail.

  29. MCSat Conflict We can’t find a value of s.t.

  30. MCSat Conflict Learning that = 2) is not productive We can’t find a value of s.t.

  31. Conflict

  32. MCSat

  33. MCSat Conflict

  34. MCSat Learned by resolution

  35. MCSat

  36. MCSat – Finite Basis Every theory that admits quantifier elimination has a finite basis (given a fixed assignment order)

  37. MCSat – Finite Basis

  38. MCSat – Finite Basis

  39. MCSat – Finite Basis

  40. MCSat – Finite Basis

  41. MCSat – Finite Basis Every “finite” theory has a finite basis

  42. 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.

  43. MCSat: Termination Propagations Decisions Model Assignments

  44. MCSat Propagations Decisions Model Assignments

  45. MCSat Propagations Decisions Model Assignments

  46. MCSat Maximal Elements …

  47. Conflict

  48. Conflict

  49. Conflict

  50. MCSat

More Related