## Set Constraints: Results, Applications and Future Directions (0)

Venue: | In Second Workshop on the Principles and Practice of Constraint Programming |

Citations: | 69 - 3 self |

### BibTeX

@INPROCEEDINGS{Aiken_setconstraints:,

author = {Alexander Aiken},

title = {Set Constraints: Results, Applications and Future Directions},

booktitle = {In Second Workshop on the Principles and Practice of Constraint Programming},

year = {},

pages = {326--335},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

. Set constraints are a natural formalism for many problems that arise in program analysis. This paper provides a brief introduction to set constraints: what set constraints are, why they are interesting, the current state of the art, open problems, applications and implementations. 1 Introduction Set constraints are a natural formalism for describing relationships between sets of terms of a free algebra. A set constraint has the form X ` Y , where X and Y are set expressions. Examples of set expressions are 0 (the empty set), ff (a set-valued variable), c(X; Y ) (a constructor application), and the union, intersection, or complement of set expressions. Recently, there has been a great deal of interest in program analysis algorithms based on solving systems of set constraints, including analyses for functional languages [AWL94, Hei94, AW93, AM91, JM79, MR85, Rey69], logic programming languages [AL94, HJ92, HJ90b, Mis84], and imperative languages [HJ91]. In these algorithms, sets of...

### Citations

217 | Type inclusion constraints and type inference - Aiken, Wimmers - 1993 |

200 |
Flow analysis and optimization of LISP-like structures
- Jones, Muchnick
- 1979
(Show Context)
Citation Context ...n-time type checks where it was provably safe to do so. Independently of Reynolds, Jones and Muchnick developed a different analysis system for Lisp programs based on solving systems of set equations =-=[JM79]-=-. This analysis was used not only to eliminate dynamic type checks but also to reduce reference count operations in automatic memory management systems based on reference counting. Recently Wang and H... |

187 | Soft typing with conditional types - Aiken, Wimmers, et al. - 1994 |

95 |
Set Based Program Analysis
- Heintze
- 1993
(Show Context)
Citation Context ...he idea was first explored by Mishra [Mis84]; more recently, this line of work has been well developed in a series of papers by Jaffar and Heintze [HJ90b, HJ90a, HJ92], as well as in Heintze's thesis =-=[Hei92]-=-. Many of the techniques developed in [Hei92] have been fruitfully applied to compile time analysis in other areas, especially the compile-time analysis of ML programs [Hei94]. 6 Conclusions and Direc... |

94 | A finite presentation theorem for approximating logic programs
- Heintze, Jaffar
- 1990
(Show Context)
Citation Context ...n be defined such that oe(c \Gammai (E)) = ft i j9t 1 ; : : : ; t n : c(t 1 ; : : : ; t n ) 2 oe(E)g To date, projections are used primarily in set constraint analyses for logic programming languages =-=[HJ90b]-=-. A separate extension is adding sets of functions X ! Y to the set expressions. This is a major change, because it not only enriches the language, but also requires a new domain. The construction of ... |

78 |
Solving Systems of Set Constraints
- Aiken, Wimmers
- 1992
(Show Context)
Citation Context ... of set constraints is an assignment oe such that V i oe(X i ) ` oe(Y i ) is true. A system of set constraints is satisfiable if it has at least one solution. The following result was proven first in =-=[AW92]-=-. Simpler proofs have been discovered since [BGW93, AKVW93]. Theorem 1. It is decidable whether a system of set constraints is satisfiable. Furthermore, all solutions can be finitely presented. It is ... |

78 |
Deciding equivalence of finite tree automata
- Seidl
- 1990
(Show Context)
Citation Context ...et constraint problems above the complexity of the corresponding tree automata problems. For example, deciding whether the language of one tree automata is a subset of another is complete for EXPTIME =-=[Sei90]-=-; solving a general system of set constraint inclusions is complete for NEXPTIME. If it is known that the system of constraints under consideration has a least solution and the goal is to compute only... |

75 |
Towards a theory of types in Prolog
- Mishra
- 1984
(Show Context)
Citation Context ...]. An implementation of this last system is publicly available (see Section 6). A natural application area for set constraints is the analysis of logic programs. The idea was first explored by Mishra =-=[Mis84]-=-; more recently, this line of work has been well developed in a series of papers by Jaffar and Heintze [HJ90b, HJ90a, HJ92], as well as in Heintze's thesis [Hei92]. Many of the techniques developed in... |

69 | Set constraints are the monadic class
- Bachmair, Ganzinger, et al.
- 1993
(Show Context)
Citation Context ...the basic language are known [AW92, GTT92, BGW93, AKVW93]. Remarkably, each proof is based on completely different techniques. A particularly elegant proof is due to Bachmair, Ganzinger, and Waldmann =-=[BGW93]-=-; their result shows set constraints are equivalent to the monadic class, the class of first order formulas with arbitrary quantification but only unary predicates and no function symbols. In addition... |

68 |
Automatic computation of data set definitions
- Reynolds
- 1968
(Show Context)
Citation Context ...on procedure for the monadic class was given by Lowenheim in 1915 [Ls15]. Within the realm of computer science, Reynolds was the first to develop a resolution algorithm for a class of set constraints =-=[Rey69]-=-. Reynolds was interested in the analysis and optimization of Lisp programs. In this application, set constraints were used to compute a conservative description of the data structures in use at a pro... |

