210 likes | 324 Views
This lecture examines the space complexity of Deterministic Turing Machines (DTMs), including the definition of space bounds and classes of languages accepted by DTMs with multitape configurations. It discusses the relationship between time and space complexity, the tape compression theorem, and key complexity classes such as P, PSPACE, and EXP. Furthermore, the concepts of space-constructible and time-constructible functions are introduced along with the hierarchy theorems that delineate the relationships between these complexity classes.
E N D
Space • SpaceM(x) = # of cell that M visits on the work (storage) tapes during the computation on input x. • If M is a multitape DTM, then the work tapes do not include the input tape and the write-only output tape.
Space Bound • A DTM is said to have a space bound s(n) if for any input x with |x| < n, SpaceM(x) < max{1, s(n)}.
Time and Space • For any DTM with k work tapes, SpaceM(x) < K (TimeM(x) + 1)
Complexity Classes • A language L has a space complexity s(n) if it is accepted by a multitape with write-only output tape DTM with space bound s(n). • DSPACE(s(n)) = {L | L has space complexity s(n)}
Tape Compression Theorem • For any function s(n) and any constant c > 0, DSPACE(s(n)) = DSPACE(c·s(n))
Model Independent Classes c • P = U c>0 DTIME(n ) • EXP = U c > 0 DTIME(2 ) • EXPOLY = U c > 0 DTIME(2 ) • PSPACE = U c > 0 DSPACE(n ) cn c n c
Extended Church-Turing Thesis • A function computable in polynomial time in any reasonable computational model using a reasonable time complexity measure is computable by a DTM in polynomial time.
Space-constructible function • s(n) is fully space-constructible if there exists a DTM M such that for sufficiently large n and any input x with |x|=n, SpaceM(x) = s(n).
Space Hierarchy If • s2(n) is a fully space-constructible function, • s1(n)/s2(n) → 0 as n → infinity, • s1(n) > log n, then DSPACE(s2(n)) DSPACE(s1(n)) ≠ Φ
Time-constructible function • t(n) is fully time-constructible if there exists a DTM such that for sufficiently large n and any input x with |x|=n, TimeM(x) = t(n).
Time Hierarchy If • t1(n) > n+1, • t2(n) is fully time-constructible, • t1(n) log t1(n) /t2(n) → 0 as n → infinity, then DTIME(t2(n)) DTIME(t1(n)) ≠ Φ