Parallel External Directed Model Checking with Linear I/O

In this paper we present Parallel External A*, a parallel variant of external memory directed model checking. As a model scales up, its successors generation becomes complex and, in turn, starts to impact the running time of the model checker. Probings of our external memory model checker IO-HSF-SPIN revealed that in some of the cases about 70% of the whole running time was consumed in the internal processing. Employing a multiprocessor machine or a cluster of workstations, we can distribute the internal working load of the algorithm on multiple processors. Moreover, assuming a sufficient number of processors and number of open file pointers per process, the I/O complexity is reduced to linear by exploiting a hash-function based state space partition scheme.

[1]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[2]  Richard E. Korf,et al.  Best-First Frontier Search with Delayed Duplicate Detection , 2004, AAAI.

[3]  Lubos Brim,et al.  Distributed LTL model-checking in SPIN , 2001, SPIN '01.

[4]  Richard E. Korf,et al.  Divide-and-Conquer Frontier Search Applied to Optimal Sequence Alignment , 2000, AAAI/IAAI.

[5]  Richard E. Korf,et al.  Large-Scale Parallel Breadth-First Search , 2005, AAAI.

[6]  Stefan Edelkamp,et al.  External Symbolic Heuristic Search with Pattern Databases , 2005, ICAPS.

[7]  Michael D. Jones,et al.  Time-Efficient Model Checking with Magnetic Disk , 2005, TACAS.

[8]  German Conference on Artificial Intelligence , 2004, Künstliche Intell..

[9]  David L. Dill,et al.  Parallelizing the Murphi Verifier , 1997, CAV.

[10]  Alex Groce,et al.  Heuristic Model Checking for Java Programs , 2002, SPIN.

[11]  Assaf Schuster,et al.  Achieving Scalability in Parallel Reachability Analysis of Very Large Circuits , 2000, CAV.

[12]  Ulrich Meyer,et al.  Algorithms for Memory Hierarchies , 2003, Lecture Notes in Computer Science.

[13]  Stefan Edelkamp,et al.  I/O Efficient Directed Model Checking , 2005, VMCAI.

[14]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[15]  Eric A. Hansen,et al.  External-Memory Pattern Databases Using Structured Duplicate Detection , 2005, AAAI.

[16]  Philippe Schnoebelen,et al.  Systems and Software Verification, Model-Checking Techniques and Tools , 2001 .

[17]  Doron A. Peled,et al.  Ten Years of Partial Order Reduction , 1998, CAV.

[18]  Alberto Lluch-Lafuente Directed search for the verification of communication protocols , 2003 .

[19]  Rajeev Raman,et al.  Algorithms — ESA 2002 , 2002, Lecture Notes in Computer Science.

[20]  John H. Reif,et al.  Depth-First Search is Inherently Sequential , 1985, Inf. Process. Lett..

[21]  Kamesh Munagala,et al.  I/O-complexity of graph algorithms , 1999, SODA '99.

[22]  U. Stern,et al.  Using Magnatic Disk Instead of Main Memory in the Murphi Verifier , 1998, CAV.

[23]  Alex Groce,et al.  Heuristics for model checking Java programs , 2004, International Journal on Software Tools for Technology Transfer.

[24]  Mieke Massink,et al.  Theoretical and Practical Aspects of SPIN Model Checking , 1999, Lecture Notes in Computer Science.

[25]  David L. Dill,et al.  Validation with guided search of the state space , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[26]  Kousha Etessami,et al.  Analysis of Recursive Game Graphs Using Data Flow Equations , 2004, VMCAI.

[27]  Stefan Edelkamp,et al.  External A* , 2004, KI.

[28]  Shoham Ben-David,et al.  Scalable distributed on-the-fly symbolic model checking , 2000, International Journal on Software Tools for Technology Transfer.

[29]  Philippe Schnoebelen,et al.  Systems and Software Verification , 2001, Springer Berlin Heidelberg.

[30]  Stefan Leue,et al.  Formalization and validation of the General Inter-ORB Protocol (GIOP) using PROMELA and SPIN , 2000, International Journal on Software Tools for Technology Transfer.

[31]  Günther Palm,et al.  KI 2004: Advances in Artificial Intelligence , 2004, Lecture Notes in Computer Science.

[32]  Kurt Mehlhorn,et al.  External-Memory Breadth-First Search with Sublinear I/O , 2002, ESA.

[33]  Lars Michael Kristensen,et al.  Efficient Path Finding with the Sweep-Line Method Using External Storage , 2003, ICFEM.

[34]  Stefan Edelkamp,et al.  Localizing A* , 2000, AAAI/IAAI.

[35]  Flavio Lerda,et al.  Distributed-Memory Model Checking with SPIN , 1999, SPIN.

[36]  Stefan Edelkamp,et al.  Directed explicit-state model checking in the validation of communication protocols , 2004, International Journal on Software Tools for Technology Transfer.

[37]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

[38]  Kenneth L. McMillan Symmetry and Model Checking , 2000 .

[39]  Robert P. Kurshan,et al.  Verification of Digital and Hybrid Systems , 2000, NATO ASI Series.

[40]  Eric A. Hansen,et al.  Structured Duplicate Detection in External-Memory Graph Search , 2004, AAAI.

[41]  Jop F. Sibeyn,et al.  Algorithms for Memory Hierarchies: Advanced Lectures , 2003 .

[42]  Andreas Podelski,et al.  ACSAR: Software Model Checking with Transfinite Refinement , 2007, SPIN.