![Page 1: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/1.jpg)
Decomposing Global Constraints into SAT
Christian Bessiere, George Katsirelos, Nina Naroditskaya,
Claude-Guy Quimper, Toby Walsh
![Page 2: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/2.jpg)
Decomposing Global Constraints into SAT
(alias: why we need constraint
programming!)
Christian Bessiere, George Katsirelos, Nina Naroditskaya,
Claude-Guy Quimper, Toby Walsh
![Page 3: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/3.jpg)
Motivation
➲ Mature and effective technologies in
constraint programming� Global constraints
� Search methods
� Branching heuristics
� …
➲ Many successful applications� Scheduling, configuration, …
![Page 4: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/4.jpg)
Global constraints
• Capture common patterns
– E.g. permutation = AllDifferent
– Associated propagator
– Efficient inference methods
![Page 5: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/5.jpg)
Motivation
➲ Many global constraints can be effectively decomposed� REGULAR constraint in a
call centre rostering problem [Quimper & Walsh CP06]
� REGULAR, SEQUENCE, TABLE constraints [Bacchus CP06]
� GRAMMAR constraint [Quimper & Walsh CP07]
� ALL DIFFERENT constraint [Bessiere et al IJCAI 09]
![Page 6: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/6.jpg)
Why not just decompose all global constraints?
� MIP decomposes everything into linear inequalities after all
� Many free advantages� nogood learning, incremental propagators,
impact based heuristics, …
What can you do in SAT and what can you only do in CP?
![Page 7: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/7.jpg)
Decomposing GLOBALs
• Successful examples– REGULAR– SEQUENCE– CFG– ALL DIFFERENT– NVALUES– GCC– ...
![Page 8: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/8.jpg)
Decomposing GLOBALs
• Successful examples– REGULAR
– SEQUENCE– CFG– ALL DIFFERENT
– NVALUES– GCC– ...
![Page 9: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/9.jpg)
Main results
➲ Some surprisingly complex propagation algorithms for global constraints can be efficiently decomposed
➲ However, there exist other propagation algorithms which have an exponential size decomposition
![Page 10: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/10.jpg)
REGULAR constraint
• Sequence of vars defines a regular language
• Useful in rostering and many other problems
Shift = Days | Nights | Days Shift | Nights Shift
– Days = d | d Days– Nights = n | n n | n n n
![Page 11: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/11.jpg)
REGULAR constraint
• Sequence of vars defines a regular language
• Complex propagator based on dynamic programming
• Enforces domain consistency in O(ndQ)
![Page 12: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/12.jpg)
REGULAR constraint
• Simple decomposition– Does not hinder propagation– Again in O(ndQ) time and space
• Introduce sequence of vars for state of automaton after jth step
– Then simply post transition constraints– Qi+1 = t(Qi,Xi)
![Page 13: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/13.jpg)
REGULAR constraint
• Rostering exampleShift = Days | Nights | Days Shift | Nights
Shift– Days = 0 | 0 Days– Nights = 1 | 1 1 | 1 1 1
• Transition constraints– Qi+1 = Xi * (Qi + Xi)– Qi in [0,3]
![Page 14: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/14.jpg)
AllDifferent constraint
➲ One of the oldest global constraints
� Appeared in ALICE [Laurier 78]
➲ One of the most useful global constraints
� Timetabling
� Scheduling
� Routing
� …
![Page 15: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/15.jpg)
AllDifferent constraint
➲ AllDifferent(X1,..,Xn) iff
Xi ≠ Xj for i<j
E.g AllDifferent(1,2,4) but not AllDifferent(1,2,1)
![Page 16: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/16.jpg)
AllDifferent constraint
➲ Decompose into O(n2) inequalities� This hinders propagation
� X1, X2, X3 ∈ {1,2}
� X1 ≠ X2, X1 ≠ X3, X2 ≠ X3 are domain consistent
� However, AllDifferent(X1,X2,X3) has no solution
Can we decompose whilst maintaining a global view?
![Page 17: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/17.jpg)
AllDifferent constraint
➲ Range/bound consistency propagator can be
encoded into SAT
� Based on Hall intervals
➲ Domain consistency propagator requires
exponential size SAT encoding
� Based on circuit complexity
![Page 18: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/18.jpg)
AllDifferent constraint
➲ Bound consistency� Max and min in each domain have bound support
� Bound support = satisfying assignment in which each var is bet max and min
➲ Range consistency� Every value in each domain has bound support
➲ Domain consistency� Every value in each domain has support
� Support = satisfying assignment in which each var is assigned value from its domain
![Page 19: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/19.jpg)
AllDifferent constraint
➲ Bound and range consistency
� Central concept is Hall interval
� Hall interval = interval of m values which
contains domains of m variables
� Other variables must find their bound supports outside of this!
![Page 20: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/20.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * * *
X3 * *
X4 * * * *
X5 *
![Page 21: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/21.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * * *
X3 * *
X4 * * * *
X5 *
[1,1] is a Hall interval
![Page 22: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/22.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * * *
X3 * *
X4 * * * *
X5 *
[1,1] is a Hall interval, X5 consumes interval
![Page 23: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/23.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * * *
X3 * *
X4 * * * *
X5 *
[1,1] is a Hall interval, X2 ≠ 1
![Page 24: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/24.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * *
X3 * *
X4 * * * *
X5 *
[1,1] is a Hall interval, X2 ≠ 1
![Page 25: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/25.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * *
X3 * *
X4 * * * *
X5 *
[3,4] is a Hall interval, contains X1 and X3
![Page 26: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/26.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 * * *
X3 * *
X4 * * * *
X5 *
[3,4] is a Hall interval, X2∩[3,4]=0, X4∩ [3,4]=0
![Page 27: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/27.jpg)
AllDifferent constraint
1 2 3 4 5
X1 * *
X2 *
X3 * *
X4 * *
X5 *
[3,4] is a Hall interval, X2∩[3,4]=0, X4∩ [3,4]=0
![Page 28: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/28.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
![Page 29: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/29.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
Can be given directly to MIP solver
Easily encoded into SAT
![Page 30: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/30.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
➲ Does not hinder propagation
� Domain consistency on
decomposition achieves range
consistency on AllDifferent
![Page 31: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/31.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
➲ Does not hinder propagation
� Domain consistency on decomposition
achieves range consistency on
AllDifferent
� Time complexity O(nd3) down branch
![Page 32: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/32.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
➲ Does not hinder propagation
� Bound consistency on decomposition
achieves bound consistency on AllDifferent
![Page 33: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/33.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
➲ Does not hinder propagation
� Bound consistency on decomposition
achieves bound consistency on AllDifferent
� Time complexity O(nd2) down branch
![Page 34: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/34.jpg)
AllDifferent constraint
➲ Simple decomposition
� Ailu=1 iff Xi ∈ [l,u]
� ∑Ailu ≤ u-l+1
➲ Does not hinder propagation
� Unit propagation on SAT encoding achieves
range consistency on AllDifferent
![Page 35: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/35.jpg)
Other decompositions
➲ Similar interval based decompositions for
many other global constraints:
� NValues
� GCC
� Common
� Used
� …
![Page 36: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/36.jpg)
That shows what we can do inSAT …
Now for what we cannot do inSAT
![Page 37: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/37.jpg)
Main result
Polynomial size CNF decomposition of constraint propagator
iff
Polynomial size monotone circuit
![Page 38: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/38.jpg)
Proof outline
Constraint propagator
⇔
Constraint checker
CNF Decomposition
⇔
Monotone circuit
All reductions polynomial
![Page 39: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/39.jpg)
Constraint propagator
➲ Function f:P(D)⇒P(D)� Monotone
� I.e. smaller input, smaller output
� Contracting� I.e. output ⊆ input
� Idempotent� I.e. f(f(input)) = f(input)
� Correct� Only prunes values that have no support
� When domain wipes out, there is no support
![Page 40: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/40.jpg)
Constraint checker
➲ Function f:P(D)⇒{0,1}
� Monotone
� I.e. smaller input, smaller output
� Correct
� I.e. if f(input)=0 then there is no support
![Page 41: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/41.jpg)
Polynomial time constraint propagator
iff
Polynomial time constraint checker
![Page 42: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/42.jpg)
CNF decomposition of constraint checker
➲ Input vars of CNF encode characteristic
function of D(X)
� Can also have auxiliary vars
➲ One output var
� Set to false by unit propagation iff constraint
checker returns 0
![Page 43: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/43.jpg)
Monotone circuits
➲ DAG of ANDs and ORs
➲ Computes exactly the monotone Boolean functions� Note: our result has nothing to say about P=NP.
There are, for instance, poly time monotone Boolean functions which require superpoly size monotone circuit
![Page 44: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/44.jpg)
Main result
Polynomial size CNF decomposition of constraint propagator/checker
iff
Polynomial size monotone circuit
![Page 45: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/45.jpg)
Circuit complexity
➲ We can now use lower bounds on monotone circuits
� E.g. Domain consistency propagator for AllDifferent computes perfect matching in bipartite value graph
� Smallest monotone circuit to compute such a matching is super-polynomial
![Page 46: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/46.jpg)
Circuit complexity
➲ We can now use lower bounds on monotone circuits
� Thus, we conclude that the smallest CNF encoding of a domain consistency propagator for AllDifferent is super-polynomial in size
![Page 47: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/47.jpg)
Circuit complexity
➲ We can now use lower bounds on monotone circuits
� Thus, we conclude that the smallest CNF encoding of a domain consistency propagator for AllDifferent is super-polynomial in size
Unfortunately there aren’t
too many monotone circuit
complexity results to exploit
![Page 48: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/48.jpg)
Possible (but unlikely) escapes
➲ Don’t represent domains explicitly but just bounds
� Exponentially more
compact
➲ Use monotone arithmetic circuits
![Page 49: Decomposing Global Constraints into SAT - IBM Research...Decomposing Global Constraints into SAT (alias: why we need constraint programming !) Christian Bessiere, George Katsirelos,](https://reader036.vdocuments.site/reader036/viewer/2022071415/6110ec1dc8eea8399b0c0554/html5/thumbnails/49.jpg)
Conclusions
➲ What we can do in SAT
� Some global constraints
� E.g. Domain consistency on REGULAR, and
range/bound consistency on AllDifferent
➲ What we cannot do in SAT
� All global constraints
� E.g. Domain consistency on AllDifferent