Verifying the safety of a practical concurrent garbage collector

  • Georges Gonthier
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1102)


We describe our experience in the mechanical verification of the safety invariants of an asynchronous garbage-collection algorithm [1], using the TLP system [2]. We only give a cursory overview of the algorithm and its formalisation. Our main focus is on the lessons learned from carrying a sizeable (22,000+ lines) formal proof through an off-the-shelf prover. In particular, we found the TLP style of structured proofs to be particularly effective for organising, writing, and managing proof scripts.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Doligez, D., Gonthier, G.: Portable, unobtrusive garbage collection for multiprocessor systems. ACM POPL (1994) 70–83Google Scholar
  2. 2.
    Engberg, U., Gr/onning, P., Lamport, L.: Mechanical verification of concurrent systems with TLP. LNCS 663 (CAV 1992) 44–55Google Scholar
  3. 3.
    Garland, S. J., Guttag, J. V.: An overview of LP, the Larch prover. LNCS 355 (RTA 1989) 137–151Google Scholar
  4. 4.
    Huet, G.: Residual theory in λ-calculus: a formal development. J. Func. Prog. 4 (1994) 371–394Google Scholar
  5. 5.
    Hunt, W. A. Jr., Brock, B.: A formal HDL and its use in the FM9001. Proc. Royal Soc. (1992)Google Scholar
  6. 6.
    Lamport, L.: The temporal logic of actions. ACM TOPLAS 16 (1994) 872–923CrossRefGoogle Scholar
  7. 7.
    Lincoln, P., Rushby, J.: Formal verification of an algorithm for interactive consistency under a hybrid fault model. CAV 1993Google Scholar
  8. 8.
    Miller, S. P., Srivas, M.: Formal verification of the AAMP5 microprocessor. IEEE Workshop on Industrial-Strength Formal Spec. Techniques (1995)Google Scholar

Copyright information

© Springer-Verlag 1996

Authors and Affiliations

  • Georges Gonthier
    • 1
  1. 1.INRIA RocquencourtLe Chesnay CedexFrance

Personalised recommendations