SlideShare a Scribd company logo
1 of 249
Download to read offline
Backdoors to Satisfiability
M. S. Ramanujan

University of Bergen, Norway
New Developments in 

Exact Algorithms and Lower Bounds

IIT Delhi, 2014
Outline
• Motivation

• 2 perspectives on backdoors

• Parameterized algorithms for SAT via backdoors
Satisfiability
Satisfiability
• SATISFIABILITY: Is a given propositional formula
satisfiable?

Satisfiability
• SATISFIABILITY: Is a given propositional formula
satisfiable?

• One of the earliest problems shown to be NP-
Complete.

Satisfiability
• SATISFIABILITY: Is a given propositional formula
satisfiable?

• One of the earliest problems shown to be NP-
Complete.

• Best known algorithm for 3-SAT — 1.308n (Hertli,
FOCS 2011)
Satisfiability
Satisfiability
• Several applications— problems like software
model checking, chip verification etc. reduced to
SAT and solved using SAT solvers.
Satisfiability
• Several applications— problems like software
model checking, chip verification etc. reduced to
SAT and solved using SAT solvers.
• Resulting instances often have up to a million
variables and several million clauses.
Satisfiability
• Several applications— problems like software
model checking, chip verification etc. reduced to
SAT and solved using SAT solvers.
• Resulting instances often have up to a million
variables and several million clauses.
• Even for 300 variables, worst case bounds exceed
age of the universe.
That’s all well and good in practice,
but how does it work in theory?
That’s all well and good in practice,
but how does it work in theory?

The instances arising in practice must 

have some structure!
Modern SAT solvers
Modern SAT solvers
• ‘Complete’ SAT solvers are variants of 

the DPLL algorithm.
Modern SAT solvers
• ‘Complete’ SAT solvers are variants of 

the DPLL algorithm.
Modern SAT solvers
DPLL= Davis-Putnam-Logemann-Loveland
The DPLL algorithm
The DPLL algorithm
• Perform Unit Propagation.
The DPLL algorithm
• Perform Unit Propagation.
• If there is a unit clause then the literal is set
accordingly and the formula reduced.
The DPLL algorithm
• Perform Unit Propagation.
• If there is a unit clause then the literal is set
accordingly and the formula reduced.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
The DPLL algorithm
• Perform Unit Propagation.
• If there is a unit clause then the literal is set
accordingly and the formula reduced.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
( x3)⋀(x2 ⋁¬x3)
The DPLL algorithm
• Perform Unit Propagation.
• If there is a unit clause then the literal is set
accordingly and the formula reduced.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
( x3)⋀(x2 ⋁¬x3)
The DPLL algorithm
• Perform Unit Propagation.
• If there is a unit clause then the literal is set
accordingly and the formula reduced.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
( x3)⋀(x2 ⋁¬x3) (x2)
The DPLL algorithm
• Perform Unit Propagation.
• If there is a unit clause then the literal is set
accordingly and the formula reduced.
Horn formulas : formulas with at most one positive literal in
every clause, solved just by unit propagation.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
( x3)⋀(x2 ⋁¬x3) (x2)
The DPLL algorithm
The DPLL algorithm
• Perform Pure Literal Elimination.
The DPLL algorithm
• Perform Pure Literal Elimination.
• If a variable occurs with a single polarity, then
assign it and reduce formula.
The DPLL algorithm
• Perform Pure Literal Elimination.
• If a variable occurs with a single polarity, then
assign it and reduce formula.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
The DPLL algorithm
• Perform Pure Literal Elimination.
• If a variable occurs with a single polarity, then
assign it and reduce formula.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
(x1 )⋀(¬x1 ⋁x3)
The DPLL algorithm
• Perform Pure Literal Elimination.
• If a variable occurs with a single polarity, then
assign it and reduce formula.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
(x1 )⋀(¬x1 ⋁x3)
The DPLL algorithm
• Perform Pure Literal Elimination.
• If a variable occurs with a single polarity, then
assign it and reduce formula.
(x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
(x1 )⋀(¬x1 ⋁x3) (x1)
The DPLL algorithm
• Select a variable (based on some heuristic) and explore
both assignments.
F[x=1] F[x=0]
Modern Sat solvers
Modern Sat solvers
• Build on DPLL by better variable selection
heuristics.

Modern Sat solvers
• Build on DPLL by better variable selection
heuristics.

• Better backtracking strategies.

Modern Sat solvers
• Build on DPLL by better variable selection
heuristics.

• Better backtracking strategies.

• ‘Learning’ clauses.

Modern Sat solvers
• Build on DPLL by better variable selection
heuristics.

• Better backtracking strategies.

• ‘Learning’ clauses.

• ‘watching’ literals for fast unit propagations.
Variable dependencies
Variable dependencies
• Most of the variables seem ‘dependent’ on a few
variables.
Variable dependencies
• Most of the variables seem ‘dependent’ on a few
variables.
• Fixing an assignment to this set propagates to the
rest of the variables.
Variable dependencies
• Most of the variables seem ‘dependent’ on a few
variables.
• Fixing an assignment to this set propagates to the
rest of the variables.
• Lots of real world instances seem to have a small
set on which the remaining variables are dependent.
Variable dependencies
• Most of the variables seem ‘dependent’ on a few
variables.
• Fixing an assignment to this set propagates to the
rest of the variables.
• Lots of real world instances seem to have a small
set on which the remaining variables are dependent.
• Can we capture the structure of an instance
through this small set of variables ?
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)
Subsolvers
A sub-solver is an algorithm with some nice properties.
Subsolvers
• (Trichotomy) input is either rejected or correctly solved (sat
or unsat).
A sub-solver is an algorithm with some nice properties.
Subsolvers
• (Trichotomy) input is either rejected or correctly solved (sat
or unsat).
• (Efficiency) runs in polynomial time.
A sub-solver is an algorithm with some nice properties.
Subsolvers
• (Trichotomy) input is either rejected or correctly solved (sat
or unsat).
• (Efficiency) runs in polynomial time.
• (Self-reducibility) solves reduced instances.
A sub-solver is an algorithm with some nice properties.
Subsolvers
• (Trichotomy) input is
either rejected or
correctly solved (sat or
unsat).

• (Efficiency) runs in
polynomial time.

• (Self-reducibility) solves
reduced instances.
Subsolvers
• (Trichotomy) input is
either rejected or
correctly solved (sat or
unsat).

• (Efficiency) runs in
polynomial time.

• (Self-reducibility) solves
reduced instances.
• Subsolver1: Solve all
2cnf formulas and
reject the rest.
Subsolvers
• (Trichotomy) input is
either rejected or
correctly solved (sat or
unsat).

• (Efficiency) runs in
polynomial time.

• (Self-reducibility) solves
reduced instances.
• Subsolver1: Solve all
2cnf formulas and
reject the rest.
• Subsolver2: Solve all
Horn formulas and
reject the rest.
Subsolvers
• (Trichotomy) input is
either rejected or
correctly solved (sat or
unsat).

• (Efficiency) runs in
polynomial time.

• (Self-reducibility) solves
reduced instances.
• Subsolver1: Solve all
2cnf formulas and
reject the rest.
• Subsolver2: Solve all
Horn formulas and
reject the rest.
Subsolvers
• Subsolver1: Solve all
2cnf formulas and
reject the rest.

• Subsolver2: Solve all
Horn formulas and
reject the rest.
Subsolvers
The instances NOT rejected by 

a sub-solver can be treated 

as a tractable base 

class for SAT.
• Subsolver1: Solve all
2cnf formulas and
reject the rest.

• Subsolver2: Solve all
Horn formulas and
reject the rest.
Subsolvers
The instances NOT rejected by 

a sub-solver can be treated 

as a tractable base 

class for SAT.
For every tractable base class
for SAT, we have 

a sub-solver that solves 

instances in this class and

rejects the rest.
• Subsolver1: Solve all
2cnf formulas and
reject the rest.

• Subsolver2: Solve all
Horn formulas and
reject the rest.
Subsolvers
Subsolvers
Base class = sub-solver
Backdoors to SAT
Backdoors to SAT
• Weak Backdoor to C
Backdoors to SAT
• Weak Backdoor to C
Some assignment leads to 

a satisfiable instance in the 

base class C
X
F1 F2 F3 F4 F2
|X|
Backdoors to SAT
• Weak Backdoor to C • Strong Backdoor to C
Some assignment leads to 

a satisfiable instance in the 

base class C
X
F1 F2 F3 F4 F2
|X|
Backdoors to SAT
• Weak Backdoor to C • Strong Backdoor to C
Some assignment leads to 

a satisfiable instance in the 

base class C
All assignments lead to an

instance in the base class C.
X X
F1 F2 F3 F4 F2
|X|
F1 F2 F3 F4 F2
|X|
Strong vs weak Backdoors
If the instance is satisfiable 

then every strong backdoor 

is also a weak backdoor!
Strong vs weak Backdoors
If the instance is satisfiable 

then every strong backdoor 

is also a weak backdoor!
wbd ≤ sbd

Strong vs weak Backdoors
If the instance is satisfiable 

then every strong backdoor 

is also a weak backdoor!
wbd ≤ sbd

Strong vs weak Backdoors
X
F1 F2 F3 F4 F2
|X|
2 Perspectives on backdoor sets
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.
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.
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.
Islands of Tractability
Islands of Tractability
• Think of the base classes as `Islands of tractability’.

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.

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: If an instance is close to an island of
tractability, then we can solve it efficiently.
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
How to extend tractability results?
How to extend tractability results?
• One approach: Find a weak/strong backdoor to a base
class, explore all assignments to the backdoor variables.

How to extend tractability results?
• One approach: Find a weak/strong backdoor to a base
class, explore all assignments to the backdoor variables.

• For each reduced formula, run the sub-solver for this
base class.

How to extend tractability results?
• One approach: Find a weak/strong backdoor to a base
class, explore all assignments to the backdoor variables.

• For each reduced formula, run the sub-solver for this
base class.

• Running time is T(D)+2|X|
.T(A) ; X is the backdoor set, D
is the detection algorithm and A is the sub-solver.
How to extend tractability results?
• One approach: Find a weak/strong backdoor to a base
class, explore all assignments to the backdoor variables.

• For each reduced formula, run the sub-solver for this
base class.

• Running time is T(D)+2|X|
.T(A) ; X is the backdoor set, D
is the detection algorithm and A is the sub-solver.
Finding Backdoor sets
Finding Backdoor sets
• How do we detect that an instance is `close’ to an
island of tractability?



