1 / 11

Leaping Loops in the Presence of Abstraction

Leaping Loops in the Presence of Abstraction. Thomas Ball Orna Kupferman Mooly Sagiv Presentation by Erkan Keremoglu. Motivation. Abstraction is widely used in software verification Techniques using abstraction lose precision in the presence of loops

cerise
Download Presentation

Leaping Loops in the Presence of Abstraction

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. Leaping Loops in the Presence of Abstraction • Thomas Ball • Orna Kupferman • Mooly SagivPresentation by Erkan Keremoglu

  2. Motivation • Abstraction is widely used in software verification • Techniques using abstraction lose precision in the presence of loops • Refinement methods will generate a predicate for each iteration • This approach analyzes termination of loops without refinemets

  3. The Idea • Replace may transitions by must transitions • This is done by checking conditions that guarentee that the transitions of the concrete system builds an acyclic connected graph • Finiteness of the concrete states guarenteed the finiteness of the graph

  4. Transitions • mayand must transitions • may transitions are not transitive --> may (a, a'), may (a',a'') but still for all c in a and c'' in a'' we may not have a transition from c to c''

  5. Leaping Loops • Two theorems are checked to decide termination of loops • This theorem rules out unreachable cycles and nondeterminism inside state a

  6. Example for Theorem 1 • We can conclude that there is a must path from x=0 to 3n <= x

  7. Theorem 2 • This is the second theorem, this time for forward traversal • Any of the two theorems can be used for detection of termination

  8. How to Implement? • The idea is to check if there are must relations between given two abstract states • If the system behaves deterministically this is easy to check in the absence of loops • The method enters the picture in cases 1 < i < n such that ai is associated with a loop • Entry and exit points are detected and either theorem 1 or 2 is checked for satisfiability

  9. Calculation of Ports Using Theorem Prover • Entry and exit ports are determined by using WP and SP relations

More Related