Algebraic approach to sharing analysis of logic programs

Michael Codish, Vitaly Lagoon, Francisco Bueno

Research output: Contribution to journalArticlepeer-review

11 Scopus citations


This paper describes an algebraic approach to the sharing analysis of logic programs based on an abstract domain of set logic programs. Set logic programs are logic programs in which the terms are sets of variables and unification is based on an associative, commutative, and idempotent equality theory. All of the basic operations required for sharing analyses, as well as their formal justification, are based on simple algebraic properties of set substitutions and set-based atoms. An ordering on set-based syntactic objects, similar to `less general' on concrete syntactic objects, is shown to reflect the notion of `less sharing' information. The (abstract) unification of a pair of set-based terms corresponds to finding their most general ACI1 unifier with respect to this ordering. The unification of a set of equations between set-based terms is defined exactly as in the concrete case, by solving the equations one by one and repeatedly applying their solutions to the remaining equations. We demonstrate that all of the operations in a sharing analysis have natural definitions which are both correct and optimal.

Original languageEnglish
Pages (from-to)111-149
Number of pages39
JournalJournal of Logic Programming
Issue number2
StatePublished - 1 Jan 2000

ASJC Scopus subject areas

  • Logic


Dive into the research topics of 'Algebraic approach to sharing analysis of logic programs'. Together they form a unique fingerprint.

Cite this