On Applying Or-Parallelism and Tabling to Logic Programs
Ricardo Rocha, Fernando Silva, Vitor Santos Costa
Abstract
The past years have seen widening efforts at increasing Prolog's declarativeness and expressiveness. Tabling has proved to be a viable technique to efficiently overcome SLD's susceptibility to infinite loops and redundant subcomputations. Our research demonstrates that implicit or-parallelism is a natural fit for logic programs with tabling. To substantiate this belief, we have designed and implemented an or-parallel tabling engine -- OPTYap -- and we used a shared-memory parallel machine to evaluate its performance. To the best of our knowledge, OPTYap is the first implementation of a parallel tabling engine for logic programming systems. OPTYap builds on Yap's efficient sequential Prolog engine. Its execution model is based on the SLG-WAM for tabling, and on the environment copying for or-parallelism. Preliminary results indicate that the mechanisms proposed to parallelize search in the context of SLD resolution can indeed be effectively and naturally generalized to parallelize tabled computations, and that the resulting systems can achieve good performance on shared-memory parallel machines. More importantly, it emphasizes our belief that through applying or-parallelism and tabling to logic programs the range of applications for Logic Programming can be increased.
Create a lesson
Related papers
How Often Does Your Program Fail?
Arnab Ray, Aalok Thakkar
Metamorphic Testing for Floating-Point Performance Issues in SMT Solvers
Rosa Abbasi, Eva Darulova
The Output-Space Hypothesis: Enumerative Equivalence Checking for Tensor Programs
Paul Biberstein, Joseph Devietti, Mayur Naik
Theories of Mind as Domain-Specific Languages of Thought
Kartik Chandra, Jonathan Ragan-Kelley, Joshua B. Tenenbaum et al.
LLVM Translation Validation Automated with Large Language Models and Lean
Chunhao Liao, Hongxu Xu, Xintong Zhou et al.
Splyce: SIMD Vectorization of Sparse Coiteration
Kabilan Mahathevan, Poorna Gunathilaka, Kirshanthan Sundararajah