Apropos of an errata in ÜB 10 exercise 3
|
|
- Edwina Barber
- 5 years ago
- Views:
Transcription
1 Apropos of an errata in ÜB 10 exercise 3 Komplexität von Algorithmen SS13 The last exercise of the last exercise sheet was incorrectly formulated and could not be properly solved. Since no one spotted the error and the semester is already over, we provide these notes hoping that they will be of help to students preparing for for the final exam. What the exercise asked The goal of the exercise was to prove that Krom-SAT, the set of all satisfiable Krom formulas is in NL, by way of a logspace reduction. That is, the idea was to find a problem P, known to be in NL and define a function f such that: 1. for all x, x KS f(x) P 2. f can be computed by a deterministic Turing machine using (auxiliary) space bounded by a function O(log n) on the input size n. The notation for this is Krom-SAT logspace P and we recall that the existence of such an f would guarantee that Krom-SAT is in NL since since, if M P (y) is a Turing machine witnessing that P NL, then M(x) := M P (f(x)) would be a Turing machine that decides Krom-SAT and, because Turing machines running in logarithmic space can be composed in a way such that the space usage is also logarithmically bound (shown in class), it would do so using only logarithmic space. The statement of the exercise also hinted that one could exploit the fact that if A and B are problems in NL, then deciding whether x A and y B, for any given (x, y) is also in NL (formally written as A B NL). The general idea being that perhaps there wasn t a single problem A to which we could easily reduce Krom-SAT, but two problems A and B such that we can reduce it to A B. As we will confirm by the end of this notes, Krom-SAT is in NL, so by the very fact that PATH is NL-complete, Krom-SAT logspace PATH, so some f as above reducing Krom-SAT to PATH must exist. The problem is that no simple reduction seems to be available. Of course, one could simply show that Krom-SAT NL by exhibiting a suitable Turing machine, but the point of the exercise was to practice complexity proofs by reductions which many times can be simpler. The construction of the last section will give us a general method to construct NL problems to which we can reduce some given one. A variation of the exercise that had a simple solution Let us first consider a small variation of this exercise that could have been easily solved. Instead of looking at all the Krom formulas, let s assume that the number of available propositions is 1
2 arbitrary but fixed. We can then define, for each k N: Krom-SAT k := {α α is a Krom formula built using only propositions p 1, p 2,... p k }. The statement of the exercise tells us that it is known that a Krom formula α is unsatisfiable whenever there is a proposition p i occurring in α such that there are reasoning chains over α from p i to p i and from p i to p i. The definition of a reasoning chain looks very much like a path on a graph G α that has literals (p and p are called literals) as nodes; and an edge from node x to y iff there is either a clause (x y) or (y x) in α, where x is the complement of literal x (i.e., p = p and p = p). For example, if α contained the clause (p 2 p 37 ), G α would contain an edge from p 2 to p 37 and another one from p 37 to p 2. We then conclude that the existence of a reasoning chain over α from p i to p i and from p i to p i is equivalent to the existence of a path on G α from p i to p i and another from p i to p i. Checking for the existence of a path between two nodes in a graph is known to be in NL, but what about the existence of two paths? The latter is just the problem PATH PATH, which we already know is in NL as well! And since NL is closed by complements, the fact that no two such reasoning chains for p i / p i exist, which correspond to a query on PATH PATH, is in NL as well. Summing up, deciding that α Krom-SAT k corresponds to checking the following k problems: ((G α, p 1, p 1 ), (G α, p 1, p 1 )) PATH PATH ((G α, p 2, p 2 ), (G α, p 2, p 2 )) PATH PATH. ((G α, p k, p k ), (G α, p k, p k )) PATH PATH But since k is fixed, we can use k times and therefore, α Krom-SAT k corresponds to checking whether the tuple: (((G α, p 1, p 1 ), (G α, p 1, p 1 )), ((G α, p 2, p 2 ), (G α, p 2, p 2 )),... ((G α, p k, p k ), (G α, p k, p k ))) is an element of the problem: (PATH PATH) (PATH PATH) (PATH PATH) }{{} k times The latter, which we shall call P k for brevity, is in NL by construction. We can then have a reduction from Krom-SAT k to P k by way of the function f k such that f k (α) is the large tuple above. What we still need to verify is that f k (α) can be computed using space logarithmic in the length of α. The key step is to show that G α can be built this way, but this is not hard: compute_graph k (α) // NB. in t h i s program k i s a constant, not a v a r i a b l e! // We assume nodes are numbered 1, 2,... k, k + 1, k + 2,... k + k // From 1 to k, they correspond to p 1, p 2,... p k // From k + 1 to k + k, to p 1, p 2,... p k // We assume l i t (i) r e t u r n s p i i f i k and p i k o t h e r w i s e // S i m i l a r l y neg (i) r e t u r n s p i i f i k and p i k o t h e r w i s e // We w i l l output the adjacency matrix, b i t by b i t. We 2
3 fo r i := 1 to 2 k fo r j := 1 to 2 k // we need to output the b i t corresponding // to c e l l ( i, j ) o f the adjacency matrix i f ( l i t ( i ) l i t ( j ) ) occurs in α or ( neg ( j ) neg ( i ) ) occurs in α then output ( 1 ) else output ( 0 ) Since k is a constant, i and j take constant space (log k bits each). The check at the guard needs to traverse α searching for the two given clauses, if the input is simple enough, it can even be done with no space overhead (in the worst case, pointers that delimit the clauses suffice, in which case we would have space proportional to the logarithm of the length of the input). We may conclude that compute_graph_k runs in logarithmic space. Finally, we compute f k as follows (we use indentation to clarify the structure of the output): f k (α) for i :=1 to k compute_graph k (α) compute_graph k (α) Again, variable i takes constant space (since k is constant) and each call to compute_graph k requires logarithmic space. We have then established that, for each k N, Krom-SAT k logspace P k, and since P k was easily seen to be in NL, the former is in NL as well. Unfortunately, this doesn t give us a reduction for Krom-SAT, since for each k we are reducing to a different problem (i.e. P 1, P 2, P 3 are all different problems). In order to use this same idea as a reduction that works for all Krom-SAT, we would need to show that the problem i=1 P i is also in NL. This will be the topic of the final section, but before, that... An aside: isn t it obvious now that Krom-SAT is in NL? Given that we have shown that Krom-SAT k NL for every k, some may wonder if it is not completely obvious that Krom-SAT has to be in NL as well and regard the following section as, perhaps, pedantic and 3
4 unnecessary. Obviousness lies in the eye of the beholder, so if that is the case, we cannot really challenge that, but let us consider a very similar problem: SAT k = {α α is a satisfiable propositional formula built from propositions p 1, p 2,... p k } Intuitively, SAT k is to SAT as Krom-SAT k is to Krom-SAT. The following deterministic program decides SAT k following a brute-force approach: it just tries every possible valuation. brute_force_sat k (α) // In what f o l l o w s v i i s to be t h o u g h t as a // t r u t h v a l u e (0 = f a l s e or 1 = t r u e ) f o r p r o p o s i t i o n p i for v 1 := 0 to 1 for v 2 := 0 to 1 for v 3 := 0 to 1... return for v k := 0 to 1 i f (v 1, v 2, v 3,... v k ) s a t i s f i e s α then return true f a l s e For each k, brute_force_sat k contains k nested for-loops. Now, for a fixed k, what is the time complexity of this program? It is not hard to verify that checking whether (v 1, v 2, v 3,... v k ) satisfies α can be done in polynomial time, so let s say it takes time at most n c for some constant c. This check is run at most 2 k times, so the overall complexity is at most 2 k n c. Now, 2 k is a very large constant but a constant (since k is fixed), so SAT k PTIME for all k. If it is also completely obvious that SAT has to be in PTIME, we would be quite interested in listening to the argument for that in detail! Incidentally, given that SAT k is probably simpler 1 than SAT, couldn t it be the case that Krom-SAT k is also simpler than Krom-SAT? The answer is YES!, and constitutes a nice exercise for idle times: show that Krom-SAT k SPACE(0), that is, it can be solved without using any working tape whatsoever! 2 (hint: the same argument works for SAT k if formulas are assumed to be in CNF). The problem of querying an unbounded number of times We can summarize the situation as follows. We know that for a fixed k, checking k instances of a problem A in NL is in NL, as witnessed by the fact the A A A }{{} k times is in NL, but we would need to verify that checking an unbounded number of instances is in NL as well. That is, given A NL, we want to show that: A := {l ({0, 1} ) k st. l = [x 1, x 2,... x k ] and 1 i k, x i A} 1 Probably, since, of course, PTIME = NPTIME may end up being the case contrary to expectations. 2 Having this, we do know for sure that Krom-SAT k is simpler than Krom-SAT since the latter is known to be NL-complete and the space hierarchy theorem tells us that there are problems in NL that are not solvable in SPACE(0) 4
5 is in NL as well. Intuitively, the input to A is a list (of unbounded length) of inputs to A, and it accepts only those lists such that all its elements are accepted. Assume that M A (x) is a Turing machine that decides A. Moreover, let idx : (({0, 1} ) N) {0, 1} be the list index function such that: { x i if l = [x 1, x 2... x n ] and 1 i n idx(l, i) := ɛ otherwise where ɛ denotes the empty string. It is clear that idx can be computed by a non-deterministic Turing machine in logarithmic space (we only need space for a counter that goes from 0 to the length of the input). Using these two functions we define: M A (l) // Unlike before, k depends on the input here k := l e ngth of l fo r i := 1 to k assert M A ( idx (l, i ) ) It is clear that M A decides A, we only need to verify that it requires space O(log n), where n is the length (in bits) of the input. Clearly i can hold at most k which is always l, so we need log l log n bits for it. The only question is whether the call to M A (idx(l,i)) uses logarithmic space. Here we need to pay attention to an implementation detail, namely, the way in which M A is called. Clearly, we cannot compute idx(l,i) and save it in an auxiliary tape, since the space usage for that tape would be linear on n (e.g., when l = 1). Instead, we can assume that idx is implemented in such a way that l is read from the input tape while i is read from an auxiliary tape (which it will consider read-only). Now we can repeat the same construction that was used to show that logspace computations are closed by composition to argue that there exists another Turing machine M (l, i) that computes the same as M A (idx(l,i)) (also reading i from the secondary tape) and requiring only logarithmic space. If we use this M in implementing M A, then it clearly runs in logspace. ( Finally, reusing ) the ideas from before we can define a function f that reduces Krom-SAT to : PATH PATH f (α) k := count p r o p o s i t i o n s in α for i :=1 to k compute_graph ( α) 5
6 compute_graph ( α) compute_graph ( α) k := count p r o p o s i t i o n s in α // We assume nodes are numbered 1, 2,... k, k + 1, k + 2,... k + k // From 1 to k, they correspond to p 1, p 2,... p k // From k + 1 to k + k, to p 1, p 2,... p k // We assume l i t (i) r e t u r n s p i i f i k and p i k o t h e r w i s e // S i m i l a r l y neg (i) r e t u r n s p i i f i k and p i k o t h e r w i s e // We w i l l output the adjacency matrix, b i t by b i t. We fo r i := 1 to 2 k fo r j := 1 to 2 k // we need to output the b i t corresponding // to c e l l ( i, j ) o f the adjacency matrix i f ( l i t ( i ) l i t ( j ) ) occurs in α or ( neg ( j ) neg ( i ) ) occurs in α then output ( 1 ) else output ( 0 ) If α requires n bits to be represented, then certainly the number of propositions occurring in it is no larger than n. That means that, in both procedures, k requires at most log n bits of space, and therefore i and the result of i+k in f, and i and j in compute_graph need O(log n) bits of space as well, since in the worst case, they can hold the value 2 k. We conclude, then, that Krom-SAT logspace ( PATH PATH ) and, consequently, Krom-SAT NL. 6
Advanced topic: Space complexity
Advanced topic: Space complexity CSCI 3130 Formal Languages and Automata Theory Siu On CHAN Chinese University of Hong Kong Fall 2016 1/28 Review: time complexity We have looked at how long it takes to
More informationLogarithmic space. Evgenij Thorstensen V18. Evgenij Thorstensen Logarithmic space V18 1 / 18
Logarithmic space Evgenij Thorstensen V18 Evgenij Thorstensen Logarithmic space V18 1 / 18 Journey below Unlike for time, it makes sense to talk about sublinear space. This models computations on input
More informationEssential facts about NP-completeness:
CMPSCI611: NP Completeness Lecture 17 Essential facts about NP-completeness: Any NP-complete problem can be solved by a simple, but exponentially slow algorithm. We don t have polynomial-time solutions
More informationSpace and Nondeterminism
CS 221 Computational Complexity, Lecture 5 Feb 6, 2018 Space and Nondeterminism Instructor: Madhu Sudan 1 Scribe: Yong Wook Kwon Topic Overview Today we ll talk about space and non-determinism. For some
More informationComplexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler
Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard
More informationOutline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.
Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität
More informationOutline. Complexity Theory. Example. Sketch of a log-space TM for palindromes. Log-space computations. Example VU , SS 2018
Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 3. Logarithmic Space Reinhard Pichler Institute of Logic and Computation DBAI Group TU Wien 3. Logarithmic Space 3.1 Computational
More informationUndecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65
Undecidable Problems Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, 2018 1/ 65 Algorithmically Solvable Problems Let us assume we have a problem P. If there is an algorithm solving
More informationCSC 5170: Theory of Computational Complexity Lecture 4 The Chinese University of Hong Kong 1 February 2010
CSC 5170: Theory of Computational Complexity Lecture 4 The Chinese University of Hong Kong 1 February 2010 Computational complexity studies the amount of resources necessary to perform given computations.
More informationan efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.
1 More on NP In this set of lecture notes, we examine the class NP in more detail. We give a characterization of NP which justifies the guess and verify paradigm, and study the complexity of solving search
More informationCOL 352 Introduction to Automata and Theory of Computation Major Exam, Sem II , Max 80, Time 2 hr. Name Entry No. Group
COL 352 Introduction to Automata and Theory of Computation Major Exam, Sem II 2015-16, Max 80, Time 2 hr Name Entry No. Group Note (i) Write your answers neatly and precisely in the space provided with
More informationLecture 22: Counting
CS 710: Complexity Theory 4/8/2010 Lecture 22: Counting Instructor: Dieter van Melkebeek Scribe: Phil Rydzewski & Chi Man Liu Last time we introduced extractors and discussed two methods to construct them.
More informationCSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010
CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010 We now embark on a study of computational classes that are more general than NP. As these classes
More informationCSE200: Computability and complexity Space Complexity
CSE200: Computability and complexity Space Complexity Shachar Lovett January 29, 2018 1 Space complexity We would like to discuss languages that may be determined in sub-linear space. Lets first recall
More informationUniversality for Nondeterministic Logspace
Universality for Nondeterministic Logspace Vinay Chaudhary, Anand Kumar Sinha, and Somenath Biswas Department of Computer Science and Engineering IIT Kanpur September 2004 1 Introduction The notion of
More informationLecture 3: Reductions and Completeness
CS 710: Complexity Theory 9/13/2011 Lecture 3: Reductions and Completeness Instructor: Dieter van Melkebeek Scribe: Brian Nixon Last lecture we introduced the notion of a universal Turing machine for deterministic
More informationSOLUTION: SOLUTION: SOLUTION:
Convert R and S into nondeterministic finite automata N1 and N2. Given a string s, if we know the states N1 and N2 may reach when s[1...i] has been read, we are able to derive the states N1 and N2 may
More informationLecture Notes Each circuit agrees with M on inputs of length equal to its index, i.e. n, x {0, 1} n, C n (x) = M(x).
CS 221: Computational Complexity Prof. Salil Vadhan Lecture Notes 4 February 3, 2010 Scribe: Jonathan Pines 1 Agenda P-/NP- Completeness NP-intermediate problems NP vs. co-np L, NL 2 Recap Last time, we
More informationMTAT Complexity Theory October 13th-14th, Lecture 6
MTAT.07.004 Complexity Theory October 13th-14th, 2011 Lecturer: Peeter Laud Lecture 6 Scribe(s): Riivo Talviste 1 Logarithmic memory Turing machines working in logarithmic space become interesting when
More informationComputational Complexity
p. 1/24 Computational Complexity The most sharp distinction in the theory of computation is between computable and noncomputable functions; that is, between possible and impossible. From the example of
More informationTechnische Universität München Summer term 2010 Theoretische Informatik August 2, 2010 Dr. J. Kreiker / Dr. M. Luttenberger, J. Kretinsky SOLUTION
Technische Universität München Summer term 2010 Theoretische Informatik August 2, 2010 Dr. J. Kreiker / Dr. M. Luttenberger, J. Kretinsky SOLUTION Complexity Theory Final Exam Please note : If not stated
More informationComplexity Classes V. More PCPs. Eric Rachlin
Complexity Classes V More PCPs Eric Rachlin 1 Recall from last time Nondeterminism is equivalent to having access to a certificate. If a valid certificate exists, the machine accepts. We see that problems
More informationP P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions
Summary of the previous lecture Recall that we mentioned the following topics: P: is the set of decision problems (or languages) that are solvable in polynomial time. NP: is the set of decision problems
More informationNotes on Complexity Theory Last updated: December, Lecture 2
Notes on Complexity Theory Last updated: December, 2011 Jonathan Katz Lecture 2 1 Review The running time of a Turing machine M on input x is the number of steps M takes before it halts. Machine M is said
More informationU.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan 9/6/2004. Notes for Lecture 3
U.C. Berkeley CS278: Computational Complexity Handout N3 Professor Luca Trevisan 9/6/2004 Notes for Lecture 3 Revised 10/6/04 1 Space-Bounded Complexity Classes A machine solves a problem using space s(
More information1 Computational Problems
Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More information1 Circuit Complexity. CS 6743 Lecture 15 1 Fall Definitions
CS 6743 Lecture 15 1 Fall 2007 1 Circuit Complexity 1.1 Definitions A Boolean circuit C on n inputs x 1,..., x n is a directed acyclic graph (DAG) with n nodes of in-degree 0 (the inputs x 1,..., x n ),
More informationLecture 3. 1 Terminology. 2 Non-Deterministic Space Complexity. Notes on Complexity Theory: Fall 2005 Last updated: September, 2005.
Notes on Complexity Theory: Fall 2005 Last updated: September, 2005 Jonathan Katz Lecture 3 1 Terminology For any complexity class C, we define the class coc as follows: coc def = { L L C }. One class
More informationNotes on Space-Bounded Complexity
U.C. Berkeley CS172: Automata, Computability and Complexity Handout 6 Professor Luca Trevisan 4/13/2004 Notes on Space-Bounded Complexity These are notes for CS278, Computational Complexity, scribed by
More informationNotes for Lecture Notes 2
Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationU.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1
U.C. Berkeley CS278: Computational Complexity Handout N1 Professor Luca Trevisan August 30, 2004 Notes for Lecture 1 This course assumes CS170, or equivalent, as a prerequisite. We will assume that the
More informationDatabase Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler
Database Theory Database Theory VU 181.140, SS 2018 5. Complexity of Query Evaluation Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 17 April, 2018 Pichler
More informationP is the class of problems for which there are algorithms that solve the problem in time O(n k ) for some constant k.
Complexity Theory Problems are divided into complexity classes. Informally: So far in this course, almost all algorithms had polynomial running time, i.e., on inputs of size n, worst-case running time
More informationNotes for Lecture 3... x 4
Stanford University CS254: Computational Complexity Notes 3 Luca Trevisan January 14, 2014 Notes for Lecture 3 In this lecture we introduce the computational model of boolean circuits and prove that polynomial
More informationComplexity. Complexity Theory Lecture 3. Decidability and Complexity. Complexity Classes
Complexity Theory 1 Complexity Theory 2 Complexity Theory Lecture 3 Complexity For any function f : IN IN, we say that a language L is in TIME(f(n)) if there is a machine M = (Q, Σ, s, δ), such that: L
More informationComplete problems for classes in PH, The Polynomial-Time Hierarchy (PH) oracle is like a subroutine, or function in
Oracle Turing Machines Nondeterministic OTM defined in the same way (transition relation, rather than function) oracle is like a subroutine, or function in your favorite PL but each call counts as single
More informationUniversal Algebra and Computational Complexity Lecture 1
Universal Algebra and Computational Complexity Lecture 1 Ross Willard University of Waterloo, Canada Třešt, September 2008 Ross Willard (Waterloo) Algebra and Complexity Třešt, September 2008 1 / 23 Outline
More informationCSCI3390-Lecture 16: NP-completeness
CSCI3390-Lecture 16: NP-completeness 1 Summary We recall the notion of polynomial-time reducibility. This is just like the reducibility we studied earlier, except that we require that the function mapping
More informationLecture 8: Complete Problems for Other Complexity Classes
IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 8: Complete Problems for Other Complexity Classes David Mix Barrington and Alexis Maciel
More informationNotes on Space-Bounded Complexity
U.C. Berkeley CS172: Automata, Computability and Complexity Handout 7 Professor Luca Trevisan April 14, 2015 Notes on Space-Bounded Complexity These are notes for CS278, Computational Complexity, scribed
More information1 Computational problems
80240233: Computational Complexity Lecture 1 ITCS, Tsinghua Univesity, Fall 2007 9 October 2007 Instructor: Andrej Bogdanov Notes by: Andrej Bogdanov The aim of computational complexity theory is to study
More informationNP-Completeness I. Lecture Overview Introduction: Reduction and Expressiveness
Lecture 19 NP-Completeness I 19.1 Overview In the past few lectures we have looked at increasingly more expressive problems that we were able to solve using efficient algorithms. In this lecture we introduce
More informationUC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 22 Lecturer: David Wagner April 24, Notes 22 for CS 170
UC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 22 Lecturer: David Wagner April 24, 2003 Notes 22 for CS 170 1 NP-completeness of Circuit-SAT We will prove that the circuit satisfiability
More informationSpace Complexity. The space complexity of a program is how much memory it uses.
Space Complexity The space complexity of a program is how much memory it uses. Measuring Space When we compute the space used by a TM, we do not count the input (think of input as readonly). We say that
More informationNotes for Lecture 3... x 4
Stanford University CS254: Computational Complexity Notes 3 Luca Trevisan January 18, 2012 Notes for Lecture 3 In this lecture we introduce the computational model of boolean circuits and prove that polynomial
More informationA Collection of Problems in Propositional Logic
A Collection of Problems in Propositional Logic Hans Kleine Büning SS 2016 Problem 1: SAT (respectively SAT) Instance: A propositional formula α (for SAT in CNF). Question: Is α satisfiable? The problems
More information1 PSPACE-Completeness
CS 6743 Lecture 14 1 Fall 2007 1 PSPACE-Completeness Recall the NP-complete problem SAT: Is a given Boolean formula φ(x 1,..., x n ) satisfiable? The same question can be stated equivalently as: Is the
More informationFoundations of Query Languages
Foundations of Query Languages SS 2011 2. 2. Foundations of Query Languages Dr. Fang Wei Lehrstuhl für Datenbanken und Informationssysteme Universität Freiburg SS 2011 Dr. Fang Wei 30. Mai 2011 Seite 1
More informationCSCE 551 Final Exam, Spring 2004 Answer Key
CSCE 551 Final Exam, Spring 2004 Answer Key 1. (10 points) Using any method you like (including intuition), give the unique minimal DFA equivalent to the following NFA: 0 1 2 0 5 1 3 4 If your answer is
More informationComputational Complexity for Algebraists
Computational Complexity for Algebraists Ross Willard University of Waterloo, Canada January 20, 2009 Ross Willard (Waterloo) Complexity for Algebraists January 20, 2009 1 / 23 Outline First hour: Decision
More information1 Distributional problems
CSCI 5170: Computational Complexity Lecture 6 The Chinese University of Hong Kong, Spring 2016 23 February 2016 The theory of NP-completeness has been applied to explain why brute-force search is essentially
More informationIntroduction to Turing Machines. Reading: Chapters 8 & 9
Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages
More informationCS154, Lecture 13: P vs NP
CS154, Lecture 13: P vs NP The EXTENDED Church-Turing Thesis Everyone s Intuitive Notion of Efficient Algorithms Polynomial-Time Turing Machines More generally: TM can simulate every reasonable model of
More information1 More finite deterministic automata
CS 125 Section #6 Finite automata October 18, 2016 1 More finite deterministic automata Exercise. Consider the following game with two players: Repeatedly flip a coin. On heads, player 1 gets a point.
More informationCS Lecture 29 P, NP, and NP-Completeness. k ) for all k. Fall The class P. The class NP
CS 301 - Lecture 29 P, NP, and NP-Completeness Fall 2008 Review Languages and Grammars Alphabets, strings, languages Regular Languages Deterministic Finite and Nondeterministic Automata Equivalence of
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY THURSDAY APRIL 3 REVIEW for Midterm TUESDAY April 8 Definition: A Turing Machine is a 7-tuple T = (Q, Σ, Γ, δ, q, q accept, q reject ), where: Q is a
More information3 Probabilistic Turing Machines
CS 252 - Probabilistic Turing Machines (Algorithms) Additional Reading 3 and Homework problems 3 Probabilistic Turing Machines When we talked about computability, we found that nondeterminism was sometimes
More informationLecture 6: Oracle TMs, Diagonalization Limits, Space Complexity
CSE 531: Computational Complexity I Winter 2016 Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity January 22, 2016 Lecturer: Paul Beame Scribe: Paul Beame Diagonalization enabled us to separate
More informationLecture 7: The Polynomial-Time Hierarchy. 1 Nondeterministic Space is Closed under Complement
CS 710: Complexity Theory 9/29/2011 Lecture 7: The Polynomial-Time Hierarchy Instructor: Dieter van Melkebeek Scribe: Xi Wu In this lecture we first finish the discussion of space-bounded nondeterminism
More informationLecture 4. 1 Circuit Complexity. Notes on Complexity Theory: Fall 2005 Last updated: September, Jonathan Katz
Notes on Complexity Theory: Fall 2005 Last updated: September, 2005 Jonathan Katz Lecture 4 1 Circuit Complexity Circuits are directed, acyclic graphs where nodes are called gates and edges are called
More information1 Deterministic Turing Machines
Time and Space Classes Exposition by William Gasarch 1 Deterministic Turing Machines Turing machines are a model of computation. It is believed that anything that can be computed can be computed by a Turing
More information1 Reductions and Expressiveness
15-451/651: Design & Analysis of Algorithms November 3, 2015 Lecture #17 last changed: October 30, 2015 In the past few lectures we have looked at increasingly more expressive problems solvable using efficient
More informationLecture 5: Efficient PAC Learning. 1 Consistent Learning: a Bound on Sample Complexity
Universität zu Lübeck Institut für Theoretische Informatik Lecture notes on Knowledge-Based and Learning Systems by Maciej Liśkiewicz Lecture 5: Efficient PAC Learning 1 Consistent Learning: a Bound on
More information15-451/651: Design & Analysis of Algorithms October 31, 2013 Lecture #20 last changed: October 31, 2013
15-451/651: Design & Analysis of Algorithms October 31, 2013 Lecture #20 last changed: October 31, 2013 In the last lecture, we defined the class NP and the notion of NP-completeness, and proved that the
More informationOn the Computational Hardness of Graph Coloring
On the Computational Hardness of Graph Coloring Steven Rutherford June 3, 2011 Contents 1 Introduction 2 2 Turing Machine 2 3 Complexity Classes 3 4 Polynomial Time (P) 4 4.1 COLORED-GRAPH...........................
More informationCSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY
CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY RYAN DOUGHERTY If we want to talk about a program running on a real computer, consider the following: when a program reads an instruction,
More informationCS154, Lecture 13: P vs NP
CS154, Lecture 13: P vs NP The EXTENDED Church-Turing Thesis Everyone s Intuitive Notion of Efficient Algorithms Polynomial-Time Turing Machines More generally: TM can simulate every reasonable model of
More informationUmans Complexity Theory Lectures
Umans Complexity Theory Lectures Lecture 12: The Polynomial-Time Hierarchy Oracle Turing Machines Oracle Turing Machine (OTM): Deterministic multitape TM M with special query tape special states q?, q
More information20.1 2SAT. CS125 Lecture 20 Fall 2016
CS125 Lecture 20 Fall 2016 20.1 2SAT We show yet another possible way to solve the 2SAT problem. Recall that the input to 2SAT is a logical expression that is the conunction (AND) of a set of clauses,
More informationDe Morgan s a Laws. De Morgan s laws say that. (φ 1 φ 2 ) = φ 1 φ 2, (φ 1 φ 2 ) = φ 1 φ 2.
De Morgan s a Laws De Morgan s laws say that (φ 1 φ 2 ) = φ 1 φ 2, (φ 1 φ 2 ) = φ 1 φ 2. Here is a proof for the first law: φ 1 φ 2 (φ 1 φ 2 ) φ 1 φ 2 0 0 1 1 0 1 1 1 1 0 1 1 1 1 0 0 a Augustus DeMorgan
More informationDefinition: Alternating time and space Game Semantics: State of machine determines who
CMPSCI 601: Recall From Last Time Lecture 3 Definition: Alternating time and space Game Semantics: State of machine determines who controls, White wants it to accept, Black wants it to reject. White wins
More information34.1 Polynomial time. Abstract problems
< Day Day Up > 34.1 Polynomial time We begin our study of NP-completeness by formalizing our notion of polynomial-time solvable problems. These problems are generally regarded as tractable, but for philosophical,
More information6.045 Final Exam Solutions
6.045J/18.400J: Automata, Computability and Complexity Prof. Nancy Lynch, Nati Srebro 6.045 Final Exam Solutions May 18, 2004 Susan Hohenberger Name: Please write your name on each page. This exam is open
More information,
Kolmogorov Complexity Carleton College, CS 254, Fall 2013, Prof. Joshua R. Davis based on Sipser, Introduction to the Theory of Computation 1. Introduction Kolmogorov complexity is a theory of lossless
More informationCSCI3390-Second Test with Solutions
CSCI3390-Second Test with Solutions April 26, 2016 Each of the 15 parts of the problems below is worth 10 points, except for the more involved 4(d), which is worth 20. A perfect score is 100: if your score
More informationLecture 4 : Quest for Structure in Counting Problems
CS6840: Advanced Complexity Theory Jan 10, 2012 Lecture 4 : Quest for Structure in Counting Problems Lecturer: Jayalal Sarma M.N. Scribe: Dinesh K. Theme: Between P and PSPACE. Lecture Plan:Counting problems
More informationCS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018
CS 301 Lecture 18 Decidable languages Stephen Checkoway April 2, 2018 1 / 26 Decidable language Recall, a language A is decidable if there is some TM M that 1 recognizes A (i.e., L(M) = A), and 2 halts
More informationNotes on Computer Theory Last updated: November, Circuits
Notes on Computer Theory Last updated: November, 2015 Circuits Notes by Jonathan Katz, lightly edited by Dov Gordon. 1 Circuits Boolean circuits offer an alternate model of computation: a non-uniform one
More informationAlgorithmic Model Theory SS 2016
Algorithmic Model Theory SS 2016 Prof. Dr. Erich Grädel and Dr. Wied Pakusa Mathematische Grundlagen der Informatik RWTH Aachen cbnd This work is licensed under: http://creativecommons.org/licenses/by-nc-nd/3.0/de/
More informationAlgebraic Dynamic Programming. Solving Satisfiability with ADP
Algebraic Dynamic Programming Session 12 Solving Satisfiability with ADP Robert Giegerich (Lecture) Stefan Janssen (Exercises) Faculty of Technology Summer 2013 http://www.techfak.uni-bielefeld.de/ags/pi/lehre/adp
More information/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: NP-Completeness I Date: 11/13/18
601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: NP-Completeness I Date: 11/13/18 20.1 Introduction Definition 20.1.1 We say that an algorithm runs in polynomial time if its running
More informationMath 414, Fall 2016, Test I
Math 414, Fall 2016, Test I Dr. Holmes September 23, 2016 The test begins at 10:30 am and ends officially at 11:45 am: what will actually happen at 11:45 is that I will give a five minute warning. The
More informationIntroduction to Computational Complexity
Introduction to Computational Complexity Tandy Warnow October 30, 2018 CS 173, Introduction to Computational Complexity Tandy Warnow Overview Topics: Solving problems using oracles Proving the answer to
More informationLecture 59 : Instance Compression and Succinct PCP s for NP
IITM-CS6840: Advanced Complexity Theory March 31, 2012 Lecture 59 : Instance Compression and Succinct PCP s for NP Lecturer: Sivaramakrishnan N.R. Scribe: Prashant Vasudevan 1 Introduction Classical Complexity
More informationLecture 11: Proofs, Games, and Alternation
IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 11: Proofs, Games, and Alternation David Mix Barrington and Alexis Maciel July 31, 2000
More informationMin/Max-Poly Weighting Schemes and the NL vs UL Problem
Min/Max-Poly Weighting Schemes and the NL vs UL Problem Anant Dhayal Jayalal Sarma Saurabh Sawlani May 3, 2016 Abstract For a graph G(V, E) ( V = n) and a vertex s V, a weighting scheme (w : E N) is called
More informationLecture 3 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;
Topics in Theoretical Computer Science March 7, 2016 Lecturer: Ola Svensson Lecture 3 (Notes) Scribes: Ola Svensson Disclaimer: These notes were written for the lecturer only and may contain inconsistent
More informationCSCI3390-Lecture 14: The class NP
CSCI3390-Lecture 14: The class NP 1 Problems and Witnesses All of the decision problems described below have the form: Is there a solution to X? where X is the given problem instance. If the instance is
More information2 P vs. NP and Diagonalization
2 P vs NP and Diagonalization CS 6810 Theory of Computing, Fall 2012 Instructor: David Steurer (sc2392) Date: 08/28/2012 In this lecture, we cover the following topics: 1 3SAT is NP hard; 2 Time hierarchies;
More informationAbout the relationship between formal logic and complexity classes
About the relationship between formal logic and complexity classes Working paper Comments welcome; my email: armandobcm@yahoo.com Armando B. Matos October 20, 2013 1 Introduction We analyze a particular
More informationCS 583: Algorithms. NP Completeness Ch 34. Intractability
CS 583: Algorithms NP Completeness Ch 34 Intractability Some problems are intractable: as they grow large, we are unable to solve them in reasonable time What constitutes reasonable time? Standard working
More informationU.C. Berkeley CS294: Beyond Worst-Case Analysis Handout 8 Luca Trevisan September 19, 2017
U.C. Berkeley CS294: Beyond Worst-Case Analysis Handout 8 Luca Trevisan September 19, 2017 Scribed by Luowen Qian Lecture 8 In which we use spectral techniques to find certificates of unsatisfiability
More informationCMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems
CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems Valentine Kabanets September 13, 2007 1 Complexity Classes Unless explicitly stated,
More informationShow that the following problems are NP-complete
Show that the following problems are NP-complete April 7, 2018 Below is a list of 30 exercises in which you are asked to prove that some problem is NP-complete. The goal is to better understand the theory
More informationComputability Crib Sheet
Computer Science and Engineering, UCSD Winter 10 CSE 200: Computability and Complexity Instructor: Mihir Bellare Computability Crib Sheet January 3, 2010 Computability Crib Sheet This is a quick reference
More informationMa/CS 117c Handout # 5 P vs. NP
Ma/CS 117c Handout # 5 P vs. NP We consider the possible relationships among the classes P, NP, and co-np. First we consider properties of the class of NP-complete problems, as opposed to those which are
More informationLecture 2 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;
Topics in Theoretical Computer Science February 29, 2016 Lecturer: Ola Svensson Lecture 2 (Notes) Scribes: Ola Svensson Disclaimer: These notes were written for the lecturer only and may contain inconsistent
More informationFinish K-Complexity, Start Time Complexity
6.045 Finish K-Complexity, Start Time Complexity 1 Kolmogorov Complexity Definition: The shortest description of x, denoted as d(x), is the lexicographically shortest string such that M(w) halts
More informationNon-Approximability Results (2 nd part) 1/19
Non-Approximability Results (2 nd part) 1/19 Summary - The PCP theorem - Application: Non-approximability of MAXIMUM 3-SAT 2/19 Non deterministic TM - A TM where it is possible to associate more than one
More informationNotes on Complexity Theory Last updated: November, Lecture 10
Notes on Complexity Theory Last updated: November, 2015 Lecture 10 Notes by Jonathan Katz, lightly edited by Dov Gordon. 1 Randomized Time Complexity 1.1 How Large is BPP? We know that P ZPP = RP corp
More information