1 / 40

Beyond Regular Model Checking

Beyond Regular Model Checking. By Prof. Dana Fisman and Prof. Amir Pnueli. Presented by Yanir Damti. State explosion problem Parameterized systems Variables over infinite range Symbolic model checking solves this problem by representing the model implicitly For example with BDDs.

zahina
Télécharger la présentation

Beyond Regular Model Checking

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. Beyond RegularModel Checking By Prof. Dana Fisman and Prof. Amir Pnueli Presented by Yanir Damti

  2. State explosion problem • Parameterized systems • Variables over infinite range • Symbolic model checking solves this problem by representing the model implicitly • For example with BDDs Background

  3. Use {formal languages} for model representation • One established method is using Regular languages Verification and formal languages

  4. “x is even”: This is a counter system. Sets of states are over alphabet , and the transition relation is over alphabet Regular model checking - Example

  5. – Alphabet • – A language over the alphabet • We denote a word in : • Projection: • L - A language over • Lifting: Few Basic Definitions

  6. Regular languages can be applied to several types of parameterized problems. • Many interesting parameterized systems cannot be represented by regular languages. • The Peterson mutual exclusion algorithm that we’ll see later. • We’ll see three methods using non-regular classes of languages. Non-Regular model checking

  7. On one hand: On the other hand: Adequate for symbolic model checking More expressive than the regular languages Aim: Find a class of languages

  8. Adequacy for Symbolic Model Checking Size of an adequate class of languages is bounded by a set of requirements.

  9. The following languages describe a model: • - property to be verified • - set of initial states • - transition relation Next, we see an algorithm using them. General method for symbolic model checking

  10. Complementation For repeat until return Lifting Equivalence Projection Emptiness Intersection Procedure Backward MC

  11. For repeat until return • – property to be verified, – set of initial states, – transition relation • - classes of languages • We say are adequate for symbolic model checking if the requirements to follow hold. More accurately…

  12. For repeat until return Requirements for Backward MC: • are adequate for representing respectively. • is closed under complementation. • is closed under lifting. • is closed under intersectionwith . • is closed under projection. • is closed under intersection with , and emptiness is decidable for . • Equivalence is decidable for two languages in . More accurately…

  13. 1 3 2 Define a new non-regular class of languages Initial states – non-regular, the rest – regulars Private case of 2 3 Methods

  14. : natural initially • Number of processes • : array ofinitially • Array of priorities • : arrayof • Array of signatures The Peterson Algorithm for Mutual Exclusion

  15. : Number of processes : Priorityarray : Signature array : integer : loop forever do : Non-Critical : fortodo : : await : Critical : Process : The Peterson Algorithm for Mutual Exclusion

  16. 1 Initial states – non-regular, the rest – regulars

  17. Set of initial states Property to be verified, transition relation Regular language Context-free language 1 Main Principle

  18. For repeat until return • We take to be the context-free languages class • We take and to be the regular languages class • The extra help from the context-free class will make Peterson’s algorithm verification possible. 1 Main Principle

  19. 1 Critical (priority still ) Priority (waiting processes) Representing Peterson’s System

  20. Transition relation: Property’s negation: 1 Representing Peterson’s System

  21. For repeat until return • We defined initial states as a context-free language. • We defined the transition relation and property with regular languages. We can model check with the Backward-MC algorithm 1 Goal: Show Mutual Exclusion

  22. 2 Define a new non regular class of languages

  23. A DPDAis a tuple • – Input alphabet • – Set of states • - Initial state • – Stack alphabet • – Stack bottom symbol • – Transition relation: • – Set of accepting states 2 Reminder: Pushdown Automata

  24. The class of languages accepted by pushdown automata is denoted: • We also denote the regulars as: 2 Pushdown Automata Language Class

  25. We define an operation: • We take a specific 1DPDA: • We look at the set of all DPDA that is a result of the above operation on with some FA, : 2 DPDA with one state Main Principle

  26. Let be a 1DPDA: • can be considered: • Let be a DFA: 2 Cascade Product

  27. The cascade product is a DPDA: • The transition relation: 2 Cascade Product

  28. Let be over alphabet , for some . • Let be a mapping from to . • The cascade product with respect to , : 2 Let’s complicate…

  29. Let be as before. • Let be a DPDA: • If for some and some , then we say is . • We define the class of languages accepted by any DPDA: 2 Define a Class of Languages

  30. For repeat until return We will show effective closure under: • Complementation • Lifting • Intersection with a regular language And we will also show: • Equivalence is effectively decidable • Emptinessis effectively decidable The hard part: showing closure under projection. 2 is Adequate for Symbolic Model Checking

  31. Let • For simplification assume: • Input alphabet of A is • We compute the automaton of the projection of on the first coordinate: 2 Computing Projection

  32. 3 Special Case of Cascade Product

  33. We consider the cascade product where: • does not look at the stack • To accepted a word, stack have to be emptied 3 Simple Product

  34. Separate the DFA part of the representation so that projection can be computed only using the DFA. • If we can write where is regular and has certain properties, than we can use the following algorithm for model checking. 3 Main Principle

  35. Original algorithm: For repeat until return For repeat until return 3 Modified Backward MC

  36. For repeat until return • The computation of in both versions is identical. That is: Induction 3 Original algorithm The Main Claim

  37. Definition: A language is left preserved by a bi-language if: • If and is left preserved by , than we can use the modified Forward MC 3 Preserved Language

  38. is left preserved by We can use the modified Forward MC 3 Peterson example

  39. Claim: • Proof: 3 Problem in the Claim

  40. Definition: Fixing the Problem

More Related