




























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
Some concept of Automata and Complexity Theory are Administrivia, Closure Properties, Context-Free Grammars, Decision Properties, Deterministic Finite Automata, Intractable Problems, More Undecidable Problems. Main points of this lecture are: Polynomial Time, Efficient Algorithms, Running Time, Algorithm, Input, Longer Inputs, Efficiency, Function, Running Time, Input Size
Typology: Slides
1 / 36
This page cannot be seen from the preview
Don't miss anything!
The number 17 17 10001 ( 17 in base two) 11111111111111111
OK OK NO
This graph
0000,0010,0001,
1 2
3 4
OK (2,3),(3,4) (^) OK
java RAM machine Turing Machine if (x > 0) y = 5*y + x;
write r3; δ(q^3 , a) = (q^7 , b, R)
Efficiency and the Church-Turing thesis
are equivalent in power…
… but not in running time!
0 1 0 …
0 1 …
1 0 0 …
Γ = {0, 1, ☐, 0, 1,^ ^ ^ ☐ , #}
after t steps
O ( s ) steps of single tape TM s = rightmost cell ever visited
s ≤ 3 t + 4
1 step of 3-tape TM
t steps of 3-tape O ( ts ) = O ( t^2 ) single tape steps
multi-tape TM single tape TM
quadratic slowdown
qacc q 0 1/1R q 1 0/0R
what is the running time?
qrej
running time =
computation path: any possible sequence of transitions
max length of any computation path
For all possible strings a of length k Copy x to z. Simulate N on input z using a as choices If a specifies an invalid choice or simulation loops/rejects, abandon simulation. If N enters its accept state, accept and halt. If N rejected on all a s of length k , reject and halt.
running time of N is t simulation will halt when k = t
running time of simulation= (running time for specific a ) × (number of a s of length ≤ t ) = O( t ) × 2 O( t )^ = 2^ O( t )
multi-tape java TM
RAM machine single tape TM
O ( t ) (^) O ( t ) O ( t^2 )
O ( t^2 ) O ( t ) O ( t )
nondeterministic TM
2 O( t )
Do nondeterministic TM violate the Cobham-Edmonds thesis?
CSC 3230 CSC 2110
CSC 3130 CSC 3160
Can you schedule final exams so that there are no conflicts?
Exams → vertices
Slots → colors
Conflicts → edges Y R B
schedule(int n, Edges edges) { for i := 1 to n: choose { c[i] := Y; } or { c[i] := R; } or { c[i] := B; } for all e in edges: if c[e.left] == c[e.right] reject; accept; }
schedule(int n, Edges edges) { for i := 1 to n: choose { c[i] := Y; } or { c[i] := R; } or { c[i] := B; } for all e in edges: if c[e.left] == c[e.right] reject; accept; }
In reality, programming languages don’t allow us to choose
We have to tell the computer how to make these choices