34
CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

Embed Size (px)

Citation preview

Page 1: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

CSP: Algorithms and Dichotomy Conjecture

Andrei A. BulatovSimon Fraser University

Page 2: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon 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

Page 3: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

3/34

Constraint Satisfaction Problem II

u -

v -

w -

x -

y -

Q(u,v,w)

R(w,x)

R(x,y)

S(y,u)

Page 4: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

4/34

3-COL = CSP()

Examples: 3-COL

u

v

w

x

Page 5: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

5/34

Examples: Linear Equations, SAT

Linear Equations:

nmnmn

mm

bxaxa

bxaxa

11

11111

3-SAT = CSP( ): SAT3

)()()( ZTUVUXZYX

Page 6: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 7: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

,,

Page 8: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 9: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

9/34

does not have any polymorphisms except for very trivial ones, e.g. f(x,y,z)=y

Polymorphisms: 3-COL

102021

2211003

Page 10: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 11: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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)

Page 12: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

12/34

Good Polymorphisms: Semilattice

u -

v -

w -

x -

y -

Page 13: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

13/34

Good Polymorphisms: Semilattice

u -

v -

w -

x -

y -

Propagation

Page 14: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 15: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

15/34

Good Polymorphisms: Majority

u -

v -

w -

x -

y -

Propagation again: 2-consistency

Any 2-consistent instance has a solution

Page 16: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 17: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 18: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 19: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 20: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 21: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 22: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 23: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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.

Page 24: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

24/34

Edge coloured graphs

G():

semilattice operationmajority operationaffine operation

Since semilattice operation induces an order, red edges are directed

Page 25: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 26: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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 ,

Page 27: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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 ,

Page 28: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 29: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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 ,

Page 30: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

30/34

Ingredients: the graph Chinese Remainder Theorem rectangularity solving smaller problems failed components removal

General Case I

Page 31: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 32: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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.

Page 33: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

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

Page 34: CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University

34/34

Current Score:

3 : 2

Thank you!

Conclusion