Brussels / 1 & 2 February 2025

schedule

Constraint Logic Programming From The Perspective of Annotations


Constraint Logic Programming feels magical.

Representing limitations provides interesting mechanisms for empowering a model to fill in the gaps.

This talk begins with a soft introduction to some of the underlying aspects of how this is used, as well as pointers to how this is treated for domains such as The Closed Knights Tour and Solving N-queens.

Here is how Markus Triska (the author of CLP(FD) and CLP(ℤ) libraries) describes these concepts: https://www.metalevel.at/knight/ https://www.metalevel.at/queens/

The remainder of the talk focuses on how CLP has been used to allow Qiuy as a recursive-modelling-language gains numerous advantages - in particular concerning being generalised so that a commensurate UUID can be formed as a result of assigning symbolic references to numerous dimensions inherent within its annotations.

Here is a WIP written in SWI-Prolog (though in all likelihood the presentation will be in Scryer Prolog):

https://codeberg.org/indieterminacy/1q60mq-mqm_qiuy/src/branch/indieterminacy-draft/mq-mqm_qiuy-ii.pl

There will be a breakdown of how CLP is used to assign unique numbers for a notation range which Jonathan McHugh uses (which is a symbolic range of roughly a quarter of a trillion, using 2-17 characters to form an annotation).

The use of this approach has great advantages for not only treating a user's parameters like a state machine, but additionally via more general behaviours of Prolog to provide association with another users parameters (as well as other statements of facts)

Speakers

Jonathan McHugh