[gecode-users] How to estimate the range of a (linear) function

Max Ostrowski ChaosAngel at gmx.de
Fri Jun 10 10:41:36 CEST 2011


Hello everybody,

as i'm developing an SMT-like solver, i have a special syntax for the constraints of Gecode and i also have to handle things.

b(1..3).
$count[a(X) $== c+5*7-b : b(X)] $> 0.


This shall represent an count constraint constraint.
count(x,y,>,0) where x is a set of variables (a(1),a(2),a(3)) and y is a single variable y=c+5*7-b.
The domains of the variables a,b,c are known (usually an IntSet).
I created a variable for "c+5*7-b" using the domain (Limits::min,Limits::max).
I found out that this is not the best way to do it, as Gecode does not seem to automatically shrink the domain of y :-)


Is there some functionality in Gecode for automatically/manually estimate the range of a function. (So if i add a and b, can't i just "add" the domain of them using the IntVarRanges?).
And the same for multiplication etc...

Thanks in advance,

Max
-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de



More information about the users mailing list