miniKanren 2026
as the organisers put it
The miniKanren and Relational Programming Workshop is a workshop about relational programming with an emphasis on the miniKanren family of languages: miniKanren, microKanren, core.logic, OCanren, Guanxi, etc. The scope of “relational programming” includes pure logic programming, constraint programming, and specification with inductively-defined relations (as in proof assistants), especially approaches that support “running programs backwards”, program synthesis, etc. The workshop solicits papers and talks on the design, implementation, theory, and application of such languages. A major goa ...
who it's for
language implementers, programming language researchers, logic programming researchers, program synthesis researchers, security engineers, embedded systems engineers
topics
bottom-up enumeration with pruning; defrel/bank memoization; weighted bank memoization; probabilistic miniKanren with particle filters; Markov bigram generation; semiringKanren polymorphic compilation; small-step reduction semantics and refocusing; rational-term unification algorithm; certified Rocq formalization; embeddable C++ miniKanren for policy verification
| title | author | length |
|---|---|---|
| Towards Bottom-Up Enumeration in miniKanren via Pruning and Memoization | Nikolai Kudasov | 29m |
Two small combinators implement bottom‑up enumeration with observational deduplication on an unmodified miniKanren core: prune deduplicates answers by a… | ||
| Programming Challenge to Attendees | Chris Martens, William E. Byrd | 09m |
Challenge frames transforming a small number of input sentences (often two) into new token sequences using relational techniques. Options include a simple… | ||
| Demos of Attendee Programs and Open Mic | William E. Byrd, Chris Martens | 18m |
Live demos show five independent implementations that parse given start/end states, build transition graphs or bi-gram matrices, and enumerate sentences by… | ||
| Introduction to relational programming in miniKanren | William E. Byrd, Chris Martens | 01h 03m |
Hands-on tour of miniKanren (faster-minikanren in Scheme/Racket) that demos core primitives and limits: first-order unification with occurs-check via equal==… | ||
| All for one and none forall: Compiling polymorphic relations without(…) | Dmitri Volkov, Chung-chieh Shan, Yafei Yang | 24m |
Claims a compiler pass for semiringKanren that removes type variables without monomorphization by compiling polymorphic relations into one canonical small… | ||
| A Lean, Mean, miniKanren Machine | Jason Hemann | 51m |
Presents a reduction semantics for miniKanren implemented in PLT Redex with a JavaScript/Racket stepper that visualizes an executable search tree and… | ||
| Efficient Rational Unification for miniKanren | Eridan Domoratskiy, Dmitri Boulytchev | 35m |
Presents an algorithm that performs rational-term unification with performance close to conventional miniKanren triangular substitution on Herbrand terms… | ||
| Lightweight Runtime Security Policy Verification Using an Embeddable C++ miniKanren | Andrew Shi-hwa Chen, Kodippilige Hashan Sharindu Kodippilige | 30m |
An embeddable C++ miniKanren implements relational search with a small virtual-machine queue, bump-allocation arenas and rational-term unification (no occurs… | ||
| nothing matches | ||