On the Complexity of Constraint Satisfaction Problems a Model Theoretic Approach
Total Page:16
File Type:pdf, Size:1020Kb
On the Complexity of Constraint Satisfaction Problems A Model Theoretic Approach CO401J Project - Final Report 19th of June 2019 Imperial College London Author A. Papadopoulos Supervisors Dr. C. Kestner Dr. Z. Ghadernezhad Second Marker Prof. K. Buzzard Abstract Constraint Satisfaction Problems (CSPs) have played a crucial role in recent developments in the field of Compu- tational Complexity. The Dichotomy Conjecture of Finite Domain CSPs by Feder and Vardi [1] was finally proved two years ago (independently in [2] and [3]). Ever since the conjecture was proposed, the study of CSPs using various techniques both from pure mathematics (such as Model Theory, Topology, and Group Theory) and theoretical computer science (for instance, Datalog and Descriptive Complexity) has flourished. Even though a vast amount of research is being carried out on the topic, the literature remains somewhat convoluted and in general inaccessible. In this report, we attempt to give a concise presentation of recent works on the model theoretic approach to constraint satisfaction. Since the literature on Model Theory and Complexity Theory has been standardised over the last 30 years or so (the standard references include [4] for Model Theory, [5] for Classical Complexity Theory and [6] for Descriptive Complexity), we only present a short summary of the results we need from these areas. A more in-depth presentation of CSPs is given, in an attempt to provide a clearer entry point to current research. Acknowledgements I would like, first of all, to thank my supervisor, Zaniar not only for proposing this topic, but also for the long and interesting discussions and his overall helpful comments and immense support. Without his help, this project would not have existed. I would also like to thank Ramon for his presence, Marios for his absence, and Myrto, for both. Finally, I would like to thank A. Doxiadis and C. Papadimitriou for writing Logicomix and my parents for buying it when I was 10. If it were not for this wonderful book I would never have studied maths in the first place. Contents 1 Introduction 1 1.1 Introduction . .1 1.2 Contributions . .1 1.3 Outline of the Report . .2 2 Background 3 2.1 Basic Model Theory . .3 2.1.1 Structures, Signatures and Languages . .3 2.1.2 Theories and Models . .4 2.1.3 Morphisms and Substructures . .5 2.1.4 Preserving Formulas . .6 2.1.5 Elementary Equivalence and Elementary Embeddings . .7 2.1.6 Categoricity . .7 2.1.7 Some Group Theory . .8 2.1.8 Fra¨ıss´e'sTheorem . .8 2.1.9 Strong and Free Amalgamation . 13 2.1.10 Countable Homogeneous Digraphs . 14 2.1.11 Types . 18 2.1.12 Countable Categoricity . 19 2.2 Basic Complexity Theory . 20 2.2.1 Basic Definitions . 20 2.2.2 Descriptive Complexity . 23 2.2.3 Encoding Structures . 23 2.2.4 Fagin's Theorem . 24 3 Constraint Satisfaction Problems 27 3.1 Introduction . 27 3.2 Formal Definitions . 28 3.2.1 The Homomorphism Approach . 28 3.2.2 The Sentence Evaluation Approach . 29 3.2.3 The Satisfiability Approach . 30 3.2.4 The Descriptive Approach . 33 3.3 The Classification of CSPs . 37 3.4 !-categorical Templates . 39 3.5 Examples of CSPs . 41 3.5.1 Countable Homogeneous Tournaments . 41 3.5.2 CSPs of Fra¨ıss´eLimits . 43 3.5.3 Distance CSPs . 43 3.6 Descriptive Constraint Satisfaction . 44 3.6.1 CSP((Q; <)).............................................. 47 3.6.2 Concluding the Classifications . 50 4 Conclusion 51 4.1 Uncovered Topics . 51 4.2 Open Questions . 51 4.3 Final Thoughts . 52 2 A Back and Forth 53 A.1 Back and Forth Equivalence . 53 A.2 Back and Forth and Expressibility . 55 Chapter 1 Introduction Constraint Satisfaction Problems (CSPs) have played a crucial role in recent developments in the field of Compu- tational Complexity. The Dichotomy Conjecture of Finite Domain CSPs by Feder and Vardi [1] was finally proved two years ago independently by Bulatov in [2] and Zhuk in [3]. Ever since the conjecture was proposed, the study of CSPs using various techniques both from pure mathematics (such as Model Theory, Topology, and Group Theory) and theoretical computer science (for instance, Datalog and Descriptive Complexity) has flourished. Even though a vast amount of research is being carried out on the topic, the literature remains somewhat convoluted and in general inaccessible. 1.1 Introduction In general, many problems, from almost all areas of computer science can be cast as CSPs. At the same time, as we show, it is very natural to study CSPs using mathematical techniques. This means that CSPs lie at a very interesting intersection point of pure mathematics and theoretical computer science. There are many approaches, originating from different branches of pure mathematics that can be used to study CSPs. In this report, we focus on one: Model Theory. We present an overview of some of the popular model theoretic techniques that have been used in the last decade to study CSPs. 1.2 Contributions The literature on which the background of this report is based is standard. We have made attempted to include the core results from Model Theory and Complexity Theory that we need, but our goal was never to try and summarise, in full, these vast fields. Instead, we focus our attention mainly on CSPs. There, we present results in more detail, always giving precise definitions, in an attempt to make the presentation self-contained. The main contributions of this project have been the following: • A concise, organised, and relatively self-contained survey on some of the modern techniques in CSPs. • Some minor corrections to arguments from [7] and [8], which are indicated. • A discussion of some open questions about the descriptive complexity of certain classes of CSPs (see 4.2), not present in the current literature, and a proposal of certain new questions of similar flavour. In some sense, this report is more a presentation of applications of model theoretic techniques in complexity theory than anything else. 1 Chapter 1. Introduction 1.3. Outline of the Report 1.3 Outline of the Report The following chapters of the report are broken down as follows: • Chapter 2 is split into two sections; one focusing on Model Theory (Section 2.1), and one on Complexity Theory (Section 2.2). The aim is to provide a quick overview of the technical background needed for the next chapter. • In Chapter 3, which is based on [7] and [8], we discuss Constraint Satisfaction Problems in depth. The exploration is fairly self-contained, but proofs of very deep results are not given. Besides a general survey of the area, we completely show the following strict inclusions: ? CSP ∼P MMSNP $ CSP $ MSNP $ SNP ∼P SO9 = NP: • In Chapter 4, we summarise the discussion of the report. We give an informal presentation of some other approaches that can be used in conjunction with Model Theory to study CSPs. We present some open questions and give some closing thoughts. In general, we omit standard proofs with two exceptions. We give a complete proof of Fra¨ıss´e'sTheorem (Theo- rem 2.1.8) and Fagin's Theorem (Theorem 2.2.1). These results lie at the heart of the model theoretic approach for CSPs, and their proofs, despite being technical, are elegant and offer insight on how various results arise. We will only be discussing countable structures and one of the focal points of the report is the \jump" from finite to infinite structures. However, fundamentally, we are interested in computation and hence infinities are not really sensible in this context. As we will see, however, they may arise naturally even then. Most of the infinite structures we care about will thus have some finiteness properties. In particular, they will be very homogeneous, this for us means that any isomorphism of finite substructures can be extended to an automorphism of the whole structure. Since our structures are countable, there is an underlying philosophy of back and forth games being played. We do not actually need to formalise back and forth arguments, even though many proofs use arguments of their flavour. To this end, a section on Back and Forth is delegated to Appendix A. 2 Chapter 2 Background Model Theory and Complexity Theory are somewhat \terminology heavy" areas, and in this chapter we attempt to summarise the machinery that will be used in the discussion of CSPs, in the next chapter. 2.1 Basic Model Theory In this section, we introduce some preliminary terminology from Model Theory. Where we deviate from the treatment of [4], this will be indicated. In those cases, our approach will be more along the lines of the exposition in [7] and [8]. 2.1.1 Structures, Signatures and Languages We assume that the reader is familiar with first-order logic and basic model theory. In particular, we assume familiarity with the definitions of a signature, a structure, and of a language. Our standard notation will be τ, σ, ::: for finite or countable signatures. We say that τ is relational if it contains no function or constant symbols. Note that the discussion on constraint satisfaction will focus on finite relational signatures, that is, signatures consisting only of relation symbols R1;:::;Rn. Signatures will always include a binary relation symbol = for equality which is always interpreted as \true equality". Where possible, we develop the theory for signatures with countably many relation symbols R1;R2;::: and count- ably many constant symbols c1; c2;::: . This is because in certain arguments we will need to use expanded signatures that contain constant symbols naming the elements of a structure.