Finding Backdoor sets
• How do we detect that an instance is `close’ to an
island of tractability?



• For which islands can we do this detection efficiently
(in polynomial time)?
Finding Backdoor sets
Finding Backdoor sets
• For any reasonable island of tractability, detecting if
an instance is `close’ to this island is NP-complete.



Finding Backdoor sets
• For any reasonable island of tractability, detecting if
an instance is `close’ to this island is NP-complete.



• For which islands can we do this detection efficiently
(for a relaxed notion of efficient)?
Finding Backdoors
Finding Backdoors
• How to develop and analyze `efficient’ algorithms to
detect small backdoors?
Finding Backdoors
• How to develop and analyze `efficient’ algorithms to
detect small backdoors?
Fixed-Parameter Algorithms!
FPT algorithms
FPT algorithms
• Parameterized problems - (x,k); k is the parameter.

FPT algorithms
• Parameterized problems - (x,k); k is the parameter.

• 2-dimensional analysis of algorithms.

FPT algorithms
• Parameterized problems - (x,k); k is the parameter.

• 2-dimensional analysis of algorithms.

• Aim for running times of the form f(k) |x|c
FPT algorithms
• Parameterized problems - (x,k); k is the parameter.

• 2-dimensional analysis of algorithms.

• Aim for running times of the form f(k) |x|c
FPT
FPT algorithms
FPT algorithms
• Running time f(k) |x|c implies that for k bounded
by f-1(poly(n)), we have a poly time algorithm.

FPT algorithms
• Running time f(k) |x|c implies that for k bounded
by f-1(poly(n)), we have a poly time algorithm.

• Corresponding hardness theory.

FPT algorithms
• Running time f(k) |x|c implies that for k bounded
by f-1(poly(n)), we have a poly time algorithm.

• Corresponding hardness theory.

• W-hierarchy: FPT ⊆ W[1] ⊆ W[2] ⊆ … ⊆ XP
Rest of this talk
Rest of this talk
• Recent advances in FPT algorithms for computing
backdoors to some base classes 

(q-Horn, tw-SAT, composite classes)

Rest of this talk
• Recent advances in FPT algorithms for computing
backdoors to some base classes 

(q-Horn, tw-SAT, composite classes)

• Discuss some interesting connections between the
2 perspectives.
Classical sub-solvers
Classical sub-solvers
Schaefer Classes
Classical sub-solvers
• Horn (at most one positive lit in each clause)
Schaefer Classes
Classical sub-solvers
• Horn (at most one positive lit in each clause)
• Dual-Horn (at most one negative lit in each clause)
Schaefer Classes
Classical sub-solvers
• Horn (at most one positive lit in each clause)
• Dual-Horn (at most one negative lit in each clause)
• 2-cnf (at most 2 literals in each clause)
Schaefer Classes
Classical sub-solvers
• Horn (at most one positive lit in each clause)
• Dual-Horn (at most one negative lit in each clause)
• 2-cnf (at most 2 literals in each clause)
• 0/1-valid (satisfied by the all-0/all-1 assignment)
Schaefer Classes
Classical sub-solvers
• Horn (at most one positive lit in each clause)
• Dual-Horn (at most one negative lit in each clause)
• 2-cnf (at most 2 literals in each clause)
• 0/1-valid (satisfied by the all-0/all-1 assignment)
Schaefer Classes
Nishimura, Ragde, Szeider SAT 2004
Classical sub-solvers
Class
Backdoor
Schaefer
[Nishimura, Ragde,
Szeider 2004]
Unit Prop + Pure Lit.
Elim
[Szeider 2005]
Weak
W[2]-hard
(FPT for 3-cnf)
W[2]-hard
(FPT for 3-cnf)
Strong FPT W[2]-hard
Why is weak backdoor detection hard?
Why is weak backdoor detection hard?
• Existence of a small weak backdoor —-> the
formula is satisfiable!

Why is weak backdoor detection hard?
• Existence of a small weak backdoor —-> the
formula is satisfiable!

• Allows fairly straightforward encodings from
Hitting Set/Set Cover, both W[2]-hard
parameterized by the size of the solution (the
hitting set or the set cover).
Why is weak backdoor detection hard?
• Existence of a small weak backdoor —-> the
formula is satisfiable!

• Allows fairly straightforward encodings from
Hitting Set/Set Cover, both W[2]-hard
parameterized by the size of the solution (the
hitting set or the set cover).
• Can change if restricted to 3-cnf formulas.
Backdoors to q-Horn
Backdoors to q-Horn
• quadratic-Horn (q-Horn) (Boros, Crama, Hammer 1990)

• F is q-Horn if there is a weight function 

w: lit(F)->{0,1/2,1} s.t





w(x)+w(¬x)=1 and for every clause C, w(C)≤ 1.

• q-Horn generalizes Horn and 2-cnf.
Backdoors to q-Horn
w(x)=1 and w(¬x)=0 for all x w(x)=w(¬x)=1/2 for all x
• quadratic-Horn (q-Horn) (Boros, Crama, Hammer 1990)

• F is q-Horn if there is a weight function 

w: lit(F)->{0,1/2,1} s.t





w(x)+w(¬x)=1 and for every clause C, w(C)≤ 1.

• q-Horn generalizes Horn and 2-cnf.
Backdoors to q-Horn
SAT is in P for 

q-Horn forulas!
• quadratic-Horn (q-Horn) (Boros, Crama, Hammer 1990)

• F is q-Horn if there is a weight function 

w: lit(F)->{0,1/2,1} s.t





w(x)+w(¬x)=1 and for every clause C, w(C)≤ 1.

• q-Horn generalizes Horn and 2-cnf.
q-Horn
Horn 2-cnf
Backdoors to q-Horn
q-Horn
Horn 2-cnf
Weak: W[2]-hard 

Strong: FPT
Backdoors to q-Horn
Weak: W[2]-hard 

Strong: W[2]-hard
[ Gaspers, Ordyniak, R., Saurabh, 

Szeider STACS 2013]
q-Horn
Horn 2-cnf
Weak: W[2]-hard 

Strong: FPT
Backdoors to q-Horn
Backdoors to q-Horn
• How can we extend tractability results if strong
backdoor detection is also W-hard?

Backdoors to q-Horn
• How can we extend tractability results if strong
backdoor detection is also W-hard?

• What other notions of `distance’ can we have?

Backdoors to q-Horn
• How can we extend tractability results if strong
backdoor detection is also W-hard?

• What other notions of `distance’ can we have?

• What about distance through deletion instead of
instantiation?
Backdoors to q-Horn
Deletion Backdoors
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
Deletion Backdoors
• A deletion backdoor set of F to the base class C is a
set of variables S such that F-S is in C.
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
Deletion Backdoors
• A deletion backdoor set of F to the base class C is a
set of variables S such that F-S is in C.
(x1 )⋀(¬x1 ⋁x3 ⋁ x5)⋀(¬x3 ⋁ x4)
Deleting x2
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
Deletion Backdoors
• A deletion backdoor set of F to the base class C is a
set of variables S such that F-S is in C.
(x1 )⋀(¬x1 ⋁x3 ⋁ x5)⋀(¬x3 ⋁ x4) (x1 ⋁x2)⋀(¬x1 ⋁ x5)⋀(x2 ⋁ x4)
Deleting x2 Deleting x3
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
Deletion Backdoors
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
x3 is a deletion backdoor into 2-cnf.
Deletion Backdoors
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
x3 is a deletion backdoor into 2-cnf.
x3 =0
Deletion Backdoors
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
x3 is a deletion backdoor into 2-cnf.
x3 =0 (x1 ⋁ x2)⋀(¬x1 ⋁ x5)
Deletion Backdoors
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
x3 is a deletion backdoor into 2-cnf.
x3 =0
x3 =1
(x1 ⋁ x2)⋀(¬x1 ⋁ x5)
(x1 ⋁ x2)⋀(x2 ⋁ x4)
Deletion Backdoors
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
x3 is a deletion backdoor into 2-cnf.
x3 =0
x3 =1
(x1 ⋁ x2)⋀(¬x1 ⋁ x5)
(x1 ⋁ x2)⋀(x2 ⋁ x4)
Deletion Backdoors
• A deletion backdoor set of F to the base class C is a
set of variables S such that F-S is in C.
(x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
x3 is a deletion backdoor into 2-cnf.
x3 =0
x3 =1
(x1 ⋁ x2)⋀(¬x1 ⋁ x5)
(x1 ⋁ x2)⋀(x2 ⋁ x4)
Deletion Backdoors
• A deletion backdoor set of F to the base class C is a
set of variables S such that F-S is in C.
(x1 ⋁x2)⋀(¬x1 ⋁ x5)⋀(x2 ⋁ x4)
Deleting x3
Deletion Backdoors
S
F-S
Deletion Backdoors
S
F-S
If the base class C is ‘clause induced’

then S is also a strong backdoor to C.
If F is in C, every subformula of F 

induced by a subset of clauses is in C.
Deletion Backdoors
S
F-S
If the base class C is ‘clause induced’

then S is also a strong backdoor to C.
If F is in C, every subformula of F 

induced by a subset of clauses is in C.
wbd ≤ sbd ≤del. bd
Deletion Backdoors
Deletion Backdoors
Deletion Backdoors
• The detection of strong backdoors being W-hard is
not a dead end.



Deletion Backdoors
• The detection of strong backdoors being W-hard is
not a dead end.



• If we can detect deletion backdoors then we can still
extend the tractable region for SAT.
Deletion Backdoors
Backdoors to q-Horn
Backdoors to q-Horn
Backdoors to q-Horn
• q-Horn is clause induced. Can we find a deletion
backdoor to q-Horn in FPT time?
Backdoors to q-Horn
• q-Horn is clause induced. Can we find a deletion
backdoor to q-Horn in FPT time?
• In FPT time, we can approximate it.

[Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013]
Backdoors to q-Horn
• q-Horn is clause induced. Can we find a deletion
backdoor to q-Horn in FPT time?
• In FPT time, we can approximate it.

[Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013]
• In O(6k
mn) time, we can either conclude no del
backdoor of size k or compute a deletion backdoor of
size at most 2 k2
.
Backdoors to q-Horn
• q-Horn is clause induced. Can we find a deletion
backdoor to q-Horn in FPT time?
• In FPT time, we can approximate it.

[Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013]
• In O(6k
mn) time, we can either conclude no del
backdoor of size k or compute a deletion backdoor of
size at most 2 k2
.
SAT parameterized by size of deletion backdoor to q-Horn

can be solved in time 2O(k^2) mn .
Backdoors to q-Horn
SAT is in P for instances 

with a del. backdoor of 

size O(√log n) to q-Horn.
SAT is in P for q-Horn
Deletion backdoor set detection to q-Horn can be solved in

time O(12k m).
[R. and Saurabh, SODA 2014]
Backdoors to q-Horn
Deletion backdoor set detection to q-Horn can be solved in

time O(12k m).
[R. and Saurabh, SODA 2014]
Backdoors to q-Horn
SAT parameterized by size of deletion backdoor to q-Horn

can be solved in time 2O(k) m .
Backdoors to q-Horn
SAT is in P for instances 

with a del. backdoor of 

size O(log n) to q-Horn 

[R. and Saurabh 2014].
SAT is in P for q-Horn
SAT is in P for instances 

with a del. backdoor of 

size O(√log n) to q-Horn

[Gaspers, Ordyniak, 

R., Saurabh, Szeider 2014].
Backdoors to q-Horn
• A linear time algorithm for SAT instances `close’
to being q-Horn.
Backdoors to q-Horn
• A linear time algorithm for SAT instances `close’
to being q-Horn.
• Corollary: Deletion backdoor detection for RHorn
can be done in time O(4k m).
Backdoors to q-Horn
• A linear time algorithm for SAT instances `close’
to being q-Horn.
• Corollary: Deletion backdoor detection for RHorn
can be done in time O(4k m).
• A further consequence of this algorithm: the first
linear time FPT algorithm for Odd Cycle
Transversal (open problem of Reed, Smith and
Vetta, 2003).
Backdoors to q-Horn
Backdoors to Bounded Treewidth SAT
Backdoors to acyclic SAT
Modeling CNF-formulas as graphs
Incidence Graph
: Clauses
: Variables
If the Incidence graph is a forest then SAT is in P 

