Difference between revisions of "BPJ Model Checking"

From BP Wiki
Jump to: navigation, search
(Additional Information)
(Introduction)
 
(One intermediate revision by one user not shown)
Line 7: Line 7:
 
* The model checking capabilities support checking for safety  properties (including deadlocks) and for liveness  properties (with  fairness assumptions)
 
* The model checking capabilities support checking for safety  properties (including deadlocks) and for liveness  properties (with  fairness assumptions)
 
* An application must be first enabled for model checking.
 
* An application must be first enabled for model checking.
 +
* Verification Example: [http://www.wisdom.weizmann.ac.il/~bprogram/videos/TTTVerification.avi  Movie: Using model-checking to repair a behavioral program for play Tic Tac Toe]:
 +
** We present a program for playing Tic Tac Toe and verify it using BP model checking.
 +
** When the b-thread for adding the third O in a line is removed, the program may lose the game.
 +
** "coding" and adding the b-thread, causes the program to never lose the game.
  
 
== Additional Information ==
 
== Additional Information ==

Latest revision as of 19:20, 27 April 2014

Verifying programs with BP model checking

Introduction

  • You can find bugs and under-specification in behavioral programs using model checking.
  • The model checking capability of BP (abbr. BPmc) is part of the overall BPJ execution infrastructure. Thus, the program can be verified directly by executing it (with appropriate setup) subject to all relevant alternatives. There is no need to create a separate model or abstraction to be verified by an external tool.
  • During model checking execution, the BP infrastructure executes all possible paths of a behavioral program looking for states with desired and undesired properties per your specification.
  • The model checking capabilities support checking for safety properties (including deadlocks) and for liveness properties (with fairness assumptions)
  • An application must be first enabled for model checking.
  • Verification Example: Movie: Using model-checking to repair a behavioral program for play Tic Tac Toe:
    • We present a program for playing Tic Tac Toe and verify it using BP model checking.
    • When the b-thread for adding the third O in a line is removed, the program may lose the game.
    • "coding" and adding the b-thread, causes the program to never lose the game.

Additional Information