AISEJul 11, 2018

Testing Global Constraints

arXiv:1807.03975v11 citations
Originality Synthesis-oriented
AI Analysis

This work addresses the need for reliable CP solvers for developers and users, but it is incremental as it builds on existing testing practices in the field.

The authors tackled the problem of ensuring bug-free Constraint Programming (CP) solvers by developing a Java library for testing individual constraint implementations, enabling integration into continuous workflows and helping identify issues through minimalist counterexamples.

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 confident. We present a Java library allowing any JVM based solver to test that the implementations of the individual constraints are correct. The library can be used in a test suite executed in a continuous integration tool or it can also be used to discover minimalist instances violating some properties (arc-consistency, etc) in order to help the developer to identify the origin of the problem using standard debuggers.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes