We present a propagator which we call Reachability that implements a generalized reachability constraint on a directed graph g. Given a source node source in g, we can identify three parts in the Reachability constraint: (1) the relation between each node of g and the set of nodes that it reaches, (2) the association of each pair of nodes (source, i) with its set of cut nodes, and (3) the association of each pair of nodes (source, i) with its set of bridges. Formally, this constraint can be defined as follows: rn(i) = Reach(g, i)∧ Reachability (g, source, rn, cn, be) = ≡∀i∈N. cn(i) = Cut Nodes(g, source, i) ∧ be(i) = Bridges(g, source, i) (1) where g is a graph whose set of nodes is a subset of N, source is a node of g, rn(i) is the set of nodes that i reaches in g (defined by Reach(g, i)), cn(i) is the set of nodes appearing in all paths from source to i in g (defined by CutNodes(g, source, i)), and be(i) is the set of edges appearing in all paths from source to i in g (defined by Bridges(g, source, i))1. Reachability has been implemented using a message passing approach on top of the multi-paradigm programming language Oz [Moz04]. The pruning rules of Reachability have been defined using the notion of graph variable [DDD05]. In [QVDOSa, QVD05b], we discuss the implementation of Reachability in detail and its suitability for finding simple paths with mandatory nodes in directed graphs 2. © Springer-Verlag Berlin Heidelberg 2005.
CITATION STYLE
Quesada, L., Van Roy, P., & Deville, Y. (2005). Speeding up constrained path solvers with a reachability propagator. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 3709 LNCS, p. 866). https://doi.org/10.1007/11564751_104
Mendeley helps you to discover research relevant for your work.