[Note: this webpage last modified Friday, 04-Feb-2011 19:44:51 EST]
Something cool about theory of computing, something you can do with it...
Or, is there a problem in the book you'd like to talk about?
Today's attendance.
Review some homework issues after class.
Coming next week - course survey.
Note - I will start highlighting the most important definitions and theorems from the reading.
Is it okay to change the last homework problem - removing problem 4 in favor of a new one...?
Definitions, P is Def 2.4, NP is Def 2.5, Dtime defined right before section 4.2.1.1, Ntime defined in section 4.2.1.3.
Philisophical meaning of P vs. NP - can search an exponentially large search space in polynomial time? Seems like answer should be no. If P=NP, then no cryptography, but get AI, perfect optimization for designing circuits, factoring, finding molecultes that match observations/theory, (lots of useful stuff), etc. If P!=NP, don't get anything for free right away (and this seems right, eh - anything worthwhile in life you have to work for).
Note that NP is in exponential time - convince yourself of this.
More on what the N of NP stands for.
Discussion/definition of reductions and oracle Turing machines (mostly because the book talks this way, not because it is the best way of talking).
Mention proof of Thm showing equivalence of search and reduction for P vs. NP.
Definition of NP-complete.
Proof of an NP-complete problem, and also bounded halting/non-halting.
What we will do next two times - NP-completeness of some "natural" NP complete problems that really come up in the world and are important (circuit-SAT, SAT, ...).