Bialgebraic Semantics for Logic Programming

Filippo Bonchi, Fabio Zanasi, Stefan Milius
2015 Logical Methods in Computer Science  
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
more » ... brae 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.
doi:10.2168/lmcs-11(1:14)2015 fatcat:argwzu3gijhm3n6w5bdi726uzu