MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Programming finite-domain constraint propagators in action rules. Theory and Practice of Logic Programming (2006) [9 citations — 4 self]

Download:
Download as a PDF
by Neng-fa Zhou
TPLP
http://www.sci.brooklyn.cuny.edu/~zhou/papers/arule.pdf
Add To MetaCart

Abstract:

In this paper, we propose a new language construct, called AR (Action Rules), and describe how various propagators for finite-domain constraints can be implemented in it. An action rule specifies a pattern for agents, an action that the agents can carry out, and an event pattern for events that can activate the agents. AR combines the goal-oriented execution model of logic programming with the event-driven execution model. This hybrid execution model facilitates programming constraint propagators. A propagator for a constraint is an agent that maintains the consistency of the constraint and is activated by the updates of the domain variables in the constraint. AR has a much stronger descriptive power than indexicals, the language widely used in the current finite-domain constraint systems, and is flexible for implementing not only interval-consistency but also arc-consistency algorithms. As examples, we present the implementation of a weak arc-consistency algorithm for the all distinct constraint and a hybrid algorithm for n-ary linear equality constraints. B-Prolog has been extended to accommodate action rules. Benchmarking shows that the performance of B-Prolog as a CLP(FD) system compares favorably with the fastest systems available now. 1

Citations

655 Constraint Logic Programming: A Survey – Jaffar, Maher - 1994
629 Foundations of Constraint Satisfaction – Tsang - 1993
448 An abstract Prolog instruction set – Warren
300 Algorithms for Constraint Satisfaction Problems: a Survey – Kumar - 1992
283 Programming with Constraints: An Introduction – Marriott, Stuckey - 1998
264 The family of concurrent logic programming languages – Shapiro - 1989
247 The Constraint Logic Programming Language CHIP – Dincbas
238 Theory and practice of constraint handling rules – Frühwirth - 1998
208 A filtering algorithm for constraints of difference in CSPs – Régin - 1994
149 Compiling constraints in CLP(FD – Codognet, Diaz - 1996
116 An open-ended finite domain constraint solver – Carlsson, Ottosson - 1997
109 Equations and inequations on finite and infinite trees – Colmerauer - 1984
74 Constraint processing in cc(fd – Hentenryck, Saraswat, et al. - 1992
49 Solving large combinatorial problems in Logic Programming – Dincbas, Simonis, et al. - 1990
44 Beyond the glass box: constraints as objects – Puget, Leconte - 1995
42 A Fast Algorithm for the Bound Consistency of Alldiff Constraints – Puget - 1998
36 Overview of the CHIP Compiler System – Aggoun, Beldiceanu - 1993
34 Metastructures vs. attributed variables in the context of extensible unification – Holzbaur - 1992
34 Negation and Control in Prolog – Naish - 1986
22 Design and Implementation of the GNU-Prolog System – Diaz, Codognet
17 Compiling constraint handling rules into Prolog with attributed variables – Holzbaur, Frühwirth - 1999
16 Parameter Passing and Control Stack Management in Prolog Implementation Revisited – Zhou - 1996
10 Programming Constraint Services: High-Level Programming of Standard and New Constraint Services – Schulte - 2002
9 Improving linear constraint propagation by changing constraint representation – Harvey, Stuckey - 2003
9 A novel implementation method of delay – Zhou - 1996
6 Garbage collection in B-Prolog – Zhou - 2000
5 A high-level intermediate language and the algorithms for compiling finite-domain constraints – Zhou - 1998
3 Better late than never – Meier - 1994
2 Nicolog: A simple yet powerful cc(fd) language – Sidebottom, Havens - 1996
2 Implementing constraint solvers in B-Prolog – Zhou - 2002
1 A high-performance abstract machine for Prolog and its extensions – Zhou - 2003