Counting Below #P: Classes, Problems and Descriptive Complexity
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Algorithms & Computational Complexity
Computational Complexity O ΩΘ Russell Buehler January 5, 2015 2 Chapter 1 Preface What follows are my personal notes created during my undergraduate algorithms course and later an independent study under Professor Holliday as a graduate student. I am not a complexity theorist; I am a graduate student with some knowledge who is–alas–quite fallible. Accordingly, this text is made available as a convenient reference, set of notes, and summary, but without even the slightest hint of a guarantee that everything contained within is factual and correct. This said, if you find an error, I would much appreciate it if you let me know so that it can be corrected. 3 4 CHAPTER 1. PREFACE Contents 1 Preface 3 2 A Brief Review of Algorithms 1 2.1 Algorithm Analysis............................................1 2.1.1 O-notation............................................1 2.2 Common Structures............................................3 2.2.1 Graphs..............................................3 2.2.2 Trees...............................................4 2.2.3 Networks.............................................4 2.3 Algorithms................................................6 2.3.1 Greedy Algorithms........................................6 2.3.2 Dynamic Programming...................................... 10 2.3.3 Divide and Conquer....................................... 12 2.3.4 Network Flow.......................................... 15 2.4 Data Structures.............................................. 17 3 Deterministic Computation 19 3.1 O-Notation............................................... -
Complexity Theory in Computer Science Pdf
Complexity theory in computer science pdf Continue Complexity is often used to describe an algorithm. One could hear something like my sorting algorithm working in n2n'2n2 time in complexity, it's written as O (n2)O (n'2)O (n2) and polynomial work time. Complexity is used to describe the use of resources in algorithms. In general, the resources of concern are time and space. The complexity of the algorithm's time is the number of steps it must take to complete. The cosmic complexity of the algorithm represents the amount of memory the algorithm needs to work. The complexity of the algorithm's time describes how many steps the algorithm should take with regard to input. If, for example, each of the nnn elements entered only works once, this algorithm will take time O'n)O(n)O(n). If, for example, the algorithm has to work on one input element (regardless of input size), it is a constant time, or O(1)O(1)O(1), the algorithm, because regardless of the size of the input, only one is done. If the algorithm performs nnn-operations for each of the nnn elements injected into the algorithm, then this algorithm is performed in time O'n2)O (n2). In the design and analysis of algorithms, there are three types of complexities that computer scientists think: the best case, the worst case, and the complexity of the average case. The best, worst and medium complexity complexity can describe the time and space this wiki will talk about in terms of the complexity of time, but the same concepts can be applied to the complexity of space. -
LSPACE VS NP IS AS HARD AS P VS NP 1. Introduction in Complexity
LSPACE VS NP IS AS HARD AS P VS NP FRANK VEGA Abstract. The P versus NP problem is a major unsolved problem in com- puter science. This consists in knowing the answer of the following question: Is P equal to NP? Another major complexity classes are LSPACE, PSPACE, ESPACE, E and EXP. Whether LSPACE = P is a fundamental question that it is as important as it is unresolved. We show if P = NP, then LSPACE = NP. Consequently, if LSPACE is not equal to NP, then P is not equal to NP. According to Lance Fortnow, it seems that LSPACE versus NP is easier to be proven. However, with this proof we show this problem is as hard as P versus NP. Moreover, we prove the complexity class P is not equal to PSPACE as a direct consequence of this result. Furthermore, we demonstrate if PSPACE is not equal to EXP, then P is not equal to NP. In addition, if E = ESPACE, then P is not equal to NP. 1. Introduction In complexity theory, a function problem is a computational problem where a single output is expected for every input, but the output is more complex than that of a decision problem [6]. A functional problem F is defined as a binary relation (x; y) 2 R over strings of an arbitrary alphabet Σ: R ⊂ Σ∗ × Σ∗: A Turing machine M solves F if for every input x such that there exists a y satisfying (x; y) 2 R, M produces one such y, that is M(x) = y [6]. -
The Classes FNP and TFNP
Outline The classes FNP and TFNP C. Wilson1 1Lane Department of Computer Science and Electrical Engineering West Virginia University Christopher Wilson Function Problems Outline Outline 1 Function Problems defined What are Function Problems? FSAT Defined TSP Defined 2 Relationship between Function and Decision Problems RL Defined Reductions between Function Problems 3 Total Functions Defined Total Functions Defined FACTORING HAPPYNET ANOTHER HAMILTON CYCLE Christopher Wilson Function Problems Outline Outline 1 Function Problems defined What are Function Problems? FSAT Defined TSP Defined 2 Relationship between Function and Decision Problems RL Defined Reductions between Function Problems 3 Total Functions Defined Total Functions Defined FACTORING HAPPYNET ANOTHER HAMILTON CYCLE Christopher Wilson Function Problems Outline Outline 1 Function Problems defined What are Function Problems? FSAT Defined TSP Defined 2 Relationship between Function and Decision Problems RL Defined Reductions between Function Problems 3 Total Functions Defined Total Functions Defined FACTORING HAPPYNET ANOTHER HAMILTON CYCLE Christopher Wilson Function Problems Function Problems What are Function Problems? Function Problems FSAT Defined Total Functions TSP Defined Outline 1 Function Problems defined What are Function Problems? FSAT Defined TSP Defined 2 Relationship between Function and Decision Problems RL Defined Reductions between Function Problems 3 Total Functions Defined Total Functions Defined FACTORING HAPPYNET ANOTHER HAMILTON CYCLE Christopher Wilson Function Problems Function -
Logic and Complexity
o| f\ Richard Lassaigne and Michel de Rougemont Logic and Complexity Springer Contents Introduction Part 1. Basic model theory and computability 3 Chapter 1. Prepositional logic 5 1.1. Propositional language 5 1.1.1. Construction of formulas 5 1.1.2. Proof by induction 7 1.1.3. Decomposition of a formula 7 1.2. Semantics 9 1.2.1. Tautologies. Equivalent formulas 10 1.2.2. Logical consequence 11 1.2.3. Value of a formula and substitution 11 1.2.4. Complete systems of connectives 15 1.3. Normal forms 15 1.3.1. Disjunctive and conjunctive normal forms 15 1.3.2. Functions associated to formulas 16 1.3.3. Transformation methods 17 1.3.4. Clausal form 19 1.3.5. OBDD: Ordered Binary Decision Diagrams 20 1.4. Exercises 23 Chapter 2. Deduction systems 25 2.1. Examples of tableaux 25 2.2. Tableaux method 27 2.2.1. Trees 28 2.2.2. Construction of tableaux 29 2.2.3. Development and closure 30 2.3. Completeness theorem 31 2.3.1. Provable formulas 31 2.3.2. Soundness 31 2.3.3. Completeness 32 2.4. Natural deduction 33 2.5. Compactness theorem 36 2.6. Exercices 38 vi CONTENTS Chapter 3. First-order logic 41 3.1. First-order languages 41 3.1.1. Construction of terms 42 3.1.2. Construction of formulas 43 3.1.3. Free and bound variables 44 3.2. Semantics 45 3.2.1. Structures and languages 45 3.2.2. Structures and satisfaction of formulas 46 3.2.3. -
The Relative Complexity of NP Search Problems
The Relative Complexity of NP Search Problems PAUL BEAME* STEPHEN COOKT JEFF EDMONDS$ Computer Science and Engineering Computer Science Dept. I. C.S.I. University of Washington University of Toronto Berkeley, CA 94704- ”1198 beame@cs. Washington. edu sacook@cs. toronto. edu edmonds@icsi .berke,ley.edu RUSSELL IMPAGLIAZZO TONIANN PITASSI$ Computer Science Dept. Mathematics and Computer Science UCSD University of Pittsburgh russelltlcs .ucsd.edu toniflcs .pitt, edu Abstract might be that of finding a 3-coloring of the graph if it ex- ists. One can always reduce a search problem to a related Papadimitriou introduced several classes of NP search prob- decision problem and, as in the reduction of 3-coloring to lemsbased on combinatorial principles which guarantee the 3-colorability, thk is often by a natural self-reduction which existence of solutions to the problems. Many interesting produces a polynomially equivalent decision problem. search problems not known to be solvable in polynomial However, it may also happen that the related decision time are contained in these classes, and a number of them problem is not computationally equivalent to the original are complete problems. We consider the question of the rel- search problem. Thk is particularly important in the case ative complexity of these search problem classes. We prove when a solution is guaranteed to exist for the search prob- several separations which show that in a generic relativized lem. For example, consider the following prc)blems: world, the search classes are distinct and there is a standard search problem in each of them that is not computation- 1.Given a list al ,. -
Complexity Classes
CHAPTER Complexity Classes In an ideal world, each computational problem would be classified at least approximately by its use of computational resources. Unfortunately, our ability to so classify some important prob- lems is limited. We must be content to show that such problems fall into general complexity classes, such as the polynomial-time problems P, problems whose running time on a determin- istic Turing machine is a polynomial in the length of its input, or NP, the polynomial-time problems on nondeterministic Turing machines. Many complexity classes contain “complete problems,” problems that are hardest in the class. If the complexity of one complete problem is known, that of all complete problems is known. Thus, it is very useful to know that a problem is complete for a particular complexity class. For example, the class of NP-complete problems, the hardest problems in NP, contains many hundreds of important combinatorial problems such as the Traveling Salesperson Prob- lem. It is known that each NP-complete problem can be solved in time exponential in the size of the problem, but it is not known whether they can be solved in polynomial time. Whether ? P and NP are equal or not is known as the P = NP question. Decades of research have been devoted to this question without success. As a consequence, knowing that a problem is NP- complete is good evidence that it is an exponential-time problem. On the other hand, if one such problem were shown to be in P, all such problems would be been shown to be in P,a result that would be most important. -
COT5310: Formal Languages and Automata Theory
COT5310: Formal Languages and Automata Theory Lecture Notes #3: Complexity Dr. Ferucio Laurent¸iu T¸iplea Visiting Professor School of Computer Science University of Central Florida Orlando, FL 32816 E-mail: [email protected] http://www.cs.ucf.edu/~tiplea Complexity 1. Time and space bounded computations 2. Central complexity classes 3. Reductions and completeness 4. Hierarchies of complexity classes UCF-SCS/COT5310/Fall 2005/F.L. Tiplea 1 1. Time and space bounded computations 1.1. Orders of magnitude 1.2. Running time and work space of Turing machines UCF-SCS/COT5310/Fall 2005/F.L. Tiplea 2 1.1. Orders of magnitude Let g : N R be a function. Define the following sets: → + (g) = f : N R+ ( c R )( n0 N)( n n0)(f(n) cg(n)) O { → | ∃ ∈ +∗ ∃ ∈ ∀ ≥ ≤ } Ω(g) = f : N R+ ( c R )( n0 N)( n n0)(cg(n) f(n)) { → | ∃ ∈ +∗ ∃ ∈ ∀ ≥ ≤ } Θ(g) = f : N R+ ( c1, c2 R )( n0 N)( n n0) { → | ∃ ∈ +∗ ∃ ∈ ∀ ≥ (c1g(n) f(n) c2g(n)) ≤ ≤ } o(g) = f : N R+ ( c R )( n0 N)( n n0)(f(n) cg(n)) { → | ∀ ∈ +∗ ∃ ∈ ∀ ≥ ≤ } Let f, g : N R and X , Ω, Θ,o . f is said to be X of → + ∈ {O } g, denoted f(n) = X(g(n)), if f X(g). ∈ (“big O”), Ω (“big Ω”), Θ (“big Θ”), and o (“little o”) O are order of magnitude symbols. UCF-SCS/COT5310/Fall 2005/F.L. Tiplea 3 1.1. Orders of magnitude cg(n)2 cg(n) f(n) f(n) f(n) cg(n) cg(n)1 n n0 n0 0 O (g(n)) W(g(n)) q(g(n)) f(n) = (g(n)) • O – g(n) is an asymptotic upper bound for f(n) – f(n) is no more than g(n) – used to state the complexity of a worst case analysis; f(n) = Ω(g(n)) – similar interpretation; • f(n) = o(g(n)) – f(n) is less than g(n) (the difference • between and o is analogous to the difference between O and <). -
COMPUTATIONAL COMPLEXITY Contents
Part III Michaelmas 2012 COMPUTATIONAL COMPLEXITY Lecture notes Ashley Montanaro, DAMTP Cambridge [email protected] Contents 1 Complementary reading and acknowledgements2 2 Motivation 3 3 The Turing machine model4 4 Efficiency and time-bounded computation 13 5 Certificates and the class NP 21 6 Some more NP-complete problems 27 7 The P vs. NP problem and beyond 33 8 Space complexity 39 9 Randomised algorithms 45 10 Counting complexity and the class #P 53 11 Complexity classes: the summary 60 12 Circuit complexity 61 13 Decision trees 70 14 Communication complexity 77 15 Interactive proofs 86 16 Approximation algorithms and probabilistically checkable proofs 94 Health warning: There are likely to be changes and corrections to these notes throughout the course. For updates, see http://www.qi.damtp.cam.ac.uk/node/251/. Most recent changes: corrections to proof of correctness of Miller-Rabin test (Section 9.1) and minor terminology change in description of Subset Sum problem (Section6). Version 1.14 (May 28, 2013). 1 1 Complementary reading and acknowledgements Although this course does not follow a particular textbook closely, the following books and addi- tional resources may be particularly helpful. • Computational Complexity: A Modern Approach, Sanjeev Arora and Boaz Barak. Cambridge University Press. Encyclopaedic and recent textbook which is a useful reference for almost every topic covered in this course (a first edition, so beware typos!). Also contains much more material than we will be able to cover in this course, for those who are interested in learning more. A draft is available online at http://www.cs.princeton.edu/theory/complexity/. -
The Complexity of Counting Poset and Permutation Patterns
AUSTRALASIAN JOURNAL OF COMBINATORICS Volume 64(1) (2016), Pages 154–165 The complexity of counting poset and permutation patterns Joshua Cooper Anna Kirkpatrick Mathematics Department University of South Carolina 1523 Greene St., Columbia, SC 29208 U.S.A. Abstract We introduce a notion of pattern occurrence that generalizes both clas- sical permutation patterns as well as poset containment. Many ques- tions about pattern statistics and avoidance generalize naturally to this setting, and we focus on functional complexity problems – particularly those that arise by constraining the order dimensions of the pattern and text posets. We show that counting the number of induced, injective occurrences among dimension-2 posets is #P-hard; enumerating the lin- ear extensions that occur in realizers of dimension-2 posets can be done in polynomial time, while for unconstrained dimension it is GI-complete; counting not necessarily induced, injective occurrences among dimension- 2posetsis#P-hard; counting injective or not necessarily injective occur- rences of an arbitrary pattern in a dimension-1 text is #P-hard, although it is in FP if the pattern poset is constrained to have bounded intrinsic width; and counting injective occurrences of a dimension-1 pattern in an arbitrary text is #P-hard, while it is in FP for bounded-dimension texts. This framework naturally leads to a number of open questions, chief among which are (1) is it #P-hard to count the number of oc- currences of a dimension-2 pattern in a dimension-1 text, and (2) is it #P-hard to count the number of permutations avoiding a given pattern? 1 Introduction A tremendous amount of study has been dedicated to understanding occurrence or non-occurrence of combinatorial substructures: which substructures are avoidable and counting objects that avoid them, what substructures random and random- like objects possess, enumerating substructures in general objects, describing the subclass of objects that have particular substructure counts, etc. -
An Overview of Computational Complexity
lURING AWARD LECTURE AN OVERVIEW OF COMPUTATIONAL COMPLEXITY ~]~F.~ A. COOK University of Toronto This is the second Turing Award lecture on Computational Complexity, The first was given by Michael Rabin in 1976.1 In reading Rabin's excellent article [62] now, one of the things that strikes me is how much activity there has been in the field since. In this brief overview I want to mention what to me are the most important and interesting results since the subject began in about 1960. In such a large field the choice of ABSTRACT: An historical overview topics is inevitably somewhat personal; however, I hope to of computational complexity is include papers which, by any standards, are fundamental. presented. Emphasis is on the fundamental issues of defining the 1. EARLY PAPERS intrinsic computational complexity The prehistory of the subject goes back, appropriately, to Alan of a problem and proving upper Turing. In his 1937 paper, On computable numbers with an and lower bounds on the application to the Entscheidungs problem [85], Turing intro- complexity of problems. duced his famous Turing machine, which provided the most Probabilistic and parallel convincing formalization (up to that time) of the notion of an computation are discussed. effectively (or algorithmically) computable function. Once this Author's Present Address: notion was pinned down precisely, impossibility proofs for Stephen A. Cook, Department of Computer computers were possible. In the same paper Turing proved Science, that no algorithm (i.e., Turing machine) could, upon being Universityof Toronto, given an arbitrary formula of the predicate calculus, decide, Toronto, Canada M5S 1A7. -
Advanced Topics in Complexity Theory: Exercise
Advanced Topics in Complexity Theory Daniel Borchmann October 4, 2016 Contents 1 Approximation Complexity 3 1.1 Function Problems ................................. 3 1.2 Approximation Algorithms ............................ 6 1.3 Approximation and Complexity ......................... 10 1.4 Non-Approximability ............................... 14 2 Interactive Proofs 18 2.1 Interactive Proofs Systems with Deterministic Verifiers ............ 18 2.2 Probabilistic Verifiers ............................... 20 2.3 Public Coin Protocols ............................... 23 2.4 IP = PSpace .................................... 27 2.5 Outlook: Multi-Prover Systems ......................... 32 3 Counting Complexity 33 3.1 Counting problems and the class #P ....................... 33 3.2 #P-completeness and Valiant’s Theorem ..................... 36 2 1 Approximation Complexity Dealing with NP-complete problems in practice may sometimes be infeasible. On the other hand, it is often enough to have approximate solutions to those problems, provided these are not “too bad”. However, for this to make sense, it is no longer possible to only consider decision problems.1 1.1 Function Problems 1.1 Example Let us consider the following “computation problem” associated to SAT: given a propositional formula ', return a satisfying assignment of ' if one exists, and “no” other- wise. Let us call this problem FSAT (“F” for “function”; note however that for a satisfiable formula ' there may be more than one satisfying assignment – the “functional” aspect thus does not really correspond to the mathematical notion of a function). It is clear that when we can solve FSAT in polynomial time, we can also solve SAT in polynomial time. The converse is also true: if SAT 2 P, then FSAT can be solved in polyno- mial time as well. This can be done as follows: let x1; : : : ; xn be the variables in '.