Bialgebraic Semantics for Logic Programming

27 Mar 2015  ·  Bonchi Filippo, Zanasi Fabio ·

Bialgebrae provide an abstract framework encompassing the semantics of different kinds of computational models. In this paper we propose a bialgebraic approach to the semantics of logic programming. Our methodology is to study logic programs as reactive systems and exploit abstract techniques developed in that setting. First we use saturation to model the operational semantics of logic programs as coalgebrae on presheaves. Then, we make explicit the underlying algebraic structure by using bialgebrae on presheaves. The resulting semantics turns out to be compositional with respect to conjunction and term substitution. Also, it encodes a parallel model of computation, whose soundness is guaranteed by a built-in notion of synchronisation between different threads.

PDF Abstract
No code implementations yet. Submit your code now

Categories


Logic in Computer Science

Datasets


  Add Datasets introduced or used in this paper