Implementing Groundness Analysis with Definite Boolean Functions

  • Authors:
  • Jacob M. Howe;Andy King

  • Affiliations:
  • -;-

  • Venue:
  • ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

The domain of definite Boolean functions, Def, can be used to express the groundness of, and trace grounding dependencies between, program variables in (constraint) logic programs. In this paper, previously unexploited computational properties of Def are utilised to develop an efficient and succinct groundness analyser that can be coded in Prolog. In particular, entailment checking is used to prevent unnecessary least upper bound calculations. It is also demonstrated that join can be defined in terms of other operations, thereby eliminating code and removing the need for preprocessing formulae to a normal form. This saves space and time. Furthermore, the join can be adapted to straightforwardly implement the downward closure operator that arises in set sharing analyses. Experimental results indicate that the new Def implementation gives favourable results in comparison with BDD-based groundness analyses.