Skip to main content

Arrays

  • Chapter
  • 5903 Accesses

Abstract

Programs rely on data structures to store and manipulate data in complex ways. Therefore, verifying these programs requires decision procedures that reason about the data structures. This chapter discusses fragments and decision procedures for reasoning about arrays and array-like data structures: arrays with anonymous or uninterpreted indices (Section 11.1), the familiar arrays of C and other imperative languages with integer indices (Section 11.2), and hashtables (Section 11.3).

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
Hardcover Book
USD   79.99
Price excludes VAT (USA)
  • Durable hardcover 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.

Bibliographic Remarks

  1. A. R. Bradley. Safety Analysis of Systems. PhD thesis, Stanford University, June 2007.

    Google Scholar 

  2. A. R. Bradley, Z. Manna, and H. B. Sipma. What’s decidable about arrays? In Verification Model Checking and Abstract Interpretation, volume 3855 of LNCS, pages 427–442. Springer-Verlag, January 2006.

    Google Scholar 

  3. J. Jaffar. Presburger arithmetic with array segments. Information Processing Letters, 12(2):79–82, 1981.

    Article  MATH  Google Scholar 

  4. J. King. A Program Verifier. PhD thesis, Carnegie Mellon University, September 1969.

    Google Scholar 

  5. P. Mateti. A decision procedure for the correctness of a class of programs. Journal of the ACM, 28(2), 1981.

    Google Scholar 

  6. J. McCarthy. Towards a mathematical science of computation. In International Federation for Information Processing, pages 21–28, 1962.

    Google Scholar 

  7. A. Stump, C. W. Barrett, D. L. Dill, and J. Levitt. A decision procedure for an extensional theory of arrays. In Logic in Computer Science, pages 29–37. IEEE Computer Society, 2001.

    Google Scholar 

  8. N. Suzuki and D. Jefferson. Verification decidability of Presburger array programs. Journal of the ACM, 27(1):191–205, January 1980.

    Article  MATH  Google Scholar 

Download references

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

(2007). Arrays. In: The Calculus of Computation. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74113-8_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74113-8_11

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-74113-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics