Six Ways to Implement Divisibility by Three in miniKanren
Programming Languages
2024-08-30 v1
Abstract
This paper explores options for implementing the relation within miniKanren using miniKanren numbers and its arithmetic suite. We examine different approaches starting from straightforward implementations to more optimized versions. The implementations discussed include brute-force arithmetic methods, divisibility tricks, and derivation from a finite automaton. Our contributions include an in-depth look at the process of implementing a miniKanren relation and observations on benchmarking \texttt{defrel}s. This study aims to provide practical insights for miniKanren programmers on both performance and implementation techniques.
Cite
@article{arxiv.2408.16259,
title = {Six Ways to Implement Divisibility by Three in miniKanren},
author = {Brett Schreiber and Brysen Pfingsten and Jason Hemann},
journal= {arXiv preprint arXiv:2408.16259},
year = {2024}
}