A set constraint is of the form exp/sub 1/ contains exp/sub 2/ where exp/sub 1/ and exp/sub 2/ are set expressions constructed using variables, function symbols, projection symbols, and the set union, intersection, and complement symbols. While the satisfiability problem for such constraints is open, restricted classes have been useful in program analysis. The main result is a decision procedure for definite set constraints which are of the restricted form a contains exp, where a contains only constants, variables, and function symbols, and exp is a positive set expression (that is, it does not contain the complement symbol). A conjunction of such constraints, whenever satisfiable, has a least model and the algorithm will output an explicit representation of this model. An additional feature of the algorithm is that it deals with another important class of set constraints. These are the solved form set constraints which have the form X/sub 1/=exp/sub 1/, . . ., X/sub n/=exp/sub n/, where the X/sub i/ are distinct variables and the exp/sub i/ are positive set expressions. A solved form constraint is always satisfiable and possesses a least and a greatest model. The algorithm can output explicit representations of both.<<ETX>>
[1]
Wilhelm Ackermann,et al.
Solvable Cases Of The Decision Problem
,
1954
.
[2]
Neil D. Jones,et al.
Flow analysis and optimization of LISP-like structures
,
1979,
POPL.
[3]
Joxan Jaffar,et al.
A finite presentation theorem for approximating logic programs
,
1989,
POPL '90.
[4]
M. Rabin.
Decidability of second-order theories and automata on infinite trees
,
1968
.
[5]
Prateek Mishra,et al.
Towards a Theory of Types in Prolog
,
1984,
SLP.
[6]
Robert McNaughton,et al.
Parenthesis Grammars
,
1967,
JACM.
[7]
John C. Reynolds,et al.
Automatic computation of data set definitions
,
1968,
IFIP Congress.
[8]
M. Rabin.
Decidability of second-order theories and automata on infinite trees.
,
1969
.
[9]
John Doner,et al.
Tree Acceptors and Some of Their Applications
,
1970,
J. Comput. Syst. Sci..