English
Related papers

Related papers: Horn Clauses as an Intermediate Representation for…

200 papers

Our goal is to study the feasibility of porting termination analysis techniques developed for one programming paradigm to another paradigm. In this paper, we show how to adapt termination analysis techniques based on polynomial…

Programming Languages · Computer Science 2009-12-23 Manh Thang Nguyen , Danny De Schreye , Jürgen Giesl , Peter Schneider-Kamp

Several techniques and tools have been developed for verification of properties expressed as Horn clauses with constraints over a background theory (CHC). Current CHC verification tools implement intricate algorithms and are often limited…

Programming Languages · Computer Science 2014-05-16 John P. Gallagher , Bishoksan Kafle

The purpose of this paper is to present a fresh idea on how symbolic learning might be realized via analogical reasoning. For this, we introduce directed analogical proportions between logic programs of the form "$P$ transforms into $Q$ as…

Logic in Computer Science · Computer Science 2023-10-12 Christian Antić

How can we perform computations over natural language representations to solve tasks that require symbolic and numeric reasoning? We propose natural language embedded programs (NLEP) as a unifying framework for addressing math/symbolic…

Computation and Language · Computer Science 2024-04-01 Tianhua Zhang , Jiaxin Ge , Hongyin Luo , Yung-Sung Chuang , Mingye Gao , Yuan Gong , Xixin Wu , Yoon Kim , Helen Meng , James Glass

A line of work in planning uses LLM not to generate a plan, but to generate a formal representation in some planning language, which can be input into a symbolic solver to deterministically find a plan. While showing improved trust and…

Computation and Language · Computer Science 2025-10-08 Prabhu Prakash Kagitha , Bo Sun , Ishan Desai , Andrew Zhu , Cassie Huang , Manling Li , Ziyang Li , Li Zhang

A grammar formalism based upon CHR is proposed analogously to the way Definite Clause Grammars are defined and implemented on top of Prolog. These grammars execute as robust bottom-up parsers with an inherent treatment of ambiguity and a…

Computation and Language · Computer Science 2007-05-23 Henning Christiansen

We show how automatic tools for the verification of linear and branching time properties of procedural, multi-threaded, and functional programs as well as program synthesis can be naturally and uniformly seen as solvers of constraints in…

Logic in Computer Science · Computer Science 2014-06-02 Andrey Rybalchenko

As large language models (LLMs) excel at code reasoning, a natural question arises: can an LLM execute programs (i.e., act as an interpreter) purely based on a programming language's formal semantics? If so, it will enable rapid prototyping…

Programming Languages · Computer Science 2025-10-08 Aditya Thimmaiah , Jiyang Zhang , Jayanth Srinivasa , Junyi Jessy Li , Milos Gligoric

We propose relational linear programming, a simple framework for combing linear programs (LPs) and logic programs. A relational linear program (RLP) is a declarative LP template defining the objective and the constraints through the logical…

Artificial Intelligence · Computer Science 2014-10-14 Kristian Kersting , Martin Mladenov , Pavel Tokmakov

We present evidence that language models (LMs) of code can learn to represent the formal semantics of programs, despite being trained only to perform next-token prediction. Specifically, we train a Transformer model on a synthetic corpus of…

Machine Learning · Computer Science 2024-08-06 Charles Jin , Martin Rinard

The possibility of translating logic programs into functional ones has long been a subject of investigation. Common to the many approaches is that the original logic program, in order to be translated, needs to be well-moded and this has…

Programming Languages · Computer Science 2007-05-23 S. Etalle , J. Mountjoy

With the technology of the time, Kowalski's seminal 1974 paper {\em Predicate Logic as a Programming Language} was a breakthrough for the use of logic in computer science. It introduced two fundamental ideas: on the declarative side, the…

Logic in Computer Science · Computer Science 2018-03-14 Broes De Cat , Bart Bogaerts , Maurice Bruynooghe , Gerda Janssens , Marc Denecker

Alternation of forward and backward analyses is a standard technique in abstract interpretation of programs, which is in particular useful when we wish to prove unreachability of some undesired program states. The current state-of-the-art…

Programming Languages · Computer Science 2017-08-08 Alexey Bakhirkin , David Monniaux

Modal logic is a paradigm for several useful and applicable formal systems in computer science. It generally retains the low complexity of classical propositional logic, but notable exceptions exist in the domains of description, temporal,…

Logic in Computer Science · Computer Science 2016-09-15 Davide Bresolin , Emilio Muñoz-Velasco , Guido Sciavicco

In this paper, we introduce methods of encoding propositional logic programs in vector spaces. Interpretations are represented by vectors and programs are represented by matrices. The least model of a definite program is computed by…

Artificial Intelligence · Computer Science 2018-11-29 Chiaki Sakama , Hien D. Nguyen , Taisuke Sato , Katsumi Inoue

This short paper describes a simple and intuitive Prolog program, a metainterpreter, that computes the bottom up meaning of a simple positive Horn clause definition. It involves a simple transformation of the object program rules into…

Programming Languages · Computer Science 2025-02-14 David S. Warren

There are two kinds of approaches for termination analysis of logic programs: "transformational" and "direct" ones. Direct approaches prove termination directly on the basis of the logic program. Transformational approaches transform a…

Logic in Computer Science · Computer Science 2008-09-01 P. Schneider-Kamp , J. Giesl , A. Serebrenik , R. Thiemann

We extend a technique called Compiling Control. The technique transforms coroutining logic programs into logic programs that, when executed under the standard left-to-right selection rule (and not using any delay features) have the same…

Programming Languages · Computer Science 2017-08-28 Vincent Nys , Danny De Schreye

Control-flow refinement refers to program transformations whose purpose is to make implicit control-flow explicit, and is used in the context of program analysis to increase precision. Several techniques have been suggested for different…

Programming Languages · Computer Science 2019-08-01 Jesús J. Doménech , John P. Gallagher , Samir Genaim

Existing math datasets evaluate the reasoning abilities of large language models (LLMs) by either using the final answer or the intermediate reasoning steps derived from static examples. However, the former approach fails to surface model's…

Artificial Intelligence · Computer Science 2024-10-28 Xiaodong Yu , Ben Zhou , Hao Cheng , Dan Roth