On Decision Procedures for Algebraic Data Types with Abstractions
We describe a parameterized decision procedure that extends the decision procedure for functional recursive algebraic data types (trees) with the ability to specify and reason about abstractions of data structures. The abstract values are specified using recursive abstraction functions that map trees into other data types that have decidable theories. Our result yields a decidable logic which can be used to prove that implementations of functional data structures satisfy recursively specified invariants and conform to interfaces given in terms of sets, multisets, or lists, or to increase the automation in proof assistants.
OnDecisionProceduresForAlgebraicDataTypesWithAbstractions.pdf
openaccess
328.92 KB
Adobe PDF
c71c6e77cc634f298f136672d6674e50