Skip to main content

Efficient fixpoint computation

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 864))

Abstract

Most of the algorithms presented for computing fixpoints have been developed for very specific application areas, e.g. dataflow analysis, abstract interpretation, denotational semantics, system verification, to mention but a few. Surprisingly little attention has been devoted to the construction of general purpose, application independent fixpoint algorithms (one notable exception being [17]). The goal of this paper is to put known ideas and algorithms into a more general and abstract setting. More precisely we discuss a variety of efficient general purpose algorithms for computing (part of) the least solution of a monotone system of equations over a complete partial order structure. The advantage of having general purpose fixpoint algorithms is twofold. Firstly, once proven correct, they can be instantiated to a wide variety of application domains. Secondly, they separate the essentials of fixpoint computation from concrete application domain aspects. We consider algorithms based on (chaotic) fixpoint approximation, as well as algorithms based on fixpoint induction techniques. The algorithms are constructed in a stepwise fashion: First a basic schema, capturing the essence of the algorithm, is discussed, which is then subsequently refined using a number of optimisation steps. As a sample application, we sketch how an algorithm for computing the prebisimulation preorder is obtained, matching the complexity of the so far best known ’ad hoc’ constructed algorithm for this preorder.

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Andersen, H. R.: Model Checking and Boolean Graphs, ESOP'92, LNCS 582, 1992

    Google Scholar 

  2. Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications, ACM Transactions on Progr. Languages and Systems, Vol.8, No. 2, pp. 244–263, April 1986

    Article  Google Scholar 

  3. Cleaveland, R.: Tableau-Based Model Checking in the Propositional Mu-Calculus, Acta Informatica, 1990

    Google Scholar 

  4. Cleaveland, R., Steffen, B.: Computing Behavioural Relations, Logically, ICALP 91, pp. 127–138, LNCS 510

    Google Scholar 

  5. Cleaveland, R., Steffen, B.: A Linear-Time Model Checking Algorithm for the Alternation-Free Modal Mu-Calculus, CAV'91, LNCS 575, 1991

    Google Scholar 

  6. Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints, POPL, 1977.

    Google Scholar 

  7. Debray, S. K.: Static inference of modes and data dependencies in logic programs, TOPLAS, 11 (3), 1989.

    Google Scholar 

  8. Emerson, E.A., Lei, C.-L.: Efficient model checking in fragments of the propositional μ-calculus, LICS, 267–278, 1986

    Google Scholar 

  9. Jones, N.D., Mycroft, A.: Data flow analysis of applicative programs using minimal function graphs, POPL, 1986.

    Google Scholar 

  10. Jorgensen, N.: Chaotic fixpoint iteration guided by dynamic dependency, in Workshop on Static Analysis (WSA'93), LNCS.

    Google Scholar 

  11. O'Keefe, R.A.: Finite fixed-point problems, ICTL 1987.

    Google Scholar 

  12. Kildall, G.A.: A unified approach to global program optimization, POPL 1973.

    Google Scholar 

  13. Kozen, D.: Results on the propositional μ-calculus, TCS, 27, 1983.

    Google Scholar 

  14. Larsen, K.G.: Proof systems for Hennessy-Milner logic with recursion, CAAP, 1988, see also TCS, 72, 1990

    Google Scholar 

  15. Larsen, K.G.: Efficient local correctness checking, CAV92, Forthcoming

    Google Scholar 

  16. Le Charlier, B., Van Hentenryck, P.: Experimental Evaluation of a Generic Abstract Interpretation Algorithm for PROLOG, TOPLAS, Vol. 16, nr. 1, January 1994.

    Google Scholar 

  17. Le Charlier, B., Van Hentenryck, P.: A universal top-down fixpoint algorithm, Technical Report 92-22, Institute of Computer Science, University of Namur, Belgium, April 1992.

    Google Scholar 

  18. Le Charlier, B., Degimbe, O., Michel, L., Van Hentenryck, P.: Optimization Techniques for General Purpose Fixpoint Algorithms: Practical Efficiency for the Abstract Interpretation of Prolog, in Workshop on Static Analysis (WSA'93), LNCS.

    Google Scholar 

  19. Milner, R.: Communication and Concurrency, Prentice-Hall International, 1989.

    Google Scholar 

  20. Stirling, C., Walker, D.: Local model checking in the modal mu-calculus, TCS, October 1991, see also LNCS 351, 369–383, CAAP 1989

    Google Scholar 

  21. Tarjan, R.E.: Depth first search and linear graph algorithms, SIAM J. Comput., 1 (2), 1972.

    Google Scholar 

  22. Vergauwen, B., Lewi, J.: A linear algorithm for solving fixed points equations on transition systems, CAAP'92, LNCS 581, 322–341

    Google Scholar 

  23. Vergauwen, B., Lewi, J.: Efficient Local Correctness Checking for Single and Alternating Blocks, ICALP'94, LNCS 820.

    Google Scholar 

  24. Vergauwen, B.: Verification of Temporal Properties of Concurrent Systems, Ph.D. thesis, in preparation.

    Google Scholar 

  25. Winskel, G.: A note on model checking the modal ν-calculus, ICALP, LNCS 372, 1989, see also TCS 83, 1991

    Google Scholar 

  26. Wauman, J.: Ontwerp en implementatie van lokale verificatie-algoritmen voor reactieve Systemen met behulp van temporele logic, Ms. thesis, Dept. of Computer Science, K.U.Leuven, 1992–1993.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Baudouin Le Charlier

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Vergauwen, B., Wauman, J., Lewi, J. (1994). Efficient fixpoint computation. In: Le Charlier, B. (eds) Static Analysis. SAS 1994. Lecture Notes in Computer Science, vol 864. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58485-4_49

Download citation

  • DOI: https://doi.org/10.1007/3-540-58485-4_49

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58485-8

  • Online ISBN: 978-3-540-49005-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics