In this paper, we present a fast binding-time analysis (BTA) by integrating a size-change analysis, which is independent of a selection rule, into a previous BTA for the offline partial evaluation of logic programs. In contrast to previous approaches, the new BTA is conceptually simpler and considerably faster, scaling to medium-sized or even large examples and, moreover, it ensures both the so called local and global termination. The technique can also be used to infer annotations for "semi-online" specialisers combining the speed of the offline approach with the power of the online one. We also show that through the use of selective hints, we can achieve both good specialisation results and a fast BTA and specialisation.
Available: PDF BibTeX-Entry