(Fischer, Makowsky, Ravve 2008).
Acyclic SAT
Backdoors to acyclic SAT
: Clauses
: Variables
What about formulas with small backdoors to Acyclic SAT?

Is SAT tractable on these formulas?
: Clauses
: VariablesAcyclic SAT
Backdoors to acyclic SAT
• weak backdoor detection to acyclic SAT is W[2]-hard.

• weak backdoor detection to acyclic 3-SAT is FPT.

• strong backdoor detection to acyclic SAT is 

FPT-approximable.
Gaspers and Szeider (ICALP 2012) :
Backdoors to acyclic SAT
• weak backdoor detection to acyclic SAT is W[2]-hard.

• weak backdoor detection to acyclic 3-SAT is FPT.

• strong backdoor detection to acyclic SAT is 

FPT-approximable.
Gaspers and Szeider (ICALP 2012) :
In FPT time, either conclude there is 

no strong backdoor of size k

or compute a strong backdoor of size 2k
Backdoors to acyclic SAT
Backdoors to bounded tw SAT
If the Incidence graph is tree-like then SAT is in P 

(Fischer, Makowsky, Ravve 2008).
Incidence Graph
tw-SAT
: Clauses
: Variables
Strong backdoor detection to tw SAT is FPT-approximable.
Gaspers and Szeider (FOCS 2013) :
Backdoors to bounded tw SAT
Strong backdoor detection to tw SAT is FPT-approximable.
SAT parameterized by size of sbd to tw SAT is FPT.
Running time : 22^k n3
Gaspers and Szeider (FOCS 2013) :
Backdoors to bounded tw SAT
Backdoors to bounded tw SAT
SAT is in P for instances 

with sbd of size 

O(log log n) to tw SAT.
tw SAT is in P.
Fomin, Lokshtanov, Misra, R., Saurabh (SODA 2015)
Backdoors to bounded tw SAT
Fomin, Lokshtanov, Misra, R., Saurabh (SODA 2015)
3-SAT parameterized by k=min{sbd,wbd} to tw 3-SAT can be
solved in time 2O(k) m.
This running time is optimal both w.r.t parameter and 

input-size.
Backdoors to bounded tw SAT
Backdoors to bounded tw SAT
3-SAT is in P for instances 

with a s/w backdoor of size
O(log n) to tw 3-SAT.
tw 3-SAT is in P.
This region cannot be extended.
Some new features in this algorithm!
Combining the perspectives
Combining the perspectives
• Williams et al. proposed that SAT solvers encounter
backdoor sets without actually searching for them.



Combining the perspectives
• Williams et al. proposed that SAT solvers encounter
backdoor sets without actually searching for them.



• This algorithm: revisit this perspective.
Backdoors to bounded tw SAT
DPLL
Backdoors to bounded tw SAT
• Apply UP and PLE
DPLL
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
DPLL
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
DPLL
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
DPLL DPLL’
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
• If formula has constant
tw, then solve in poly time.
DPLL DPLL’
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
• If formula has constant
tw, then solve in poly time.
• Reduce all `protrusions’.
DPLL DPLL’
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
• If formula has constant
tw, then solve in poly time.
• Reduce all `protrusions’.
• Select a variable x u.a.r
DPLL DPLL’
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
• If formula has constant
tw, then solve in poly time.
• Reduce all `protrusions’.
• Select a variable x u.a.r
• Branch on x
DPLL DPLL’
Backdoors to bounded tw SAT
• Apply UP and PLE
• Select a variable x u.a.r
• Branch on x
• If formula has constant
tw, then solve in poly time.
• Reduce all `protrusions’.
• Select a variable x u.a.r
• Branch on x
DPLL DPLL’
DPLL’ is an FPT algorithm for 3-SAT par 

by min{sbd,wbd} to tw 3-SAT.
Backdoors to bounded tw SAT
• Protrusion replacement takes the place of UP and
PLE.
Backdoors to bounded tw SAT
• Protrusion replacement takes the place of UP and
PLE.
• Since the base class is more complex, the
preprocessing is also involved.
Backdoors to bounded tw SAT
• Protrusion replacement takes the place of UP and
PLE.
• Since the base class is more complex, the
preprocessing is also involved.
• But intuition remains the same: Remove
‘irrelevant’ parts of the formula or at the very
least replace them with a `small’ equivalent
formula.
Backdoors to bounded tw SAT
Backdoors to bounded tw SAT
• First FPT algorithm for SAT which does not
depend on computing a backdoor set first.

Backdoors to bounded tw SAT
• First FPT algorithm for SAT which does not
depend on computing a backdoor set first.

• Optimal running time (parameter and i/p size)

Backdoors to bounded tw SAT
• First FPT algorithm for SAT which does not
depend on computing a backdoor set first.

• Optimal running time (parameter and i/p size)

• Again, techniques developed here have other
applications: improving several kernelization and
FPT algorithms to linear time.
Backdoors to bounded tw SAT
Composite Base Classes
Heterogenous backdoors
Heterogenous backdoors
Consider the following formula.
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
What is the size of a smallest 

strong backdoor set into Horn?
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
What is the size of a smallest 

strong backdoor set into Horn?
at least n
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
What is the size of a smallest 

strong backdoor set into Horn?
at least n
What is the size of a smallest 

strong backdoor set into 2-cnf?
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
What is the size of a smallest 

strong backdoor set into Horn?
at least n
What is the size of a smallest 

strong backdoor set into 2-cnf?
at least n-1
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
Consider F[x=0] (¬a1 ⋁¬a2…⋁¬an)
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
(¬a1 ⋁¬a2…⋁¬an)
(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
(¬a1 ⋁¬a2…⋁¬an)
(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Horn
Heterogenous backdoors
Consider the following formula.
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
(¬a1 ⋁¬a2…⋁¬an)
(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Horn
2-cnf
Heterogenous backdoors
Heterogenous backdoors
F[x=0] F[x=1]
F
Run

sub-solver C1
Run 

sub-solver C2
C1,C2 : Horn, 2-cnf
Heterogenous backdoors
Let C1,.. ,Cr be islands of tractability.
X is a heterogenous backdoor into C1,.. ,Cr if for every
assignment of X, the reduced formula 

is in some Ci.
Heterogenous backdoors
Heterogenous backdoors
• Heterogenous backdoors can be arbitrarily smaller
than normal strong backdoors.



Heterogenous backdoors
• Heterogenous backdoors can be arbitrarily smaller
than normal strong backdoors.



• Class of instances with small heterogenous
backdoors is a much larger class than instances
with small strong backdoor.
Islands of Tractability
Strong backdoor of size k to

some Island of Tractability
Heterogenous backdoor of 

size k to some Islands
Heterogenous backdoors
Heterogenous backdoors
Gaspers, Ordyniak, Misra, Szeider, Zivny (AAAI 2014)
Heterogenous backdoors
1. If H =Horn/dual-Horn ∪ 2CNF then detecting

heterogenous backdoors to H is FPT
Gaspers, Ordyniak, Misra, Szeider, Zivny (AAAI 2014)
2. For every other combination of Schaefer classes,

detecting heterogenous backdoors to H is W[2]-hard.
but FPT for 3-cnf formulas
Heterogenous backdoors
Archipelagos of tractability
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
Archipelagos of tractability
What is the size of a smallest 

heterogenous backdoor set 

into Horn ∪ 2-cnf?
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
Archipelagos of tractability
What is the size of a smallest 

heterogenous backdoor set 

into Horn ∪ 2-cnf?
at least 2n
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
Archipelagos of tractability
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
Consider F[x=0]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Horn
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
2-cnf
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Horn
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) 2-cnf
Consider F[x=0]
Consider F[x=1]
Archipelagos of tractability
(x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)

⋀

(¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 

⋀

(x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
(¬a1 ⋁¬a2…⋁¬an) ⋀

(q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
(¬p1 ⋁¬p2…⋁¬pn) ⋀

(b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
F[x=0] F[x=1]
F
Run appropriate

sub-solver Ci on each 

part variable-disjoint 

from the rest
C1,C2
Archipelagos of tractability
: Horn,2-cnf
Run appropriate

sub-solver Ci on each 

part variable-disjoint 

from the rest
Split backdoors
Let C1,.. ,Cr be islands of tractability.
X is a split backdoor into C1,.. ,Cr if for every assignment of
X, every connected component of the reduced formula 

is in some Ci.
Split backdoors
Let C1,.. ,Cr be islands of tractability.
X is a split backdoor into C1,.. ,Cr if for every assignment of
X, every connected component of the reduced formula 

is in some Ci.
A minimal set of clauses which is variable-disjoint

from the remaining clauses.
Split backdoors
Split backdoors
• Split backdoors can be arbitrarily smaller than
heterogenous backdoors.



Split backdoors
• Split backdoors can be arbitrarily smaller than
heterogenous backdoors.



• Class of instances with small split backdoors is a
much larger class than class of instances with
small heterogenous backdoor.
Islands of Tractability
Split backdoor of size k 

to some Islands
Split backdoors
Strong backdoor of size k to

some Island of Tractability
Heterogenous backdoor of 

size k to some Islands
If H is a finite set of finite constraint languages, then
detecting split-backdoors of the given CSP to H is FPT.
Ganian, R., Szeider (2014):
Builds on a combination of traditional FPT tools and new graph separation
tools like important separators, sequences and CSP based pattern
replacements.
Split backdoors
Summing up
Summing up
• We have seen how backdoors and fixed parameter
tractability provide a framework to extend tractability
results for SAT based on the `distance’ of instances to
islands of tractability.
Summing up
• We have seen how backdoors and fixed parameter
tractability provide a framework to extend tractability
results for SAT based on the `distance’ of instances to
islands of tractability.
• Stronger definitions of sub-solvers and base classes allowing
us to prove tractability for larger classes of instances.
Summing up
• We have seen how backdoors and fixed parameter
tractability provide a framework to extend tractability
results for SAT based on the `distance’ of instances to
islands of tractability.
• Stronger definitions of sub-solvers and base classes allowing
us to prove tractability for larger classes of instances.
• Several other variants of backdoors have been proposed, eg.
backdoor trees (Samer and Szeider AAAI 2008), learning
sensitive backdoors (Dilkina, Gomes, Sabharwal SAT 2009).
Future research
Future research
• So far backdoor sets
and variants have
provided the best and
theoretically most
robust explanation for
the performances of
SAT solvers.
Future research
• So far backdoor sets
and variants have
provided the best and
theoretically most
robust explanation for
the performances of
SAT solvers. 

