Skip to main content
Log in

A note on synthesis and classification of sorting algorithms

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

Sorting algorithms are traditionally classified according to their main operational characteristic. More recently, program synthesis has been used as a basis for classification. We briefly survey previous work in the synthesis and classification of sorting algorithms, and outline a more comprehensive scheme derived by synthesising many sorting algorithms in a top-down fashion on a semi-automated logic programming system.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Barstow, D.R.: Remarks on “a synthesis of several sorting algorithms” by John Darlington. Acta Inf. 13, 225–227 (1980)

    Google Scholar 

  2. Bitton, D., De Witt, D.J., Hsiao, D.K., Menon, J.: A taxonomy of parallel sorting. Comput. Sur. 16, 289–318 (1984)

    Google Scholar 

  3. Burstall, R.M., Darlington, J.: A transformation system for developing recursive programs. J. ACM 24, 44–67 (1977)

    Google Scholar 

  4. Clark, K.L., Darlington, J.: Algorithm classification through synthesis. Comput. J. 23, 61–65 (1980)

    Google Scholar 

  5. Darlington, J.: A synthesis of several sorting algorithms. Acta Inf. 11, 1–30 (1978)

    Google Scholar 

  6. Dijkstra, E.W.: A discipline of programming. Englewood Cliffs, N.J.: Prentice-Hall 1976

    Google Scholar 

  7. Dromey, R.G.: Derivation of sorting algorithms from a specification. Comput. J. 30, 512–518 (1987)

    Google Scholar 

  8. Green, C., Barstow, D.: On program synthesis knowledge. Arti. Intell. 10, 241–279 (1978)

    Google Scholar 

  9. Hansson, A., Tärnlund, S.A.: Program transformation by data structure mapping. In: Clark, K.L., Tärnlund, S.A. (eds.) Logic Programming, pp. 117–122. London: Academic Press 1982

    Google Scholar 

  10. Hoare, C.A.R.: Quicksort. Comput. J. 5, 10–15 (1962)

    Google Scholar 

  11. Knuth, D.E.: The art of computer programming, Vol. 3: Sorting and searching. Reading: Addison-Wesley 1973

    Google Scholar 

  12. Lau, K.K., Prestwich, S.D.: Synthesis of logic programs for recursive sorting algorithms. Technical Report UMCS-88-10-1, Department of Computer Science, University of Manchester, October 1988

  13. Manna, Z., Waldinger, R.: Synthesis: Dreams ⇒ programs. IEEE Trans. Soft. Eng. 5, 294–328 (1979)

    Google Scholar 

  14. Mehlhorn, K.: Data structures and algorithms 1: Sorting and searching. Berlin Heidelberg New York Tokyo: Springer 1984

    Google Scholar 

  15. Smith, D.R.: Top-down synthesis of divide-and-conquer algorithms. Arti. Intell. 27, 43–96 (1985)

    Google Scholar 

  16. Smith, D.R.: The design of divide and conquer algorithms. Sci. Comput. Program. 5, 37–58 (1985)

    Google Scholar 

  17. Wainwright, R.L.: A class of sorting algorithms based on quicksort. Comm. ACM 28, 396–402 (1985)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lau, K.K. A note on synthesis and classification of sorting algorithms. Acta Informatica 27, 73–80 (1989). https://doi.org/10.1007/BF00263502

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00263502

Keywords

Navigation