Advertisement

A general scheme for breadth-first graph traversal

  • Martin Russling
Contributed Lectures
Part of the Lecture Notes in Computer Science book series (LNCS, volume 947)

Abstract

We survey an algebra of formal languages suitable to deal with graph algorithms. As an example of its use we derive a general scheme for breadth-first graph traversal. This general scheme is then applied to a reachability and a shortest path problem.

Keywords

Formal Language Short Path Problem Recursive Call Graph Algorithm Empty Word 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [Backhouse, van Gasteren 92]
    R.C. Backhouse, A.J.M. van Gasteren: Calculating a Path Algorithm. In R.S. Bird, C. Morgan, J. Woodcock (eds.): Proc. 2nd International Conference on the Mathematics of Program Construction, Oxford, UK, 29 June–3 July 1992. Lecture Notes in Computer Science 669. Berlin: Springer 1993. Extended version (together with J.P.H.W. van den Eijnde): Science of Computer Programming 22, 3–19 (1994)Google Scholar
  2. [Bird 84]
    R.S. Bird: The Promotion and Accumulation Strategies in Transformational Programming. ACM Transactions on Programming Languages and Systems 6, 487–504 (1984)Google Scholar
  3. [Bird, de Moor 96]
    R.S. Bird, O. de Moor: The Algebra of Programming (forthcoming book). Prentice Hall International 1996.Google Scholar
  4. [Clenaghan 95]
    K. Clenaghan: Calculational graph algorithmics: reconciling two approaches with dynamic algebra. CWI Amsterdam, Report CS-R9518, 1995Google Scholar
  5. [Conway 71]
    J.H. Conway: Regular algebra and finite machines. London: Chapman and Hall 1971Google Scholar
  6. [Date 88]
    C.J. Date: An introduction to database systems. Vol. I, 4th edition. Reading, Mass.: Addison-Wesley 1988Google Scholar
  7. [van den Eijnde 92]
    J.P.H.W. van den Eijnde: Conservative fixpoint functions on a graph. In R.S. Bird, C. Morgan, J. Woodcock (eds.): Proc. 2nd International Conference on the Mathematics of Program Construction, Oxford, UK, 29 June–3 July 1992. Lecture Notes in Computer Science 669. Berlin: Springer 1993.Google Scholar
  8. [Gautam 57]
    N.D. Gautam: The validity of equations of complex algebras. Arch. Math. Logik Grundlag. 3, 117–124 (1957)Google Scholar
  9. [Gibbons 94]
    J. Gibbons: Algebraic Models of Graphs. 46th Meeting of IFIP TC2/WG 2.1, Renkum, The Netherlands, 10–13 January 1994, Document 722 REN-7Google Scholar
  10. [Güntzer et al. 86]
    U. Güntzer, W. Kiessling, R. Bayer: Evaluation paradigms for deductive databases: from systolic to as-you-please. Institut für Informatik der Technischen Universität München, Report Nr. 18605, 1986Google Scholar
  11. [King, Launchbury 95]
    D.J. King, J. Launchbury: Structuring Depth-First Search Algorithms in Haskell. Proc. 22nd ACM Symposium on Principles of Programming Languages, San Francisco, CA, USA, January 1995.Google Scholar
  12. [Kleene 52]
    S.C. Kleene: Introduction to Metamathematics. New York: Van Nostrand 1952Google Scholar
  13. [Meertens 92]
    L. Meertens: Paramorphisms. Formal Aspects of Computing 4, 413–424 (1992)Google Scholar
  14. [Möller 91]
    B. Möller: Relations as a program development language. In B. Möller (ed.): Constructing programs from specifications. Proc. IFIP TC2/WG 2.1 Working Conference on Constructing Programs from Specifications, Pacific Grove, CA, USA, 13–16 May 1991. Amsterdam: North-Holland 1991, 373–397Google Scholar
  15. [Möller 93]
    B. Möller: Towards pointer algebra. Institut für Mathematik der Universität Augsburg, Report No. 279, 1993. Also in Science of Computer Programming 21, 57–90 (1993)Google Scholar
  16. [Möller 94]
    B. Möller: Ideal streams. In: E.-R. Olderog (ed.): Programming Concepts, Methods and Calculi. IFIP Transaction A-56. Amsterdam: North-Holland 1994, 39–58Google Scholar
  17. [Möller, Russling 92]
    B. Möller, M. Russling: Shorter Paths to Graph Algorithms. In R.S. Bird, C. Morgan, J. Woodcock (eds.): Proc. 2nd International Conference on the Mathematics of Program Construction, Oxford, UK, 29 June–3 July 1992. Lecture Notes in Computer Science 669. Berlin: Springer 1993. Extended version: Science of Computer Programming 22, 157–180 (1994)Google Scholar
  18. [Pair 70]
    C. Pair: Mille et un algorithmes pour les problème de cheminement dans les graphes. Revue Française d'Informatique et de Recherche opérationelle (R.I.R.O.) B-3, 125–143 (1970)Google Scholar
  19. [Partsch 90]
    H.A. Partsch: Specification and transformation of programs — A formal approach to software development. Berlin: Springer 1990Google Scholar
  20. [Russling 94]
    M. Russling: An algebraic treatment of graph and sorting algorithms. Proc. 14th Int. SCCC Conference, Concepción, Chile, 31 October–4 November 1994. (Extended version: Institut für Mathematik der Universität Augsburg, Report Nr. 324, 1995)Google Scholar
  21. [Schmidt, Ströhlein 93]
    G. Schmidt, T. Ströhlein: Relations and Graphs. Discrete Mathematics for Computer Scientists, EATCS Monographs on Theoretical Computer Science. Berlin: Springer 1993.Google Scholar
  22. [van de Snepscheut 93]
    J.L.A. van de Snepscheut: What Computing is all about. New York: Springer 1993.Google Scholar
  23. [Tarski 41]
    A. Tarski: On the calculus of relations. J. Symbolic Logic 6, 73–89 (1941)Google Scholar
  24. [Tarski 55]
    A. Tarski: A lattice theoretical fixpoint theorem and its applications. Pacific J. Math. 5, 285–310 (1955)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Martin Russling
    • 1
  1. 1.Lehrstuhl für Informatik IIUniversität AugsburgAugsburgGermany

Personalised recommendations