csr2011 june17 14_00_bulatov
Post on 21-Oct-2014
269 views
DESCRIPTION
TRANSCRIPT
CSP: Algorithms and Dichotomy Conjecture
Andrei A. BulatovSimon Fraser University
2/34
Constraint Satisfaction Problem I
Definition:
Instance: (V;A;C) where V is a finite set of variables A is a set of values C is a set of constraints
Question: whether there is h: V A such that, for any i, is true
)}( , ),({ 11 qq sRsR
))(( ii shR
CSP()
where each belongs to iR
3/34
Constraint Satisfaction Problem II
u -
v -
w -
x -
y -
Q(u,v,w)
R(w,x)
R(x,y)
S(y,u)
4/34
3-COL = CSP()
Examples: 3-COL
u
v
w
x
5/34
Examples: Linear Equations, SAT
Linear Equations:
nmnmn
mm
bxaxa
bxaxa
11
11111
3-SAT = CSP( ): SAT3
)()()( ZTUVUXZYX
6/34
Invariants and Polymorphisms
Definition A relation R is invariant with respect to an n-ary
operation f (or f is a polymorphism of R) if, for any
tuples the tuple obtained by applying f
coordinate-wise is a member of R
Raa n ,,1
Pol() denotes the set of all polymorphisms of relations from
7/34
Affine relations: Relations that can be represented by a system of linear equations
Let also (affine operation)
Polymorphisms: Affine Relations
bxx AR
zyxzyxm ),,(
bbbbzyxzyxzyx AAAAmA )(),,(
If are solutions thenzyx
,,
8/34
2-clauses give rise to binary relations
Let (median operation) Operation h is a polymorphism of
Polymorphisms: 2-SAT
100
110YXR
)()()(),,( xzzyyxzyxh
YXR
01
001101h
9/34
does not have any polymorphisms except for very trivial ones, e.g. f(x,y,z)=y
Polymorphisms: 3-COL
102021
2211003
10/34
Polymorphisms and Complexity
Theorem (Jeavons; 1998) If , are constraint languages such that Pol( ) Pol( ), then CSP( ) is log space reducible to CSP( )
1
2
21 2
1
Larose, Tesson, 2007: This reduction can be made 0AC
11/34
A semilattice operation is a binary operation satisfying the equations: x x = x, x y = y x, x (y z) = (x y) z
A semilattice operation induces a partial order: a b a b = b
Good Polymorphisms: Semilattice
0
11
2
02
1
3
64
5
There is always a unique maximal element
max(x,y) gcd(x,y)
12/34
Good Polymorphisms: Semilattice
u -
v -
w -
x -
y -
13/34
Good Polymorphisms: Semilattice
u -
v -
w -
x -
y -
Propagation
14/34
A majority operation is a ternary operation h that satisfies the equations h(x,x,y) = h(x,y,x) = h(y,x,x) = x
Good Polymorphisms: Majority
Chinese Remainder Theorem for Majority Let R be a (k-ary) relation invariant under a majority operation, and is some tuple. Then if for any i,j {1,...,k} there is a tuple such that then
),,( 1 kaa ),,( 1 kbb
Raa k ),,( 1 jjii baba ,
aaa
aabababaa
h
15/34
Good Polymorphisms: Majority
u -
v -
w -
x -
y -
Propagation again: 2-consistency
Any 2-consistent instance has a solution
16/34
An affine operation is a ternary operation m that is given by x – y + z where +, – are operations of a certain Abelian group
CSP over a language invariant under an affine operation is just solving systems of linear equations
Gaussian Elimination
Good Polymorphisms: Affine
17/34
CSP() is Boolean if is over {0,1}
Complexity: Boolean CSP
Theorem (Schaefer 1978) For a constraint language over {0,1} the problem CSP() is solvable in poly time iff has a semilattice, majority, or affine polymorphism; otherwise it is NP-complete
Fine Print: `Trivial’ languages are excluded from the theorem. These are so-called 0- or 1-valid languages, in which every instance has a solution
18/34
If consists of a single binary relation (thought of being the edge relation of some (di)graph H), then CSP() is also called H-Coloring
Complexity: Graphs
Theorem (Hell, Nesetril 1990) For a graph H the H-Coloring problem is solvable in poly time iff E(H) has a majority polymorphism; otherwise it is NP-complete
Fine Print: Graphs here must be cores. Then a core has a majority polymorphism iff it is a loop or an edge
19/34
5 types of local structure. Defined by the presence of polymorphisms that locally act as one of the 3 good polymorphisms
• unary none• affine only affine• boolean all three• lattice majority, semilattice• semilattice semilattice
Types
Fine Print: One needs to be quite creative to relate this definition to the actual definition as it was introduced in universal algebra 25 years ago. It is good enough for our purpose, though
20/34
omits a type if it does not exhibit local structure of this type, otherwise it admits it
• (Dichotomy Conjecture) CSP() is solvable in polynomial time iff omits the unary type; NP-complete otherwise
• CSP() is in NL iff omits the unary, affine, and semilattice types
• CSP() is in L iff omits the unary, affine, lattice and semilattice types
• CSP() is in Mod L iff omits the unary, lattice, and semilattice types
Conjectures
p
21/34
B., Jeavons, Krokhin 2006: if admits the unary type, CSP() is NP-complete
Jeavons et al. mid 90s: algorithms if has one of the 3 good polymorphisms
Barto, Kozik 2010; B. 2010: propagation works iff omits the unary and affine type
Idziak, et al. 2010: the Generalized Gaussian elimination algorithm if omits the unary and semilattice types (+ some extra conditions)
ongoing, many people: languages that admit the semilattice and affine types
Algorithms
22/34
Schaefer 1978: over a 2-element setHell, Nesetril 1990: = {E}, where E is binary symmetricB. 2006: over a 3-element setMarkovic, McKenzie >2011: over a 4-element case
1 case out of left (as of last Wednesday)B. 2003, Barto 2011: conservative, that is, it contains all
unary relations
Dichotomy results
242
23/34
Polymorphisms of conservative languages
If is a polymorphism of a conservative language ,then for any
We look at how polymorphisms behave on 2-element subsetsIf for some 2-elemen subset B there is no polymorphism that is good on B then CSP() is NP-complete
),,( 1 nxxf
naa ,,1 },,{),,( 11 nn aaaaf
Theorem (B. 2003) CSP() for a conservative on A is poly time iff for any 2-element B A there is f Pol() which is affine, majority, or semilattice; otherwise CSP() is NP-complete.
24/34
Edge coloured graphs
G():
semilattice operationmajority operationaffine operation
Since semilattice operation induces an order, red edges are directed
25/34
Let be a conservative language over set AB A is called an as-component (affine-semilattice) if it is
minimal with respect to the property: there is no affine or semilattice (directed) edge in
G() sticking out of B
AS-components
The remaining edges are majority
26/34
CRT for AS-Components
Chinese Remainder Theorem for AS-Component Let R for a conservative on A and as-components such that for any i,j {1,...,k} there is a tuple such that Then there is such that for all i,j {1,...,k}.
kAA ,,1
Raa k ),,( 1 ., jjii AaAa Rbb k ),,( 1 jjii AbAb ,
27/34
Let R be a k-ary relation on A, let be as-components
Positions i and j are -related if for any
iff
I {1,...,k} is a coherent set w.r.t. as-components if any i,j I are -related
Coherent Sets
ji AA ,
AAA ji ,
Raa k ),,( 1
ii Aa jj Aa
kAA ,,1
ji AA ,
28/34
Rectangularity
Rectangularity Lemma Let R and as-components such that Let also be the partition of {1,...,k} into coherent sets w.r.t. and
Then
kAA ,,1
.)( 1 kAAR
kII ,,1
sAA ,,1 .
i
iIj
jIi ARprR
.1 RRR s
29/34
u -
v -
w -
x -
y -
The Algorithm
On input (V,D,C)• run 2-consistency algorithm• find as-components such
that for any v,w V as-components
are consistent3. find the coherent sets4. for each coherent set W solve the
problem restricted to W and 5. if every such problem has a solution,
any combination of such solutions gives a solution to the problem
6. otherwise remove elements the failed as-components and start over
,, VvAv
wv AA ,
WwAw ,
30/34
Ingredients: the graph Chinese Remainder Theorem rectangularity solving smaller problems failed components removal
General Case I
31/34
The graph
Cannot get a complete graph, but connected is possible Semilattice and majority edges are defined in almost the
same way: a,b if there is a polymorphism which is semilattice or majority on {a,b}
Affine edges: Instead of pairs of elements use subset B A and a partition of B such that there is a polymorphism that acts as an affine operation on the set
General Case II
kBB ,,1
},,{ 1 kBB
A B
32/34
Chinese Remainder Theorem: holds
Rectangularity: does not hold, need a weaker condition
Solving smaller problems
General Case III
Theorem There is a poly time algorithm such that on (V,A,C) - if for each v V and any element a from an as-component there is a solution with (v) = a, then the algorithm finds a solution; - otherwise it identifies which elements from as-components are not a part of a solution.
33/34
Failed components removal
General Case IV
u -
v -
w -
x -
y -
Have to check every element if it is a part of a solution, not only maximal ones
34/34
Current Score:
3 : 2
Thank you!
Conclusion