# Exploiting Parallelism in Coalgebraic Logic Programming

-

English
28 Pages

Description

We present a parallel implementation of Coalgebraic Logic Programming (CoALP) in the programming language Go. CoALP was initially introduced to reflect coalgebraic semantics of logic programming, with coalgebraic derivation algorithm featuring both corecursion and parallelism. Here, we discuss how the coalgebraic semantics influenced our parallel implementation of logic programming.

Subjects

##### Coinduction

Informations

 Published by Published 22 January 2015 Reads 2 Language English
Report a problem
Available online atwww.sciencedirect.com
Electronic Notes in Theoretical Computer Science 303 (2014) 121–148 www.elsevier.com/locate/entcs
Exploiting
Parallelism in Coalgebraic Programming
Logic
a,1,4 b,2 Ekaterina Komendantskaya Martin Schmidt a,3,4 J´onathanHeras a School of Computing University of Dundee UK b Institute of Cognitive Science UniversityofOsnabru¨ck Germany
Abstract We present a parallel implementation of Coalgebraic Logic Programming (CoALP) in the programming language Go. CoALP was initially introduced to reﬂect coalgebraic semantics of logic programming, with coalgebraic derivation algorithm featuring both corecursion and parallelism. Here, we discuss how the coalgebraic semantics inﬂuenced our parallel implementation of logic programming.
Keywords:Coinduction, Corecursion, Guardedness, Parallelism, GoLang.
1
Introduction
In the standard formulations of Logic Programming (LP), such as in Lloyd’s book [19], a ﬁrst-order logic programPconsists of a ﬁnite set of clauses of the formAA1, . . . , An, whereAand theAi’s are atomic ﬁrst-order formulae, typ-ically containing free variables, and whereA1, . . . , Anis understood to mean the conjunction of theAi’s: note thatnmay be 0. SLD-resolution, which is a central algorithm for LP, takes a goalG, typically written asB1, . . . , Bn, where the list ofBi’s is again understood to mean a conjunction of atomic formulae, typically containing free variables, and constructs a proof for an instantiation ofGfrom substitution instances of the clauses inP[19].
1 Email:katya@computing.dundee.ac.uk 2 Email:martisch@uos.de 3 Email:jonathanheras@computing.dundee.ac.uk 4 The work was supported by EPSRC grants EP/J014222/1 and EP/K031864/1.