Skip to main content

Combining Shostak Theories

  • Conference paper
  • First Online:
Rewriting Techniques and Applications (RTA 2002)

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

Included in the following conference series:

Abstract

Ground decision procedures for combinations of theories are used in many systems for automated deduction. There are two basic paradigms for combining decision procedures. The Nelson-Oppen method combines decision procedures for disjoint theories by exchanging equality information on the shared variables. In Shostak’s method, the combination of the theory of pure equality with canonizable and solvable theories is decided through an extension of congruence closure that yields a canonizer for the combined theory. Shostak’s original presentation, and others that followed it, contained serious errors which were corrected for the basic procedure by the present authors. Shostak also claimed that it was possible to combine canonizers and solvers for disjoint theories. This claim is easily verifiable for canonizers, but is unsubstantiated for the case of solvers. We show how our earlier procedure can be extended to combine multiple disjoint canonizable, solvable theories within the Shostak framework.

This work was funded by NSF Grant CCR-0082560, DARPA/AFRL Contract F33615-00-C-3043, and NASA Contract NAS1-00079. During a phone conversation with the first author on 2nd April 2001, Rob Shostak suggested that the problem of combining Shostak solvers could be solved through variable abstraction. His suggestion is the key inspiration for the combination of Shostak theories presented here. We thank Clark Barrett, Sam Owre, and Ashish Tiwari for their meticulous reading of earlier drafts. We also thank Harald Ganzinger for pointing out certain limitations of our original definition of solvability with respect to σ-models. The first author is grateful to the program committees and program chairs of the FME, LICS, and RTA conferences at FLoC 2002 for their kind invitation.

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

  1. Clark Barrett, David Dill, and Jeremy Levitt. Validity checking for combinations of theories with equality. In Mandayam Srivas and Albert Camilleri, editors, Formal Methods in Computer-Aided Design (FMCAD’ 96), volume 1166 of Lecture Notes in Computer Science, pages 187–201, Palo Alto, CA, November 1996. Springer-Verlag.

    Chapter  Google Scholar 

  2. Clark W. Barrett, David L. Dill, and Aaron Stump. A generalization of Shostak’s method for combining decision procedures. In A. Armando, editor, Frontiers of Combining Systems, 4th International Workshop, FroCos 2002, number 2309 in Lecture Notes in Artificial Intelligence, pages 132–146, Berlin, Germany, April 2002. Springer-Verlag.

    Google Scholar 

  3. Nikolaj Bjørner. Integrating Decision Procedures for Temporal Verification. PhD thesis, Stanford University, 1999.

    Google Scholar 

  4. F. Baader and K. Schulz. Unification in the union of disjoint equational theories: Combining decision procedures. J. Symbolic Computation, 21:211–243, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  5. Leo Bachmair, Ashish Tiwari, and Laurent Vigneron. Abstract congruence closure. Journal of Automated Reasoning, 2002. To appear.

    Google Scholar 

  6. David Cyrluk, Patrick Lincoln, and N. Shankar. On Shostak’s decision procedure for combinations of theories. In M. A. McRobbie and J. K. Slaney, editors, Automated Deduction—CADE-13, volume 1104 of Lecture Notes in Artificial Intelligence, pages 463–477, New Brunswick, NJ, July/August 1996. Springer-Verlag.

    Google Scholar 

  7. P.J. Downey, R. Sethi, and R.E. Tarjan. Variations on the common subexpressions problem. Journal of the ACM, 27(4):758–771, 1980.

    Article  MATH  MathSciNet  Google Scholar 

  8. J.-C. Filliâtre, S. Owre, H. Rueß, and N. Shankar. ICS: Integrated Canonization and Solving. In G. Berry, H. Comon, and A. Finkel, editors, Computer-Aided Verification, CAV’ 2001, volume 2102 of Lecture Notes in Computer Science, pages 246–249, Paris, France, July 2001. Springer-Verlag.

    Google Scholar 

  9. Jonathan Ford and Natarajan Shankar. Formal verification of a combination decision procedure. In A. Voronkov, editor, Proceedings of CADE-19, Berlin, Germany, 2002. Springer-Verlag.

    Google Scholar 

  10. Harald Ganzinger. Shostak light. In A. Voronkov, editor, Proceedings of CADE-19, Berlin, Germany, 2002. Springer-Verlag.

    Google Scholar 

  11. Deepak Kapur. Shostak’s congruence closure as completion. In H. Comon, editor, International Conference on Rewriting Techniques and Applications, RTA ‘97, number 1232 in Lecture Notes in Computer Science, pages 23–37, Berlin, 1997. Springer-Verlag.

    Google Scholar 

  12. Dexter Kozen. Complexity of finitely presented algebras. In Conference Record of the Ninth Annual ACM Symposium on Theory of Computing, pages 164–177, Boulder, Colorado, 2–4 May 1977.

    Google Scholar 

  13. Jeremy R. Levitt. Formal Verification Techniques for Digital Systems. PhD thesis, Stanford University, 1999.

    Google Scholar 

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

    Article  MATH  Google Scholar 

  15. G. Nelson and D. C. Oppen. Fast decision procedures based on congruence closure. Journal of the ACM, 27(2):356–364, 1980.

    Article  MATH  MathSciNet  Google Scholar 

  16. Harald Rueß and Natarajan Shankar. Deconstructing Shostak. In 16th Annual IEEE Symposium on Logic in Computer Science, pages 19–28, Boston, MA, July 2001. IEEE Computer Society.

    Google Scholar 

  17. Natarajan Shankar. Using decision procedures with a higher-order logic. In Theorem Proving in Higher Order Logics: 14th International Conference, TPHOLs 2001, volume 2152 of Lecture Notes in Computer Science, pages 5–26, Edinburgh, Scotland, September 2001. Springer-Verlag. Available at ftp://ftp.csl.sri.com/pub/users/shankar/tphols2001.ps.gz.

    Chapter  Google Scholar 

  18. R. Shostak. An algorithm for reasoning about equality. Comm. ACM, 21:583–585, July 1978.

    Google Scholar 

  19. Robert E. Shostak. Deciding combinations of theories. Journal of the ACM, 31(1):1–12, January 1984.

    Google Scholar 

  20. Ashish Tiwari. Decision Procedures in Automated Deduction. PhD thesis, State University of New York at Stony Brook, 2000.

    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

Shankar, N., Rueß, H. (2002). Combining Shostak Theories. In: Tison, S. (eds) Rewriting Techniques and Applications. RTA 2002. Lecture Notes in Computer Science, vol 2378. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45610-4_1

Download citation

  • DOI: https://doi.org/10.1007/3-540-45610-4_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-45610-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics