Introduction into Mathematics of Constraint Satisfaction

Similar documents
Mathematics for Algorithm and System Analysis

Consistent Query Answering in Databases Under Cardinality-Based Repair Semantics

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Discrete Mathematics Problems

Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

Lecture 7: NP-Complete Problems

Logic in Computer Science: Logic Gates

Outline 2.1 Graph Isomorphism 2.2 Automorphisms and Symmetry 2.3 Subgraphs, part 1

Why? A central concept in Computer Science. Algorithms are ubiquitous.

1 Definitions. Supplementary Material for: Digraphs. Concept graphs

Lecture 17 : Equivalence and Order Relations DRAFT

On the Relationship between Classes P and NP

Midterm Practice Problems

Abstract Algebra Cheat Sheet

How To Understand The Theory Of Media Theory

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

One last point: we started off this book by introducing another famously hard search problem:

Chapter 13: Basic ring theory

Tree-representation of set families and applications to combinatorial decompositions

Generating models of a matched formula with a polynomial delay

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Social Media Mining. Graph Essentials

Introduction to Logic in Computer Science: Autumn 2006

A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries

Chapter 7: Products and quotients

Lecture 16 : Relations and Functions DRAFT

Class One: Degree Sequences

CSC 373: Algorithm Design and Analysis Lecture 16

o-minimality and Uniformity in n 1 Graphs

EQUATIONAL LOGIC AND ABSTRACT ALGEBRA * ABSTRACT

Complexity Classes P and NP

The Open University s repository of research publications and other research outputs

COUNTING INDEPENDENT SETS IN SOME CLASSES OF (ALMOST) REGULAR GRAPHS

P versus NP, and More

Discrete Mathematics. Hans Cuypers. October 11, 2007

Reductions & NP-completeness as part of Foundations of Computer Science undergraduate course

Y. Xiang, Constraint Satisfaction Problems

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

C H A P T E R. Logic Circuits

Chapter 7. Permutation Groups

P. Jeyanthi and N. Angel Benseera

Exponential time algorithms for graph coloring

Scheduling Shop Scheduling. Tim Nieberg

Degree Hypergroupoids Associated with Hypergraphs

Graph Theory Problems and Solutions

Borne inférieure de circuit : une application des expanders

MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis

On three zero-sum Ramsey-type problems

Algebraic Recognizability of Languages

Guessing Game: NP-Complete?

(LMCS, p. 317) V.1. First Order Logic. This is the most powerful, most expressive logic that we will examine.

A simple criterion on degree sequences of graphs

Institut für Informatik Lehrstuhl Theoretische Informatik I / Komplexitätstheorie. An Iterative Compression Algorithm for Vertex Cover

SPANNING CACTI FOR STRUCTURALLY CONTROLLABLE NETWORKS NGO THI TU ANH NATIONAL UNIVERSITY OF SINGAPORE

WOLLONGONG COLLEGE AUSTRALIA. Diploma in Information Technology

Generalized Induced Factor Problems

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

S on n elements. A good way to think about permutations is the following. Consider the A = 1,2,3, 4 whose elements we permute with the P =

OHJ-2306 Introduction to Theoretical Computer Science, Fall

SPARQL: Un Lenguaje de Consulta para la Web

On the independence number of graphs with maximum degree 3

Transportation Polytopes: a Twenty year Update

Bounded Treewidth in Knowledge Representation and Reasoning 1

Analysis of Algorithms, I

(0, 0) : order 1; (0, 1) : order 4; (0, 2) : order 2; (0, 3) : order 4; (1, 0) : order 2; (1, 1) : order 4; (1, 2) : order 2; (1, 3) : order 4.

G = G 0 > G 1 > > G k = {e}

Theoretical Computer Science (Bridging Course) Complexity

INTRODUCTORY SET THEORY

SPERNER S LEMMA AND BROUWER S FIXED POINT THEOREM

A Turán Type Problem Concerning the Powers of the Degrees of a Graph

SOLUTIONS FOR PROBLEM SET 2

From Causes for Database Queries to Repairs and Model-Based Diagnosis and Back

Introduction to Graph Theory

