Combining Shostak Theories

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.

[1]  Dexter Kozen,et al.  Complexity of finitely presented algebras , 1977, STOC '77.

[2]  Robert E. Shostak,et al.  An algorithm for reasoning about equality , 1977, CACM.

[3]  Greg Nelson,et al.  Simplification by Cooperating Decision Procedures , 1979, TOPL.

[4]  Robert E. Tarjan,et al.  Variations on the Common Subexpression Problem , 1980, J. ACM.

[5]  Greg Nelson,et al.  Fast Decision Procedures Based on Congruence Closure , 1980, JACM.

[6]  Robert E. Shostak,et al.  Deciding Combinations of Theories , 1982, JACM.

[7]  Franz Baader,et al.  Unification in the Union of Disjoint Equational Theories: Combining Decision Procedures , 1992, CADE.

[8]  Natarajan Shankar,et al.  On Shostak's Decision Procedure for Combinations of Theories , 1996, CADE.

[9]  David L. Dill,et al.  Validity Checking for Combinations of Theories with Equality , 1996, FMCAD.

[10]  Deepak Kapur,et al.  Shostak's Congruence Closure as Completion , 1997, RTA.

[11]  Jeremy R. Levitt,et al.  Formal verification techniques for digital systems , 1998 .

[12]  MASAHIRO FUJITA,et al.  Formal Verification Techniques for Digital Systems , 1998 .

[13]  Z. Manna,et al.  Integrating decision procedures for temporal verification , 1998 .

[14]  A. Tiwari,et al.  Decision procedures in automated deduction , 2000 .

[15]  Natarajan Shankar,et al.  Using Decision Procedures with a Higher-Order Logic , 2001, TPHOLs.

[16]  Natarajan Shankar,et al.  ICS: Integrated Canonizer and Solver , 2001, CAV.

[17]  Natarajan Shankar,et al.  Deconstructing Shostak , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[18]  16th Annual IEEE Symposium on Logic in Computer Science, Boston, Massachusetts, USA, June 16-19, 2001, Proceedings , 2001, LICS.

[19]  Natarajan Shankar,et al.  Formal Verification of a Combination Decision Procedure , 2002, CADE.

[20]  Harald Ganzinger,et al.  Shostak Light , 2002, CADE.

[21]  David L. Dill,et al.  A Generalization of Shostak's Method for Combining Decision Procedures , 2002, FroCoS.

[22]  Ashish Tiwari,et al.  Abstract Congruence Closure , 2003, Journal of Automated Reasoning.