In reply to ABD_91:
The solver would ensure that max value of int1 is 22 .
If int1 is chosen as 25 the constraint :: ( int2 == int1 + 9 )
would Never be Successful as int2 can’t be greater than 31 !!
Excellent point. The question then is, why not limit the low bound to 22
constraint LOW_BOUND { int1 inside { [ 0 : 22 ] } ; }
Doesn’t it make it more readable or understandable?
It fooled me and another user.