Scheduling Complexity of Interleaving Search
Programming Languages
2022-03-07 v2
Abstract
miniKanren is a lightweight embedded language for logic and relational programming. Many of its useful features come from a distinctive search strategy, called interleaving search. However, with interleaving search conventional ways of reasoning about the complexity and performance of logical programs become irrelevant. We identify an important key component -- scheduling -- which makes the reasoning for miniKanren so different, and present a semi-automatic technique to estimate the scheduling impact via symbolic execution for a reasonably wide class of programs.
Cite
@article{arxiv.2202.08511,
title = {Scheduling Complexity of Interleaving Search},
author = {Dmitry Rozplokhas and Dmitry Boulytchev},
journal= {arXiv preprint arXiv:2202.08511},
year = {2022}
}