English
Related papers

Related papers: More declarative tabling in Prolog using multi-pro…

200 papers

The Logic Programming through Prolog has been widely used for supply persistence in many systems that need store knowledge. Some implementations of Prolog Programming Language used for supply persistence have bidirectional interfaces with…

Programming Languages · Computer Science 2017-05-02 José E. Zalacain Llanes

Recently, the iterative approach named linear tabling has received considerable attention because of its simplicity, ease of implementation, and good space efficiency. Linear tabling is a framework from which different methods can be…

Programming Languages · Computer Science 2007-05-25 Neng-Fa Zhou , Taisuke Sato , Yi-Dong Shen

Development of distributed systems is a difficult task. Declarative programming techniques hold a promising potential for effectively supporting programmer in this challenge. While Datalog-based languages have been actively explored for…

Programming Languages · Computer Science 2010-07-23 Nuno P. Lopes , Juan A. Navarro , Andrey Rybalchenko , Atul Singh

Representation sharing can reduce the memory footprint of a program by sharing one representation between duplicate terms. The most common implementation of representation sharing in functional programming systems is known as hash-consing.…

Programming Languages · Computer Science 2011-07-01 Phuong-Lan Nguyen , Bart Demoen

This paper describes how XSB combines top-down and bottom-up computation through the mechanisms of variant tabling and subsumptive tabling with abstraction, respectively. It is well known that top-down evaluation of logical rules in Prolog…

Logic in Computer Science · Computer Science 2018-04-24 David S. Warren

Tabling for contextual abduction in logic programming has been introduced as a means to store previously obtained abductive solutions in one context to be reused in another context. This paper identifies a number of issues in the existing…

Artificial Intelligence · Computer Science 2020-09-23 Ridhwan Dewoprabowo , Ari Saptawijaya

Pull-tabbing is an evaluation technique for functional logic programs which computes all non-deterministic results in a single graph structure. Pull-tab steps are local graph transformations to move non-deterministic choices towards the…

Programming Languages · Computer Science 2020-08-28 Michael Hanus , Finn Teegen

PRholog is an experimental extension of logic programming with strategic conditional transformation rules, combining Prolog with Rholog calculus. The rules perform nondeterministic transformations on hedges. Queries may have several results…

Programming Languages · Computer Science 2010-01-26 Besik Dundua , Temur Kutsia , Mircea Marin

Tabling is an evaluation strategy for Prolog programs that works by storing answers in a table space and then by using them in similar subgoals. Some tabling engines use call by subsumption, where it is determined that a subgoal will…

Programming Languages · Computer Science 2011-12-19 Flavio Cruz , Ricardo Rocha

Prolog is a well known declarative programming language based on propositional Horn formulas. It is useful in various areas, including artificial intelligence, automated theorem proving, mathematical logic and so on. An active research area…

Logic in Computer Science · Computer Science 2021-03-02 Anish Mallick , Anil Shukla

Adding versatile interactions to goals and queries in logic programming is an essential task. Unfortunately, existing logic languages can take input from the user only via the $read$ construct. We propose to add a new interactive goal to…

Programming Languages · Computer Science 2013-08-06 Keehang Kwon

Logic programming is a declarative programming paradigm. Programming language Prolog makes logic programming possible, at least to a substantial extent. However the Prolog debugger works solely in terms of the operational semantics. So it…

Programming Languages · Computer Science 2020-03-09 Włodzimierz Drabent

The logic programming paradigm provides the basis for a new intensional view of higher-order notions. This view is realized primarily by employing the terms of a typed lambda calculus as representational devices and by using a richer form…

Programming Languages · Computer Science 2007-05-23 Gopalan Nadathur

Global SLS-resolution and SLG-resolution are two representative mechanisms for top-down evaluation of the well-founded semantics of general logic programs. Global SLS-resolution is linear for query evaluation but suffers from infinite loops…

Artificial Intelligence · Computer Science 2007-05-23 Yi-Dong Shen , Li-Yan Yuan , Jia-Huai You

Even though the core of the Prolog programming language has been standardized by ISO since 1995, it remains difficult to write complex Prolog programs that can run unmodified on multiple Prolog implementations. Indeed, implementations…

Programming Languages · Computer Science 2022-05-10 David Geleßus , Michael Leuschel

Abductive logic programming offers a formalism to declaratively express and solve problems in areas such as diagnosis, planning, belief revision and hypothetical reasoning. Tabled logic programming offers a computational mechanism that…

Logic in Computer Science · Computer Science 2016-08-15 José Júlio Alferes , Luís Moniz Pereira , Terrance Swift

To appear in Theory and Practice of Logic Programming (TPLP). Several Prolog interpreters are based on the Warren Abstract Machine (WAM), an elegant model to compile Prolog programs. In order to improve the performance several strategies…

Programming Languages · Computer Science 2014-05-13 George Souza Oliveira , Anderson Faustino da Silva

Abductive logic programs offer a formalism to declaratively represent and reason about problems in a variety of areas: diagnosis, decision making, hypothetical reasoning, etc. On the other hand, logic program updates allow us to express…

Artificial Intelligence · Computer Science 2014-05-09 Ari Saptawijaya , Luís Moniz Pereira

In this paper, we present the case for a declarative foundation for data-intensive machine learning systems. Instead of creating a new system for each specific flavor of machine learning task, or hardcoding new optimizations, we argue for…

Concolic testing mixes symbolic and concrete execution to generate test cases covering paths effectively. Its benefits have been demonstrated for more than 15 years to test imperative programs. Other programming paradigms, like logic…

Logic in Computer Science · Computer Science 2020-02-18 Sophie Fortz , Fred Mesnard , Etienne Payet , Gilles Perrouin , Wim Vanhoof , German Vidal