English
Related papers

Related papers: Logic Programming with Macro Connectives

200 papers

Prolog is a well-known declarative programming language commonly used in introductory courses on logic and reasoning. However, many students find Prolog challenging because it lacks the familiar debugging mechanisms found in imperative…

Programming Languages · Computer Science 2026-05-27 Ricardo Brancas , Vasco Manquinho , Ruben Martins

Large language models (LLMs) have shown exceptional performance as general-purpose assistants, excelling across a variety of reasoning tasks. This achievement represents a significant step toward achieving artificial general intelligence…

Artificial Intelligence · Computer Science 2024-08-13 Xiaoyu Tan , Yongxin Deng , Xihe Qiu , Weidi Xu , Chao Qu , Wei Chu , Yinghui Xu , Yuan Qi

The semantics and the recursive execution model of Prolog make it very natural to express language interpreters in form of AST (Abstract Syntax Tree) interpreters where the execution follows the tree representation of a program. An…

Programming Languages · Computer Science 2020-08-31 Philipp Körner , David Schneider , Michael Leuschel

LLMs trained in the understanding of programming syntax are now providing effective assistance to developers and are being used in programming education such as in generation of coding problem examples or providing code explanations. A key…

Artificial Intelligence · Computer Science 2024-11-19 Yanggyu Lee , Suchae Jeong , Jihie Kim

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

Both Prolog and Oz are multiparadigm languages with a logic programming core. There is a significant subset of Oz that is a syntactic variant of Prolog: pure Prolog programs with green or blue cuts and bagof/3 or setof/3 can be translated…

Programming Languages · Computer Science 2023-02-02 Peter Van Roy , Seif Haridi

Termination is an important and well-studied property for logic programs. However, almost all approaches for automated termination analysis focus on definite logic programs, whereas real-world Prolog programs typically use the cut operator.…

Logic in Computer Science · Computer Science 2010-07-29 Peter Schneider-Kamp , Jürgen Giesl , Thomas Ströder , Alexander Serebrenik , René Thiemann

A distributed logic programming language with support for meta-programming and stream processing offers a variety of interesting research problems, such as: How can a versatile and stable data structure for the indexing of a large number of…

Symbolic Computation · Computer Science 2020-09-23 Thomas Prokosch

Pretrained large language models (LLMs) are increasingly utilized across a wide range of natural language processing (NLP) tasks due to their impressive capabilities as few-shot learners. Recent techniques, such as chain-of-thought (CoT)…

Machine Learning · Computer Science 2024-12-02 Kamesh R

The paradigm of Tabled Logic Programming (TLP) is now supported by a number of Prolog systems, including XSB, YAP Prolog, B-Prolog, Mercury, ALS, and Ciao. The reasons for this are partly theoretical: tabling ensures termination and optimal…

Programming Languages · Computer Science 2010-12-24 Terrance Swift , David S. Warren

Logic programming is a powerful paradigm for programming autonomous agents in dynamic domains, as witnessed by languages such as Golog and Flux. In this work we present ALPprolog, an expressive, yet efficient, logic programming language for…

Logic in Computer Science · Computer Science 2011-07-27 Conrad Drescher , Michael Thielscher

In the logic programming paradigm, a program is defined by a set of methods, each of which can be executed when specific conditions are met during the current state of an execution. The semantics of these programs can be elegantly…

Logic in Computer Science · Computer Science 2024-10-02 Matteo Acclavio , Roberto Maieli

Detectability of failures of linear programming (LP) decoding and its potential for improvement by adding new constraints motivate the use of an adaptive approach in selecting the constraints for the LP problem. In this paper, we make a…

Information Theory · Computer Science 2007-07-13 Mohammad H. Taghavi N. , Paul H. Siegel

Making a Prolog program more efficient by transforming its source code, without changing its operational semantics, is not an obvious task. It requires the user to have a clear understanding of how the Prolog compiler works, and in…

Programming Languages · Computer Science 2007-11-01 Francois Gobert , Baudouin Le Charlier

Inductive logic programming, or relational learning, is a powerful paradigm for machine learning or data mining. However, in order for ILP to become practically useful, the efficiency of ILP systems must improve substantially. To this end,…

Artificial Intelligence · Computer Science 2011-06-10 H. Blockeel , L. Dehaspe , B. Demoen , G. Janssens , J. Ramon , H. Vandecasteele

Tracers provide users with useful information about program executions. In this article, we propose a ``tracer driver''. From a single tracer, it provides a powerful front-end enabling multiple dynamic analysis tools to be easily…

Software Engineering · Computer Science 2008-12-18 Ludovic Langevine , Mireille Ducasse

We introduce an inductive logic programming approach that combines classical divide-and-conquer search with modern constraint-driven search. Our anytime approach can learn optimal, recursive, and large programs and supports predicate…

Artificial Intelligence · Computer Science 2021-12-08 Andrew Cropper

Detectability of failures of linear programming (LP) decoding and the potential for improvement by adding new constraints motivate the use of an adaptive approach in selecting the constraints for the underlying LP problem. In this paper, we…

Information Theory · Computer Science 2007-07-13 Mohammad H. Taghavi , Paul H. Siegel

Refactoring is an established technique from the object-oriented (OO) programming community to restructure code: it aims at improving software readability, maintainability and extensibility. Although refactoring is not tied to the…

Software Engineering · Computer Science 2007-05-23 Alexander Serebrenik , Tom Schrijvers , Bart Demoen

Despite the remarkable successes of large language models (LLMs), the underlying Transformer architecture has inherent limitations in handling complex reasoning tasks. Chain-of-thought (CoT) prompting has emerged as a practical workaround,…

Computation and Language · Computer Science 2025-06-03 Xiang Zhang , Juntai Cao , Jiaqi Wei , Chenyu You , Dujian Ding