English
Related papers

Related papers: A Backward Analysis for Constraint Logic Programs

200 papers

We present the CIFF proof procedure for abductive logic programming with constraints, and we prove its correctness. CIFF is an extension of the IFF proof procedure for abductive logic programming, relaxing the original restrictions over…

Artificial Intelligence · Computer Science 2009-06-08 P. Mancarella , G. Terreni , F. Sadri , F. Toni , U. Endriss

Iterative imperative programs can be considered as infinite-state systems computing over possibly unbounded domains. Studying reachability in these systems is challenging as it requires to deal with an infinite number of states with…

Logic in Computer Science · Computer Science 2013-02-15 Arnaud Gotlieb , Tristan Denmat , Nadjib Lazaar

Splitting a logic program allows us to reduce the task of computing its stable models to similar tasks for its subprograms. This can be used to increase solving performance and prove program correctness. We generalize the conditions under…

Artificial Intelligence · Computer Science 2025-03-30 Jorge Fandinno , Yuliya Lierler

In order to alleviate the inefficiencies caused by the interaction of the logic and functional sides, integrated languages may take advantage of \emph{demand} information -- i.e. knowing in advance which computations are needed and, to…

Programming Languages · Computer Science 2007-05-23 Julio Marino , Angel Herranz , Juan Jose Moreno-Navarro

We propose trace logic, an instance of many-sorted first-order logic, to automate the partial correctness verification of programs containing loops. Trace logic generalizes semantics of program locations and captures loop semantics by…

Logic in Computer Science · Computer Science 2020-08-07 Pamina Georgiou , Bernhard Gleiss , Laura Kovács

We develop the first theory of control-flow graphs from first principles, and use it to create an algorithm for automatically synthesizing many variants of control-flow graph generators from a language's operational semantics. Our approach…

Programming Languages · Computer Science 2022-07-25 James Koppel , Jackson Kearl , Armando Solar-Lezama

Constructor-Based Conditional Rewriting Logic is a general framework for integrating first-order functional and logic programming which gives an algebraic semantics for non-deterministic functional-logic programs. In the context of this…

Logic in Computer Science · Computer Science 2007-05-23 Juan M. Molina , Ernesto Pimentel

This Survey provides an overview of techniques in termination analysis for programs with numerical variables and transitions defined by linear constraints. This subarea of program analysis is challenging due to the existence of undecidable…

Programming Languages · Computer Science 2026-01-27 Amir M. Ben-Amram , Samir Genaim , Joël Ouaknine , James Worrell

$\{log\}$ is a programming language at the intersection of Constraint Logic Programming, set programming and declarative programming. But $\{log\}$ is also a satisfiability solver for a theory of finite sets and finite binary relations.…

Logic in Computer Science · Computer Science 2021-04-19 Maximiliano Cristiá , Gianfranco Rossi

We present a new approach to termination analysis of numerical computations in logic programs. Traditional approaches fail to analyse them due to non well-foundedness of the integers. We present a technique that allows overcoming these…

Programming Languages · Computer Science 2007-05-23 Alexander Serebrenik , Danny De Schreye

Several formal systems, such as resolution and minimal model semantics, provide a framework for logic programming. In this paper, we will survey the use of structural proof theory as an alternative foundation. Researchers have been using…

Logic in Computer Science · Computer Science 2021-11-02 Dale Miller

Constraint programming is a family of techniques for solving combinatorial problems, where the problem is modelled as a set of decision variables (typically with finite domains) and a set of constraints that express relations among the…

Artificial Intelligence · Computer Science 2016-05-31 James Caldwell , Ian P. Gent , Peter Nightingale

Programs to solve so-called constraint problems are complex pieces of software which require many design decisions to be made more or less arbitrarily by the implementer. These decisions affect the performance of the finished solver…

Artificial Intelligence · Computer Science 2010-05-20 Lars Kotthoff , Ian Gent , Ian Miguel

The idea of using unfolding as a way of computing a program semantics has been applied successfully to logic programs and has shown itself a powerful tool that provides concrete, implementable results, as its outcome is actually source…

Programming Languages · Computer Science 2017-08-29 José María Rey-Poza , Julio Mariño-Carballo

As real logic programmers normally use cut (!), an effective learning procedure for logic programs should be able to deal with it. Because the cut predicate has only a procedural meaning, clauses containing cut cannot be learned using an…

Artificial Intelligence · Computer Science 2008-02-03 F. Bergadano , D. Gunetti , U. Trinchero

An important challenge in constraint programming is to rewrite constraint models into executable programs calculat- ing the solutions. This phase of constraint processing may require translations between constraint programming lan- guages,…

Artificial Intelligence · Computer Science 2010-02-17 Raphael Chenouard , Laurent Granvilliers , Ricardo Soto

Knowledge refactoring compresses a logic program by introducing new rules. Current approaches struggle to scale to large programs. To overcome this limitation, we introduce a constrained optimisation refactoring approach. Our first key idea…

Logic in Computer Science · Computer Science 2025-06-23 Minghao Liu , David M. Cerna , Filipe Gouveia , Andrew Cropper

Variable sharing is a fundamental property in the static analysis of logic programs, since it is instrumental for ensuring correctness and increasing precision while inferring many useful program properties. Such properties include modes,…

Programming Languages · Computer Science 2025-01-22 Daniel Jurjo-Rivas , Jose F. Morales , Pedro López-García , Manuel V. Hermenegildo

A logic program is an executable specification. For example, merge sort in pure Prolog is a logical formula, yet shows creditable performance on long linked lists. But such executable specifications are a compromise: the logic is distorted…

Programming Languages · Computer Science 2015-09-29 M. H. van Emden

Program correctness (in imperative and functional programming) splits in logic programming into correctness and completeness. Completeness means that a program produces all the answers required by its specification. Little work has been…

Logic in Computer Science · Computer Science 2014-11-13 Wlodzimierz Drabent
‹ Prev 1 4 5 6 7 8 10 Next ›