Results 1 
5 of
5
G.: A uniform approach to constraintsolving for lists, multisets, compact lists, and sets
 ACM Trans. Comput. Log
, 2008
"... Lists, multisets, and sets are wellknown data structures whose usefulness is widely recognized in various areas of Computer Science. They have been analyzed from an axiomatic point of view with a parametric approach in [Dovier et al. 1998] where the relevant unification algorithms have been develop ..."
Abstract

Cited by 9 (5 self)
 Add to MetaCart
Lists, multisets, and sets are wellknown data structures whose usefulness is widely recognized in various areas of Computer Science. They have been analyzed from an axiomatic point of view with a parametric approach in [Dovier et al. 1998] where the relevant unification algorithms have been developed. In this paper we extend these results considering more general constraints, namely equality and membership constraints and their negative counterparts.
Disunification in ACI1 Theories
, 1999
"... Disunification is the problem of deciding satisfiability of a system of equations and disequations with respect to a given equational theory. In this paper we study the disunification problem in the context of ACI1 equational theories. This problem is of great importance, for instance, for the d ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Disunification is the problem of deciding satisfiability of a system of equations and disequations with respect to a given equational theory. In this paper we study the disunification problem in the context of ACI1 equational theories. This problem is of great importance, for instance, for the development of constraint solvers over sets. Its solution opens new possibilities for developing automatic tools for static analysis and software verification. In this work we provide a characterization of the interpretation structures suitable to model the axioms in ACI1 theories. The satisfiability problem is solved using known techniques for the equality constraints and novel methodologies to transform disequation constraints to manageable solved forms. We propose four solved forms, each offering an increasingly more precise description of the set of solutions. For each solved form we provide the corresponding rewriting algorithm and we study the time complexity of the transformation. Remarkably, two of the solved forms can be computed and tested in polynomial time. All these solved forms are adequate to be used in the context of a Constraint Logic Programming systeme.g., they do not introduce universal quantifications, as instead happens in some of the existing solved forms for disunification problems.
Ranking and Unranking of Hereditarily Finite Functions and Permutations
, 808
"... Abstract. Prolog’s ability to return multiple answers on backtracking provides an elegant mechanism to derive reversible encodings of combinatorial objects as Natural Numbers i.e. ranking and unranking functions. Starting from a generalization of Ackerman’s encoding of Hereditarily Finite Sets with ..."
Abstract
 Add to MetaCart
Abstract. Prolog’s ability to return multiple answers on backtracking provides an elegant mechanism to derive reversible encodings of combinatorial objects as Natural Numbers i.e. ranking and unranking functions. Starting from a generalization of Ackerman’s encoding of Hereditarily Finite Sets with Urelements and a novel tupling/untupling operation, we derive encodings for Finite Functions and use them as building blocks for an executable theory of Hereditarily Finite Functions. The more difficult problem of ranking and unranking Hereditarily Finite Permutations is then tackled using Lehmer codes and factoradics. The paper is organized as a selfcontained literate Prolog program available
Ranking Catamorphisms and Unranking Anamorphisms on Hereditarily Finite Datatypes – unpublished draft –
, 808
"... Using specializations of unfold and fold on a generic tree data type we derive unranking and ranking functions providing natural number encodings for various Hereditarily Finite datatypes. In this context, we interpret unranking operations as instances of a generic anamorphism and ranking operations ..."
Abstract
 Add to MetaCart
Using specializations of unfold and fold on a generic tree data type we derive unranking and ranking functions providing natural number encodings for various Hereditarily Finite datatypes. In this context, we interpret unranking operations as instances of a generic anamorphism and ranking operations as instances of the corresponding catamorphism. Starting with Ackerman’s Encoding from Hereditarily Finite Sets to Natural Numbers we define pairings and finite tuple encodings that provide building blocks for a theory of Hereditarily Finite Functions. The more difficult problem of ranking and unranking Hereditarily Finite Permutations is then tackled using Lehmer codes and factoradics. The selfcontained source code of the paper, as generated from a literate Haskell program, is available at