Bialgebraic Semantics for Logic Programming
Filippo Bonchi, Fabio Zanasi

TL;DR
This paper introduces a bialgebraic framework for logic programming semantics, modeling programs as reactive systems to achieve compositional and parallel semantics with synchronization.
Contribution
It develops a novel bialgebraic approach to logic programming semantics, integrating coalgebraic and algebraic techniques for compositional and parallel models.
Findings
Semantics modeled as coalgebras on presheaves
Explicit algebraic structure via bialgebras on presheaves
Parallel computation model with synchronization
Abstract
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
