Extending the 2P-Kt ecosystem with Concurrent Logic Programming support

Giordano, Andrea (2021) Extending the 2P-Kt ecosystem with Concurrent Logic Programming support. [Laurea magistrale], Università di Bologna, Corso di Studio in Ingegneria e scienze informatiche [LM-DM270] - Cesena
Documenti full-text disponibili:
[thumbnail of Thesis] Documento PDF (Thesis)
Disponibile con Licenza: Creative Commons: Attribuzione - Non commerciale - Condividi allo stesso modo 4.0 (CC BY-NC-SA 4.0)

Download (709kB)

Abstract

It is widely acknowledged that logic programming is very well suited for concurrency and a lot of research exists on this topic. However, despite the many contributions laying under the umbrella of concurrent logic programming, only a small amount of technologies survived the passage of time. Survivors, in turn, are tailored on an ancient way of designing (and implementing) concurrent systems. Accordingly, in this thesis we address the problem of designing and implementing a concurrent LP solution taking advantage of modern concurrent programming facilities such as co-routines and non-blocking I/O. In doing so, we leverage upon the 2P-Kt ecosystem for symbolic AI, following the purpose of enriching it towards concurrency. Along this line, the contribution of this thesis is three-folded. First, we review the state of the art of concurrent logic programming, providing an overview of its most important aspects and problems. We then formally model the behaviour of an OR-concurrent Prolog solver as a state machine which we adopt to extend the 2P-Kt ecosystem with concurrent Prolog support. Finally, we design, implement and validate an OR-concurrent Prolog solution reifying the aforementioned model into some actually usable technology. We put a lot of effort in the validation of our solver and then we assess the speedup of our concurrent Prolog solver via comparative benchmark with respect to sequential Prolog. Notably, our solution achieves some good results in terms of speedup and memory usage with respect to the sequential case.

Abstract
Tipologia del documento
Tesi di laurea (Laurea magistrale)
Autore della tesi
Giordano, Andrea
Relatore della tesi
Correlatore della tesi
Scuola
Corso di studio
Ordinamento Cds
DM270
Parole chiave
2P-Kt,prolog,concurrent logic programming,logic-based technologies,OR-parallelism
Data di discussione della Tesi
16 Dicembre 2021
URI

Altri metadati

Statistica sui download

Gestione del documento: Visualizza il documento

^