{log}: Set Formulas as Programs

04/16/2021
by   Maximiliano Cristiá, et al.
0

{log} is a programming language at the intersection of Constraint Logic Programming, set programming and declarative programming. But {log} is also a satisfiability solver for a theory of finite sets and finite binary relations. With {log} programmers can write abstract programs using all the power of set theory and binary relations. These programs are not very efficient but they are very close to specifications. Then, their correctness is more evident. Furthermore, {log} programs are also set formulas. Hence, programmers can use {log} again to automatically prove their programs verify non trivial properties. In this paper we show this development methodology by means of several examples.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/03/2022

A Typechecker for a Set-Based Constraint Logic Programming Language

log (read 'setlog') is a Constraint Logic Programming (CLP) language and...
research
05/24/2022

Modeling Asymptotic Complexity Using ACL2

The theory of asymptotic complexity provides an approach to characterizi...
research
07/12/2019

Delta -- new logic programming language and Delta-methodology for p-computable programs on Turing Complete Languages

In paper describes the new logic programming language Delta, which have ...
research
01/19/2021

Proof Automation in the Theory of Finite Sets and Finite Set Relation Algebra

log ('setlog') is a satisfiability solver for formulas of the theory of ...
research
07/09/2017

Generation and analysis of lamplighter programs

We consider a programming language based on the lamplighter group that u...
research
02/13/2018

A Concurrent Constraint Programming Interpretation of Access Permissions

A recent trend in object oriented (OO) programming languages is the use ...
research
06/13/2018

Simple Laws about Nonprominent Properties of Binary Relations

We checked each binary relation on a 5-element set for a given set of pr...

Please sign up or login with your details

Forgot password? Click here to reset