Authors
Abhik Roychoudhury, CR Ramakrishnan, IV Ramakrishnan, R Sekar
Publication date
1998/5/16
Conference
Proceedings of the 1998 International Conference on Computer Languages (Cat. No. 98CB36225)
Pages
196-205
Publisher
IEEE
Description
The performance of logic programs can be significantly improved by reducing nondeterminism in their evaluation using techniques for early pruning of computation paths that would eventually fail. Using static information gleaned from the program, we can identify (simple) conditions that must hold for certain computation paths to succeed, and test them before searching along those paths. However, naive introduction of such tests can actually lead to performance degradation since tests may be repeated along a branch, and also because the tests themselves may create additional choice points. We therefore develop a program transformation algorithm that enables us to introduce only those tests that facilitate early pruning of failure branches, while providing formal guarantees against any performance degradation. Our transformation is based on a novel polyvariant program specialization technique that can reason …
Total citations
1999200020012002200320042005200620072008200920102011201220132014201511
Scholar articles
A Roychoudhury, CR Ramakrishnan, IV Ramakrishnan… - Proceedings of the 1998 International Conference on …, 1998