Skip to main content

Deciding Extensions of the Theory of Arrays by Integrating Decision Procedures and Instantiation Strategies

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 4160))

Abstract

The theory of arrays, introduced by McCarthy in his seminal paper “Toward a mathematical science of computation”, is central to Computer Science. Unfortunately, the theory alone is not sufficient for many important verification applications such as program analysis. Motivated by this observation, we study extensions of the theory of arrays whose satisfiability problem (i.e. checking the satisfiability of conjunctions of ground literals) is decidable. In particular, we consider extensions where the indexes of arrays has the algebraic structure of Presburger Arithmetic and the theory of arrays is augmented with axioms characterizing additional symbols such as dimension, sortedness, or the domain of definition of arrays.

We provide methods for integrating available decision procedures for the theory of arrays and Presburger Arithmetic with automatic instantiation strategies which allow us to reduce the satisfiability problem for the extension of the theory of arrays to that of the theories decided by the available procedures. Our approach aims to reuse as much as possible existing techniques so to ease the implementation of the proposed methods. To this end, we show how to use both model-theoretic and rewriting-based theorem proving (i.e., superposition) techniques to implement the instantiation strategies of the various extensions.

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. Armando, A., Bonacina, M.P., Ranise, S., Schulz, S.: On a rewriting approach to satisfiability procedures: Extension, combination of theories and an experimental appraisal. In: Gramlich, B. (ed.) FroCos 2005. LNCS, vol. 3717, pp. 65–80. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  2. Armando, A., Ranise, S., Rusinowitch, M.: A rewriting approach to satisfiability procedures. Information and Computation 183(2), 140–164 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  3. Bradley, A.R., Manna, Z., Sipma, H.B.: What’s decidable about arrays? In: Emerson, E.A., Namjoshi, K.S. (eds.) VMCAI 2006. LNCS, vol. 3855, pp. 427–442. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  4. Downey, P.J., Sethi, R.: Assignment commands with array references. Journal of the ACM 25(4), 652–666 (1978)

    Article  MATH  MathSciNet  Google Scholar 

  5. Enderton, H.B.: A Mathematical Introduction to Logic. Academic Press, New York (1972)

    MATH  Google Scholar 

  6. Gallier, J.H.: Logic for Computer Science: Foundations of Automatic Theorem Proving. Harper & Row, New York (1986)

    MATH  Google Scholar 

  7. Ganzinger, H., Korovin, K.: Integrating equational reasoning into instantiation-based theorem proving. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 71–84. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  8. Ghilardi, S.: Model-theoretic methods in combined constraint satisfiability. Journal of Automated Reasoning 33(3-4), 221–249 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  9. Ghilardi, S., Nicolini, E., Ranise, S., Zucchelli, D.: Deciding extension of the theory of arrays by integrating decision procedures and instantiation strategies. Rapporto Interno DSI 309-06, Università degli Studi di Milano, Milano, Italy (2006), Available at: http://homes.dsi.unimi.it/~zucchell/publications/techreport/GhiNiRaZu-RI309-06.pdf .

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

    Article  MATH  MathSciNet  Google Scholar 

  11. Kirchner, H., Ranise, S., Ringeissen, C., Tran, D.-K.: On superposition-based satisfiability procedures and their combination. In: Van Hung, D., Wirsing, M. (eds.) ICTAC 2005. LNCS, vol. 3722, pp. 594–608. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  12. Mateti, P.: A decision procedure for the correctness of a class of programs. Journal of the ACM 28(2), 215–232 (1981)

    Article  MATH  MathSciNet  Google Scholar 

  13. McCarthy, J.: Towards a mathematical theory of computation. In: Proceedings of IFIP Congress (1962)

    Google Scholar 

  14. McPeak, S., Necula, G.C.: Data structure specifications via local equality axioms. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 476–490. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  15. Nelson, G., Oppen, D.C.: Simplification by cooperating decision procedures. ACM Transaction on Programming Languages and Systems 1(2), 245–257 (1979)

    Article  MATH  Google Scholar 

  16. Nieuwenhuis, R., Rubio, A.: Paramodulation-based theorem proving. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning (2001)

    Google Scholar 

  17. Reynolds, J.C.: Reasoning about arrays. Communications of the ACM 22(5), 290–299 (1979)

    Article  MATH  MathSciNet  Google Scholar 

  18. Reynolds, J.C.: Separation logic: a logic for shared mutable data structures (2002)

    Google Scholar 

  19. Stump, A., Barrett, C.W., Dill, D.L., Levitt, J.: A decision procedure for an extensional theory of arrays. In: Proc. of the 16th IEEE Symposium on Logic in Computer Science (LICS 2001). IEEE Computer Society, Los Alamitos (2001)

    Google Scholar 

  20. Suzuki, N., Jefferson, D.R.: Verification decidability of presburger array programs. Journal of the ACM 27(1), 191–205 (1980)

    Article  MATH  MathSciNet  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

Ghilardi, S., Nicolini, E., Ranise, S., Zucchelli, D. (2006). Deciding Extensions of the Theory of Arrays by Integrating Decision Procedures and Instantiation Strategies. In: Fisher, M., van der Hoek, W., Konev, B., Lisitsa, A. (eds) Logics in Artificial Intelligence. JELIA 2006. Lecture Notes in Computer Science(), vol 4160. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11853886_16

Download citation

  • DOI: https://doi.org/10.1007/11853886_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-39625-3

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics