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

Preview:

Citation preview

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