Computational complexity Theory Flashcards

1
Q

NP Stands for

A

Non Deterministic Polynomial Time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

P

A

A fundamental complexity class that contains all decision problems that can be solved by a deterministic Turing machine using a polynomial amount of computation time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Tractable vs intractable

A

A problem that can be solved in theory (e.g. given large but finite resources, especially time), but for which in practice any solution takes too many resources to be useful, is known as an intractable problem.[14] Conversely, a problem that can be solved in practice is called a tractable problem, literally “a problem that can be handled”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Cobham’s thesis

A

asserts that computational problems can be feasibly computed on some computational device only if they can be computed in polynomial time; that is, if they lie in the complexity class P.[4] In modern terms, it identifies tractable problems with the complexity class P.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Cobham’s thesis limitations

A

Obviously in practice not all exponentials are slow and not all polynomials are fast for reasonable values of n. E.g n^10000 is practically a lot slower than .000001^(.00001n)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

L

A

the class of problems decidable by a deterministic Turing Machine using a logarithmic amount of memory space

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

L aka

A

LSpace or DLSpace

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

NP

A

is the set of decision problems solvable in polynomial time by a non-deterministic Turing machine; also can be thought of as the set of decision problems for which the problem instances, where the answer is “yes”, have proofs verifiable in polynomial time by a deterministic Turing machine

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Turing degree of a set

A

is a measure of how difficult it is to solve the decision problem associated with the set, that is, to determine whether an arbitrary number is in the given set.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

a Cook reduction

A

A Turing reduction in which the oracle machine runs in polynomial time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How do we represent a decision problem?

A

is represented as a set A of natural numbers (or strings). An instance of the problem is an arbitrary natural number (or string). The solution to the instance is “YES” if the number (string) is in the set, and “NO” otherwise.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Oracle machine

A

a Turing machine with a black box, called an oracle, which is able to solve certain decision problems in a single operation. The problem can be of any complexity class. Even undecidable problems, such as the halting problem, can be used.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Turing reduction

A

a Turing reduction from a decision problem A to a decision problem B is an oracle machine which decides problem A given an oracle for B (Rogers 1967, Soare 1987). It can be understood as an algorithm that could be used to solve A if it had available to it a subroutine for solving B.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Nondeterministic Turing Machine

A

a Turing machine that may have a set of rules that prescribes more than one action for a given situation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

IP stands for

A

Interactive Polynomial Time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

IP

A

the class of problems solvable by an interactive proof system

17
Q

PSPACE

A

the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space. Note this is different from P.

18
Q

SAT stands for

A

the Boolean Satisfiability Problem

19
Q

example of a satisfiable boolean problem vs a nonsatisfiable one

A

“a AND NOT b” is satisfiable because one can find the values a = TRUE and b = FALSE, which make (a AND NOT b) = TRUE. In contrast, “a AND NOT a” is unsatisfiable.

20
Q

NP completeness

A

A decision problem C is NP-complete if:

  • 1) C is in NP, and
  • 2) C is in NP-hard

Note that a problem satisfying condition 2 is said to be NP-hard, whether or not it satisfies condition 1.

21
Q

IP is equivalent to what class?

A

PSpace

22
Q

NP-Hard high level definition

A

a class of problems that are at least as hard as the hardest problems in NP

23
Q

How to show that a decision problem C is in NP?

A

by demonstrating that a candidate solution to C can be verified in polynomial time [on a non deterministic turing machine though, right?? Nah actually it doesn’t matter, bc even if It is in P, it’s still in NP]

24
Q

“Complete” refers to what?

A

the property of being able to simulate everything in the same complexity class.

25
Q

Formal definition of NP-hard

A

A decision problem C is in NP-hard if every problem in NP is reducible to C in polynomial time

26
Q

Difference between solving a decision problem and verifying the solution of a decision problem?

A

27
Q

What is the question of whether P=NP?

A

whether NP-complete problems can be solved in polynomial time on a deterministic Turing machine

28
Q

Turing reduction vs many-one reduction

A

Many-one reductions map instances of one problem to instances of another; Turing reductions compute the solution to one problem, assuming the other problem is easy to solve.

These reduction concepts differ in that Turing reducibility can make many calls to the oracle, and it can use that information either positively or negatively, but with many-one reducibility, you get just one call to the oracle, and you have to use that particular answer as the answer to your query.

29
Q

map reduction decidability theorem

A

if A <=m B and B is decidable, then A is decidable

30
Q

What does it mean when you say problem A reduces to problem B?

A

that there exists a computable function f such that for every string w in the set associated with A, f(w) is in the set associated with B

31
Q

What notation do you use to say A map reduces to B

A

A <=m B

32
Q

What is polynomial time reduction?

A

when problem A reduces to problem B, but the mapping function f is only computable in polynomial time by deterministic Turing machine

33
Q

even more formal definition of NP-hard

A

given a language A, A is in NP-hard if for all languages B in NP, B <=p A

34
Q

More formally speaking what are decision problems in computational complexity theory normally represented as?

A

Formal languages, where you are deciding if a string belongs in a language

35
Q

If any NP complete problem can be solved in polynomial time, then what?

A

Then every problem in NP has a polynomial time algorithm

36
Q

Why are NP problems able to be verified in polynomial time on a DTM, even though they cant be solved in polynomial time on a DTM?

A

This isn’t an exact proof, but in general you can verify solutions quicker than it takes to come up with a solution. E.g traveling salesman problem (you want to visit let’s say 100 cities with less than 1000 miles . Checking if a path visits 100 cities and is less than 1000 miles is easier than coming up with the correct path. Easier in terms of takes less operations

37
Q

DTM

A

Deterministic Turing machine