Logic for computer science: foundations of automatic theorem proving
Logic for computer science: foundations of automatic theorem proving
Theory of linear and integer programming
Theory of linear and integer programming
Assignment Commands with Array References
Journal of the ACM (JACM)
Verification Decidability of Presburger Array Programs
Journal of the ACM (JACM)
A Decision Procedure for the Correctness of a Class of Programs
Journal of the ACM (JACM)
Simplification by Cooperating Decision Procedures
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communications of the ACM
Separation Logic: A Logic for Shared Mutable Data Structures
LICS '02 Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science
A Practical Integration of First-Order Reasoning and Decision Procedures
CADE-14 Proceedings of the 14th International Conference on Automated Deduction
A rewriting approach to satisfiability procedures
Information and Computation - RTA 2001
A Decision Procedure for an Extensional Theory of Arrays
LICS '01 Proceedings of the 16th Annual IEEE Symposium on Logic in Computer Science
Model-Theoretic Methods in Combined Constraint Satisfiability
Journal of Automated Reasoning
Efficient theory combination via boolean search
Information and Computation - Special issue: Combining logical systems
Decidability and undecidability results for nelson-oppen and rewrite-based decision procedures
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
What's decidable about arrays?
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Data structure specifications via local equality axioms
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
A Logic of Singly Indexed Arrays
LPAR '08 Proceedings of the 15th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning
Deciding Extensions of the Theories of Vectors and Bags
VMCAI '09 Proceedings of the 10th International Conference on Verification, Model Checking, and Abstract Interpretation
Deciding array formulas with frugal axiom instantiation
SMT '08/BPR '08 Proceedings of the Joint Workshops of the 6th International Workshop on Satisfiability Modulo Theories and 1st International Workshop on Bit-Precise Reasoning
Automatic Verification of Integer Array Programs
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Interpolation and Symbol Elimination
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
Theory decision by decomposition
Journal of Symbolic Computation
Combination of convex theories: Modularity, deduction completeness, and explanation
Journal of Symbolic Computation
What else is decidable about integer arrays?
FOSSACS'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Foundations of software science and computational structures
Theory-specific automated reasoning
A 25-year perspective on logic programming
Instantiation of SMT problems modulo integers
AISC'10/MKM'10/Calculemus'10 Proceedings of the 10th ASIC and 9th MKM international conference, and 17th Calculemus conference on Intelligent computer mathematics
What's decidable about sequences?
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
Information Processing Letters
EPR-based bounded model checking at word level
IJCAR'12 Proceedings of the 6th international joint conference on Automated Reasoning
Instantiation Schemes for Nested Theories
ACM Transactions on Computational Logic (TOCL)
Array Theory of Bounded Elements and its Applications
Journal of Automated Reasoning
Hi-index | 0.00 |
The theory of arrays, introduced by McCarthy in his seminal paper "Towards 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 have 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 re-use as much as possible existing techniques so as to ease the implementation of the proposed methods. To this end, we show how to use model-theoretic, rewriting-based theorem proving (i.e., superposition), and techniques developed in the Satisfiability Modulo Theories communities to implement the decision procedures for the various extensions.