TY - CHAP
T1 - Online partial deduction of large programs
AU - Prestwich, Steven
PY - 1993
Y1 - 1993
N2 - Partial deduction systems must be guided by an unfolding strategy, telling them which atoms to unfold and when to stop unfolding. Online strategies exploit knowledge accumulated during the unfolding itself, for example in a goal stack, while offline strategies are fixed before unfolding begins. Online strategies are more powerful, but a major overhead for large programs is the analysis time spent on each atom, which increases as the knowledge grows. We describe an online strategy whose analysis time for each atom is independent of the amount of knowledge about that atom. This reduces transformation times for programs with large search spaces by an order of magnitude, while retaining the power of online analysis. Correctness, termination and nontriviality are shown.
AB - Partial deduction systems must be guided by an unfolding strategy, telling them which atoms to unfold and when to stop unfolding. Online strategies exploit knowledge accumulated during the unfolding itself, for example in a goal stack, while offline strategies are fixed before unfolding begins. Online strategies are more powerful, but a major overhead for large programs is the analysis time spent on each atom, which increases as the knowledge grows. We describe an online strategy whose analysis time for each atom is independent of the amount of knowledge about that atom. This reduces transformation times for programs with large search spaces by an order of magnitude, while retaining the power of online analysis. Correctness, termination and nontriviality are shown.
UR - https://www.scopus.com/pages/publications/0027802105
M3 - Chapter
AN - SCOPUS:0027802105
SN - 0897915941
T3 - Proc ACM SIGPLAN Symp Partial Eval Semantics Based Program Manipulation
SP - 111
EP - 118
BT - Proc ACM SIGPLAN Symp Partial Eval Semantics Based Program Manipulation
A2 - Anon, null
PB - Publ by ACM
T2 - Proceedings of the ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation
Y2 - 14 June 1993 through 16 June 1993
ER -