A Practical Application of Geometric Semantics to Static Analysis of Concurrent Programs

In this paper we show how to compress efficiently the state-space of a concurrent system (here applied to a simple shared memory model, but this is no way limited to that model). The technology used here is based on research on geometric semantics by the authors and collaborators. It has been implemented in a abstract interpretation based static analyzer (ALCOOL), and we show some preliminary results and benchmarks.

[1]  Patrice Godefroid,et al.  Model Checking in Practice: An Analysis of the ACCESS.bus Protocol using SPIN , 1996, FME.

[2]  Gerard J. Holzmann,et al.  State-space caching revisited , 1995, Formal Methods Syst. Des..

[3]  Martin Raußen Deadlocks and dihomotopy in mutual exclusion models , 2005, Theor. Comput. Sci..

[4]  Sergio Rajsbaum,et al.  LATIN 2002: Theoretical Informatics , 2002, Lecture Notes in Computer Science.

[5]  Paul F. Reynolds,et al.  The geometry of semaphore programs , 1987, TOPL.

[6]  Eric Goubault,et al.  Dihomotopy as a Tool in State Space Analysis , 2002, LATIN.

[7]  Eric Goubault,et al.  Components of the Fundamental Category II , 2007, Appl. Categorical Struct..

[8]  Marco Grandis Directed homotopy theory, I. The fundamental category , 2001 .

[9]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[10]  Patrick Cousot,et al.  Comparing the Galois Connection and Widening/Narrowing Approaches to Abstract Interpretation , 1992, PLILP.

[11]  S. Lane Categories for the Working Mathematician , 1971 .

[12]  Hans-Juergen Boehm Bounding space usage of conservative garbage collectors , 2002, POPL '02.

[13]  Radu Iosif,et al.  Modeling and Validation of Java Multithreading Applications using SPIN , 1998 .

[14]  Antti Valmari,et al.  A stubborn attack on state explosion , 1990, Formal Methods Syst. Des..

[15]  Ulrich Fahrenberg,et al.  A Category of Higher-Dimensional Automata , 2005, FoSSaCS.

[16]  Pierre Wolper,et al.  Using partial orders for the efficient verification of deadlock freedom and safety properties , 1991, Formal Methods Syst. Des..

[17]  Eric Goubault,et al.  Geometry and concurrency: a user's guide , 2000, Mathematical Structures in Computer Science.

[18]  S. Maclane,et al.  Categories for the Working Mathematician , 1971 .

[19]  Eric Goubault,et al.  Algebraic topology and concurrency , 2006, Theor. Comput. Sci..

[20]  Antti Valmari,et al.  Eliminating Redundant Interleavings During Concurrent Program Verification , 1989, PARLE.

[21]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[22]  R. Ho Algebraic Topology , 2022 .

[23]  Eric Goubault,et al.  Cubical Sets are Generalized Transition Systems , 2001 .

[24]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[25]  Eric Goubault,et al.  SOME GEOMETRIC PERSPECTIVES IN CONCURRENCY THEORY , 2003 .

[26]  É. Goubault,et al.  Topological deformation of higher dimensional automata , 2001, math/0107060.

[27]  Peter Gabriel,et al.  Calculus of Fractions and Homotopy Theory , 1967 .

[28]  Philippe Gaucher,et al.  A Convenient Category for The Homotopy Theory of Concurrency , 2002, math/0201252.

[29]  Eric Goubault,et al.  Components of the Fundamental Category , 2004, Appl. Categorical Struct..

[30]  Doron A. Peled,et al.  Using partial-order methods in the formal validation of industrial concurrent programs , 1996, ISSTA '96.

[31]  Martin Rem,et al.  PARLE '89 Parallel Architectures and Languages Europe , 1989, Lecture Notes in Computer Science.

[32]  Chuan Yi Tang,et al.  A 2.|E|-Bit Distributed Algorithm for the Directed Euler Trail Problem , 1993, Inf. Process. Lett..

[33]  Jim Woodcock,et al.  FME'96: Industrial Benefit and Advances in Formal Methods , 1996, Lecture Notes in Computer Science.

[34]  Edsger W. Dijkstra,et al.  Cooperating sequential processes , 2002 .

[35]  Stephan Melzer,et al.  Deadlock Checking Using Net Unfoldings , 1997, CAV.

[36]  Antoni W. Mazurkiewicz,et al.  Basic notions of trace theory , 1988, REX Workshop.

[37]  L. Nachbin Topology and order , 1965 .

[38]  M. Sighireanu,et al.  Cadp'97 { Status, Applications and Perspectives , 1997 .

[39]  Marco Grandis,et al.  Directed homotopy theory, I , 2003 .

[40]  Marco Grandis,et al.  THE SHAPE OF A CATEGORY UP TO DIRECTED HOMOTOPY , 2005 .