English
Related papers

Related papers: Implementing Constraint Handling Rules as a Domain…

200 papers

We present a straightforward source-to-source transformation that introduces justifications for user-defined constraints into the CHR programming language. Then a scheme of two rules suffices to allow for logical retraction (deletion,…

Artificial Intelligence · Computer Science 2017-09-12 Thom Fruehwirth

This paper is concerned with rule-based programs that go wrong. The unwanted behavior of rule applications is non-termination or failure of a computation. We propose a static program analysis of the non-termination problem for recursion in…

Programming Languages · Computer Science 2017-01-11 Thom Fruehwirth

Constraint Handling Rules provide descriptions for constraint solvers. However, they fall short when those constraints specify some binding structure, like higher-rank types in a constraint-based type inference algorithm. In this paper, the…

Logic in Computer Science · Computer Science 2017-07-11 Alejandro Serrano , Jurriaan Hage

We observe that the various formulations of the operational semantics of Constraint Handling Rules proposed over the years fall into a spectrum ranging from the analytical to the pragmatic. While existing analytical formulations facilitate…

Logic in Computer Science · Computer Science 2010-07-23 Hariolf Betz , Frank Raiser , Thom Frühwirth

Correctness constraints provide a foundation for automated debugging within object-oriented systems. This paper discusses a new approach to incorporating correctness constraints into Java development environments. Our approach uses the…

Software Engineering · Computer Science 2007-05-23 David J. Murray , Dale E. Parson

Constraint Handling Rules (CHR) is a committed-choice declarative language which has been originally designed for writing constraint solvers and which is nowadays a general purpose language. CHR programs consist of multi-headed guarded…

Logic in Computer Science · Computer Science 2011-01-19 Cinzia Di Giusto , Maurizio Gabbrielli , Maria Chiara Meo

Automatic differentiation is a technique which allows a programmer to define a numerical computation via compositions of a broad range of numeric and computational primitives and have the underlying system support the computation of partial…

Mathematical Software · Computer Science 2017-06-02 Samer Abdallah

Previous results on proving confluence for Constraint Handling Rules are extended in two ways in order to allow a larger and more realistic class of CHR programs to be considered confluent. Firstly, we introduce the relaxed notion of…

Logic in Computer Science · Computer Science 2016-11-22 Henning Christiansen , Maja H. Kirkeby

In this paper, we present a framework for automatic generation of CHR solvers given the logical specification of the constraints. This approach takes advantage of the power of tabled resolution for constraint logic programming, in order to…

Logic in Computer Science · Computer Science 2007-05-23 Slim Abdennadher , Christophe Rigotti

(To appear in Theory and Practice of Logic Programming (TPLP)) We introduce a systematic, concurrent execution scheme for Constraint Handling Rules (CHR) based on a previously proposed sequential goal-based CHR semantics. We establish…

Programming Languages · Computer Science 2010-06-22 Edmund S. L. Lam , Martin Sulzmann

Confluence is a fundamental property of Constraint Handling Rules (CHR) since, as in other rewriting formalisms, it guarantees that the computations are not dependent on rule application order, and also because it implies the logical…

Programming Languages · Computer Science 2012-10-10 Rémy Haemmerlé

Product Lines (PL) have proved an effective approach to reuse-based systems development. Several modeling languages were proposed so far to specify PL. Although they can be very different, these languages show two common features: they…

Software Engineering · Computer Science 2023-09-29 Camille Salinesi , Raul Mazo , Daniel Diaz , Olfa Djebbi

Neural solvers have achieved impressive progress in addressing simple routing problems, particularly excelling in computational efficiency. However, their advantages under complex constraints remain nascent, for which current…

Artificial Intelligence · Computer Science 2026-02-19 Jieyi Bi , Zhiguang Cao , Jianan Zhou , Wen Song , Yaoxin Wu , Jie Zhang , Yining Ma , Cathy Wu

String constraint solving refers to solving combinatorial problems involving constraints over string variables. String solving approaches have become popular over the last years given the massive use of strings in different application…

Artificial Intelligence · Computer Science 2021-07-01 Roberto Amadini

Every Constraint Programming (CP) solver exposes a library of constraints for solving combinatorial problems. In order to be useful, CP solvers need to be bug-free. Therefore the testing of the solver is crucial to make developers and users…

Artificial Intelligence · Computer Science 2018-07-12 Aurélie Massart , Valentin Rombouts , Pierre Schaus

Combining a set of existing constraint solvers into an integrated system of cooperating solvers is a useful and economic principle to solve hybrid constraint problems. In this paper we show that this approach can also be used to integrate…

Programming Languages · Computer Science 2007-05-23 Petra Hofstedt , Peter Pepper

In this paper, we address the problem of defining a fixpoint semantics for Constraint Handling Rules (CHR) that captures the behavior of both simplification and propagation rules in a sound and complete way with respect to their declarative…

Logic in Computer Science · Computer Science 2011-08-02 Rémy Haemmerlé

A software element defined in one place is typically used in many places. When it is changed, all its occurrences may need to be changed too, which can severely hinder software evolution. This has led to the support of encapsulation in…

Software Engineering · Computer Science 2013-12-11 Mikal Ziane , Mel Ó Cinnéide

PRISM is an extension of Prolog with probabilistic predicates and built-in support for expectation-maximization learning. Constraint Handling Rules (CHR) is a high-level programming language based on multi-headed multiset rewrite rules. In…

Programming Languages · Computer Science 2010-07-23 Jon Sneyers , Wannes Meert , Joost Vennekens , Yoshitaka Kameya , Taisuke Sato

We study here a natural situation when constraint programming can be entirely reduced to rule-based programming. To this end we explain first how one can compute on constraint satisfaction problems using rules represented by simple…

Artificial Intelligence · Computer Science 2007-05-23 Krzysztof R. Apt , Eric Monfroy