• What other structural
properties of instances
are correlated to the
computation time and
can be effectively
formalized in theory?
Future research
Future research
• So far, `small’
backdoors treated
as certificates for
closeness.

• Better measures
than size?

• i.e. backdoors of
potentially
unbounded size but
with some structure.
Future research
Future research
• Analysis of
existing SAT
algorithms in
terms of FPT

parameterize
d by
backdoors.
Thank you for your attention!

More Related Content

What's hot

Polylogarithmic approximation algorithm for weighted F-deletion problems
Polylogarithmic approximation algorithm for weighted F-deletion problemsPolylogarithmic approximation algorithm for weighted F-deletion problems
Polylogarithmic approximation algorithm for weighted F-deletion problemsAkankshaAgrawal55
 
Cs ps, sat, fol resolution strategies
Cs ps, sat, fol resolution strategiesCs ps, sat, fol resolution strategies
Cs ps, sat, fol resolution strategiesYasir Khan
 
Split Contraction: The Untold Story
Split Contraction: The Untold StorySplit Contraction: The Untold Story
Split Contraction: The Untold StoryAkankshaAgrawal55
 
COnflict Free Feedback Vertex Set: A Parameterized Dichotomy
COnflict Free Feedback Vertex Set: A Parameterized DichotomyCOnflict Free Feedback Vertex Set: A Parameterized Dichotomy
COnflict Free Feedback Vertex Set: A Parameterized DichotomyAkankshaAgrawal55
 
SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips FiltrationSOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips FiltrationDon Sheehy
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Abhimanyu Mishra
 
Writing a SAT solver as a hobby project
Writing a SAT solver as a hobby projectWriting a SAT solver as a hobby project
Writing a SAT solver as a hobby projectMasahiro Sakai
 
Introduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT EvaluationIntroduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT EvaluationMasahiro Sakai
 
Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...
Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...
Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...少华 白
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebracseiitgn
 
Algorithm_NP-Completeness Proof
Algorithm_NP-Completeness ProofAlgorithm_NP-Completeness Proof
Algorithm_NP-Completeness ProofIm Rafid
 
NFA or Non deterministic finite automata
NFA or Non deterministic finite automataNFA or Non deterministic finite automata
NFA or Non deterministic finite automatadeepinderbedi
 
Nondeterministic Finite Automata
Nondeterministic Finite Automata Nondeterministic Finite Automata
Nondeterministic Finite Automata parmeet834
 
lecture 30
lecture 30lecture 30
lecture 30sajinsc
 
Value Function Geometry and Gradient TD
Value Function Geometry and Gradient TDValue Function Geometry and Gradient TD
Value Function Geometry and Gradient TDAshwin Rao
 
Algorithm Design and Complexity - Course 10
Algorithm Design and Complexity - Course 10Algorithm Design and Complexity - Course 10
Algorithm Design and Complexity - Course 10Traian Rebedea
 

What's hot (20)

Polylogarithmic approximation algorithm for weighted F-deletion problems
Polylogarithmic approximation algorithm for weighted F-deletion problemsPolylogarithmic approximation algorithm for weighted F-deletion problems
Polylogarithmic approximation algorithm for weighted F-deletion problems
 
Cs ps, sat, fol resolution strategies
Cs ps, sat, fol resolution strategiesCs ps, sat, fol resolution strategies
Cs ps, sat, fol resolution strategies
 
Split Contraction: The Untold Story
Split Contraction: The Untold StorySplit Contraction: The Untold Story
Split Contraction: The Untold Story
 
COnflict Free Feedback Vertex Set: A Parameterized Dichotomy
COnflict Free Feedback Vertex Set: A Parameterized DichotomyCOnflict Free Feedback Vertex Set: A Parameterized Dichotomy
COnflict Free Feedback Vertex Set: A Parameterized Dichotomy
 
SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips FiltrationSOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1
 
Writing a SAT solver as a hobby project
Writing a SAT solver as a hobby projectWriting a SAT solver as a hobby project
Writing a SAT solver as a hobby project
 
Introduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT EvaluationIntroduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT Evaluation
 
Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...
Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...
Closed-Form Solutions in Low-Rank Subspace Recovery Models and Their Implicat...
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebra
 
Algorithm_NP-Completeness Proof
Algorithm_NP-Completeness ProofAlgorithm_NP-Completeness Proof
Algorithm_NP-Completeness Proof
 
Finite automata
Finite automataFinite automata
Finite automata
 
NFA or Non deterministic finite automata
NFA or Non deterministic finite automataNFA or Non deterministic finite automata
NFA or Non deterministic finite automata
 
Finite automata
Finite automataFinite automata
Finite automata
 
Reductions
ReductionsReductions
Reductions
 
Nondeterministic Finite Automata
Nondeterministic Finite Automata Nondeterministic Finite Automata
Nondeterministic Finite Automata
 
lecture 30
lecture 30lecture 30
lecture 30
 
Value Function Geometry and Gradient TD
Value Function Geometry and Gradient TDValue Function Geometry and Gradient TD
Value Function Geometry and Gradient TD
 
Nfa egs
Nfa egsNfa egs
Nfa egs
 
Algorithm Design and Complexity - Course 10
Algorithm Design and Complexity - Course 10Algorithm Design and Complexity - Course 10
Algorithm Design and Complexity - Course 10
 

Similar to Backdoors to Satisfiability

Bounded Model Checking
Bounded Model CheckingBounded Model Checking
Bounded Model CheckingIlham Amezzane
 
CSP UNIT 2 AIML.ppt
CSP UNIT 2 AIML.pptCSP UNIT 2 AIML.ppt
CSP UNIT 2 AIML.pptssuser6e2b26
 
Playing Go with Clojure
Playing Go with ClojurePlaying Go with Clojure
Playing Go with Clojureztellman
 
05-constraint-satisfaction-problems-(us).ppt
05-constraint-satisfaction-problems-(us).ppt05-constraint-satisfaction-problems-(us).ppt
05-constraint-satisfaction-problems-(us).pptsky54012
 
Theorem proving 2018 2019
Theorem proving 2018 2019Theorem proving 2018 2019
Theorem proving 2018 2019Emmanuel Zarpas
 
1629 stochastic subgradient approach for solving linear support vector
1629 stochastic subgradient approach for solving linear support vector1629 stochastic subgradient approach for solving linear support vector
1629 stochastic subgradient approach for solving linear support vectorDr Fereidoun Dejahang
 
Theorem proving 2018 2019
Theorem proving 2018 2019Theorem proving 2018 2019
Theorem proving 2018 2019Emmanuel Zarpas
 
Halo2 Verifier in Move from ZERO to ONE.pptx
Halo2 Verifier in Move from ZERO to ONE.pptxHalo2 Verifier in Move from ZERO to ONE.pptx
Halo2 Verifier in Move from ZERO to ONE.pptxfunfriendcjf
 
Paper Study - Incremental Data-Flow Analysis Algorithms by Ryder et al
Paper Study - Incremental Data-Flow Analysis Algorithms by Ryder et alPaper Study - Incremental Data-Flow Analysis Algorithms by Ryder et al
Paper Study - Incremental Data-Flow Analysis Algorithms by Ryder et alMin-Yih Hsu
 
cos323_s06_lecture03_optimization.ppt
cos323_s06_lecture03_optimization.pptcos323_s06_lecture03_optimization.ppt
cos323_s06_lecture03_optimization.pptdevesh604174
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautzbutest
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautzbutest
 

Similar to Backdoors to Satisfiability (20)

Bounded Model Checking
Bounded Model CheckingBounded Model Checking
Bounded Model Checking
 
CSP UNIT 2 AIML.ppt
CSP UNIT 2 AIML.pptCSP UNIT 2 AIML.ppt
CSP UNIT 2 AIML.ppt
 
Playing Go with Clojure
Playing Go with ClojurePlaying Go with Clojure
Playing Go with Clojure
 
05-constraint-satisfaction-problems-(us).ppt
05-constraint-satisfaction-problems-(us).ppt05-constraint-satisfaction-problems-(us).ppt
05-constraint-satisfaction-problems-(us).ppt
 
Theorem proving 2018 2019
Theorem proving 2018 2019Theorem proving 2018 2019
Theorem proving 2018 2019
 
Optimization
OptimizationOptimization
Optimization
 
1629 stochastic subgradient approach for solving linear support vector
1629 stochastic subgradient approach for solving linear support vector1629 stochastic subgradient approach for solving linear support vector
1629 stochastic subgradient approach for solving linear support vector
 
Ihdels presentation
Ihdels presentationIhdels presentation
Ihdels presentation
 
Theorem proving 2018 2019
Theorem proving 2018 2019Theorem proving 2018 2019
Theorem proving 2018 2019
 
Halo2 Verifier in Move from ZERO to ONE.pptx
Halo2 Verifier in Move from ZERO to ONE.pptxHalo2 Verifier in Move from ZERO to ONE.pptx
Halo2 Verifier in Move from ZERO to ONE.pptx
 
R meetup lm
R meetup lmR meetup lm
R meetup lm
 
csps.ppt
csps.pptcsps.ppt
csps.ppt
 
CH6,7.pptx
CH6,7.pptxCH6,7.pptx
CH6,7.pptx
 
Paper Study - Incremental Data-Flow Analysis Algorithms by Ryder et al
Paper Study - Incremental Data-Flow Analysis Algorithms by Ryder et alPaper Study - Incremental Data-Flow Analysis Algorithms by Ryder et al
Paper Study - Incremental Data-Flow Analysis Algorithms by Ryder et al
 
cs-171-05-LocalSearch.pptx
cs-171-05-LocalSearch.pptxcs-171-05-LocalSearch.pptx
cs-171-05-LocalSearch.pptx
 
1015 track2 abbott
1015 track2 abbott1015 track2 abbott
1015 track2 abbott
 
1030 track2 abbott
1030 track2 abbott1030 track2 abbott
1030 track2 abbott
 
cos323_s06_lecture03_optimization.ppt
cos323_s06_lecture03_optimization.pptcos323_s06_lecture03_optimization.ppt
cos323_s06_lecture03_optimization.ppt
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautz
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautz
 

Recently uploaded

Artificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C PArtificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C PPRINCE C P
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRDelhi Call girls
 
Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.aasikanpl
 
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxSOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxkessiyaTpeter
 
Cultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptxCultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptxpradhanghanshyam7136
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...Sérgio Sacani
 
Grafana in space: Monitoring Japan's SLIM moon lander in real time
Grafana in space: Monitoring Japan's SLIM moon lander  in real timeGrafana in space: Monitoring Japan's SLIM moon lander  in real time
Grafana in space: Monitoring Japan's SLIM moon lander in real timeSatoshi NAKAHIRA
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Sérgio Sacani
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsSérgio Sacani
 
Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.aasikanpl
 
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡anilsa9823
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoSérgio Sacani
 
G9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.pptG9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.pptMAESTRELLAMesa2
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​kaibalyasahoo82800
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTSérgio Sacani
 
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...jana861314
 
Physiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptxPhysiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptxAArockiyaNisha
 
A relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfA relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfnehabiju2046
 
Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Nistarini College, Purulia (W.B) India
 
Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?Patrick Diehl
 

Recently uploaded (20)

Artificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C PArtificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C P
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Munirka Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
 
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxSOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
 
Cultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptxCultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptx
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 
Grafana in space: Monitoring Japan's SLIM moon lander in real time
Grafana in space: Monitoring Japan's SLIM moon lander  in real timeGrafana in space: Monitoring Japan's SLIM moon lander  in real time
Grafana in space: Monitoring Japan's SLIM moon lander in real time
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
Call Girls in Mayapuri Delhi 💯Call Us 🔝9953322196🔝 💯Escort.
 
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
G9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.pptG9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.ppt
 
Nanoparticles synthesis and characterization​ ​
Nanoparticles synthesis and characterization​  ​Nanoparticles synthesis and characterization​  ​
Nanoparticles synthesis and characterization​ ​
 
Disentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOSTDisentangling the origin of chemical differences using GHOST
Disentangling the origin of chemical differences using GHOST
 
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
Traditional Agroforestry System in India- Shifting Cultivation, Taungya, Home...
 
Physiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptxPhysiochemical properties of nanomaterials and its nanotoxicity.pptx
Physiochemical properties of nanomaterials and its nanotoxicity.pptx
 
A relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfA relative description on Sonoporation.pdf
A relative description on Sonoporation.pdf
 
Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...Bentham & Hooker's Classification. along with the merits and demerits of the ...
Bentham & Hooker's Classification. along with the merits and demerits of the ...
 
Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?
 

Backdoors to Satisfiability

  • 1. Backdoors to Satisfiability M. S. Ramanujan University of Bergen, Norway New Developments in Exact Algorithms and Lower Bounds IIT Delhi, 2014
  • 2. Outline • Motivation
 • 2 perspectives on backdoors
 • Parameterized algorithms for SAT via backdoors
  • 4. Satisfiability • SATISFIABILITY: Is a given propositional formula satisfiable?

  • 5. Satisfiability • SATISFIABILITY: Is a given propositional formula satisfiable?
 • One of the earliest problems shown to be NP- Complete.

  • 6. Satisfiability • SATISFIABILITY: Is a given propositional formula satisfiable?
 • One of the earliest problems shown to be NP- Complete.
 • Best known algorithm for 3-SAT — 1.308n (Hertli, FOCS 2011)
  • 8. Satisfiability • Several applications— problems like software model checking, chip verification etc. reduced to SAT and solved using SAT solvers.
  • 9. Satisfiability • Several applications— problems like software model checking, chip verification etc. reduced to SAT and solved using SAT solvers. • Resulting instances often have up to a million variables and several million clauses.
  • 10. Satisfiability • Several applications— problems like software model checking, chip verification etc. reduced to SAT and solved using SAT solvers. • Resulting instances often have up to a million variables and several million clauses. • Even for 300 variables, worst case bounds exceed age of the universe.
  • 11. That’s all well and good in practice, but how does it work in theory?
  • 12. That’s all well and good in practice, but how does it work in theory? The instances arising in practice must have some structure!
  • 15. • ‘Complete’ SAT solvers are variants of 
 the DPLL algorithm. Modern SAT solvers
  • 16. • ‘Complete’ SAT solvers are variants of 
 the DPLL algorithm. Modern SAT solvers DPLL= Davis-Putnam-Logemann-Loveland
  • 18. The DPLL algorithm • Perform Unit Propagation.
  • 19. The DPLL algorithm • Perform Unit Propagation. • If there is a unit clause then the literal is set accordingly and the formula reduced.
  • 20. The DPLL algorithm • Perform Unit Propagation. • If there is a unit clause then the literal is set accordingly and the formula reduced. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
  • 21. The DPLL algorithm • Perform Unit Propagation. • If there is a unit clause then the literal is set accordingly and the formula reduced. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) ( x3)⋀(x2 ⋁¬x3)
  • 22. The DPLL algorithm • Perform Unit Propagation. • If there is a unit clause then the literal is set accordingly and the formula reduced. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) ( x3)⋀(x2 ⋁¬x3)
  • 23. The DPLL algorithm • Perform Unit Propagation. • If there is a unit clause then the literal is set accordingly and the formula reduced. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) ( x3)⋀(x2 ⋁¬x3) (x2)
  • 24. The DPLL algorithm • Perform Unit Propagation. • If there is a unit clause then the literal is set accordingly and the formula reduced. Horn formulas : formulas with at most one positive literal in every clause, solved just by unit propagation. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) ( x3)⋀(x2 ⋁¬x3) (x2)
  • 26. The DPLL algorithm • Perform Pure Literal Elimination.
  • 27. The DPLL algorithm • Perform Pure Literal Elimination. • If a variable occurs with a single polarity, then assign it and reduce formula.
  • 28. The DPLL algorithm • Perform Pure Literal Elimination. • If a variable occurs with a single polarity, then assign it and reduce formula. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3)
  • 29. The DPLL algorithm • Perform Pure Literal Elimination. • If a variable occurs with a single polarity, then assign it and reduce formula. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) (x1 )⋀(¬x1 ⋁x3)
  • 30. The DPLL algorithm • Perform Pure Literal Elimination. • If a variable occurs with a single polarity, then assign it and reduce formula. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) (x1 )⋀(¬x1 ⋁x3)
  • 31. The DPLL algorithm • Perform Pure Literal Elimination. • If a variable occurs with a single polarity, then assign it and reduce formula. (x1 )⋀(¬x1 ⋁x3)⋀(x2 ⋁¬x3) (x1 )⋀(¬x1 ⋁x3) (x1)
  • 32. The DPLL algorithm • Select a variable (based on some heuristic) and explore both assignments. F[x=1] F[x=0]
  • 34. Modern Sat solvers • Build on DPLL by better variable selection heuristics.

  • 35. Modern Sat solvers • Build on DPLL by better variable selection heuristics.
 • Better backtracking strategies.

  • 36. Modern Sat solvers • Build on DPLL by better variable selection heuristics.
 • Better backtracking strategies.
 • ‘Learning’ clauses.

  • 37. Modern Sat solvers • Build on DPLL by better variable selection heuristics.
 • Better backtracking strategies.
 • ‘Learning’ clauses.
 • ‘watching’ literals for fast unit propagations.
  • 39. Variable dependencies • Most of the variables seem ‘dependent’ on a few variables.
  • 40. Variable dependencies • Most of the variables seem ‘dependent’ on a few variables. • Fixing an assignment to this set propagates to the rest of the variables.
  • 41. Variable dependencies • Most of the variables seem ‘dependent’ on a few variables. • Fixing an assignment to this set propagates to the rest of the variables. • Lots of real world instances seem to have a small set on which the remaining variables are dependent.
  • 42. Variable dependencies • Most of the variables seem ‘dependent’ on a few variables. • Fixing an assignment to this set propagates to the rest of the variables. • Lots of real world instances seem to have a small set on which the remaining variables are dependent. • Can we capture the structure of an instance through this small set of variables ?
  • 43. 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)
  • 44. Subsolvers A sub-solver is an algorithm with some nice properties.
  • 45. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). A sub-solver is an algorithm with some nice properties.
  • 46. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). • (Efficiency) runs in polynomial time. A sub-solver is an algorithm with some nice properties.
  • 47. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). • (Efficiency) runs in polynomial time. • (Self-reducibility) solves reduced instances. A sub-solver is an algorithm with some nice properties.
  • 48. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). • (Efficiency) runs in polynomial time. • (Self-reducibility) solves reduced instances.
  • 49. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). • (Efficiency) runs in polynomial time. • (Self-reducibility) solves reduced instances. • Subsolver1: Solve all 2cnf formulas and reject the rest.
  • 50. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). • (Efficiency) runs in polynomial time. • (Self-reducibility) solves reduced instances. • Subsolver1: Solve all 2cnf formulas and reject the rest. • Subsolver2: Solve all Horn formulas and reject the rest.
  • 51. Subsolvers • (Trichotomy) input is either rejected or correctly solved (sat or unsat). • (Efficiency) runs in polynomial time. • (Self-reducibility) solves reduced instances. • Subsolver1: Solve all 2cnf formulas and reject the rest. • Subsolver2: Solve all Horn formulas and reject the rest.
  • 52. Subsolvers • Subsolver1: Solve all 2cnf formulas and reject the rest. • Subsolver2: Solve all Horn formulas and reject the rest.
  • 53. Subsolvers The instances NOT rejected by a sub-solver can be treated as a tractable base class for SAT. • Subsolver1: Solve all 2cnf formulas and reject the rest. • Subsolver2: Solve all Horn formulas and reject the rest.
  • 54. Subsolvers The instances NOT rejected by a sub-solver can be treated as a tractable base class for SAT. For every tractable base class for SAT, we have a sub-solver that solves instances in this class and rejects the rest. • Subsolver1: Solve all 2cnf formulas and reject the rest. • Subsolver2: Solve all Horn formulas and reject the rest.
  • 58. Backdoors to SAT • Weak Backdoor to C
  • 59. Backdoors to SAT • Weak Backdoor to C Some assignment leads to a satisfiable instance in the base class C X F1 F2 F3 F4 F2 |X|
  • 60. Backdoors to SAT • Weak Backdoor to C • Strong Backdoor to C Some assignment leads to a satisfiable instance in the base class C X F1 F2 F3 F4 F2 |X|
  • 61. Backdoors to SAT • Weak Backdoor to C • Strong Backdoor to C Some assignment leads to a satisfiable instance in the base class C All assignments lead to an instance in the base class C. X X F1 F2 F3 F4 F2 |X| F1 F2 F3 F4 F2 |X|
  • 62. Strong vs weak Backdoors
  • 63. If the instance is satisfiable then every strong backdoor is also a weak backdoor! Strong vs weak Backdoors
  • 64. If the instance is satisfiable then every strong backdoor is also a weak backdoor! wbd ≤ sbd
 Strong vs weak Backdoors
  • 65. If the instance is satisfiable then every strong backdoor is also a weak backdoor! wbd ≤ sbd
 Strong vs weak Backdoors X F1 F2 F3 F4 F2 |X|
  • 66. 2 Perspectives on backdoor sets
  • 67. 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.
  • 68. 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.
  • 69. 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.
  • 71. Islands of Tractability • Think of the base classes as `Islands of tractability’.

  • 72. 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.

  • 73. 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: If an instance is close to an island of tractability, then we can solve it efficiently.
  • 74. 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
  • 75. How to extend tractability results?
  • 76. How to extend tractability results? • One approach: Find a weak/strong backdoor to a base class, explore all assignments to the backdoor variables.

  • 77. How to extend tractability results? • One approach: Find a weak/strong backdoor to a base class, explore all assignments to the backdoor variables.
 • For each reduced formula, run the sub-solver for this base class.

  • 78. How to extend tractability results? • One approach: Find a weak/strong backdoor to a base class, explore all assignments to the backdoor variables.
 • For each reduced formula, run the sub-solver for this base class.
 • Running time is T(D)+2|X| .T(A) ; X is the backdoor set, D is the detection algorithm and A is the sub-solver.
  • 79. How to extend tractability results? • One approach: Find a weak/strong backdoor to a base class, explore all assignments to the backdoor variables.
 • For each reduced formula, run the sub-solver for this base class.
 • Running time is T(D)+2|X| .T(A) ; X is the backdoor set, D is the detection algorithm and A is the sub-solver.
  • 81. Finding Backdoor sets • How do we detect that an instance is `close’ to an island of tractability?
 

  • 82. Finding Backdoor sets • How do we detect that an instance is `close’ to an island of tractability?
 
 • For which islands can we do this detection efficiently (in polynomial time)?
  • 84. Finding Backdoor sets • For any reasonable island of tractability, detecting if an instance is `close’ to this island is NP-complete.
 

  • 85. Finding Backdoor sets • For any reasonable island of tractability, detecting if an instance is `close’ to this island is NP-complete.
 
 • For which islands can we do this detection efficiently (for a relaxed notion of efficient)?
  • 87. Finding Backdoors • How to develop and analyze `efficient’ algorithms to detect small backdoors?
  • 88. Finding Backdoors • How to develop and analyze `efficient’ algorithms to detect small backdoors? Fixed-Parameter Algorithms!
  • 90. FPT algorithms • Parameterized problems - (x,k); k is the parameter.

  • 91. FPT algorithms • Parameterized problems - (x,k); k is the parameter.
 • 2-dimensional analysis of algorithms.

  • 92. FPT algorithms • Parameterized problems - (x,k); k is the parameter.
 • 2-dimensional analysis of algorithms.
 • Aim for running times of the form f(k) |x|c
  • 93. FPT algorithms • Parameterized problems - (x,k); k is the parameter.
 • 2-dimensional analysis of algorithms.
 • Aim for running times of the form f(k) |x|c FPT
  • 95. FPT algorithms • Running time f(k) |x|c implies that for k bounded by f-1(poly(n)), we have a poly time algorithm.

  • 96. FPT algorithms • Running time f(k) |x|c implies that for k bounded by f-1(poly(n)), we have a poly time algorithm.
 • Corresponding hardness theory.

  • 97. FPT algorithms • Running time f(k) |x|c implies that for k bounded by f-1(poly(n)), we have a poly time algorithm.
 • Corresponding hardness theory.
 • W-hierarchy: FPT ⊆ W[1] ⊆ W[2] ⊆ … ⊆ XP
  • 98. Rest of this talk
  • 99. Rest of this talk • Recent advances in FPT algorithms for computing backdoors to some base classes 
 (q-Horn, tw-SAT, composite classes)

  • 100. Rest of this talk • Recent advances in FPT algorithms for computing backdoors to some base classes 
 (q-Horn, tw-SAT, composite classes)
 • Discuss some interesting connections between the 2 perspectives.
  • 103. Classical sub-solvers • Horn (at most one positive lit in each clause) Schaefer Classes
  • 104. Classical sub-solvers • Horn (at most one positive lit in each clause) • Dual-Horn (at most one negative lit in each clause) Schaefer Classes
  • 105. Classical sub-solvers • Horn (at most one positive lit in each clause) • Dual-Horn (at most one negative lit in each clause) • 2-cnf (at most 2 literals in each clause) Schaefer Classes
  • 106. Classical sub-solvers • Horn (at most one positive lit in each clause) • Dual-Horn (at most one negative lit in each clause) • 2-cnf (at most 2 literals in each clause) • 0/1-valid (satisfied by the all-0/all-1 assignment) Schaefer Classes
  • 107. Classical sub-solvers • Horn (at most one positive lit in each clause) • Dual-Horn (at most one negative lit in each clause) • 2-cnf (at most 2 literals in each clause) • 0/1-valid (satisfied by the all-0/all-1 assignment) Schaefer Classes Nishimura, Ragde, Szeider SAT 2004
  • 108. Classical sub-solvers Class Backdoor Schaefer [Nishimura, Ragde, Szeider 2004] Unit Prop + Pure Lit. Elim [Szeider 2005] Weak W[2]-hard (FPT for 3-cnf) W[2]-hard (FPT for 3-cnf) Strong FPT W[2]-hard
  • 109. Why is weak backdoor detection hard?
  • 110. Why is weak backdoor detection hard? • Existence of a small weak backdoor —-> the formula is satisfiable!

  • 111. Why is weak backdoor detection hard? • Existence of a small weak backdoor —-> the formula is satisfiable!
 • Allows fairly straightforward encodings from Hitting Set/Set Cover, both W[2]-hard parameterized by the size of the solution (the hitting set or the set cover).
  • 112. Why is weak backdoor detection hard? • Existence of a small weak backdoor —-> the formula is satisfiable!
 • Allows fairly straightforward encodings from Hitting Set/Set Cover, both W[2]-hard parameterized by the size of the solution (the hitting set or the set cover). • Can change if restricted to 3-cnf formulas.
  • 114. Backdoors to q-Horn • quadratic-Horn (q-Horn) (Boros, Crama, Hammer 1990)
 • F is q-Horn if there is a weight function 
 w: lit(F)->{0,1/2,1} s.t
 
 
 w(x)+w(¬x)=1 and for every clause C, w(C)≤ 1.
 • q-Horn generalizes Horn and 2-cnf.
  • 115. Backdoors to q-Horn w(x)=1 and w(¬x)=0 for all x w(x)=w(¬x)=1/2 for all x • quadratic-Horn (q-Horn) (Boros, Crama, Hammer 1990)
 • F is q-Horn if there is a weight function 
 w: lit(F)->{0,1/2,1} s.t
 
 
 w(x)+w(¬x)=1 and for every clause C, w(C)≤ 1.
 • q-Horn generalizes Horn and 2-cnf.
  • 116. Backdoors to q-Horn SAT is in P for q-Horn forulas! • quadratic-Horn (q-Horn) (Boros, Crama, Hammer 1990)
 • F is q-Horn if there is a weight function 
 w: lit(F)->{0,1/2,1} s.t
 
 
 w(x)+w(¬x)=1 and for every clause C, w(C)≤ 1.
 • q-Horn generalizes Horn and 2-cnf.
  • 118. q-Horn Horn 2-cnf Weak: W[2]-hard Strong: FPT Backdoors to q-Horn
  • 119. Weak: W[2]-hard Strong: W[2]-hard [ Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013] q-Horn Horn 2-cnf Weak: W[2]-hard Strong: FPT Backdoors to q-Horn
  • 121. • How can we extend tractability results if strong backdoor detection is also W-hard?
 Backdoors to q-Horn
  • 122. • How can we extend tractability results if strong backdoor detection is also W-hard?
 • What other notions of `distance’ can we have?
 Backdoors to q-Horn
  • 123. • How can we extend tractability results if strong backdoor detection is also W-hard?
 • What other notions of `distance’ can we have?
 • What about distance through deletion instead of instantiation? Backdoors to q-Horn
  • 124. Deletion Backdoors (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
  • 125. Deletion Backdoors • A deletion backdoor set of F to the base class C is a set of variables S such that F-S is in C. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
  • 126. Deletion Backdoors • A deletion backdoor set of F to the base class C is a set of variables S such that F-S is in C. (x1 )⋀(¬x1 ⋁x3 ⋁ x5)⋀(¬x3 ⋁ x4) Deleting x2 (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
  • 127. Deletion Backdoors • A deletion backdoor set of F to the base class C is a set of variables S such that F-S is in C. (x1 )⋀(¬x1 ⋁x3 ⋁ x5)⋀(¬x3 ⋁ x4) (x1 ⋁x2)⋀(¬x1 ⋁ x5)⋀(x2 ⋁ x4) Deleting x2 Deleting x3 (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4)
  • 128. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) Deletion Backdoors
  • 129. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) x3 is a deletion backdoor into 2-cnf. Deletion Backdoors
  • 130. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) x3 is a deletion backdoor into 2-cnf. x3 =0 Deletion Backdoors
  • 131. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) x3 is a deletion backdoor into 2-cnf. x3 =0 (x1 ⋁ x2)⋀(¬x1 ⋁ x5) Deletion Backdoors
  • 132. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) x3 is a deletion backdoor into 2-cnf. x3 =0 x3 =1 (x1 ⋁ x2)⋀(¬x1 ⋁ x5) (x1 ⋁ x2)⋀(x2 ⋁ x4) Deletion Backdoors
  • 133. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) x3 is a deletion backdoor into 2-cnf. x3 =0 x3 =1 (x1 ⋁ x2)⋀(¬x1 ⋁ x5) (x1 ⋁ x2)⋀(x2 ⋁ x4) Deletion Backdoors • A deletion backdoor set of F to the base class C is a set of variables S such that F-S is in C.
  • 134. (x1 ⋁x2)⋀(¬x1 ⋁x3 ⋁ x5)⋀(x2 ⋁¬x3 ⋁ x4) x3 is a deletion backdoor into 2-cnf. x3 =0 x3 =1 (x1 ⋁ x2)⋀(¬x1 ⋁ x5) (x1 ⋁ x2)⋀(x2 ⋁ x4) Deletion Backdoors • A deletion backdoor set of F to the base class C is a set of variables S such that F-S is in C. (x1 ⋁x2)⋀(¬x1 ⋁ x5)⋀(x2 ⋁ x4) Deleting x3
  • 137. S F-S If the base class C is ‘clause induced’ then S is also a strong backdoor to C. If F is in C, every subformula of F induced by a subset of clauses is in C. Deletion Backdoors
  • 138. S F-S If the base class C is ‘clause induced’ then S is also a strong backdoor to C. If F is in C, every subformula of F induced by a subset of clauses is in C. wbd ≤ sbd ≤del. bd Deletion Backdoors
  • 141. • The detection of strong backdoors being W-hard is not a dead end.
 
 Deletion Backdoors
  • 142. • The detection of strong backdoors being W-hard is not a dead end.
 
 • If we can detect deletion backdoors then we can still extend the tractable region for SAT. Deletion Backdoors
  • 145. Backdoors to q-Horn • q-Horn is clause induced. Can we find a deletion backdoor to q-Horn in FPT time?
  • 146. Backdoors to q-Horn • q-Horn is clause induced. Can we find a deletion backdoor to q-Horn in FPT time? • In FPT time, we can approximate it.
 [Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013]
  • 147. Backdoors to q-Horn • q-Horn is clause induced. Can we find a deletion backdoor to q-Horn in FPT time? • In FPT time, we can approximate it.
 [Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013] • In O(6k mn) time, we can either conclude no del backdoor of size k or compute a deletion backdoor of size at most 2 k2 .
  • 148. Backdoors to q-Horn • q-Horn is clause induced. Can we find a deletion backdoor to q-Horn in FPT time? • In FPT time, we can approximate it.
 [Gaspers, Ordyniak, R., Saurabh, Szeider STACS 2013] • In O(6k mn) time, we can either conclude no del backdoor of size k or compute a deletion backdoor of size at most 2 k2 . SAT parameterized by size of deletion backdoor to q-Horn can be solved in time 2O(k^2) mn .
  • 149. Backdoors to q-Horn SAT is in P for instances with a del. backdoor of size O(√log n) to q-Horn. SAT is in P for q-Horn
  • 150. Deletion backdoor set detection to q-Horn can be solved in time O(12k m). [R. and Saurabh, SODA 2014] Backdoors to q-Horn
  • 151. Deletion backdoor set detection to q-Horn can be solved in time O(12k m). [R. and Saurabh, SODA 2014] Backdoors to q-Horn SAT parameterized by size of deletion backdoor to q-Horn can be solved in time 2O(k) m .
  • 152. Backdoors to q-Horn SAT is in P for instances with a del. backdoor of size O(log n) to q-Horn [R. and Saurabh 2014]. SAT is in P for q-Horn SAT is in P for instances with a del. backdoor of size O(√log n) to q-Horn [Gaspers, Ordyniak, R., Saurabh, Szeider 2014].
  • 154. • A linear time algorithm for SAT instances `close’ to being q-Horn. Backdoors to q-Horn
  • 155. • A linear time algorithm for SAT instances `close’ to being q-Horn. • Corollary: Deletion backdoor detection for RHorn can be done in time O(4k m). Backdoors to q-Horn
  • 156. • A linear time algorithm for SAT instances `close’ to being q-Horn. • Corollary: Deletion backdoor detection for RHorn can be done in time O(4k m). • A further consequence of this algorithm: the first linear time FPT algorithm for Odd Cycle Transversal (open problem of Reed, Smith and Vetta, 2003). Backdoors to q-Horn
  • 157. Backdoors to Bounded Treewidth SAT
  • 158. Backdoors to acyclic SAT Modeling CNF-formulas as graphs Incidence Graph : Clauses : Variables
  • 159. If the Incidence graph is a forest then SAT is in P (Fischer, Makowsky, Ravve 2008). Acyclic SAT Backdoors to acyclic SAT : Clauses : Variables
  • 160. What about formulas with small backdoors to Acyclic SAT? Is SAT tractable on these formulas? : Clauses : VariablesAcyclic SAT Backdoors to acyclic SAT
  • 161. • weak backdoor detection to acyclic SAT is W[2]-hard. • weak backdoor detection to acyclic 3-SAT is FPT. • strong backdoor detection to acyclic SAT is 
 FPT-approximable. Gaspers and Szeider (ICALP 2012) : Backdoors to acyclic SAT
  • 162. • weak backdoor detection to acyclic SAT is W[2]-hard. • weak backdoor detection to acyclic 3-SAT is FPT. • strong backdoor detection to acyclic SAT is 
 FPT-approximable. Gaspers and Szeider (ICALP 2012) : In FPT time, either conclude there is no strong backdoor of size k or compute a strong backdoor of size 2k Backdoors to acyclic SAT
  • 163. Backdoors to bounded tw SAT If the Incidence graph is tree-like then SAT is in P (Fischer, Makowsky, Ravve 2008). Incidence Graph tw-SAT : Clauses : Variables
  • 164. Strong backdoor detection to tw SAT is FPT-approximable. Gaspers and Szeider (FOCS 2013) : Backdoors to bounded tw SAT
  • 165. Strong backdoor detection to tw SAT is FPT-approximable. SAT parameterized by size of sbd to tw SAT is FPT. Running time : 22^k n3 Gaspers and Szeider (FOCS 2013) : Backdoors to bounded tw SAT
  • 166. Backdoors to bounded tw SAT SAT is in P for instances with sbd of size O(log log n) to tw SAT. tw SAT is in P.
  • 167. Fomin, Lokshtanov, Misra, R., Saurabh (SODA 2015) Backdoors to bounded tw SAT
  • 168. Fomin, Lokshtanov, Misra, R., Saurabh (SODA 2015) 3-SAT parameterized by k=min{sbd,wbd} to tw 3-SAT can be solved in time 2O(k) m. This running time is optimal both w.r.t parameter and input-size. Backdoors to bounded tw SAT
  • 169. Backdoors to bounded tw SAT 3-SAT is in P for instances with a s/w backdoor of size O(log n) to tw 3-SAT. tw 3-SAT is in P. This region cannot be extended. Some new features in this algorithm!
  • 171. Combining the perspectives • Williams et al. proposed that SAT solvers encounter backdoor sets without actually searching for them.
 

  • 172. Combining the perspectives • Williams et al. proposed that SAT solvers encounter backdoor sets without actually searching for them.
 
 • This algorithm: revisit this perspective.
  • 173. Backdoors to bounded tw SAT DPLL
  • 174. Backdoors to bounded tw SAT • Apply UP and PLE DPLL
  • 175. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r DPLL
  • 176. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x DPLL
  • 177. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x DPLL DPLL’
  • 178. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x • If formula has constant tw, then solve in poly time. DPLL DPLL’
  • 179. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x • If formula has constant tw, then solve in poly time. • Reduce all `protrusions’. DPLL DPLL’
  • 180. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x • If formula has constant tw, then solve in poly time. • Reduce all `protrusions’. • Select a variable x u.a.r DPLL DPLL’
  • 181. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x • If formula has constant tw, then solve in poly time. • Reduce all `protrusions’. • Select a variable x u.a.r • Branch on x DPLL DPLL’
  • 182. Backdoors to bounded tw SAT • Apply UP and PLE • Select a variable x u.a.r • Branch on x • If formula has constant tw, then solve in poly time. • Reduce all `protrusions’. • Select a variable x u.a.r • Branch on x DPLL DPLL’ DPLL’ is an FPT algorithm for 3-SAT par by min{sbd,wbd} to tw 3-SAT.
  • 184. • Protrusion replacement takes the place of UP and PLE. Backdoors to bounded tw SAT
  • 185. • Protrusion replacement takes the place of UP and PLE. • Since the base class is more complex, the preprocessing is also involved. Backdoors to bounded tw SAT
  • 186. • Protrusion replacement takes the place of UP and PLE. • Since the base class is more complex, the preprocessing is also involved. • But intuition remains the same: Remove ‘irrelevant’ parts of the formula or at the very least replace them with a `small’ equivalent formula. Backdoors to bounded tw SAT
  • 188. • First FPT algorithm for SAT which does not depend on computing a backdoor set first.
 Backdoors to bounded tw SAT
  • 189. • First FPT algorithm for SAT which does not depend on computing a backdoor set first.
 • Optimal running time (parameter and i/p size)
 Backdoors to bounded tw SAT
  • 190. • First FPT algorithm for SAT which does not depend on computing a backdoor set first.
 • Optimal running time (parameter and i/p size)
 • Again, techniques developed here have other applications: improving several kernelization and FPT algorithms to linear time. Backdoors to bounded tw SAT
  • 193. Heterogenous backdoors Consider the following formula.
  • 194. Heterogenous backdoors Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn)
  • 195. Heterogenous backdoors Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) What is the size of a smallest strong backdoor set into Horn?
  • 196. Heterogenous backdoors Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) What is the size of a smallest strong backdoor set into Horn? at least n
  • 197. Heterogenous backdoors Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) What is the size of a smallest strong backdoor set into Horn? at least n What is the size of a smallest strong backdoor set into 2-cnf?
  • 198. Heterogenous backdoors Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) What is the size of a smallest strong backdoor set into Horn? at least n What is the size of a smallest strong backdoor set into 2-cnf? at least n-1
  • 199. Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) Heterogenous backdoors
  • 200. Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) Consider F[x=0] (¬a1 ⋁¬a2…⋁¬an) Heterogenous backdoors
  • 201. Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) Consider F[x=0] Consider F[x=1] (¬a1 ⋁¬a2…⋁¬an) (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) Heterogenous backdoors
  • 202. Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) Consider F[x=0] Consider F[x=1] (¬a1 ⋁¬a2…⋁¬an) (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) Horn Heterogenous backdoors
  • 203. Consider the following formula. (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) Consider F[x=0] Consider F[x=1] (¬a1 ⋁¬a2…⋁¬an) (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) Horn 2-cnf Heterogenous backdoors
  • 204. Heterogenous backdoors F[x=0] F[x=1] F Run sub-solver C1 Run sub-solver C2 C1,C2 : Horn, 2-cnf
  • 205. Heterogenous backdoors Let C1,.. ,Cr be islands of tractability. X is a heterogenous backdoor into C1,.. ,Cr if for every assignment of X, the reduced formula is in some Ci.
  • 207. Heterogenous backdoors • Heterogenous backdoors can be arbitrarily smaller than normal strong backdoors.
 

  • 208. Heterogenous backdoors • Heterogenous backdoors can be arbitrarily smaller than normal strong backdoors.
 
 • Class of instances with small heterogenous backdoors is a much larger class than instances with small strong backdoor.
  • 209. Islands of Tractability Strong backdoor of size k to some Island of Tractability Heterogenous backdoor of size k to some Islands Heterogenous backdoors
  • 211. Gaspers, Ordyniak, Misra, Szeider, Zivny (AAAI 2014) Heterogenous backdoors
  • 212. 1. If H =Horn/dual-Horn ∪ 2CNF then detecting heterogenous backdoors to H is FPT Gaspers, Ordyniak, Misra, Szeider, Zivny (AAAI 2014) 2. For every other combination of Schaefer classes, detecting heterogenous backdoors to H is W[2]-hard. but FPT for 3-cnf formulas Heterogenous backdoors
  • 214. Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
  • 215. Archipelagos of tractability What is the size of a smallest heterogenous backdoor set into Horn ∪ 2-cnf? (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
  • 216. Archipelagos of tractability What is the size of a smallest heterogenous backdoor set into Horn ∪ 2-cnf? at least 2n (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
  • 218. Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn)
  • 219. Consider F[x=0] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn)
  • 220. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
  • 221. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
  • 222. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) Horn
  • 223. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
  • 224. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) 2-cnf
  • 225. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
  • 226. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) Horn
  • 227. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
  • 228. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn) 2-cnf
  • 229. Consider F[x=0] Consider F[x=1] Archipelagos of tractability (x ⋁¬a1 ⋁¬a2…⋁¬an) ⋀ (¬x ⋁¬p1 ⋁¬p2…⋁¬pn)
 ⋀
 (¬x ⋁b1 ⋁ c1)⋀(¬x ⋁b2 ⋁ c2)..⋀(¬x ⋁bn ⋁ cn) 
 ⋀ (x ⋁q1 ⋁ r1)⋀(x ⋁q2 ⋁ r2)..⋀(x ⋁qn ⋁ rn) (¬a1 ⋁¬a2…⋁¬an) ⋀ (q1 ⋁ r1)⋀(q2 ⋁ r2).. ⋀ (qn ⋁ rn) (¬p1 ⋁¬p2…⋁¬pn) ⋀ (b1 ⋁ c1)⋀(b2 ⋁ c2)..⋀(bn ⋁ cn)
  • 230. F[x=0] F[x=1] F Run appropriate sub-solver Ci on each part variable-disjoint from the rest C1,C2 Archipelagos of tractability : Horn,2-cnf Run appropriate sub-solver Ci on each part variable-disjoint from the rest
  • 231. Split backdoors Let C1,.. ,Cr be islands of tractability. X is a split backdoor into C1,.. ,Cr if for every assignment of X, every connected component of the reduced formula is in some Ci.
  • 232. Split backdoors Let C1,.. ,Cr be islands of tractability. X is a split backdoor into C1,.. ,Cr if for every assignment of X, every connected component of the reduced formula is in some Ci. A minimal set of clauses which is variable-disjoint from the remaining clauses.
  • 234. Split backdoors • Split backdoors can be arbitrarily smaller than heterogenous backdoors.
 

  • 235. Split backdoors • Split backdoors can be arbitrarily smaller than heterogenous backdoors.
 
 • Class of instances with small split backdoors is a much larger class than class of instances with small heterogenous backdoor.
  • 236. Islands of Tractability Split backdoor of size k to some Islands Split backdoors Strong backdoor of size k to some Island of Tractability Heterogenous backdoor of size k to some Islands
  • 237. If H is a finite set of finite constraint languages, then detecting split-backdoors of the given CSP to H is FPT. Ganian, R., Szeider (2014): Builds on a combination of traditional FPT tools and new graph separation tools like important separators, sequences and CSP based pattern replacements. Split backdoors
  • 239. Summing up • We have seen how backdoors and fixed parameter tractability provide a framework to extend tractability results for SAT based on the `distance’ of instances to islands of tractability.
  • 240. Summing up • We have seen how backdoors and fixed parameter tractability provide a framework to extend tractability results for SAT based on the `distance’ of instances to islands of tractability. • Stronger definitions of sub-solvers and base classes allowing us to prove tractability for larger classes of instances.
  • 241. Summing up • We have seen how backdoors and fixed parameter tractability provide a framework to extend tractability results for SAT based on the `distance’ of instances to islands of tractability. • Stronger definitions of sub-solvers and base classes allowing us to prove tractability for larger classes of instances. • Several other variants of backdoors have been proposed, eg. backdoor trees (Samer and Szeider AAAI 2008), learning sensitive backdoors (Dilkina, Gomes, Sabharwal SAT 2009).
  • 243. Future research • So far backdoor sets and variants have provided the best and theoretically most robust explanation for the performances of SAT solvers.
  • 244. Future research • So far backdoor sets and variants have provided the best and theoretically most robust explanation for the performances of SAT solvers. • What other structural properties of instances are correlated to the computation time and can be effectively formalized in theory?
  • 246. Future research • So far, `small’ backdoors treated as certificates for closeness. • Better measures than size? • i.e. backdoors of potentially unbounded size but with some structure.
  • 248. Future research • Analysis of existing SAT algorithms in terms of FPT
 parameterize d by backdoors.
  • 249. Thank you for your attention!