SlideServe
Menu
Préférences
© SlideServe · v2026

Algorithms and Data Structures for Logic Synthesis and Verification using Boolean Satisfiability

kata avatar
236 diapositives · 2.7K Views · Oct 22, 2014

Algorithms and Data Structures for Logic Synthesis and Verification using Boolean Satisfiability. John Backes (back0145@umn.edu) Advisor: Marc Riedel (mriedel@umn.edu ). Work Since Prelim. Regression Verification Using Impact Summaries – Sub. to CAV 2013

Algorithms and Data Structures for Logic Synthesis and Verification using Boolean Satisfiability - slide 1
01 / 236Algorithms and Data Structures for Logic Synthesis and Verification using Boolean Satisfiability
1 / 17

Télécharger la présentation

Algorithms and Data Structures for Logic Synthesis and Verification using Boolean Satisfiability
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Algorithms and Data Structures for Logic Synthesis and Verification using Boolean Satisfiability John Backes (back0145@umn.edu) Advisor: Marc Riedel (mriedel@umn.edu)

  2. Work Since Prelim • Regression Verification Using Impact Summaries – Sub. to CAV 2013 • J. Backes, S. Person, N. Rungta, O. Tkachuk • Proteus: A Change Impact Analysis Framework • J. Backes, S. Person, N. Rungta, O. Tkachuk • Ghost Talk: Mitigating EMI Signal Injection Attacks against Analog Sensors –Oakland 2013 • D. Kune, J. Backes, S. Clark, W. Xu, M. Reynolds, K. Fu, Y. Kim • Using Cubes of Non-state Variables With Property Directed Reachability –DATE 2013 • J. Backes, M. Riedel

  3. Overview of Topics

  4. Overview of Topics

  5. Overview of Topics

  6. Overview of Topics

  7. Overview of Topics

  8. Overview of Topics 2 3 1

  9. Theme: Synthesis + Verification

  10. Contributions • Cyclic Circuits • SAT-Based Synthesis of Functions • SAT-Based Analysis and Mapping • Resolution Proofs • Reduction of Craig Interpolants • Use as Synthesis Data Structure • Property Directed Reachability • Extension to Non-state Variables

  11. Background

  12. “¬” or “x” is negation “+” or “˅” is OR “∙” or “˄” is AND An appearance of a variable is a literal. An OR of literals is a clause. Boolean Satisfiability Is there some assignment of a, b, c, and d that satisfies this (CNF) formula? ( )( )( )( )( ) ( )( ) a + ¬ c + d ¬ a + ¬ c + d a + c ¬ a + c ¬ d d + ¬c a + b

  13. “¬” or “x” is negation “+” or “˅” is OR “∙” or “˄” is AND An appearance of a variable is a literal. An OR of literals is a clause. Boolean Satisfiability Is there some assignment of a, b, c, and d that satisfies this (CNF) formula? ( )( )( )( )( ) ( )( ) a + ¬ c + d ¬ a + ¬ c + d a + c ¬ a + c ¬ d d + ¬c a + b ( ) ( ) c ¬ c

  14. “¬” or “x” is negation “+” or “˅” is OR “∙” or “˄” is AND An appearance of a variable is a literal. An OR of literals is a clause. Boolean Satisfiability Is there some assignment of a, b, c, and d that satisfies this (CNF) formula? ( )( )( )( )( ) ( )( ) a + ¬ c + d ¬ a + ¬ c + d a + c ¬ a + c ¬ d d + ¬c a + b ( ) ( ) c ¬ c ( ) UNSAT!

  15. Boolean Satisfiability • The Original NP-Complete Problem (Cook–Levin theorem) • But can be very fast in practice • Used in Many Domains • Artificial Intelligence • Formal Verification • Logic Synthesis

  16. Tseitin Transformation • Circuit can be converted into CNF formula in linear time (adding extra variables)

  17. Tseitin Transformation

  18. Tseitin Transformation

  19. Tseitin Transformation

  20. Tseitin Transformation

  21. Use Cubes of Non-state Variables with PDR

  22. Model Checking • What is model checking? • Given a mathematical model of some real-world system, does the model exhibit a property? • Models are transition systems (Finite state machines (FSMs))

  23. Example: Wallace Algorithm

  24. Example: Wallace Algorithm

  25. Example: Wallace Algorithm

  26. Example: Wallace Algorithm

  27. Example: Wallace Algorithm

  28. Example: Wallace Algorithm

  29. Example: Wallace Algorithm

  30. Example: Wallace Algorithm

  31. Wallace Properties • “Wallace never returns to his bed after leaving” • “Wallace will always eventually eat” • “Wallace never immediately eats after drinking”

  32. Symbolic Model Checking • Model checking suffers the “state-space explosion problem” • Algorithms use symbolic representation for sets of states • Original symbolic algorithms used BDDs more recent algorithms use SAT

  33. Model Checking Example • State graph is described by transition relation

  34. Model Checking Example • State graph is described by transition relation • Primary Inputs • State Inputs • State Outputs • Property Output

  35. Model Checking Example • Property holds for n transitions if ¬P is UNSAT in unrolled transition relation

  36. Model Checking Example • Property holds for n transitions if ¬P is UNSAT in unrolled transition relation

  37. Model Checking Example • Property holds for n transitions if ¬P is UNSAT in unrolled transition relation

  38. Model Checking Example • Property holds for n transitions if ¬P is UNSAT in unrolled transition relation

  39. Model Checking Example • Property holds for n transitions if ¬P is UNSAT in unrolled transition relation

  40. What is PDR? • Property Directed Reachability (PDR) • New symbolic model checking algorithm • Solves individual frames in isolation • Advantages over other algorithms • SAT-Based not BDD-Based • No need for long unrollings • No spurious counter examples

  41. How does PDR work? • The trace contains sets of clausesFi called frames. • Frame Fi symbolically represents over approximation of states reachable in i transitions.

  42. How Does PDR Work? CNF formula:T0 CNF formula:T1 CNF formula:T2

  43. How Does PDR Work? SAT?:T1˄ x’1x’2x’3x’4 SAT?: T 2˄ ¬P’ SAT?:I ˄ T0˄ x’1x’2x’3x’4 Result: UNSAT! Result: x1x2x3x4 Result: x1x2x3x4

  44. How Does PDR Work? x1x2x3x4 x1x2x3x4 I F0 ¬P x1x2x3x4 x1x2x3x4 CNF formula: T Fi x1x2x3 Cube Reduction! x1x2x4 SAT?: Fi˄ T ˄ ¬P’ SAT?: Fi-1 ˄ T ˄ x’1x’2x’3x’4 Prev State Next State

  45. How to improve PDR • PDR requires small cubes to be effective • Reductions via Ternary Valued Simulation • Reductions via MUC inspection • Idea: The use of non-state variables may yield smaller cubes

  46. Intuition for Non-State Variables Fi-1 Three cubes in terms of x0x1x2x3blocked by one cube in terms of g0g1! Fi

  47. Shifting the Transition Relation Fi-1 Fi

  48. Shifting the Transition Relation Fi-1 Fi

  49. Shifting the Transition Relation Fi-1 Fi

  50. Ternary Valued Simulation • After solving Query: Fi˄ T ˄ x’6x’7 • Satisfying assignment: x1x2x3x4 “ ” is an unknown value ┴