Lazy Stream Manipulation in Prolog via Backtracking: The Case of 2P-Kt

Giovanni Ciatto, Roberta Calegari, Andrea Omicini

The ability to lazily manipulate long or infinite streams of data is an essential feature in the era of data-driven artificial intelligence. Yet, logic programming technologies currently fall short when it comes to handling long or infinite streams of data. In this paper, we discuss how Prolog can be reinterpreted as a stream processing tool, and re-designed around an abstract state-machine capable of lazily manipulating streams of data via backtracking.

(keywords) Prolog; Stream processing; 2P-Kt; State machine

Logics in Artificial Intelligence, Lecture Notes in Computer Science (Lecture Notes in Artificial Intelligence) 12678, pages 407-420,  2021.
Wolfgang Faber, Gerhard Friedrich, Martin Gebser, Michael Morak (eds.), Springer.
17th European Conference, JELIA 2021, Virtual Event, May 17–20, 2021, Proceedings

author = {Ciatto, Giovanni and Calegari, Roberta and Omicini, Andrea},
booktitle = {Logics in Artificial Intelligence},
doi = {10.1007/978-3-030-75775-5_27},
editor = {Faber, Wolfgang and Friedrich, Gerhard and Gebser, Martin and Morak, Michael},
keywords = {Prolog; Stream processing; 2P-Kt; State machine},
note = {17th European Conference, JELIA 2021, Virtual Event, May 17--20, 2021, Proceedings},
pages = {407--420},
publisher = {Springer},
series = {Lecture Notes in Computer Science},
subseries = {Lecture Notes in Artificial Intelligence},
title = {Lazy Stream Manipulation in {P}rolog via Backtracking: The Case of {{\sf 2}P-{\sc Kt}}},
url = {},
volume = 12678,
year = 2021}


Journals & Series


Partita IVA: 01131710376 - Copyright © 2008-2021 APICe@DISI Research Group - PRIVACY