|Publication Type||Journal Article|
|Year of Publication||1998|
|Journal||Science of Computer Programming|
|Keywords||abstract interpretation, constraint systems, constraint-based languages, software verification, static analysis|
Many interesting analyses for constraint logic-based languages are aimed at the detection of monotonic properties, that is to say, properties that are preserved as the computation progresses. Our basic claim is that most, if not all, of these analyses can be described within a unified notion of constraint domains. We present a class of constraint systems that allows for a smooth integration within an appropriate framework for the definition of non-standard semantics of constraint logic-based languages. Such a framework is also presented and motivated. We then show how such domains can be built, as well as construction techniques that induce a hierarchy of domains with interesting properties. In particular, we propose a general methodology for domain combination with asynchronous interaction (i.e., the interaction is not necessarily synchronized with the domains’ operations). By following this methodology, interesting combinations of domains can be expressed with all the the semantic elegance of concurrent constraint programming languages.