School of Computing

Three Optimisations for Sharing

J. M. Howe and A. King

Theory and Practice of Logic Programming, 3(2):182-196, January 2003 (Theory and Practice of Logic Programming was formally known as The Journal of Logic Programming, see http://www.cwi.nl/projects/alp/Welcome/appeal.html).

Abstract

In order to improve precision and efficiency sharing analysis should track both freeness and linearity. The abstract unification algorithms for these combined domains are suboptimal, hence there is scope for improving precision. This paper proposes three optimisations for tracing sharing in combination with freeness and linearity. A novel connection between equations and sharing abstractions is used to establish correctness of these optimisations even in the presence of rational trees. A method for pruning intermediate sharing abstractions to improve efficiency is also proposed. The optimisations are lightweight and therefore some, if not all, of these optimisations will be of interest to the implementor.

Download publication 372 kbytes (PostScript)

Bibtex Record

@article{1352,
author = {J.~M.~Howe and A.~King},
title = {{T}hree {O}ptimisations for {S}haring},
month = {January},
year = {2003},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {(Theory and Practice of Logic Programming was formally known as The Journal of Logic Programming, see http://www.cwi.nl/projects/alp/Welcome/appeal.html)},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2003/1352},
    publication_type = {article},
    submission_id = {3635_1015414700},
    journal = {Theory and Practice of Logic Programming},
    publisher = {Cambridge University Press},
    Volume = {3},
    Number = {2},
    ISSN = {1471-0684},
}

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014