A MEASURE OF GLOBAL EFFICIENCY IN NETWORKS. Aysun Aytac 1, Betul Atay 2. Faculty of Science Ege University 35100, Bornova, Izmir, TURKEY

Enumerating Answers to First-Order Queries over Databases of Low Degree

Design of LDPC codes

On Integer Additive Set-Indexers of Graphs

Path Querying on Graph Databases

A Sublinear Bipartiteness Tester for Bounded Degree Graphs

Math 223 Abstract Algebra Lecture Notes

Finding and counting given length cycles

Testing LTL Formula Translation into Büchi Automata

On the k-path cover problem for cacti

Ant Colony Optimization and Constraint Programming

Computing Science TRACTABLE BENCHMARKS FOR CONSTRAINT PROGRAMMING. Justyna Petke and Peter Jeavons CS-RR-09-07

Introduction to Algorithms. Part 3: P, NP Hard Problems

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Click on the links below to jump directly to the relevant section

Data Structures and Algorithms Written Examination

DEGREES OF ORDERS ON TORSION-FREE ABELIAN GROUPS

UPPER BOUNDS ON THE L(2, 1)-LABELING NUMBER OF GRAPHS WITH MAXIMUM DEGREE

NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

Algebra of the 2x2x2 Rubik s Cube

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

A first step towards modeling semistructured data in hybrid multimodal logic

Cloud Computing is NP-Complete

1 Introduction. Dr. T. Srinivas Department of Mathematics Kakatiya University Warangal , AP, INDIA

8. Matchings and Factors

Transcription:

Andrei Krokhin - Intro into Maths of CSP 1 Introduction into Mathematics of Constraint Satisfaction Andrei Krokhin Durham University Part I

Andrei Krokhin - Intro into Maths of CSP 2 Two Well-Known Problems SAT: is a given propositional formula in CNF satisfiable? F = ( x y z) (x y z) ( x y z) Linear Equations: does a given system of linear equations have a solution in the fixed field K? 2x+2y +3z = 1 3x 2y 2z = 0 5x y +10z = 2

Andrei Krokhin - Intro into Maths of CSP 3 The Constraint Satisfaction Problem CSP Instance: (V, D, C) where V is a finite set of variables D is a set of values (aka domain) C is a finite set of constraints {C 1,...,C q } each constraint C i is a pair (s i,r i ) with scope s i - a list of variables of length m i, relation R i - an m i -ary relation over D Question: Is there f : V D s.t. f(s i ) R i for all i? Can ask to find such an f too.

Andrei Krokhin - Intro into Maths of CSP 4 Some Real-World Examples of CSPs Solving a Sudoku puzzle Drawing up timetable for a conference Choosing frequencies for a mobile-phone network Fitting a protein structure to measurements Laying out components on a circuit board Finding a DNA sequence from a set of contigs Scheduling a construction project

Andrei Krokhin - Intro into Maths of CSP 5 Outline of the Course 1. The CSP and its forms Examples of CSPs from Logic Algebra Graph Theory AI Complexity Issues 2. Computational questions What questions do we ask about CSPs? 3. Mathematical techniques What maths do we use to analyse those questions?

Andrei Krokhin - Intro into Maths of CSP 6 Relational Structures A signature τ is a finite sequence (R 1,...,R k ) of relation symbols each R i has an associated arity ar(r i ). A relational structure of signature τ (or τ-structure) is a tuple A = (A;R1 A,...,Rk A) where A is a set called the universe of A each Ri A is a relation on A of arity ar(r i ) If τ = {E} and ar(e) = 2 then τ-structures are digraphs.

Andrei Krokhin - Intro into Maths of CSP 7 CSP in Logical Setting CSP Instance: A τ-structure B and a formula x 1... x n ϕ where ϕ(x 1,...,x n ) = R i1 (s 1 )... R iq (s q ). Question: Does B satisfy ϕ? The s i s = constraint scopes s i Predicates R B i = constraint relations R i In Database Theory, Conjunctive-Query Evaluation

Andrei Krokhin - Intro into Maths of CSP 8 Exercise Let B = ({0,1,2};E) where E = {(0,1),(1,2),(2,0)}. Let ϕ 1 = E(x 0,x 1 ) E(x 1,x 2 ) E(x 2,x 3 ) E(x 3,x 0 ). Let ϕ 2 = E(x 0,x 1 ) E(x 1,x 2 ) E(x 2,x 3 ) E(x 3,x 1 ). Does B satisfy x 0... x 3 ϕ 1? Does it satisfy x 0... x 3 ϕ 2?

