Trace Spaces: An Efficient New Technique for State-Space Reduction

  • Lisbeth Fajstrup
  • Éric Goubault
  • Emmanuel Haucourt
  • Samuel Mimram
  • Martin Raussen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7211)


State-space reduction techniques, used primarily in model-checkers, all rely on the idea that some actions are independent, hence could be taken in any (respective) order while put in parallel, without changing the semantics. It is thus not necessary to consider all execution paths in the interleaving semantics of a concurrent program, but rather some equivalence classes. The purpose of this paper is to describe a new algorithm to compute such equivalence classes, and a representative per class, which is based on ideas originating in algebraic topology. We introduce a geometric semantics of concurrent languages, where programs are interpreted as directed topological spaces, and study its properties in order to devise an algorithm for computing dihomotopy classes of execution paths. In particular, our algorithm is able to compute a control-flow graph for concurrent programs, possibly containing loops, which is “as reduced as possible” in the sense that it generates traces modulo equivalence. A preliminary implementation was achieved, showing promising results towards efficient methods to analyze concurrent programs, with very promising results compared to partial-order reduction techniques.


Directed Path Homotopy Class Algebraic Topology Abstract Interpretation Execution Path 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    The SPIN Model-Checker,
  2. 2.
    Berge, C.: Hypergraphs, vol. 445. North Holland Mathematical Library (1989)Google Scholar
  3. 3.
    Bonichon, R., Canet, G., Correnson, L., Goubault, E., Haucourt, E., Hirschowitz, M., Labbé, S., Mimram, S.: Rigorous Evidence of Freedom from Concurrency Faults in Industrial Control Software. In: Flammini, F., Bologna, S., Vittorini, V. (eds.) SAFECOMP 2011. LNCS, vol. 6894, pp. 85–98. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  4. 4.
    Clarke Jr., E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press (1999)Google Scholar
  5. 5.
    Cousot, P., Cousot, R.: Systematic design of program analysis frameworks. In: Proceedings of Principles Of Programming Languages, pp. 269–282. ACM Press (1979)Google Scholar
  6. 6.
    Cousot, P., Cousot, R.: Abstract interpretation based program testing. In: Proc. of the SSGRR 2000 Computer & eBusiness International Conference (2000)Google Scholar
  7. 7.
    Diekert, V., Rozenberg, G.: The Book of Traces. World Scientific (1995)Google Scholar
  8. 8.
    Dijkstra, E.: The Structure of the THE Operating System. Com. of the ACM 11(15) (1968)Google Scholar
  9. 9.
    Dijkstra, E.W.: Hierarchical ordering of sequential processes. Acta Informatica 1(2) (1971)Google Scholar
  10. 10.
    Fajstrup, L.: Trace spaces of directed tori with rectangular holes. Technical Report R-2011-08, Aalborg Univ. (2001)Google Scholar
  11. 11.
    Fajstrup, L., Goubault, É., Raußen, M.: Detecting Deadlocks in Concurrent Systems. In: Sangiorgi, D., de Simone, R. (eds.) CONCUR 1998. LNCS, vol. 1466, pp. 332–347. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  12. 12.
    Fajstrup, L., Sokolowski, S.: Infinitely running concurrent processes with loops from a geometric viewpoint. ENTCS 39(2) (2000)Google Scholar
  13. 13.
    Fajstrup, L., Raußen, M., Goubault, E.: Algebraic topology and concurrency. Theor. Comput. Sci. 357(1-3), 241–278 (2006)zbMATHCrossRefGoogle Scholar
  14. 14.
    Fajstrup, L., Raußen, M., Goubault, E., Haucourt, E.: Components of the fundamental category. Appl. Cat. Struct. 12(1), 81–108 (2004)zbMATHCrossRefGoogle Scholar
  15. 15.
    Godefroid, P., Wolper, P.: Using Partial Orders for the Efficient Verification of Deadlock Freedom and Safety Properties. In: Larsen, K.G., Skou, A. (eds.) CAV 1991. LNCS, vol. 575, pp. 332–342. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  16. 16.
    Goubault, É., Haucourt, E.: A Practical Application of Geometric Semantics to Static Analysis of Concurrent Programs. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 503–517. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  17. 17.
    Goubault, E., Haucourt, E.: Components of the fundamental category II. Applied Categorical Structures 15(4), 387–414 (2007)MathSciNetzbMATHCrossRefGoogle Scholar
  18. 18.
    Goubault, E., Mimram, S.: Formal relationships between geometrical and classical models for concurrency. CoRR, abs/1004.2818 (2010)Google Scholar
  19. 19.
    Grandis, M.: Directed Algebraic Topology, Models of Non-Reversible Worlds. New Mathematical Monographs, vol. 13. Cambridge University Press (2009)Google Scholar
  20. 20.
    Gunawardena, J.: Homotopy and concurrency. Bulletin of the EATCS 54, 184–193 (1994)zbMATHGoogle Scholar
  21. 21.
    Kavvadias, D.J., Stavropoulos, E.C.: Evaluation of an Algorithm for the Transversal Hypergraph Problem. In: Vitter, J.S., Zaroliagis, C.D. (eds.) WAE 1999. LNCS, vol. 1668, pp. 72–84. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  22. 22.
    Kozlov, D.: Combinatorial Algebraic Topology. Springer, Heidelberg (2007)Google Scholar
  23. 23.
    Peltier, S., Fuchs, L., Lienhardt, P.: Simploidals sets: Definitions, Operations and Comparison with Simplicial Sets. Discrete Applied Math. 157, 542–557 (2009)MathSciNetzbMATHCrossRefGoogle Scholar
  24. 24.
    Raussen, M.: Simplicial models of trace spaces. Alg. & Geom. Top. 10, 1683–1714 (2010)MathSciNetzbMATHCrossRefGoogle Scholar
  25. 25.
    Valmari, A.: A Stubborn Attack on State Explosion. In: Clarke, E., Kurshan, R.P. (eds.) CAV 1990. LNCS, vol. 531, pp. 156–165. Springer, Heidelberg (1991)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Lisbeth Fajstrup
    • 1
  • Éric Goubault
    • 2
  • Emmanuel Haucourt
    • 2
  • Samuel Mimram
    • 2
  • Martin Raussen
    • 1
  1. 1.Department of Mathematical SciencesAalborg UniversityDenmark

Personalised recommendations