Alldifferent filtering

From: W.J. van Hoeve <w.j.van.hoeve_at_cwi.nl>
Date: Wed 16 May 2001 09:27:44 AM GMT
Message-ID: <3B024810.1C651AAE@cwi.nl>
Hi,

Can you please tell me what kind of filtering Eclipse applies to the
'alldifferent' constraint? The documentation states that there are two
kinds of filtering, AC on the binary decomposition and SOME global
filtering based on 'exhaustion of all sub-ranges of possible values'.
These last sentence is a bit vague to me. 

The program below shows some behaviour that makes me confused about the
filtering algorithm.

Thanks in advance,
Willem Jan van Hoeve


:- lib(fd).
:- lib(fd_global).

wj1 :-
	A1::[1,3],
	A2::[1,3],
	A3::[1,2],

	L=[A1,A2,A3],

	fd_global:alldifferent(L),

	(foreach(X, L) do writeln(X)).

wj2 :-
	A1::[1,3],
	A2::[1,3],
	A3::[2,3],

	L=[A1,A2,A3],

	fd_global:alldifferent(L),

	(foreach(X, L) do writeln(X)).

wj3 :-
	A1::[1,3],
	A2::[1,3],
	A3::[1,2,3],

	L=[A1,A2,A3],

	fd_global:alldifferent(L),

	(foreach(X, L) do writeln(X)).

wj4 :-
	A1::[1,3],
	A2::[1,3],
	A3::[2,3,4],

	L=[A1,A2,A3],

	fd_global:alldifferent(L),

	(foreach(X, L) do writeln(X)).
Received on Wed May 16 10:28:45 2001

This archive was generated by hypermail 2.1.8 : Wed 16 Nov 2005 06:07:08 PM GMT GMT