An algorithm for finding canonical sets of ground rewrite rules in polynomial time
Journal of the ACM (JACM)
Equational reasoning and term rewriting systems
Handbook of logic in artificial intelligence and logic programming (vol. 1)
Towards a foundation of completion procedures as semidecision procedures
Theoretical Computer Science
Proof lengths for equational completion
Information and Computation - special issue: symposium on theoretical aspects of computer software TACS '94
Fast Decision Procedures Based on Congruence Closure
Journal of the ACM (JACM)
Reasoning About Recursively Defined Data Structures
Journal of the ACM (JACM)
Variations on the Common Subexpression Problem
Journal of the ACM (JACM)
Deciding Combinations of Theories
Journal of the ACM (JACM)
Simplification by Cooperating Decision Procedures
ACM Transactions on Programming Languages and Systems (TOPLAS)
An algorithm for reasoning about equality
Communications of the ACM
ACM Transactions on Computational Logic (TOCL)
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Finding bugs with a constraint solver
Proceedings of the 2000 ACM SIGSOFT international symposium on Software testing and analysis
Off-line and on-line algorithms for deducing equalities
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Symbolic Logic and Mechanical Theorem Proving
Symbolic Logic and Mechanical Theorem Proving
LICS '02 Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science
A Generalization of Shostak's Method for Combining Decision Procedures
FroCoS '02 Proceedings of the 4th International Workshop on Frontiers of Combining Systems
CVC: A Cooperating Validity Checker
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Checking Satisfiability of First-Order Formulas by Incremental Translation to SAT
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Faster Proof Checking in the Edinburgh Logical Framework
CADE-18 Proceedings of the 18th International Conference on Automated Deduction
Lazy Theorem Proving for Bounded Model Checking over Infinite Domains
CADE-18 Proceedings of the 18th International Conference on Automated Deduction
PVS: A Prototype Verification System
CADE-11 Proceedings of the 11th International Conference on Automated Deduction: Automated Deduction
On Shostak's Decision Procedure for Combinations of Theories
CADE-13 Proceedings of the 13th International Conference on Automated Deduction: Automated Deduction
A Framework for Cooperating Decision Procedures
CADE-17 Proceedings of the 17th International Conference on Automated Deduction
A Maximal-Literal Unit Strategy for Horn Clauses
Proceedings of the 2nd International CTRS Workshop on Conditional and Typed Rewriting Systems
CADE-18 Proceedings of the 18th International Conference on Automated Deduction
A hybrid SAT-based decision procedure for separation logic with uninterpreted functions
Proceedings of the 40th annual Design Automation Conference
Resolution decision procedures
Handbook of automated reasoning
Efficient Representation and Validation of Proofs
LICS '98 Proceedings of the 13th Annual IEEE Symposium on Logic in Computer Science
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
LICS '01 Proceedings of the 16th Annual IEEE Symposium on Logic in Computer Science
Journal of Automated Reasoning
Model-Theoretic Methods in Combined Constraint Satisfiability
Journal of Automated Reasoning
Simplify: a theorem prover for program checking
Journal of the ACM (JACM)
MathSAT: Tight Integration of SAT and Mathematical Decision Procedures
Journal of Automated Reasoning
ACM Transactions on Computational Logic (TOCL)
Modular proof systems for partial functions with Evans equality
Information and Computation - Special issue: Combining logical systems
The design and implementation of VAMPIRE
AI Communications - CASC
AI Communications - CASC
Fast congruence closure and extensions
Information and Computation
Rewrite-Based Satisfiability Procedures for Recursive Data Structures
Electronic Notes in Theoretical Computer Science (ENTCS)
Rewrite-Based Decision Procedures
Electronic Notes in Theoretical Computer Science (ENTCS)
Strategies for combining decision procedures
TACAS'03 Proceedings of the 9th international conference on Tools and algorithms for the construction and analysis of systems
A taxonomy of theorem-proving strategies
Artificial intelligence today
Nelson-Oppen, shostak and the extended canonizer: a family picture with a newborn
ICTAC'04 Proceedings of the First international conference on Theoretical Aspects of Computing
A fast linear-arithmetic solver for DPLL(T)
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Decidability and undecidability results for nelson-oppen and rewrite-based decision procedures
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
Invited contribution: a comprehensive framework for combined decision procedures
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
Connecting many-sorted structures and theories through adjoint functions
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
Combining data structures with nonstably infinite theories using many-sorted logic
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
An efficient decision procedure for UTVPI constraints
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
Yet another decision procedure for equality logic
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
Efficient satisfiability modulo theories via delayed theory combination
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
On superposition-based satisfiability procedures and their combination
ICTAC'05 Proceedings of the Second international conference on Theoretical Aspects of Computing
${\mathcal{T}}$-Decision by Decomposition
CADE-21 Proceedings of the 21st international conference on Automated Deduction: Automated Deduction
Engineering DPLL(T) + Saturation
IJCAR '08 Proceedings of the 4th international joint conference on Automated Reasoning
A write-based solver for SAT modulo the theory of arrays
Proceedings of the 2008 International Conference on Formal Methods in Computer-Aided Design
Satisfiability Procedures for Combination of Theories Sharing Integer Offsets
TACAS '09 Proceedings of the 15th International Conference on Tools and Algorithms for the Construction and Analysis of Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009,
On Deciding Satisfiability by DPLL($\Gamma+{\mathcal T}$) and Unsound Theorem Proving
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
Combinable Extensions of Abelian Groups
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
veriT: An Open, Trustable and Efficient SMT-Solver
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
The CADE-22 automated theorem proving system competition - CASC-22
AI Communications
Superposition for fixed domains
ACM Transactions on Computational Logic (TOCL)
Superposition modulo linear arithmetic SUP(LA)
FroCoS'09 Proceedings of the 7th international conference on Frontiers of combining systems
Data structures with arithmetic constraints: a non-disjoint combination
FroCoS'09 Proceedings of the 7th international conference on Frontiers of combining systems
On theorem proving for program checking: historical perspective and recent developments
Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative 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
Heaps and data structures: a challenge for automated provers
CADE'11 Proceedings of the 23rd international conference on Automated deduction
On Deciding Satisfiability by Theorem Proving with Speculative Inferences
Journal of Automated Reasoning
Modular termination and combinability for superposition modulo counter arithmetic
FroCoS'11 Proceedings of the 8th international conference on Frontiers of combining systems
Automatic combinability of rewriting-based satisfiability procedures
LPAR'06 Proceedings of the 13th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
An Instantiation Scheme for Satisfiability Modulo Theories
Journal of Automated Reasoning
A calculus for generating ground explanations
IJCAR'12 Proceedings of the 6th international joint conference on Automated Reasoning
A rule-based framework for building superposition-based decision procedures
WRLA'12 Proceedings of the 9th international conference on Rewriting Logic and Its Applications
Enhancing symbolic execution with built-in term rewriting and constrained lazy initialization
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Hierarchic superposition with weak abstraction
CADE'13 Proceedings of the 24th international conference on Automated Deduction
System description: E-KRHyper 1.4: extensions for unique names and description logic
CADE'13 Proceedings of the 24th international conference on Automated Deduction
Superposition for bounded domains
Automated Reasoning and Mathematics
Hi-index | 0.00 |
Program analysis and verification require decision procedures to reason on theories of data structures. Many problems can be reduced to the satisfiability of sets of ground literals in theory T. If a sound and complete inference system for first-order logic is guaranteed to terminate on T-satisfiability problems, any theorem-proving strategy with that system and a fair search plan is a T-satisfiability procedure. We prove termination of a rewrite-based first-order engine on the theories of records, integer offsets, integer offsets modulo and lists. We give a modularity theorem stating sufficient conditions for termination on a combination of theories, given termination on each. The above theories, as well as others, satisfy these conditions. We introduce several sets of benchmarks on these theories and their combinations, including both parametric synthetic benchmarks to test scalability, and real-world problems to test performances on huge sets of literals. We compare the rewrite-based theorem prover E with the validity checkers CVC and CVC Lite. Contrary to the folklore that a general-purpose prover cannot compete with reasoners with built-in theories, the experiments are overall favorable to the theorem prover, showing that not only the rewriting approach is elegant and conceptually simple, but has important practical implications.