Andrei Krokhin - Intro into Maths of CSP 9 CSP in Combinatorial Setting CSP Instance: Two τ-structures, A and B Question: Is there a homomorphism h : A B? i [(a 1,...,a ni ) Ri A = (h(a 1 ),...,h(a ni )) Ri B] Think of elements in A as of variables. Tuples in relations in A = constraint scopes s i. Think of elements in B are values. Relations in B = constraint relations R i.

Andrei Krokhin - Intro into Maths of CSP 10 Exercise? a? c b

Andrei Krokhin - Intro into Maths of CSP 11 Example: 2-Sat in Hom Form Let Rab B = {0,1}2 \{(a,b)} and B = ({0,1};R00,R B 01,R B 11). B An instance of 2-Sat, say F = ( x z) (x y) (y z) (u x) (x u)... becomes a structure A with base set {x,y,z,u,...} and R00 A = {(x,y),(u,x),...} R01 A = {(y,z),(x,u),...} R11 A = {(x,z),...} Then h : A B iff h is a satisfying assignment for F.

Andrei Krokhin - Intro into Maths of CSP 12 Recap: 3 Forms of CSP Variable-value (AI, Algebra) Given finite sets A (variables), B (values), and a set of constraints {(s 1,R 1 ),...,(s q,r q )} over A, is there a function ϕ : A B such that ϕ(s i ) R i for all i? Satisfiability (Logic, Databases) Given a finite structure (or database) B and a -FO sentence (or conjunctive query) ϕ, does B satisfy ϕ? Homomorphism (Logic, Graph Theory) Given two similar relational structures, A = (A; R A 1,...,R A k ) and B = (B; RB 1,...,R B k ), is there a homomorphism h : A B?

Andrei Krokhin - Intro into Maths of CSP 13 Representation Issues When speaking about algorithms/complexity for finite domains, will usually assume that relations are given explicitly, by full list of tuples; for infinite domains, need to fix the domain in advance, give relations in some finite form.

Andrei Krokhin - Intro into Maths of CSP 14 Propositional Satisfiability Important fragments of Sat: 2-Sat clauses with at most 2 var s Horn k-sat clauses ( x 1... x n ), ( x 1... x n x n+1 ), and (x) tractable tractable 1-in-3-Sat one constraint type {(1,0,0),(0,1,0),(0,0,1)} NP-complete Not-All-Equal-Sat one constraint type {0,1} 3 \{(0,0,0),(1,1,1)} NP-complete

Andrei Krokhin - Intro into Maths of CSP 15 Equations over Groups A group is an algebra (G;, 1,1) such that 1 x = x 1, x (y z) = (x y) z, and x x 1 = x 1 x = 1 System of equations over a finite group G (EqG ): a 1 x 11 a m x 1m a m+1 = 1... b 1 x n1 b m x nm b m+1 = 1 Can replace xyz... = 1 by xy = x and x z... = 1. Theorem 1 (Goldmann, Russell 2002) The problem Eq G is tractable if G is Abelian and NP-complete otherwise.

Andrei Krokhin - Intro into Maths of CSP 16 Equations over Semigroups A semigroup is an algebra (G; ) with x (y z) = (x y) z. System of equations over a finite semigroup S (EqS ): can assume all equations of the form u v = w where each of u,v,w is either a constant or a variable. Theorem 2 (Klima,Tesson,Thérien 2005) Assume that S is a monoid (has 1). If S is commutative and is the union of its subgroups then the problem EqS is tractable. Otherwise it is NP-complete. No full answer for general semigroups yet...

Andrei Krokhin - Intro into Maths of CSP 17 Equations over Algebras A finite algebra is a tuple A = (A;f 1,...,f k ) where each f i is an operation f i : A n i A. Can consider systems of equations over A. By the same trick, assume all equations are of the form f i (u 1,...,u ni ) = w where each of u 1,...,u ni,w is either a constant or variable. Interesting work by Larose,Zádori 06 and Zádori 07+ 11 classification for large classes of algebras.

