🤖 AI Summary
Addressing the long-standing absence of systematic parallel implementations for miniKanren, this paper proposes the first practical implicit parallelization framework. Leveraging Go’s goroutines and channels, we design a lightweight concurrent execution model that enables streaming unification of logic variables and parallel optimization of search strategies—achieving automatic parallelization of non-deterministic inference without modifying existing miniKanren programs. The framework preserves full semantic compatibility with standard miniKanren while significantly improving inference throughput on multi-core hardware. Experimental evaluation on representative benchmarks demonstrates near-linear speedup across varying core counts. Beyond validating the feasibility of parallelizing miniKanren, our work establishes an extensible, cross-language paradigm for parallel logic programming, offering a novel pathway toward high-performance logic programming language design and implementation. (149 words)
📝 Abstract
Concurrent logic programming predates miniKanren, but concurrent implementations of miniKanren have remained largely unexplored. In this work we present a parallel implementation of miniKanren in Go, demonstrating its feasibility and potential for performance improvements. Our approach leverages implicit parallelism allowing legacy programs to benefit from parallel execution. We discuss implementation strategies and evaluate the impact of parallelism, laying groundwork for future language-agnostic models.