Prev: dynamic-programming-part-4-rods-subsetsums-pseudopolynomial Next: course-review
Decision problems are problems that can be solved with a “yes” or “no” answer.
Some problems might include negative cycle (does a provided graph G contain a negative cycle in it?)
Programs are decidable if there exists a program to solve the problem in finite time.
Not all problems are solvable, actually.
Assume that a program is a finite string of bits from the set \(\{0, 1\}\) with a finite length, n. Assume that a problem is an ininite string of bits from the set \(\{0, 1\}\).
The number of programs is in \(\Bbb N\), which is countably infinite. The number of problems is in \(\Bbb R\), which is uncountably infinite.
We know that \(\Bbb N\) \(\ll\) \(\Bbb R\), so most decision problems must not be solvable by any program.
Some problems, like the halting problem (or to determine any characteristic of a program in finite time for all programs) are undecidable.
Another way to think about it is if you had infinite bits (\(\Bbb {N}\)), would you be able to express all the real numbers in (0..1) (\(\Bbb {R}\))?. The answer is no, because you lack enough entropy to do so (\(\Bbb R\)) would have a base of infinity, whereas N would have a base of 2 in this case).
There are a few main classes of decision problems:
These sets are distinct, so \(P\) is strictly smaller than \(EXP\), and \(EXP\) is strictly smaller than \(\Bbb R\).
\(P\) is the set of decision problems for which there is an algorithm A that for every input of size N runs in polynomial time and solves it correctly.
\(NP\) is the set of decision problems for which there is a verification algorithm V that takes as input I, and a certificate bit string of length polynomial to the size of I that verifies that the certificate is either valid or not to solve the problem.
The biggest open question in theoretical computer science is whether or not \(P = NP\), and/or \(NP = EXP\).
Most people think no, because generating solutions is harder than checking, and since NP algorithms require luck to be solvable in P time, it would be odd to postulate that luck has no value (if you won the lottery every time you bought a ticket vs winning the lottery at a normal cadence, some 1 in 1 million times), are these the same?
and
and or
operations to set the equation to
true
?).Prev: dynamic-programming-part-4-rods-subsetsums-pseudopolynomial Next: course-review