Andrei Krokhin - Intro into Maths of CSP 18 Colourability k-colourability Instance: A graph G = (V,G) and a number k. Question: Is there a colouring of V in k colours such that adjacent vertices are different colour? Equivalent to CSP instance (G,K k ), in hom form. Indeed a required colouring is a homomorphism G K k tractable for k 2, NP-complete for k 3.

Andrei Krokhin - Intro into Maths of CSP 19 List Colourability List k-colourability Instance: A graph G = (V,G), a number k, and a list L v of allowed colours for each v V. Question: Is there a k-colouring of G such that each vertex gets an allowed colour? Equivalent to CSP instance (A,B), in hom form B = ({1,...,k}; k,l 1,...,L 2 k) where L 1,...,L 2 k is a fixed enumeration of subsets of {1,...,k}. A = (V;E,U 1,...,U 2 k) where each U i consists of vertices whose list is L i.

Andrei Krokhin - Intro into Maths of CSP 20 Clique Clique Instance: A graph G and a number k. Question: Does G contain a k-clique, i.e. k pairwise adjacent vertices? Equivalent to CSP instance (K k,g) in hom form. Indeed, G has a k-clique iff K k G. NP-complete

Andrei Krokhin - Intro into Maths of CSP 21 Hamiltonian Circuit Hamiltonian Circuit Instance: A graph G = (V,G). Question: Is there a cyclic ordering of V such that every pair of successive nodes in the ordering are adjacent in G? Equivalent to CSP instance (A,B) in hom form where A = (V;C V, V ), C V is a cyclic permutation on V, B = (V;E, V ) NP-complete

Andrei Krokhin - Intro into Maths of CSP 22 Graph Isomorphism Graph Isomorphism Instance: Two graphs G 1 = (V,E 1 ) and G 2 = (V,E 2 ). Question: Is there an isomorphism (bijective homomorphism) from G 1 to G 2? Equivalent to CSP instance (A,B) in hom form where A = (V;E 1,E 1 ) and B = (V;E 2,E 2 ) here E i = {(u,v) V 2 (u,v) E i and u v} not known to be tractable or NP-complete main candidate for NP-intermediate

Andrei Krokhin - Intro into Maths of CSP 23 Directed st-reachability Directed st-reachability Instance: A digraph G = (V,E) and two nodes s,t in it. Question: Is there a directed path from s to t in G? Essentially equivalent to the complement of (A, B) A = (V;E,{s},{t}) and B = ({0,1},,{1},{0}). tractable, NL-complete.

Andrei Krokhin - Intro into Maths of CSP 24 Graph Factors Let G be a graph. A factor of G is a subgraph obtained by deleting edges. If X is a set of numbers, an X-factor of G is a factor such that the degree of each vertex belongs to X. What are 1-factors of a graph? What are 2-factors? {1, 2}-factors? Large subarea of graph theory. Recent result: if r is odd and k even with 2 k < r/2 then each r-regular graph has a {k,r k}-factor. Open: does every 5-regular graph have a {1, 4}-factor?

Andrei Krokhin - Intro into Maths of CSP 25 Factors in Regular Graphs Let G = (V,E) be r-regular and let X {0,1,...,r}. Let R X = {a {0,1} r weight(a) X}. Consider the following CSP instance I = (V,D,C ): V = E, D = {0,1}, and C = {C v v V}; each C v = ((e 1,...,e r ),R X ) where e 1,...,e r are the edges incident to v. Fact. G has an X-factor iff I has a solution. Fact. There is a 1-1 correspondence between X-factors in r-regular graphs and solutions of Boolean CSP instances that use only relation R X and each variable appears twice.

Andrei Krokhin - Intro into Maths of CSP 26 Vertex Cover Vertex Cover Instance: A graph G = (V,E) and a number k. Question: Is there a subset V V such that V k and, for each (a,b) E, we have a V or b V? Equivalent to CSP instance (V,{0, 1}, C), C = {u v (u,v) E}, additionally: want only solutions with k ones. NP-complete

