PLAIDBLOFeb 20, 2018

Logic Programming Applications: What Are the Abstractions and Implementations?

arXiv:1802.07284v16 citations
Originality Synthesis-oriented
AI Analysis

This is an incremental review that organizes existing knowledge for researchers and practitioners in logic programming.

The article provides an overview of logic programming applications by classifying them based on abstractions (join, recursion, constraint) and implementations (for-loops, fixed points, backtracking), linking these to database queries, inductive analysis, and combinatorial search.

This article presents an overview of applications of logic programming, classifying them based on the abstractions and implementations of logic languages that support the applications. The three key abstractions are join, recursion, and constraint. Their essential implementations are for-loops, fixed points, and backtracking, respectively. The corresponding kinds of applications are database queries, inductive analysis, and combinatorial search, respectively. We also discuss language extensions and programming paradigms, summarize example application problems by application areas, and touch on example systems that support variants of the abstractions with different implementations.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes