1. Discovering Archipelagos of Tractability
for Constraint Satisfaction and Counting
Robert Ganian, M. S. Ramanujan, Stefan Szeider
Vienna University of Technology
SODA 2016
3. Satisfiability
• CSP: Is there an assignment to variables from
the domain so that every given constraint is
satisfied ?
• Generalizes SAT.
4. Backdoor sets
Informally, a set of variables whose instantiation results
in a significantly simplified formula.
Introduced by
Williams, Gomes, Selman (IJCAI 2003)
and
Crama, Ekin, Hammer (D. A. M. 1997)
9. 2 Perspectives on backdoor sets
• (a) (Williams, Gomes, Selman) the presence of small
backdoor sets provides a good explanation for the
performance of SAT solvers, the success of random
restarts etc.
10. 2 Perspectives on backdoor sets
• (a) (Williams, Gomes, Selman) the presence of small
backdoor sets provides a good explanation for the
performance of SAT solvers, the success of random
restarts etc.
• (b) (Crama, Ekin, Hammer) backdoor sets provide an
excellent framework to extend tractability results for SAT.
11. 2 Perspectives on backdoor sets
• (a) (Williams, Gomes, Selman) the presence of small
backdoor sets provides a good explanation for the
performance of SAT solvers, the success of random
restarts etc.
• (b) (Crama, Ekin, Hammer) backdoor sets provide an
excellent framework to extend tractability results for SAT.
eg. SAT is in P for 2-cnf formulas—> SAT is in P for
formulas with a strong backdoor of size 10 to 2-cnf.
14. Islands of Tractability
• Think of the base classes as `Islands of tractability’.
• An instance with a `small’ backdoor to one of these
base classes is `close’ to an island of tractability.
15. Islands of Tractability
• Think of the base classes as `Islands of tractability’.
• An instance with a `small’ backdoor to one of these
base classes is `close’ to an island of tractability.
• Objective: The class of instances close to an island
of tractability, is also tractable.
16. Research Agenda
Instances with a backdoor
of size c to an island
Instances with a backdoor
of size log n to an island
Instances with a backdoor
of size log2 n to an island
18. How to extend tractability results?
• One approach: Find a strong backdoor to ONE FIXED Base
Class, explore all assignments to the backdoor variables.
19. How to extend tractability results?
• One approach: Find a strong backdoor to ONE FIXED Base
Class, explore all assignments to the backdoor variables.
• For each reduced formula, run the algorithm for the base
class.
20. How to extend tractability results?
• One approach: Find a strong backdoor to ONE FIXED Base
Class, explore all assignments to the backdoor variables.
• For each reduced formula, run the algorithm for the base
class.
• Running time is T1+2|X|
.T2 ; X is the backdoor set, T1 is the
time to detect the backdoor and T2 is the time to solve
SAT for the base class .
22. Finding Backdoor sets
• For any reasonable island of tractability, detecting if a
formula is `close’ to this island is NP-complete.
23. Finding Backdoor sets
• For any reasonable island of tractability, detecting if a
formula is `close’ to this island is NP-complete.
• When can we do this detection efficiently (for a
relaxed notion of efficiency)?
26. FPT algorithms
• 2-dimensional analysis of algorithms.
• We analyse how the running time depends on the
input AND a second parameter which is also a
function of the input alone.
27. FPT algorithms
• 2-dimensional analysis of algorithms.
• We analyse how the running time depends on the
input AND a second parameter which is also a
function of the input alone.
• Aim for running times of the form f(k) |x|c
28. FPT algorithms
• 2-dimensional analysis of algorithms.
• We analyse how the running time depends on the
input AND a second parameter which is also a
function of the input alone.
• Aim for running times of the form f(k) |x|c
FPT
39. Composite Base Classes
• Natural objective when using backdoors:
• Make the base class as large as possible.
40. Composite Base Classes
• Natural objective when using backdoors:
• Make the base class as large as possible.
41. Composite Base Classes
• Natural objective when using backdoors:
• Make the base class as large as possible.
• Can we `compose’ several base classes to get a bigger
composite class?
55. Choose base classes C1,.. ,Cr
X is a strong backdoor into C1⊕… ⊕Cr if for every
assignment of X, every cluster of the reduced formula
is in some Ci.
Archipelagos of tractability
56. Choose base classes C1,.. ,Cr
X is a strong backdoor into C1⊕… ⊕Cr if for every
assignment of X, every cluster of the reduced formula
is in some Ci.
A minimal set of clauses which is variable-disjoint
from the remaining clauses.
Archipelagos of tractability
57. Islands of Tractability
Strong backdoor of size c
to composition of
several Islands
Strong backdoor of size c to
a single Island of Tractability
Archipelagos of tractability
58. If H is a finite set of finite constraint languages, then there
is a Polynomial-time algorithm to check if a given instance
has a strong-backdoor of size O(log log n) into ⊕H.
Our Theorem
Archipelagos of tractability
59. Our Theorem
Archipelagos of tractability
If H is a finite set of finite constraint languages, then there
is a Polynomial-time algorithm to check if a given instance
has a strong-backdoor of size O(log log n) into ⊕H.
60. Our Theorem
Archipelagos of tractability
• Under standard complexity hypotheses, finite-ness of
the constraint languages is unavoidable.
If H is a finite set of finite constraint languages, then there
is a Polynomial-time algorithm to check if a given instance
has a strong-backdoor of size O(log log n) into ⊕H.
61. If H is a finite set of tractable, finite constraint languages,
then CSP can be solved in Polynomial time on instances with
a backdoor of size O(log log n) to ⊕H.
Corollary
Archipelagos of tractability
62. Proof Sketch
• Work with incidence graphs.
Variables
Constraints
I/p: CSP F, k
Q: Is there a s.b.d of size k into
comp(H)?
64. Proof Sketch
Variables
Constraints
w1 w2 s1 s2 s3w3
Target Solution SApprox. Solution W
I/p: CSP F, k
Q: Is there a s.b.d of size k into
comp(H)?
• Work with incidence graphs.
,|W|=k+1
65. Proof Sketch
Variables
Constraints
w1 w2 s1 s2 s3w3
Target Solution S
• 2 cases depending on the interaction between them
Approx. Solution W
I/p: CSP F, k
Q: Is there a s.b.d of size k into
comp(H)?
• Work with incidence graphs.
,|W|=k+1
67. Proof Sketch
Variables
Constraints
w1 w2 s1 s2 s3w3
• 2 cases depending on the interaction between them
Case 1: S does not `split’ W
Target Solution SApprox. Solution W
• Work with incidence graphs.
69. Proof Sketch
Variables
Constraints
• Case 1 is the `base’ case.
Case 1: S does not `split’ W
Target Solution SApprox. Solution W
w1
w2 w3s1 s2 s3
Case 2: S splits W
• Work with incidence graphs.
70. Proof Sketch
w1 w2 s1 s2 s3w3
• Every sub formula Z of G-S
interacts with the rest of the
formula through S, and |S|<=k.
• Also, S is a strong backdoor for
F[S + Z].
Case 1: S does not `split’ W
SW
Lemma: F has a set of g(k) sub-formulas such that :
each sub formula Z interacts with the rest of F via at most k variables
AND
the variables on the boundary of Z already form a strong backdoor set for Z
AND
S intersects the boundary of one of these subformulas.
71. Proof Sketch
• There is a sub formula Z of G-S
that contains W1 and interacts with
the rest of the formula through S.
• Also, S is a strong backdoor for
F[S + Z].
Case 2: S splits W into W1 and W2
SW
Lemma: F has a set of g(k) sub-formulas such that :
each sub formula Z interacts with the rest of F via at most k variables
AND
Z contains W1
AND
S intersects any ‘local optimal solution’ OR the boundary of one of these
subformulas.
w1
w2 w3s1 s2 s3
73. Summing up
• Backdoors + FPT = extend tractability results for CSP
based on `distance’ to islands of tractability.
Thank you for your attention!
74. Summing up
• Backdoors + FPT = extend tractability results for CSP
based on `distance’ to islands of tractability.
• Composite base classes allow further generalization.
Thank you for your attention!
75. Summing up
• Backdoors + FPT = extend tractability results for CSP
based on `distance’ to islands of tractability.
• Composite base classes allow further generalization.
• Also works for #CSP.
Thank you for your attention!
76. Summing up
• Backdoors + FPT = extend tractability results for CSP
based on `distance’ to islands of tractability.
• Composite base classes allow further generalization.
• Also works for #CSP.
• Better tractability results for specific composite
classes and special non-finite cases?
Thank you for your attention!