Share This Author
Two Classes of Boolean Functions for Dependency Analysis
An experiment in partial evaluation: the generation of a compiler generator
A running, non-trivial partial evaluator is described, which 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.
Boolean Functions for Dependency Analysis: Algebraic Properties and Efficient Representation
This work systematically investigates two classes of Boolean functions used for dependency analyses: positive and definite functions, and shows that both classes are closed under existential quantification.
Sharing and groundness dependencies in logic programs
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,…
Precise and efficient groundness analysis for logic programs
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…
Synthesizing Optimal Switching Lattices
It is shown how to directly construct switching lattices of polynomial size from arbitrary logic functions and how to synthesize minimal-sized lattices by translating the problem to the satisfiability problem for a restricted class of quantified Boolean formulas.
Mix: A self-applicable partial evaluator for experiments in compiler generation
The paper gives an introduction to partial evaluation and describes a fully automatic though experimental partial evaluator, called mix, able to generate stand-alone compilers as well as a compiler generator.
An Application of Abstract Interpretation of Logic Programs: Occur Check Reduction
- H. Søndergaard
- Computer ScienceESOP
- 1 March 1986
The present paper is concerned with the problem of determining circumstances under which the occur check may be safely dispensed with and the method given draws on one outlined by David Plaisted.
Denotational abstract interpretation of logic programs
A denotational definition of the semantics of definite logic programs is presented, and one instance of the definition is exemplified by developing a provably correct groundness analysis to predict how variables may be bound to ground terms during execution.
Collaborative learning through formative peer review: pedagogy, programs and potential
This work examines student peer review, with an emphasis on formative practice and collaborative learning, rather than peer grading, and identifies some gaps in current understanding of formative peer review.