University of Minnesota
Software Engineering Center
/

You are here

Parameterized Abstractions for Reasoning about Algebraic Data Types

Date of Publication: 
November 2013
Associated Research Groups: 
Publication Files: 
Abstract: 
Reasoning about algebraic data types is an important problem for a variety of proof tasks. Recently, decision procedures have been proposed for algebraic data types that create suitable abstractions of values in the types. A class of abstractions created from catamorphism functions has been shown to be theoretically applicable to a wide variety of reasoning tasks as well as efficient in practice. However, in previous work, the decidability of catamorphism functions involving parameters in addition to the data type argument has not been studied. In this paper, we generalize certain kinds of catamorphism functions to support additional parameters. This extension, called parameterized associative-commutative catamorphisms subsumes the associative-commutative class from earlier work, widens the set of functions that are known to be decidable, and makes several practically important functions (such as forall, exists, and member) over elements of algebraic data types straightforward to express.
Venue: 
Eighth International Workshop on Constraints in Formal Verification (CFV'13)