effectively propositional interpolants
play

Effectively Propositional Interpolants Samuel Drews and Aws - PowerPoint PPT Presentation

Effectively Propositional Interpolants Samuel Drews and Aws Albarghouthi Effectively Propositional Logic (EPR) Quantifier-free No function symbols EPR Decidable satisfiability! EPR Decidable satisfiability! Expressive: Linked lists


  1. Effectively Propositional Interpolants Samuel Drews and Aws Albarghouthi

  2. Effectively Propositional Logic (EPR) Quantifier-free No function symbols

  3. EPR Decidable satisfiability!

  4. EPR Decidable satisfiability! Expressive: ● Linked lists [Itzhaky et al. 2014] ● Software-defined networks [Ball et al. 2014] ● Parameterized distributed protocols [Padon et al. 2016] ● …

  5. Interpolants Given A and B such that A A ∧ B is unsatisfiable B

  6. Interpolants Given A and B such that A A ∧ B is unsatisfiable B Find I such that I A → I is valid I ∧ B is unsatisfiable I is in shared vocabulary ( A , B )

  7. Restricted Logics for Invariants is valid, or is unsat

  8. Restricted Logics for Invariants is valid, or is unsat

  9. Restricted Logics for Invariants is valid, or is unsat ∃ * ∀ * φ decidable, but ∀ * ∃ * φ undecidable

  10. Restricted Logics for Invariants is valid, or is unsat ∃ * ∀ * φ decidable, but ∀ * ∃ * φ undecidable Bummer

  11. Restricted Logics for Invariants 1. ∃ -logic: ∃ * φ 2. ∀ -logic: ∀ * φ is valid, or 3. AF-logic: boolean combinations of is unsat ∃ -logic and ∀ -logic ex: ( ∃ * φ 1 ∧ ∀ * φ 2 ) ∨ ∀ * φ 3 ∃ * ∀ * φ decidable, but ∀ * ∃ * φ undecidable Bummer

  12. Models and Diagrams

  13. Models and Diagrams Model c 1 c 2

  14. Models and Diagrams Model Diagram c 1 c 2

  15. Models and Diagrams

  16. UITP: for ∃ -Logic Interpolants A A B B

  17. UITP: for ∃ -Logic Interpolants m 1 A A B B

  18. UITP: for ∃ -Logic Interpolants diag ( m 1 ) m 1 A A B B

  19. UITP: for ∃ -Logic Interpolants diag ( m 1 ) m 2 m 1 A A B B

  20. UITP: for ∃ -Logic Interpolants diag ( m 1 ) diag ( m 2 ) m 2 m 1 A A B B

  21. UITP: for ∃ -Logic Interpolants diag ( m 1 ) diag ( m 2 ) m 2 m 1 A A m 3 B B

  22. UITP: for ∃ -Logic Interpolants diag ( m 1 ) diag ( m 2 ) m 2 m 1 A A m 3 B B diag ( m 3 )

  23. UITP: for ∃ -Logic Interpolants A A B B

  24. UITP: for ∃ -Logic Interpolants m 1 A A B B

  25. UITP: for ∃ -Logic Interpolants diag ( m 1 ) m 1 A A B B

  26. UITP: for ∃ -Logic Interpolants diag ( m 1 ) m 1 m 2 A A B B

  27. UITP: for ∃ -Logic Interpolants diag ( m 1 ) m 1 m 2 A A B B diag ( m 2 )

  28. UITP: for ∃ -Logic Interpolants diag ( m 1 ) m 1 m 2 A A B B diag ( m 2 ) diag ( m 2 ) ∧ B is sat

  29. UITP: for ∃ -Logic Interpolants diag ( m 1 ) No ∃ -logic Interpolant m 1 m 2 A A B B diag ( m 2 ) diag ( m 2 ) ∧ B is sat

  30. UITP Soundness ● Returning I : interpolant by construction ● Returning none is sound: diag ( m ) is the strongest ∃ -logic formula that m models

  31. UITP Soundness ● Returning I : interpolant by construction ● Returning none is sound: diag ( m ) is the strongest ∃ -logic formula that m models A m B

  32. UITP Soundness ● Returning I : interpolant by construction ● Returning none is sound: diag ( m ) is the strongest ∃ -logic formula that m models ∃ * φ A m B

  33. UITP Soundness ● Returning I : interpolant by construction ● Returning none is sound: diag ( m ) is the strongest ∃ -logic formula that m models ∃ * φ ∃ * φ ∧ B still sat A m B

  34. UITP Termination (and Completeness) EPR small model property: All EPR A have a bound k such that m ⊧ A → ∃ m small : ● m small ⊧ A ● m small ⊆ m ● | m small | ≤ k

  35. UITP Termination (and Completeness) EPR small model property: So m ⊧ diag ( m small ) All EPR A have a bound k such that m ⊧ A → ∃ m small : ● m small ⊧ A ● m small ⊆ m ● | m small | ≤ k

  36. UITP Termination (and Completeness) EPR small model property: So m ⊧ diag ( m small ) All EPR A have a bound k such that m ⊧ A → ∃ m small : ● m small ⊧ A ● m small ⊆ m ● | m small | ≤ k

  37. UITP: for ∀ -Logic Interpolants A B

  38. UITP: for ∀ -Logic Interpolants A B B A

  39. BITP: for AF-Logic Interpolants A B

  40. BITP: for AF-Logic Interpolants m 1 A B

  41. BITP: for AF-Logic Interpolants m 1 A B

  42. BITP: for AF-Logic Interpolants m 1 A m 2 B

  43. BITP: for AF-Logic Interpolants m 1 A A m 2 B B

  44. BITP: for AF-Logic Interpolants ∃ * φ 1 ∧ ∀ * φ 2 m 1 A A m 2 B B

  45. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination A B

  46. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination A B

  47. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination A B

  48. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination A B

  49. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination A … B

  50. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination A If φ ∈ AF-logic And A → φ … Then φ ∧ B is sat B

  51. BITP Soundness and Relative Completeness Soundness: returned I is interpolant by construction Rel. Compl.: Existence of AF-logic interpolant → termination No AF-logic A If φ ∈ AF-logic Interpolant And A → φ … Then φ ∧ B is sat B

  52. Experiments ITPV: an interpolation-based verifier Compared to PDR ∀ [Itzhaky et al., 2014] on linked-list programs

  53. Experiments ITPV: an interpolation-based verifier Compared to PDR ∀ [Itzhaky et al., 2014] on linked-list programs Mostly comparable in finding ∀ -logic invariants ITPV can find AF-logic invariants

  54. Experiments ITPV: an interpolation-based verifier Compared to PDR ∀ [Itzhaky et al., 2014] on linked-list programs Mostly comparable in finding ∀ -logic invariants ITPV can find AF-logic invariants WOW!

  55. Conclusion UITP and BITP interpolate EPR formulae UITP: sound/complete finding interpolants in ∃ - and ∀ -logic BITP: sound/rel.comp. finding interpolants in AF-logic

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend