NP-completeness of the set unification and matching problems
Proc. of the 8th international conference on Automated deduction
Constraint programming languages: their specification and generation
Constraint programming languages: their specification and generation
Implementation of subset-equational programs
Journal of Logic Programming
Embedding extensional finite sets in CLP
ILPS '93 Proceedings of the 1993 international symposium on Logic programming
Conjunto: constraint logic programming with finite set domains
ILPS '94 Proceedings of the 1994 International Symposium on Logic programming
Optimal unification of bound simple set-terms
CIKM '96 Proceedings of the fifth international conference on Information and knowledge management
Sets and constraint logic programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Alma Project, or How First-Order Logic Can Help Us in Imperative Programming
Correct System Design, Recent Insight and Advances, (to Hans Langmaack on the occasion of his retirement from his professorship at the University of Kiel)
Dealing with incomplete knowledge on CLP(FD) variable domains
ACM Transactions on Programming Languages and Systems (TOPLAS)
Theory and Practice of Logic Programming
JSetL: a Java library for supporting declarative programming in Java
Software—Practice & Experience
A uniform approach to constraint-solving for lists, multisets, compact lists, and sets
ACM Transactions on Computational Logic (TOCL)
Integrating Finite Domain and Set Constraints into a Set-based Constraint Language
Fundamenta Informaticae - Advances in Computational Logic (CIL C08)
Hi-index | 0.00 |
Various forms of data aggregates, e.g., arrays, lists, sets, etc., are usually provided by programming languages, either as primitive entities or as additional features made available by standard libraries. In conventional programming languages these data structures are usually specified by completely and precisely enumerating all their constituent elements. Conversely, in (constraint) logic programming languages it is common to deal with partially specified aggregates where either some elements or some parts of the aggregate are left unknown. In this paper we consider the case where partially specified aggregates can occur in a conventional O-O programming language. Specifically, we consider partially specified lists and sets as provided by the Java library JSetL. The definition of such data structures is strongly based on the notion of logical (or constrained) variable usually provided by languages and libraries to support constraint programming. We show through simple examples using Java and JSetL how partially specified lists and sets, along with a few basic constraints over them, can be conveniently exploited in a number of common programming problems.