Complexity
Theory Spring 2014
|
email:
charles.e.hughes@knights.ucf.edu
Structure: TR 1330-1445
(1:30PM-2:45PM); CB1-120;
28 class periods, each 75 minutes long.
Go To Week 1, 2, 3, 4,
5, 6, 7,
8, 9, 10,
11, 12, 13,
14, 15
Instructor: Charles Hughes; Harris Engineering Center 247C;
823-2762
Office Hours: TR 3:00PM-4:15PM
GTA: Antoniya Petkova; Harris
Engineering Center 354; apetkova@knights.ucf.edu
Office Hours: MW 3:00PM-4:15PM
Required Reading: Notes
Recommended Reading:
- Garey&Johnson, Computers
and Intractability: A Guide to the Theory of NP-Completeness, W.
H. Freeman & Co., 1979.
- Papadimitriou & Lewis, Elements
of the Theory of Computation, Prentice-Hall, 1997.
- Davis, Sigal&Weyuker, Computability,
Complexity and Languages 2nd Ed., Acad. Press (Morgan Kaufmann),
1994.
- Hopcroft, Motwani&Ullman, Intro to Automata Theory, Languages and Computation 3rd Ed.,
Prentice-Hall, 2006.
- Oded Goldreich, Computational
Complexity: A Conceptual Approach, Cambridge University Press,
2008.
Draft available at
http://www.wisdom.weizmann.ac.il/~odedg/cc-drafts.html
- Arora&Barak, Computational
Complexity: A Modern Approach, Cambridge University Press, 2009.
Draft available at http://www.cs.princeton.edu/theory/complexity/
- Oded Goldreich, P, NP, and
NP-Completeness: The Basics of Complexity Theory, Cambridge
University Press, 2010.
Draft available at
http://www.wisdom.weizmann.ac.il/~odedg/bc-drafts.html
- Sipser, Introduction to the
Theory of Computation 3rd Ed., Cengage Learning, 2013.
Web Pages:
Base URL: http://www.cs.ucf.edu/courses/cot6410/spr2014
Notes
URL: http://www.cs.ucf.edu/courses/cot6410/spr2014/Notes/COT6410NotesSpring2014.pdf
Assignments: Around 6 to 10; Paper + Presentation
Exams: midterm and a final.
Exam Dates (Tentative): Exam#1 – Tuesday,
February 25; Spring Break – March 3-8; Withdraw Deadline – Tuesday,
March 18;
Final – Tues., April 29, 1:00PM–3:50PM
Evaluation (Tentative):
- Mid Term – 125 points; Final Exam – 175 points (balance between
weights will be adjusted in your favor)
- Assignments – 100 points; Paper and Presentation – 75 points
- Extra -- 25 points used to increase weight of exams or
assignments, always to your benefit
- Total Available: 500
- Grading will be A >= 90%, B+ >= 85%, B >= 80%, C+
>= 75%, C >= 70%, D >= 50%, F < 50%; minus grades may be
used
.
Weeks#1: (1/7, 1/9) -- Notes pp. 2-46; Syllabus
- Ground rules
- Decision problems
- Solving vs checking
- Procedures vs algorithms
- Introduction to theory of computation
- Terminology, goals and some historical perspective
- Basic notions of computability and complexity
- Existence of unsolvable problems (counting and
diagonalization)
Assignment #1
Review of some
closure properties of formal languages
Due: 1/16 (Key)
Week#2: (1/14,
1/16) -- Notes
pp. 47-69
- Solved, solvable, unsolved, unsolvable, re, non-re
- Hilbert's Tenth
- Undecidable problems made a bit
more concrete
- Lots about problems and their complexity
- Halting Problem (HALT) is RE, not
decidable
- Set of algorithms (TOT) is no-RE
- Halting Problem seen as fun
- Models of computation
- Turing machines
- Register machines
- Factor replacement systems (FRS)
Assignment #2
Closure
properties of Recursive, RE and non-RE sets
Due: 1/28 (Key)
Week#3: (1/21, 1/23) -- Notes pp.
70-131
- Systems related to FRS (Petri Nets, Vector Addition,
Abelian Semi-Groups)
- RM simulated by
Ordered FRS
- Primitive Recursive Functions (prf)
- Initial functions
- Closure under composition and recursion
- Addition and multiplication examples
- Sample functions and predicates
- Closure under cases
- Bounded minimization
- Arithmetic fuctions that use bounded search
- Pairing functions
- Limitations of primitive
recursive
- mu-recursion and the partial recursive functions
Week#4: (1/28, 1/30) -- Notes pp.
132-159
- Notions of instantaneous descriptions
(again)
- Encodings
- Equivalence of models
- TMs to Register Machines
- RM to Factor Replacement Systems
- Factor Replacement to Recursive Functions
- Gory details on FRS to REC
- Universal machines
- Recursive Functions to TMs
- Consequences of equivalence
- Review Undecidability (Halting Problem, shown by
diagonalization)
- RE sets and semidecidability
- Enumeration Theorem
- The set K = { n | n is in the
n-th re set } is re, non-recursive
- Alternative characterizations of
re sets
- Parameter Theorem (aka Sm,n Thearem)
- Quantification and re sets
- Quantification and non-re sets
Assignment #3
Closure
of primitive recursive functions under triple recursion
Week#5: (2/4, 2/6) -- Notes pp.
156-196
- Alternative
characterizations of re sets
- Parameter Theorem (aka Sm,n Thearem)
- Quantification and re sets
- Quantification and non-re sets
- Diagonalization revisited (set of algorithms, Ko or Lu,
is non-re)
- Reduction
- Classic sets Ko (Lu), NON-EMPTY (Lne), EMPTY
(Le)
- Reducibility and degrees (many-one, one-one, Turing)
- Complete re set (K and Ko as examples)
Assignment #4
Quantification
approximations of Complexity
Due: 2/13 (Key)
Week#6: (2/11, 2/13) -- Notes pp.
197-216
- Rice's Theorem
- "Picture" proofs for Rice's Theorem
- Constant Time and Mortal Machines
- END OF MATERIAL FOR Midterm
Assignment #5
Rice's Theorem and Reduction
Due: 2/20 (Key)
Week#7: (2/18, 2/20) -- Notes pp.
217-253
- Sample Midterm
- Introduction to rewriting systems (Thue, Post)
- Semi-Thue systems
- Word problems
- Simulating Turing Machine by Semi-Thue System
- Simulating by Thue Systems
- Post Canonical Forms
- Review and go over sample questions
- Sample Midterm Key
- Key for Samples from Notes
Week#8: (2/24, 2/25, 2/27) -- Notes pp.
254-265
- HELP SESSION on Monday, February 24, from 3:30 to 5:30 in HEC-101
- Midterm (Tuesday)
- Post Correspondence Problem
- Grammars and re sets
- Unsolvable problems related to context-free
grammars/languages
- Ambiguity of
CFGs
- Non-Emptiness of CFL
Intersections
Assignment #6
Post
Correspondence Problem over one-letter alphabets
Due: 3/13 (Key)
Week#9: (3/11, 3/13) -- Notes pp.
264-297; 298-314 (optional);
315-335
- Key to Midterm
- Context-Sensitive Grammars and
Unsolvability Results
- Valid (CSL) and Invalid Traces
(CFL)
- Intersection and
Quotients of CFLs
- Details on Valid (CSL) and
Invalid Traces (CFL)
- Intersection of CFLs revisited
- Quotients of CFLs revisited
- Type 0 grammars and Traces
- L = all string over an alphabet
- L=L^2 for L a CFL
- Revisit Set Real-Time (Constant-Time)
- Real-Time and Mortal Machines
- Finite Power Problem for CFLs
Week#10: (3/18 (Withdrawal
Deadline), 3/20) -- Notes pp.
336-452
- Note: 3/18 is the
Withdraw
Deadline
- Propositional Calculus (axiomatic versus truth table based)
- Fast Review of Order Analysis
- Basics of Complexity Theory
- Decision vs Optimization
Problems (achieving a goal vs achieving min cost)
- Polynomial == Easy; Exponential
== Hard
- Polynomial reducibility
- Verifiers versus solvers
- P as solvable in deterministic
polynomial time
- NP as solvable in
non-deterministic polynomial time
- NP as verifiable in
deterministic polynomial time
- Concepts of NP-Complete and
NP-Hard
- Canonical NP-Complete problem:
SAT (Satisfiability)
- Some NP problems that do not
appear to be in P: SubsetSum, Hamiltonian Path, k-Clique
- Million dollar question: P = NP ?
- Construction that maps
every problem solvable in non-deterministic polynomial time on TM to SAT
Presentation Stage #1
Turn in a list of team members (3 preferred but 2 or 4 okay with permission)
Turn in a citation to paper(s) being proposed as basis for paper and Fast Forward
Paper being read
should have length equivalent to 8 or more single spaced, two-column
journal pages
Must
be at least 12 pages if four members in group (2 6-page papers works as
well)
Your paper that
summarizes and highlights must be at least 5 pages, double-spaced,
single column
Must be at least 7 pages if four members in group
Sample Topics
Due: 3/25
Week#11: (3/25, 3/27) -- Notes pp.
453-474
- SAT is polynomial reducible to (<=P)
3SAT
- 3SAT as a second NP-Complete problem
- 3SAT <=P SubsetSum
- SubsetSum <=P Partition
- Partition
equivalence to SubsetSum
- Knapsack (relation to SubsetSum), Bin
Packing
- Bin packing (fixed capacity,
minimize number of bins)
- Pseudo polynomial-time solution for
Knapsack using dynamic programming with changed parameters, n*W versus
2^n
Assignment #7
Consider the boolean CNF expression E = (a+b+c+d)(~a)(~b+d)(a+b+~d)
1. Recast E in 3-CNF
form (that is, with each term being a disjunct of three items)
2. Present the table
that represents a conversion of E's satisfiability to an instance of
SubsetSum
3. Explicitly write down the numbers that comprise this instance of SubsetSum
4. Show a solution to
this SubsetSum instance that encodes a solution to E's satisfiability
5. Recast the SubsetSum instance you have as an instance of Partition
6. Show an explicit
solution to this instance of Partition -- that's easy given (3)
7. Recast the 3-CNF
form of E as an instance of k-Vertex Covering and present a solution to
the latter
8. Recast the 3-CNF
form of E as an instance of the k-Coloring problem and present a
solution to the latter
Due: 4/8 (Key)
Week#12: (4/1, 4/3) --
Notes pp.
475-518
- Reduction techniques
- Reduction
of 3SAT to k-Vertex Cover
- 3-SAT to 3-Coloring
- Isomophism of
k-Coloring with k-Register Aloocation of live variables
- Traveling Salesman
- Scheduling problems introduced
- Scheduling on multiprocessor systems
- Scheduling problems (fixed number of
processors, minimize final finishing time)
- N processors, M tasks, no constraints
- Partition and scheduling problems
- Greedy heuristics
- 2 processor scheduling -- greedy first
fit, greedy best fit, sorted, optimalGreedy versus optimal
(N/(N+1))
- Scheduling anomalies, level
strategy for UET trees, level strategy for UET dags
- Precedences (lists, delays, preemption)
- Anomalies (reducing precedence,
increasing processors, reducing times)
- Unit Execution Time: Trees,
forest, anti forests
- UET: DAGs and m=2
Assignment #8
See pages 520 to 521 in Notes
Due: 4/10 (Key)
Week#13: (4/8,
4/10)
- Hamiltonian Path
- Travelling Salesman
- Integer Linear Programming
- co-NP
- P = co-P ; P contained in intersection
of NP and co-NP
- NP-Hard
- QSAT as an example of NP-Hard,
possibly not NP
- NP-Hard problems are in general functional not necessarily decision problems
- NP-Complete are decision problems as they are in NP
- Clean-up (PSPACE, FP, FNP, TFNP, NP-Easy, NP-Equivalent)
- NP contained in PSPACE
- FP is functional equivalent to P; R(x,y) in FP if can provide value y for input x via deterministic polynomial time algorithm
- FNP is functional equivalent to NP; R(x,y) in FNP if can verify any pair (x,y) via deterministic polynomial time algorithm
- TFNP is the subset of FNP where a solution always exists, i.e., there is a y for each x such that R(x,y).
- Task of a TFNP algorithm is to find a y, given x, such that R(x,y)
- Unlike FNP, the search for a y is always successful
- FNP properly contains TFNP contains FP (we don't know if proper)
- Factoring is in TFNP, but is it in FP?
- If TFNP in FP then TFNP = FP,
- P = (NP intersect Co-NP) is interesting analogue to intersection of RE and co-RE but may not hold here
- It appears that TFNP does not have any complete problems!!!
- The deal is that there is no known recursive enumeration of TFNP but there is of FNP
- This is similar to total versus partially recursive functions (analogies are everywhere)
- NP-Easy -- these are problems that are polynomial when using an NP oracle
- NP-Equivalent is the class of NP-Easy and NP-Hard problems
- In essence this is functional equivalent of NP-Complete but also of co-NP Complete
- NP-Equivalent uses a Turing machine polynomial time reduction so just uses rather than accepts answers from oracle
- More
NP-Complete poroblems (fun ones)
- All papers related to fast-forward presentations are due by 11:59 on 4/25.
- I prefer just electronic versions of word or pdf files. If a pdf,
I would also like the files used to create it in a zip or rar.
- Your papers must include one or two questions you would ask of
your audience
- Final Exam Topics
- Sample Final Exam Questions (E1, E2)
- Review for Final Exam(s)
- Sample Final Exam Keys (E1, E2)
Week#14: (4/14 (Review), 4/15 (Exam 2A), 4/17 (Exam 2B))
- Review (Monday) from 3:00 to 5:00 in HEC-111
- Exam # 2A (Tuesday):
- Computability material (required of all)
- Exam # 2B (Thursday)
- Complexity material (required of all)
Week#15: (4/22 (Optional Exam))
- Optional Exam # 1 Booster (Tuesday) in ENG1-224 at normal class time -- 1:30 to 2:45:
- Computability material from first exam
- Used to (hopefully) improve on Exam # 1 performance
- Will not count against you but please don't take if you had a strong Exam # 1
Final Exam is Fast Forward Presentations; Tuesday
April 29; 1:00PM to 3:50PM in CB1-120 (Presentation Schedule)
Preview of all Presentations in single pdf (Preview)
© UCF (Charles E. Hughes)
-- Last Modified April 28, 2014