Skip to main content

Size-Change Termination and Bound Analysis

  • Conference paper
Functional and Logic Programming (FLOPS 2006)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3945))

Included in the following conference series:

Abstract

Despite its simplicity, the size-change termination principle, presen- ted by Lee, Jones and Ben-Amram in [LJB01], is surprisingly strong and is able to show termination for a large class of programs. A significant limitation for its use, however, is the fact that the SCT requires data types to be well-founded, and that all mechanisms used to determine termination must involve decreases in these global, well-founded partial orders.

Following is an extension of the size-change principle that allows for non-well founded data types, and a realization of this principle for integer data types. The extended size-change principle is realized through combining abstract interpretation over the domain of convex polyhedra with the use of size-change graphs. In the cases when data types are well founded, the method handles every case that is handled by LJB size-change termination.

The method has been implemented in a subject language independent shared library, libesct (available at [Ave05a]), as well as for the ANSI C specializer C − MixII, handling a subset of its internal language Core-C.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  • Aho, A.V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Addison-Wesley Publishing Company, Reading (1975)

    MATH  Google Scholar 

  • Avery, J., Schou, S.: Stopping C-Mix: PE-termination ensuring bindingtime division. Project at Roskilde Universitetscenter (2004)

    Google Scholar 

  • Avery, J.: ESCT - The Extended Size-Change Termination Library (November 2005), http://esct.kvante.org

  • Avery, J.: Size-change termination and bound analysis for an imperative language with integer data types. Report at Datalogisk Instutut, Københavns Universitet, DIKU (July 2005)

    Google Scholar 

  • Ben-Amram, A., Lee, C.S.: A quadratic-time program termination analysis. Under preparation at MPI für Informatik, Saarbrücken, Germany (2004)

    Google Scholar 

  • Cousot, P., Halbwachs, N.: Automatic discovery of linear restraints among variables of a program. In: Conference Record of the Fifth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Tucson, Arizona, pp. 84–97. ACM Press, New York (1978)

    Chapter  Google Scholar 

  • Bagnara, R., et al.: The parma polyhedra library, 2000-2005. University of Parma, http://www.cs.unipr.it/ppl/

  • Glenstrup, A.J., Jones, N.D.: Termination analysis and specialization-point insertion in off-line partial evaluation. ACM Transactions on Programming Languages and Systems. Department of Computer Science, University of Copenhagen (2003) (preprint)

    Google Scholar 

  • Khoo, S.-C., Anderson, H.: Bounded size-change termination (draft). School of Computing. National University of Singapore (2005)

    Google Scholar 

  • Lee, C.S.: Program termination analysis in polynomial time. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, p. 218. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  • Lee, C.S., Jones, N.D., BenAmram, A.M.: The size-change principle for program termination. ACM SIGPLAN Notices 36(3), 81–92 (2001)

    Article  MATH  Google Scholar 

  • Podelski, A., Rybalchenko, A.: Transition predicate abstraction and fair termination. In: Principles of Programming Languages (POPL) (2005)

    Google Scholar 

  • Sipma, H., Colon, M.: Practical methods for proving program termination. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 442–454. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Avery, J. (2006). Size-Change Termination and Bound Analysis. In: Hagiya, M., Wadler, P. (eds) Functional and Logic Programming. FLOPS 2006. Lecture Notes in Computer Science, vol 3945. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11737414_14

Download citation

  • DOI: https://doi.org/10.1007/11737414_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-33438-5

  • Online ISBN: 978-3-540-33439-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics