Skip to main content

Transformational Derivation of Greedy Network Algorithms from Descriptive Specifications

  • Conference paper
  • First Online:

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

Abstract

In this work an approach for the transformational development of efficient imperative network algorithms is presented which is based on Möller’s algebra of formal languages. We use a very flexible methodology that contemplates the description of a rather general derivation method, the use of different derivation procedures to support the phases of this method, and the derivation of algorithm schemes based on such procedures. We propose a method that consists of the formulation of a descriptive specification, the development of an abstract recursive algorithm, and the derivation of an efficient imperative algorithm. As an example, we present algorithm schemes and derivation procedures for the development of efficient greedy algorithms, which are illustrated with the derivation of a shortest path arborescence algorithm.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R.C. Backhouse, van den Eijnde, and A.J.M. van Gasteren. Calculating path algorithms. Science of Computer Programming, 22:3–19, 1994.

    Article  MATH  MathSciNet  Google Scholar 

  2. R. Behnke. Transformationelle Programmentwicklung im Rahmen relationaler und sequentieller Algebren. PhD thesis, Christian Albrecht Universität zu Kiel, 1998.

    Google Scholar 

  3. R. Berghammer. Zur formalen Entwicklung von graphentheoretischen Algorithmen durch Transformationen. PhD thesis, Technische Universität München, Februar 1984. TUM_I8403.

    Google Scholar 

  4. R. Berghammer, B. von Karger, and A. Wolf. Relation-algebraic derivation of spanning tree algorithms. In Johan Jeuring, editor, Mathematics of Program Construction, volume 1422 of Lecture Notes in Computer Science, pages 167–189, Marstrand, Sweden, June 1998. Springer Verlag.

    Chapter  Google Scholar 

  5. R. Bird and O. de Moor. Algebra of Programming. C.A.R. Hoare series editor. Prentice Hall, 1997.

    Google Scholar 

  6. R.S. Bird, O. De Moor, and J.C.P. Woodcock. Solving optimization problems with catamorphisms. In Mathematics of Program Construction, volume 669 of Lecture Notes in Computer Science, pages 45–66. Springer Verlag, 1993.

    Google Scholar 

  7. T. Brunn, B. Möller, and Russling M. Layered graph traversals and hamiltonian path problems-an algebraic approach. In Jeuring, editor, Mathematics of Program Construction, volume 1422 of Lecture Notes in Computer Science, pages 96–121. Springer Verlag, June 1998.

    Chapter  Google Scholar 

  8. B. Charlier. The greedy algorithms class: Formalization, syntesis and generalization. Technical Report B-1348, Université Catholique de Louvain, 1995.

    Google Scholar 

  9. S. Curtis. A Relational Approach to Optimization Problems. PhD thesis, Somerville College, Oxford, 1996.

    Google Scholar 

  10. J.E. Durán. Desenvolvimento transformacional de algoritmos em redes baseado em álgebras relacionais. PhD thesis, Departamento de Informática da Pontifícia Universidade Católica do Rio de Janeiro, October 1999.

    Google Scholar 

  11. J.E. Durán. Transformational derivation of network algorithms based on an algebra of formal languages. In WAIT 2000 Proceedings (Argentine Workshop on Theoretical Computer Science), pages 1–12, 2000.

    Google Scholar 

  12. J.E. Durán. Derivation of efficient imperative network algorithms from descriptive optimisation specifications. In WAIT’2001 Proceedings (Argentine Workshop on Theoretical Computer Science), pages 71–90, 2001.

    Google Scholar 

  13. J. Edmonds. Matroids and the greedy algorithm. Math. Programming, 1:127–136, 1971.

    Article  MathSciNet  Google Scholar 

  14. D. Gries. The Science of Programming. Springer-Verlag, 1981.

    Google Scholar 

  15. P. Helman, B. M. E. Moret, and H. D. Shapiro. An exact characterization of greedy structures. SIAM Journal of Discrete Mathematics, 6(2):274–283, May 1993.

    Google Scholar 

  16. B. Korte and L. Lovasz. Mathematical structures underlying greedy algorithms. In Fundamentals of Computation Theory, volume 177 of Lecture Notes in Computer Science, pages 205–209. Springer, Berlin, 1981.

    Google Scholar 

  17. B. Möller and Russling M. Shorter paths to graph algorithms. Science of Computer Programming, 22:157–180, 1994.

    Article  MATH  MathSciNet  Google Scholar 

  18. R. Paige and S. Koenig. Finite differencing of computable expressions. ACM TOPLAS, 4(3):402–454, July 1982.

    Google Scholar 

  19. H. A. Partsch. Specification and Transformation of Programs-A Formal Approach to Software Development. Texts and Monographs in Computer Science. Springer-Verlag, 1990.

    Google Scholar 

  20. M. Russling. Deriving General Schemes for Classes of Graph Algorithms. PhD thesis, Universität Augsburg, 1996.

    Google Scholar 

  21. R.E. Tarjan. Data Structures and Network Algorithms. CBMS-NFS Regional Conference Series in Applied Mathematics. Society for Industrial and Applied Mathematics, 1983.

    Google Scholar 

  22. N. Wirth. Programming in Modula-2. Springer-Verlag, 1982.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Durán, J.E. (2002). Transformational Derivation of Greedy Network Algorithms from Descriptive Specifications. In: Boiten, E.A., Möller, B. (eds) Mathematics of Program Construction. MPC 2002. Lecture Notes in Computer Science, vol 2386. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45442-X_5

Download citation

  • DOI: https://doi.org/10.1007/3-540-45442-X_5

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43857-1

  • Online ISBN: 978-3-540-45442-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics