#### Filter Results:

#### Publication Year

1985

2016

#### Publication Type

#### Co-author

#### Publication Venue

#### Key Phrases

Learn More

Many static analyses for declarative programming/database languages use Boolean functions to express dependencies among variables or argument positions. Examples include groundness analysis, arguably the most important analysis for logic programs, niteness analysis and functional dependency analysis for databases. We identify two classes of Boolean… (More)

Logic-programming languages are based on a principle of separation “logic” and “control.”. This means that they can be given simple model-theoretic semantics without regard to any particular execution mechanism (or proof procedure, viewing execution as theorem proving). Although the separation is desirable from a semantical point of… (More)

The present paper is an extended abstract of (Jones 1985), in which a running , non-trivial partial evaluator is described. As far as we know, this partia l evaluator is the first which has been used in practice to transform interpreters into corresponding stand-alone compilers, or to generate a compile r generator by transforming itself. A partial… (More)

Since the late eighties, much progress has been made in the theory of termination analysis for logic programs. However, from a practical point of view, the signiicance of much of the work on termination is hard to judge, since experimental evaluations rarely get published. Here we describe and evaluate a termination analyzer for Mercury, a strongly typed… (More)

We show how precise groundness information can be extracted from logic programs. The idea is to use abstract interpretation with Boolean functions as “approximations” to groundness dependencies between variables. This idea is not new, and different classes of Boolean functions have been used. We argue, however, that one class, the… (More)

We investigate Jacobs and Langen's Sharing domain, introduced for the analysis of variable sharing in logic programs, and show that it is isomorphic to Marriott and Søndergaard's Pos domain, introduced for the analysis of groundness dependencies. Our key idea is to view the sets of variables in a Sharing domain element as the models of a corresponding… (More)

The increased acceptance of Prolog has motivated widespread interest in the semantics-based dataflow analysis of logic programs and a number of different approaches have been suggested. However, the relationships between these approaches are not clear. The present paper provides a unifying introduction to the approaches by giving novel denotational semantic… (More)