Andrei Krokhin - Intro into Maths of CSP 27 Independent Set Independent Set Instance: A graph G = (V,E) and a number k. Question: Is there a subset V V such that V k and (V ) 2 E =? Equivalent to CSP instance (V,{0, 1}, C), C = { u v (u,v) E}, additionally: want only solutions with k ones. NP-complete

Andrei Krokhin - Intro into Maths of CSP 28 Parameterized Complexity in One Slide Both Vertex Cover and Independent Set can be solved in O(n k ) by exhaustive search. Vertex Cover can be solved in O(2 k n 2 ) good O(f(k) n c ) algorithm fixed-parameter tractable (FPT) W[1] parameterized analog of NP (kind of) Ind Set is W[1]-complete n o(k) algorithm unlikely.

Andrei Krokhin - Intro into Maths of CSP 29 Biclique Biclique Instance: A graph G = (V,E) and a number k. Question: Does G contain an induced subgraph isomorphic to K k,k (bipartite k-clique)? NP-complete. Open problem: Is it FPT? Equivalent to CSP instance (V,{0,1,2},C) where C = {C (u,v) (u,v) E} {C (u,v) (u,v) E}, C (u,v) = ((u,v),r ), R = {0,1,2} 2 \{(0,0),(1,1)}, C (u,v) = ((u,v),r ), R = {0,1,2} 2 \{(0,1),(1,0)}, want only solutions with k zeroes and k ones.

Andrei Krokhin - Intro into Maths of CSP 30 Directed Acyclicity Acyclic Digraph Instance: A digraph G = (V,E) Question: Is it true that G has no direct cycles? Equivalent to CSP instance (V, Q, C) where C = {C e e E}, C (u,v) = ((u,v),<). tractable

Andrei Krokhin - Intro into Maths of CSP 31 Betweenness Betweenness Instance: A finite set V and a set M V 3. Question: Is there a linear ordering of V such that, for each triple (u,v,w) M, we have u < v < w or u > v > w? Equivalent to CSP instance (V, Q, C) where C = {C m m M}, C m = ((u,v,w),r b ), R b = {(a,b,c) Q 3 a < b < c or a > b > c}. NP-complete

Andrei Krokhin - Intro into Maths of CSP 32 Ordering CSP Let Π be a set of permutations on {1,...,k}. Π-Ordering CSP Instance: A finite set V and a family M V k. Question: Is there a linear order on V such that each element of M agrees with some permutation from Π? Straightforward generalisation of the previous two. Directed Acyclicity k = 2, Π = {(12)} Betwenness k = 3, Π = {(123),(321)}

Andrei Krokhin - Intro into Maths of CSP 33 Allen s Interval Algebra The most popular formalism in temporal reasoning (AI) [Allen, 1983]. Allows qualitative binary constraints between time intervals.

Andrei Krokhin - Intro into Maths of CSP 34 Allen s Algebra: 13 Basic Relations x precedes y p xxx y preceded by x p 1 yyy x meets y m xxxx y met by x m 1 yyyy x overlaps y o xxxx y overlapped by x o 1 yyyy x during y d xxx y includes x d 1 yyyyyyy x starts y s xxx y started by x s 1 yyyyyyy x finishes y f xxx y finished by x f 1 yyyyyyy x equals y xxxx yyyy

Andrei Krokhin - Intro into Maths of CSP 35 AIA Satisfiability Relations in AIA 2 13 disjunctions of the basic relations. AIA-Sat Instance: Given a labelled digraph G = (V, A) where V is a set of interval variables and A consists of triples (u,r,v) with u,v V and r in AIA. Question: Is there an assignment of intervals for the variables such that relations on all arcs from A are satisfied?

Andrei Krokhin - Intro into Maths of CSP 36 Example u m v m m w

Andrei Krokhin - Intro into Maths of CSP 37 Example u m v m m w

Andrei Krokhin - Intro into Maths of CSP 38 Example u m v o v f v s d v f -1 w

Andrei Krokhin - Intro into Maths of CSP 39 Example u m v o v f v s d v f -1 w

Andrei Krokhin - Intro into Maths of CSP 40 Complexity Classifications Complexity Theory: aims at classifying combinatorial problems by computational complexity. Want: a test bed to see if they are good at this. CSP is very expressive and rich, but clean and manageable Natural test bed for complexity classifications (and algorithmic techniques)