65 | The complexity of set constraints
- Aiken, Kozen, et al.
- 1993
(Show Context)
Citation Context ... in general. For the basic problem, deciding satisfiability is NEXPTIME-complete [BGW93] and even if the language is restricted to the set operations over constants satisfiability remains NP-complete =-=[AKVW93]-=-. By restricting the set operations (instead of the arity of constructors) it is possible to achieve polynomial time algorithms for interesting classes of constraints [JM79, MR85, Hei92]. 4 Algorithms... |

64 | Static Type Inference in a Dynamically Typed Language - Aiken, Murphy - 1991 |

58 |
Declaration-free type checking
- Mishra, Reddy
- 1985
(Show Context)
Citation Context ...rd Hindley/Milner type system. Mishra and Reddy described a type system based on a set constraint resolution algorithm that could handle considerably more complex constraints than previous algorithms =-=[MR85]-=-. Thatte introduced partial types [Tha88], the type inference problem for which, while substantially different from earlier systems, is also reducible a set constraint resolution problem. The most rec... |

51 | Decidability of Systems of Set Constraints with Negative Constraints - Aiken, Kozen, et al. - 1994 |

42 | Directional type checking of logic programs - Aiken, Lakshman - 1994 |

40 |
Type inference with partial types
- Thatte
- 1988
(Show Context)
Citation Context ...d Reddy described a type system based on a set constraint resolution algorithm that could handle considerably more complex constraints than previous algorithms [MR85]. Thatte introduced partial types =-=[Tha88]-=-, the type inference problem for which, while substantially different from earlier systems, is also reducible a set constraint resolution problem. The most recent work in this area is due to Wimmers a... |

36 | Solving systems of set constraints with negated subset relationships - Gilleron, Tison, et al. - 1993 |

34 |
A Decision Procedure for a Class of Herbrand Set Constraints
- Heintze, ar
- 1990
(Show Context)
Citation Context ...ions can be finitely presented. It is important to note that the definition of set constraints used here does damage to history. The original formulation of set constraints, due to Heintze and Jaffar =-=[HJ90a]-=-, also includes projection operations in the constraint language. However, it is convenient pedagogically to present results as extensions of the definition above. This organization also reflects the ... |

31 | Set constraints with projections are in NEXPTIME
- Charatonik, Pacholski
- 1994
(Show Context)
Citation Context ...ble 1 summarizes the current state of knowledge. The decidability of the satisfiability of set constraints with projections was open for several years [HJ90a] and has only very recently been resolved =-=[CP94b]-=-. Constraint resolution algorithms for restricted forms of the general problem are known [HJ90a, Hei92]; the current state of the art permits the full basic language and restricts only projections [BG... |

29 | Über Möglichkeiten im Relativkalkül. Mathematische Annalen - Löwenheim - 1915 |

27 | Subtyping with union types, intersection types and recursive types
- Damm
- 1994
(Show Context)
Citation Context ...r a fairly general class of set constraints with function types are known [AW93, AWL94]. Damm has proven the surprising result that satisfiability of set constraints with function spaces is decidable =-=[Dam94]-=-. Set constraint resolution algorithms can be computationally expensive in general. For the basic problem, deciding satisfiability is NEXPTIME-complete [BGW93] and even if the language is restricted t... |

25 | Solving systems of set constraints using tree automata - Gilleron, Tison, et al. - 1993 |

19 | An engine for logic program analysis - Heintze, Jaffar - 1992 |

8 | Analysis of recursive types in LISP-like languages
- Wang, Hilfinger
- 1992
(Show Context)
Citation Context ...reduce reference count operations in automatic memory management systems based on reference counting. Recently Wang and Hilfinger have proposed another analysis method for Lisp based on set equations =-=[WH92]-=-. 1 As written, the law for negation appears to require that the set of all constructors d such that d 6= c can be enumerated and thus the set of constructors must be finite. In fact, this restriction... |

4 | Set-based analysis of ML programs (extended abstract
- Heintze
- 1994
(Show Context)
Citation Context ...l as in Heintze's thesis [Hei92]. Many of the techniques developed in [Hei92] have been fruitfully applied to compile time analysis in other areas, especially the compile-time analysis of ML programs =-=[Hei94]-=-. 6 Conclusions and Directions Interest in set constraints originally arose from the needs of researchers working in program analysis. Currently, there is a lively, continuing interplay between the th... |

4 |
Set-based program analysis. Draft manuscript
- Heintze, Jaffar
- 1991
(Show Context)
Citation Context ...systems of set constraints, including analyses for functional languages [AWL94, Hei94, AW93, AM91, JM79, MR85, Rey69], logic programming languages [AL94, HJ92, HJ90b, Mis84], and imperative languages =-=[HJ91]-=-. In these algorithms, sets of terms describe the possible values computed by a program. Set constraints are generated from the program text; solving the constraints yields some useful information abo... |

1 | Negative set constraints wtih equality: An easy proof of decidability - Charatonik, Pacholski - 1994 |