TY - CHAP

T1 - Coalgebraic semantics for parallel derivation strategies in logic programming

AU - Komendantskaya, Ekaterina

AU - McCusker, Guy

AU - Power, John

PY - 2011

Y1 - 2011

N2 - Logic programming, a class of programming languages based on first-order logic, provides simple and efficient tools for goal-oriented proof-search. Logic programming supports recursive computations, and some logic programs resemble the inductive or coinductive definitions written in functional programming languages. In this paper, we give a coalgebraic semantics to logic programming. We show that ground logic programs can be modelled by either P f P f -coalgebras or P f List-coalgebras on Set. We analyse different kinds of derivation strategies and derivation trees (proof-trees, SLD-trees, and-or parallel trees) used in logic programming, and show how they can be modelled coalgebraically.

AB - Logic programming, a class of programming languages based on first-order logic, provides simple and efficient tools for goal-oriented proof-search. Logic programming supports recursive computations, and some logic programs resemble the inductive or coinductive definitions written in functional programming languages. In this paper, we give a coalgebraic semantics to logic programming. We show that ground logic programs can be modelled by either P f P f -coalgebras or P f List-coalgebras on Set. We analyse different kinds of derivation strategies and derivation trees (proof-trees, SLD-trees, and-or parallel trees) used in logic programming, and show how they can be modelled coalgebraically.

UR - http://dx.doi.org/10.1007/978-3-642-17796-5_7

U2 - 10.1007/978-3-642-17796-5_7

DO - 10.1007/978-3-642-17796-5_7

M3 - Chapter

SN - 978-3-642-17795-8

VL - 6486

T3 - Lecture Notes in Computer Science

SP - 111

EP - 127

BT - Algebraic Methodology and Software Technology

A2 - Johnson, Michael

A2 - Pavlovic, Dusko

PB - Springer

ER -