Formal Methods in System Design

, Volume 29, Issue 2, pp 117–134 | Cite as

Distributed breadth-first search LTL model checking

  • Jiří Barnat
  • Ivana Černá


We propose a parallel distributed memory on-the-fly algorithm for enumerative LTL model checking. The algorithm is designed for networks of workstations communicating via MPI. The detection of cycles (faulty runs) effectively employs the so-called back-level edges. In particular, a parallel level synchronized breadth-first search of the graph is performed to discover all back-level edges, and for each level the back-level edges are checked in parallel by a nested search procedure to confirm or refute the presence of a cycle. Several improvements of the basic algorithm are presented and advantages and drawbacks of their application to distributed LTL model checking are discussed.


LTL model checking Breadth-first search Distributed memory 


  1. 1.
    Barnat J, Brim L, Černa´ I (2002) Property driven distribution of nested DFS. In: Proceeding of the 3rd International Workshop on Verification and Computational Logic (VCL'2002). DSSE Technical Report, Pittsburgh, PA, USA, pp 1–10Google Scholar
  2. 2.
    Barnat J, Brim L, Stříbrn´ J (2001) Distributed LTL model-checking in SPIN. In: Proceedings of the 8th International SPIN Workshop on Model Checking of Software, vol 2057 of LNCS, Springer, pp 200–216Google Scholar
  3. 3.
    Barnat J, Brim L, Čern´ I, Šimeček P (July 2005) DiVinE—The distributed verification environment. In: Proceedings of 4th International Workshop on Parallel and Distributed Methods in verifiCation, pp 89–94Google Scholar
  4. 4.
    Barnat J (2004) Distributed memory LTL model checking. PhD thesis, Faculty of Informatics, Masaryk University BrnoGoogle Scholar
  5. 5.
    Brim L, Černá I, Krčál P, Pelánek R (2001) Distributed LTL model checking based on negative cycle detection. In: Proceedings of Foundations of Software Technology and Theoretical Computer Science (FST–TCS'01), volume 2245 of LNCS, Springer, pp 96–107Google Scholar
  6. 6.
    Brim L, Černá I, Moravec P, Šimša J (2004) Accepting predecessors are better than back edges in distributed ltl model-checking. In: Formal Methods in Computer-Aided Design (FMCAD), volume 3312 of LNCS, Springer, pp 352–366Google Scholar
  7. 7.
    Brim L, Černá I, Moravec P, Šimša J (April 2005) Distributed partial order reduction. Electr Notes Theoret Comput Sci., 128:63–74Google Scholar
  8. 8.
    Černá I,  Pelánek R (2003) Distributed explicit fair cycle detection (set based approach). In: Model Checking Software. 10th International SPIN Workshop, volume 2648 of LNCS, Springer, pp 49–73Google Scholar
  9. 9.
    Černá I, Pelánek R (2003) Relating hierarchy of temporal properties to model checking. In: Mathematical Foundations of Computer Science (MFCS), volume 2747 of LNCS, Springer, pp 318–327Google Scholar
  10. 10.
    Clarke EM, Grumberg O, Peled DA (1999) Model Checking, The MIT Press, Cambridge, MassachusettsGoogle Scholar
  11. 11.
    Courcoubetis C, Vardi M, Wolper P, Yannakakis M (1992) Memory-efficient algorithms for the verification of temporal properties. Formal Methods System Designxy, 1:275–288Google Scholar
  12. 12.
    Dwyer MB, Avrunin GS, Corbett JC (1998) Property specification patterns for finite-state verification. In: Proc. Workshop on Formal Methods in Software Practice, ACM Press, pp 7–15Google Scholar
  13. 13.
    Edelkamp S, Lluch-Lafuente A, Leue S (2001) Directed model-checking in HSF-SPIN. In: Matthew B. Dwyer (ed), 8th International SPIN Workshop, number 2057 in LNCS, Springer, pp 57–79Google Scholar
  14. 14.
    Hojati R, Touati H, Kurshan RP, Brayton RK (1992) Efficient omega-regular language containment. In: Computer Aided Verification, volume 663 of LNCS, Springer, pp 396–409.Google Scholar
  15. 15.
    Holzmann GJ (1997) The model checker SPIN. IEEE Trans Softw Eng 23(5):279–295Google Scholar
  16. 16.
    Lerda F, Sisto R (1999) Distributed-memory model checking with SPIN. In: Proc. of the 5th International SPIN Workshop, volume 1680 of LNCS, SpringerGoogle Scholar
  17. 17.
    Pnueli A (1981) The temporal logic of conurrent programs. Theoret. Comput Sci 13:45–60Google Scholar
  18. 18.
    Vardi MY, Wolper P (1986) Automata theoretic techniques for modal logics of programs. J Comput System Sci 32:183–221Google Scholar

Copyright information

© Springer Science + Business Media, LLC 2006

Authors and Affiliations

  • Jiří Barnat
    • 1
  • Ivana Černá
    • 1
  1. 1.Faculty of InformaticsMU BrnoBrnoCzech Republic

Personalised recommendations