Decidability of the purely existential fragment of the theory of term algebras
Journal of the ACM (JACM)
Minimal and complete word unification
Journal of the ACM (JACM)
Reasoning about recursively defined data structures
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Satisfiability of word equations with constants is in PSPACE
Journal of the ACM (JACM)
An Abstract Decision Procedure for Satisfiability in the Theory of Recursive Data Types
Electronic Notes in Theoretical Computer Science (ENTCS)
Back to the future: revisiting precise program verification using SMT solvers
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Full functional verification of linked data structures
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Towards Efficient Satisfiability Checking for Boolean Algebra with Presburger Arithmetic
CADE-21 Proceedings of the 21st international conference on Automated Deduction: Automated Deduction
Programming in Scala: A Comprehensive Step-by-step Guide
Programming in Scala: A Comprehensive Step-by-step Guide
Incremental Instance Generation in Local Reasoning
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
A Logic-Based Framework for Reasoning about Composite Data Structures
CONCUR 2009 Proceedings of the 20th International Conference on Concurrency Theory
Locality Results for Certain Extensions of Theories with Bridging Functions
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
CADE-22 Proceedings of the 22nd International Conference on Automated Deduction
Decision procedures for algebraic data types with abstractions
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Automated verification of shape and size properties via separation logic
VMCAI'07 Proceedings of the 8th international conference on Verification, model checking, and abstract interpretation
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
Combining theories with shared set operations
FroCoS'09 Proceedings of the 7th international conference on Frontiers of combining systems
What's decidable about sequences?
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
An efficient decision procedure for imperative tree data structures
CADE'11 Proceedings of the 23rd international conference on Automated deduction
Collections, cardinalities, and relations
VMCAI'10 Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation
CADE' 20 Proceedings of the 20th international conference on Automated Deduction
Hierarchic reasoning in local theory extensions
CADE' 20 Proceedings of the 20th international conference on Automated Deduction
Hi-index | 0.00 |
Motivated by the problem of deciding verification conditions for the verification of functional programs, we present new decision procedures for automated reasoning about functional lists. We first show how to decide in NP the satisfiability problem for logical constraints containing equality, constructor, selectors, as well as the transitive sublist relation. We then extend this class of constraints with operators to compute the set of all sublists, and the set of objects stored in a list. Finally, we support constraints on sizes of sets, which gives us the ability to compute list length as well as the number of distinct list elements. We show that the extended theory is reducible to the theory of sets with linear cardinality constraints, and therefore still in NP. This reduction enables us to combine our theory with other decidable theories that impose constraints on sets of objects, which further increases the potential of our decidability result in verification of functional and imperative software.