This paper studies peek arc consistency, a reasoning technique that extends the well-known arc consistency technique for constraint satisfaction. In contrast to other more costly extensions of arc consistency that have been studied in the literature, peek arc consistency requires only linear space and quadratic time and can be parallelized in a straightforward way such that it runs in linear time with a linear number of processors. We demonstrate that for various constraint languages, peek arc consistency gives a polynomial-time decision procedure for the constraint satisfaction problem. We also present an algebraic characterization of those constraint languages that can be solved by peek arc consistency, and study the robustness of the algorithm.
Deep Dive into Peek Arc Consistency.
This paper studies peek arc consistency, a reasoning technique that extends the well-known arc consistency technique for constraint satisfaction. In contrast to other more costly extensions of arc consistency that have been studied in the literature, peek arc consistency requires only linear space and quadratic time and can be parallelized in a straightforward way such that it runs in linear time with a linear number of processors. We demonstrate that for various constraint languages, peek arc consistency gives a polynomial-time decision procedure for the constraint satisfaction problem. We also present an algebraic characterization of those constraint languages that can be solved by peek arc consistency, and study the robustness of the algorithm.
arXiv:0809.0788v2 [cs.AI] 3 Feb 2012
Peek Arc Consistency
Manuel Bodirsky
Hubie Chen
Abstract
This paper studies peek arc consistency, a reasoning technique that extends the well-
known arc consistency technique for constraint satisfaction. In contrast to other more costly
extensions of arc consistency that have been studied in the literature, peek arc consistency
requires only linear space and quadratic time and can be parallelized in a straightforward
way such that it runs in linear time with a linear number of processors. We demonstrate
that for various constraint languages, peek arc consistency gives a polynomial-time decision
procedure for the constraint satisfaction problem. We also present an algebraic characteriza-
tion of those constraint languages that can be solved by peek arc consistency, and study the
robustness of the algorithm.
1
Introduction
Background.
A basic knowledge reasoning task that has been studied in many incarnations is to decide
the satisfiability of given relationships on variables, where, for instance, variables may represent objects
such as temporal events or spatial regions, and relationships may express precedence, containment, overlap,
disjointness, and so forth. Instances of this reasoning task can typically be modeled using the constraint
satisfaction problem (CSP), a computational problem in which the input consists of a set of constraints
on variables, and the question is whether or not there is an assignment to the variables satisfying all of
the constraints. While the CSP is in general NP-hard, researchers have, in numerous settings, aimed to
identify restricted sets of relationships under which the CSP is polynomial-time decidable; we refer to sets
of relationships as constraint languages.
Arc consistency is an algorithmic technique for constraint satisfaction that has been heavily studied
and for which highly efficient implementations that are linear in both time and space are known. Arc
consistency provides a one-sided satisfiability check. It may detect an inconsistency, which always implies
that the input instance is unsatisfiable. While the converse does not hold in general, it has been shown
to hold for some particular constraint languages, that is, arc consistency provides a decision procedure
for satisfiability for these languages. Examples include the language of boolean Horn clauses; various
graph homomorphism problems, for example, homomorphisms to orientations of finite paths [13]; and all
constraint languages where satisfiability is first-order definable [1].
Curiously, arc consistency typically cannot be used as a decision procedure for infinite-domain con-
straint languages, by which we mean constraint languages under which variables can take on infinitely
many values. In many cases, a reason for this is that arc consistency performs inference by considering
unary (arity 1) projections of relations, and all such projections are already equal to the full domain of the
language. As an example, consider the binary relations ≤and ̸= interpreted over the domain of rational
numbers Q. For each of these relations, both of the two possible unary projections are equal to Q, and arc
consistency in fact will not perform any inference.
Strong path consistency is a more powerful algorithmic technique that provides a polynomial-time
decision procedure for further finite and infinite domain constraint languages. However, the greater power
comes at the price of worse time and space complexity: the best known implementations require cubic
time and quadratic space. Unfourtunately, this makes the strong path consistency procedure prohibitive for
many applications where one has to deal with large instances of the constraint satisfaction problem.
Singleton arc consistency can be seen as being half-way between arc consistency and strong path con-
sistency. Whenever arc consistency finds an inconsistency, singleton-arc consistency also finds an incon-
sistency. Whenever singleton arc consistency finds an inconsistency, strong path consistency also finds
1
an inconsistency. There are implementations of singleton arc consistency that run in quadratic time and
quadratic space [2]. The implementation presented there has the feature that it can be parallelized such that
it runs in linear time with a linear number of processors.
Peek arc consistency.
In this paper, we study a general algorithmic technique for constraint satisfaction
that we call peek arc consistency. Here, we describe the idea of the algorithm for finite-domain constraint
satisfaction, although, as we show in the paper, this algorithm can be effectively applied to many infinite-
domain constraint satisfaction problems as well. The algorithm performs the following. For each variable-
value pair (x, a), the variable x is set to the value a, and then the arc consistency procedure is run on the
resulting instance of the CSP. If there is a variable x such that for all values a the arc consistency procedure
detects an inconsistency on (
…(Full text truncated)…
This content is AI-processed based on ArXiv data.