Abstractions and Pattern Databases: The Quest for Succinctness and Accuracy

Directed model checking is a well-established technique for detecting error states in concurrent systems efficiently. As error traces are important for debugging purposes, it is preferable to find as short error traces as possible. A wide spread method to find provably shortest error traces is to apply the A* search algorithm with distance heuristics that never overestimate the real error distance. An important class of such distance estimators is the class of pattern database heuristics, which are built on abstractions of the system under consideration. In this paper, we propose a systematic approach for the construction of pattern database heuristics. We formally define a concept to measure the accuracy of abstractions. Based on this technique, we address the challenge of finding abstractions that are succinct on the one hand, and accurate to produce informed pattern databases on the other hand. We evaluate our approach on large and complex industrial problems. The experiments show that the resulting distance heuristic impressively advances the state of the art.

[1]  Jörg Hoffmann,et al.  Relaxation Refinement: A New Method to Generate Heuristic Functions , 2009, MoChArt.

[2]  Bernhard Nebel,et al.  Faster Than Uppaal? , 2008, CAV.

[3]  Paul Pettersson,et al.  Tools and Algorithms for the Construction and Analysis of Systems: 28th International Conference, TACAS 2022, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022, Munich, Germany, April 2–7, 2022, Proceedings, Part II , 1998, TACAS.

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

[5]  Bernd Finkbeiner,et al.  Uppaal/DMC- Abstraction-Based Heuristics for Directed Model Checking , 2007, TACAS.

[6]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[7]  Andreas Podelski,et al.  Transition-Based Directed Model Checking , 2009, TACAS.

[8]  Martin Wehrle,et al.  Context-Enhanced Directed Model Checking , 2010, SPIN.

[9]  Henning Dierks,et al.  Time, abstraction and heuristics - automatic verification and planning of timed systems using abstraction and heuristics , 2006, Berichte aus dem Department für Informatik / Universität Oldenburg / Fachbereich Informatik.

[10]  Dragan Bosnacki,et al.  Survey on Directed Model Checking , 2009, MoChArt.

[11]  Albert Nymeyer,et al.  Guided Invariant Model Checking Based on Abstraction and Symbolic Pattern Databases , 2004, TACAS.

[12]  Nils J. Nilsson,et al.  A Formal Basis for the Heuristic Determination of Minimum Cost Paths , 1968, IEEE Trans. Syst. Sci. Cybern..

[13]  Ernst-Rüdiger Olderog,et al.  The UniForM Workbench, a Universal Development Environment for Formal Methods , 1999, World Congress on Formal Methods.

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

[15]  Jesfis Peral,et al.  Heuristics -- intelligent search strategies for computer problem solving , 1984 .

[16]  Kim G. Larsen,et al.  Fast Directed Model Checking Via Russian Doll Abstraction , 2008, TACAS.

[17]  Jonathan Schaeffer,et al.  Pattern Databases , 1998, Comput. Intell..

[18]  Bernd Finkbeiner,et al.  Directed model checking with distance-preserving abstractions , 2006, International Journal on Software Tools for Technology Transfer.

[19]  Stefan Edelkamp,et al.  Model Checking and Artificial Intelligence, 4th Workshop, MoChArt IV, Riva del Garda, Italy, August 29, 2006, Revised Selected and Invited Papers , 2007, MoChArt.

[20]  Andreas Podelski,et al.  Using Predicate Abstraction to Generate Heuristic Functions in UPPAAL , 2007, MoChArt.

[21]  Henning Dierks,et al.  Moby/RT: A Tool for Specification and Verification of Real-Time Systems , 2003, COCV@ETAPS.

[22]  S. Kupferschmid,et al.  Adapting an AI Planning Heuristic for Directed Model Checking , 2006, SPIN.

[23]  S. Anderson,et al.  Secure Synthesis of Code: A Process Improvement Experiment , 1999, World Congress on Formal Methods.

[24]  RaphaelBertram,et al.  Correction to "A Formal Basis for the Heuristic Determination of Minimum Cost Paths" , 1972 .

[25]  Malte Helmert,et al.  The Causal Graph Revisited for Directed Model Checking , 2009, SAS.

[26]  Dexter Kozen,et al.  Lower bounds for natural proof systems , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).