Improving PARMA Trailing
Tom Schrijvers, Maria Garcia de la Banda, Bart Demoen, Peter J., Stuckey

TL;DR
This paper presents techniques to reduce the time and space costs of PARMA trailing in logic programming, including analysis and modifications, leading to more efficient implementations in HAL and dProlog.
Contribution
It introduces a trailing analysis for HAL and a modified PARMA trailing scheme that together significantly improve efficiency in logic variable trailing.
Findings
Space and time improvements in HAL using trailing analysis
Halving the trailing cost with a modified scheme
Combined techniques outperform individual methods
Abstract
Taylor introduced a variable binding scheme for logic variables in his PARMA system, that uses cycles of bindings rather than the linear chains of bindings used in the standard WAM representation. Both the HAL and dProlog languages make use of the PARMA representation in their Herbrand constraint solvers. Unfortunately, PARMA's trailing scheme is considerably more expensive in both time and space consumption. The aim of this paper is to present several techniques that lower the cost. First, we introduce a trailing analysis for HAL using the classic PARMA trailing scheme that detects and eliminates unnecessary trailings. The analysis, whose accuracy comes from HAL's determinism and mode declarations, has been integrated in the HAL compiler and is shown to produce space improvements as well as speed improvements. Second, we explain how to modify the classic PARMA trailing scheme to…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Logic, programming, and type systems · Software Testing and Debugging Techniques
