Complexity Theory Spring 2020
|
email:
charles.hughes@ucf.edu
Structure: TR 1330-1445 (1:30PM-2:45PM); HEC-103; 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, 16
Instructor: Charles Hughes; Harris Engineering Center 247C
Office Hours: TR
10:45AM-12:00PM
GTA: Paniz Abedin;
HEC-354, Cubicle 2
Office Hours: MW
3:00PM-4:30PM (starting January 20)
Required Reading: All class notes linked from here.
Recommended Reading:
- Cooper, Computability
Theory 2nd Ed., Chapman-Hall/CRC Mathematics Series,
2003.
- Garey&Johnson, Computers
and
Intractability: A Guide to the Theory of NP-Completeness,
W. H. Freeman & Co., 1979.
- Davis, Sigal&Weyuker, Computability,
Complexity
and Languages 2nd Ed., Acad. Press (Morgan Kaufmann),
1994.
- Papadimitriou & Lewis, Elements
of
the Theory of Computation, Prentice-Hall, 1997.
- Bernard Moret, The Theory
of Computation, Addison-Wesley, 1998.
- 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.
- Oded Goldreich, P, NP, and
NP-Completeness: The Basics of Complexity Theory,
Cambridge University Press, 2010.
- Arora&Barak, Computational
Complexity:
A Modern Approach, Cambridge University Press, 2009.
- Sipser, Introduction to the
Theory of Computation 3rd Ed., Cengage Learning, 2013.
Web Pages:
Base URL: http://www.cs.ucf.edu/courses/cot6410/Spring2020
Notes URL: Introductory
Notes; Formal
Language and Automata Theory; Computability Theory;
Complexity Theory
Assignments: Around 6 to 10; Paper + Presentation
Exams: midterm and a final.
Exam Dates (Tentative): Mid Term Tuesday,
March 3; Spring Break March 9-14; Withdraw Deadline Friday,
March 20; Final Tues., April 21, 1:00PM3:50PM
Evaluation (Tentative):
- Mid Term 125 points; Final Exam 125 points (balance
between weights will be adjusted in your favor)
- Assignments 75 points; Independent Paper Reviews and
Presentations 125 points
- Extra -- 50 points used to increase weight of best exam,
or maybe presentation, 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
might be used.
.
Weeks#1: (1/7, 1/9) --
Syllabus; Introduction; Formal
Languages and Automata Theory
- Ground rules
- Decision problems
- Solving vs checking
- Procedures vs algorithms
- Introduction to theory of computation
- Terminology, goals and some historical perspective
- Review of automata (finite, pushdown, linear bounded,
Turing machines)
- Review of formal languages (regular, context free,
context sensitive, phrase structured)
- Review
material created by Prof. Jim Rogers, Earlam College
- Review material from Prof.
Workman, UCF
Financial Aid (Assignment#1)
Survey at Webcourses
Due: Friday, January 10 at 11:59 PM
Week#2: (1/14,
1/16) -- Formal
Languages and Automata Theory
- Continue Automata/Formal Languages Review
- MyHill-Nerode as proof of min
DFA uniqueness
- Myhill-Nerode as a tool to show
languages are not regular.
- The chosen language is
L = { an bm | n is not equal to m}.
This can be shown easily in an indirect manner by showing its
complement is not regular, A direct approach is using right
invariant equivalence classes as it is not amenable to the
Pumping Lemma.
- Review of reduced CFGs
- Chomsky Normal Form (CNF)
- The use of CNF in the
Cocke-Kasami-Younger O(N3) parsing of CFLs generated
by CNFs.
Week#3: (1/21,
1/23) -- Formal
Languages and Automata Theory
- Pumping Lemma for CFLs
- Show L = { ww | w is in {a,b}+
} is not a CFL
- CSG for L
- Non-closure of CFLs under
intersection and complement
- CFG for the complement of L
{ xy | |x| = |y| but x is not
the same as y }
can be first viewed as
{x1 a x2 y1 b y2 | |x1|=|x2|,
|y1|=|y2|} Union
{x1 b x2 y1 a y2 |
|x1|=|x2|, |y1|=|y2|}.
But this can also be seen as
{x1 a y1 x2 b y2 | |x1|=|x2|,
|y1|=|y2|}.Union
{x1 b y1 x2 a y2 |
|x1|=|x2|, |y1|=|y2|}.
The above is easy to show as a
CFL. We then union this with odd length and we have L1
complement.
- Closure of CFLs under
substitution and intersection with Regular
- Decision problems for CFLs:
is L(G) empty or finite/infinite are fine;
Checking ambiguity, equality to Sigma*, equivalence and
non-empty intersection with another CFL are not
Assignment #2
See Webcourses (Assignment # 2) for description
Sample of
Similar Problems with Solutions
Due: 2/6 (Key)
Week#4: (1/28,
1/30) -- Computability Theory
- Insights from intro to
computability material
- Basic notions of computability and complexity
- Existence of unsolvable problems (counting and
diagonalization)
- Solved, solvable (decidable, recursive), 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
non-re
- Halting Problem seen as fun
- Some consequences of non-re nature of
algorithms
- Models of computation
- Turing machines
- Register machines
- Factor replacement systems (FRS)
- 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
- Primitive recursive functions SNAP, TERM, STP and VALUE
- Primitive Recursive Function in detail
- 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
- Notions of instantaneous descriptions
- Encodings
- Equivalence of models
- TMs to Register Machines
- RM to Factor Replacement Systems
Week#5: (2/4, 2/6)
-- Computability Theory
- 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
- The set of all re sets W0, W1, W2,
...
- Enumeration Theorem
- The set K = { n | n is in the
n-th re set } = { n | n is in Wn } is re,
non-recursive
- The set K0 = HALT
= { <n,x> | x is in the n-th re set }
- Alternative characterizations of re sets
- Parameter Theorem (aka Sm,n Theorem)
Assignment #3
See Webcourses (Assignment # 3) for description
Sample of
Similar Problems with Solutions
Due: 2/18 (Key)
Week#6: (2/11, 2/13) -- Computability Theory
- Quantification and re sets
- Quantification and Co-re sets
- Diagonalization revisited (set of algorithms is non-re
and K0 (Lu) = HALT is non-rec)
- Reduction
- Classic sets Ko (Lu), NON-EMPTY (Lne),
EMPTY (Le)
- Reduction from Ko that
shows undecidability of K, HasZero, IsNonEmpty
- Complete re set (K and K0 as
examples)
- Note: To be re-complete a set must be re
- Reduction from Ko that
shows undecidability of K, HasIndentity, TOTAL,
IsZero, IsEmpty, IsIdentity
- Equivalence of certain re
sets (K, HasZero, IsNonEmpty, HasIndentity) to Ko
- Equivalence of certain non-re
sets (IsZero, IsEmpty, IsIdentity) to TOTAL
- Quantification of Non-re,
Non-Co-re sets
- Reducibility and degrees (many-one, one-one, Turing)
- Hierarchy or RE equivalence
class (m-1 and 1-1 degrees)
- Rice's Theorem
Assignment #4
See Webcourses
(Assignment # 4) for description
Sample with key
Due: 2/25 (Key)
Week#7: (2/18, 2/20) -- Computability Theory
- "Picture" proofs for Rice's Theorem
- Constant Time and Mortal Machines
- Introduction to rewriting systems (Thue, Post)
- Union, intersection, complement for recursive, re
and non-re sets (can be, cannot be)
- Rewriting systems
- Post Canonical Forms
- Thue and Semi-Thue systems (relation to group theory)
- Word problems (Seni-Thue and Thue) and equivalence
problems (Thue)
- Brief introduction to Post Correspondence Systems and
Relation to Semi-Thue Systems
Week#8: (2/26, 2/28) -- Computability Theory
- Simulating Turing Machine by Semi-Thue System
- Simulating Turing Machines by Thue Systems
- Grammars and re sets
- Post Correspondence Problem (in detail)
- Unsolvable problems related to context-free
grammars/languages
- Ambiguity of CFGs
- Non-Emptiness of CFL Intersections
- 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 = Sigma* for L a
Regular or CFL
- L=L^2 for L a CFL
- Summary of Grammar Results
- Review session and sample
exams
- Exam Topics
- Sample exam1;
Sample exam1
key
- Sample exam2;
Sample exam2
key
- Key to Samples from Notes
- Yet Other Examples (Focused on
Formal Languages and Automata Theory)
- Yet Other Examples key (Focused
on Formal Languages and Automata Theory)
- Midterm Legal Cheat Sheet
Week#9: (3/3, 3/5) -- Complexity Theory
- Midterm
(Tuesday)
- 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
- SAT is polynomial reducible
to (<=P) 3SAT
- 3SAT as a second NP-Complete
problem
- Integer Linear Programming
Week#10: SPRING BREAK
Week#11: (3/17, 3/19, (3/20
is Withdrawal Deadline)) -- Complexity Theory
- The Big
Challenge we have is going online for the rest of the
semester.
- Note: 3/20 is the Withdraw
Deadline
- 3SAT <=P SubsetSum
- SubsetSum <=P Partition
- Partition equivalence to SubsetSum
- Discussion of group
presentations
- Reduction of 3SAT to k-Vertex
Cover
- 3-SAT to 3-Coloring
- Isomophism of k-Coloring with
k-Register Aloocation of live variables
- 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 based in list, sorted long to short, sorted short to
long, optimal. Tradeoffs.
- Scheduling anomalies, level
strategy for UET trees, level strategy for UET dags
- Precedences (lists, delays,
preemption)
- Anomalies (reducing
precedence, increasing processors, reducing times)
- Midterm Key
Assignment #5
See Webcourses
(Assignment # 5) for description
Sample with Key
Week#12: (3/24,
3/26) -- Complexity Theory
- Unit Execution Time: Trees,
forest, anti forests
- UET: DAGs and m=2
- Hamiltonian Path
- Traveling Salesman
- Knapsack (relation to SubsetSum), Dynamic Programming Approach
- 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
- Tiling the plane and Bounded Tiling
- Bounded PCP
- Co-NP
- Reduction techniques
- 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
- 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
- Optimization versions of SubsetSum
and of K-Color
- I am now requiring that each
of you to develop a paper and a presentation, based on a an
existing research paper, just as if you had to present to your
peers and advisors. In addition to presenting the results and
the way in which these were proven, you should comment
on the paper's importance, readability, and
replicability, and even its validity if you question that,
just as if you were a journal or conference reviewer. The
length of the paper is 6 to 12 pages double-spaced,
1" margins all around, using either Times Roman or Calibri
11 point, or Arial 10-point. The references are in addition
to the narrative and appear on a separate page.
Images may be used but if the total number of images exceeds a
page, then all past that one page aggregate will lead to a
requirement for additional text. The presentation must be
designed as if you would be using it to be as part of a
12-minute discussion to your classmates. Note: For shorter
papers you may (likely will) need to investigate some cited
works.
- I have placed over 50 sample papers
out there at SampleTopics. You
may choose from any of these except for ones that have already
been taken. You may also choose your own separate from these
with permission from me. In general, the minimum page length
in IEEE 2-column format is 8 pages or 10 pages in single
column, single-spaced layout. The prefix CLAIMED_NAME means
NAME has already chosen that. Actually, the one case already
Claimed is from someone who sent the paper my way. Please send
me an email to assure you "claim."
- Realize that many of these
are from arXiv and, while arXiv is a fantastic source, it is
not refereed so if you question the validity of some result,
that is actually a reasonable outcome so long as you present
their approach and your counterarguments just as if you were a
reviewer.
This folder
contains some examples (papers and presentations) from past
semesters.
- Final Exam will need
to be done at home. I need to know that each of you has a web
cam so we can use some of the exam proctoring tools developed
for remote exam taking. If you do not, let me know ASAP.
Final Paper
and PowerPoint
Read above. Its weight is now at least 125
points.
It goes higher if you attack a challenging topic and do
really well on it.
Note that I increased the bonus weight to 50 and allow it
on the Paper/Presentation
Due: 4/23
Assignment #6
See
Webcourses (Assignment # 6) for description
Sample with Key
Due: 4/7 (Key)
Week#13: (3/31,
4/2) -- Complexity Theory, More Notes
- Clean-up (PSPACE, NPSPACE,
CO-PSPACE, PSPACE-COMPLETE)
- EXPSPACE, EXPTIME, NEXPTIME
- ATM (Alternating NDTM)
- QSAT. Petri Nets, Presburger
- Validity of SubsetSum
optimization reduction to SubsetSum Decision Problem Oracle
- 2SAT (linear time complexity)
- Uniform Min-1 is NP Equivalent
- Propositional Calculus
Axiomatizable Fragments
Unsolvability for Membership in Fragments of
Diadic Partial Implicational Propositional Calculus
Week#14: (4/7,
4/9)
- Finite Convergence
Finite Power Problem for CFLs
Revisit Set Real-Time
(Constant-Time)
Real-Time and Mortal
Machiness
- 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)
Week#15: (4/14, 4/16)
- Final Exam
Topics
- More stuff for
final
- Sample Final Exam
(Key)
Week#16: (4/21
-- Final Exam)
- All Project Papers and Presentations are Due
on Wednesday, 4/23 by midnight
- Final Exam will need to be done at home. It will be on Webcourses and you will be on
your honor.
Final Exam is Tuesday April 21; 1:00PM to 3:50PM at Home
İ UCF (Charles E. Hughes)
-- Last Modified 4/17/2020