miniKanren and its formal semantics
Dmitry Rozplokhas
JetBrains, St Petersburg
Wednesday 22 May 2019
13:00 - 14:00
1.82 Earl Mountbatten Building
Abstract
miniKanren is a small logic programming language which aims to be a
light-weight and purely declarative alternative to Prolog. The main
field of application for miniKanren is “relational programming” —
the technique of writing programs as mathematical relations rather
than mathematical functions. Programs written in this way have a few
interesting features, such as an ability to be “run backwards”
(synthesize arguments from the result).
In the first part of the talk, I am going to give a short overview
of the language. We will discuss its advantages and disadvantages,
look at some simple examples of programs in miniKanren as well as
state-of-the-art applications of relational programming. In the
second part of the talk, I will describe the project I am currently
involved in: providing formal semantics — rigorous mathematical
description — to miniKanren programs and using it to prove some
properties of program execution in the language.
Host: Katya Komendantskaya Host: web pages