Linear Bounded Automata Lbas
Total Page:16
File Type:pdf, Size:1020Kb
Linear Bounded Automata LBAs Costas Busch - RPI 1 Linear Bounded Automata (LBAs) are the same as T uring M achines w ith one difference: T he input string tape space is the only tape space allow ed to use Costas Busch - RPI 2 Linear Bounded Automaton (LBA) Input string [ a b c d e ] W orking space Left-end in tape R ight-end marker marker All computation is done betw een end markers Costas Busch - RPI 3 W e define LBA’s as N onD eterministic O pen Problem: N onD eterministic LBA’s have same pow er w ith D eterministic LBA’s ? Costas Busch - RPI 4 Example languages accepted by LBAs: L = {anbncn} L = {an!} LBA’s have more pow er than N PD A’s LBA’s have also less pow er than T uring M achines Costas Busch - RPI 5 T he Chomsky H ierarchy Costas Busch - RPI 6 U nrestricted G rammars: Productions u → v S tring of variables S tring of variables and terminals and terminals Costas Busch - RPI 7 Example unrestricted grammar: S → aBc aB → cA Ac → d Costas Busch - RPI 8 T heorem: A language L is recursively enumerable if and only if L is generated by an unrestricted grammar Costas Busch - RPI 9 Context-S ensitive G rammars: Productions u → v S tring of variables S tring of variables and terminals and terminals and: | u | ≤ | v | Costas Busch - RPI 10 T he language {anbncn} is context-sensitive: S → abc | aAbc Ab → bA Ac → Bbcc bB → Bb aB → aa | aaA Costas Busch - RPI 11 T heorem: A language L is context sensistive if and only if L is accepted by a Linear-Bounded automaton O bservation: T here is a language w hich is context-sensitive but not recursive Costas Busch - RPI 12 T he Chomsky H ierarchy N on-recursively enumerable R ecursively-enumerable R ecursive Context-sensitive Context-free R egular Costas Busch - RPI 13 D ecidability Costas Busch - RPI 14 Consider problems w ith answ er Y E S or N O Examples: • D oes M achine M have three states ? • Is string w a binary number? • D oes D FA M accept any input? Costas Busch - RPI 15 A problem is decidable if some T uring machine decides (solves) the problem D ecidable problems: • D oes M achine M have three states ? • Is string w a binary number? • D oes D FA M accept any input? Costas Busch - RPI 16 T he T uring machine that decides (solves) a problem answ ers Y ES or N O for each instance of the problem Input Y E S problem T uring M achine instance N O Costas Busch - RPI 17 T he machine that decides (solves) a problem: • If the answ er is Y E S then halts in a yes state • If the answ er is N O then halts in a no state T hese states may not be final states Costas Busch - RPI 18 T uring M achine that decides a problem / E S states N O states Y E S and N O states are halting states Costas Busch - RPI 19 D ifference betw een R ecursive Languages and D ecidable problems For decidable problems: T he Y E S states may not be final states Costas Busch - RPI 20 S ome problems are undecidable: w hich means: there is no T uring M achine that solves all instances of the problem A simple undecidable problem: T he membership problem Costas Busch - RPI 21 T he M embership Problem Input: •T uring M achine M •S tring w Q uestion: D oes M accept w ? w∈ L(M )? Costas Busch - RPI 22 T heorem: T he membership problem is undecidable (there are M and w for w hich w e cannot decide w hether w ∈ L ( M ) ) Proof: Assume for contradiction that the membership problem is decidable Costas Busch - RPI 23 T hus, there exists a T uring M achine H that solves the membership problem M Y E S M accepts w H w N O M rejects w Costas Busch - RPI 24 Let L be a recursively enumerable language Let M be the T uring M achine that accepts L W e w ill prove that L is also recursive: w e w ill describe a T uring machine that accepts L and halts on any input Costas Busch - RPI 25 T uring M achine that accepts L and halts on any input M H Y E S accept w M accepts w ? w N O reject w Costas Busch - RPI 26 T herefore, L is recursive S ince L is chosen arbitrarily, every recursively enumerable language is also recursive But there are recursively enumerable languages w hich are not recursive Contradiction!!!! Costas Busch - RPI 27 T herefore, the membership problem is undecidable EN D O F PR O O F Costas Busch - RPI 28 Another famous undecidable problem: T he halting problem Costas Busch - RPI 29 T he H alting Problem Input: •T uring M achine M •S tring w Q uestion: D oes M halt on input w ? Costas Busch - RPI 30 T heorem: T he halting problem is undecidable (there are M and w for w hich w e cannot decide w hether M halts on input w ) Proof: Assume for contradiction that the halting problem is decidable Costas Busch - RPI 31 T hus, there exists T uring M achine H that solves the halting problem M Y E S M halts on w H w N O doesn’t M w halt on Costas Busch - RPI 32 Construction of H H Input: q Y E S initial tape contents y wM w q0 qn N O Encoding S tring of M w Costas Busch - RPI 33 Construct machine H ′ : If H returns Y E S then loop forever If H returns N O then halt Costas Busch - RPI 34 H′ H Loop forever Y E S qy qa qb wM w q0 qn N O Costas Busch - RPI 35 Construct machine H ˆ : Input: wM (machine M ) If M halts on input wM T hen loop forever Else halt Costas Busch - RPI 36 Hˆ copy wM wM wM H′ wM Costas Busch - RPI 37 R un machine H ˆ w ith input itself: Input: wHˆ (machine H ˆ ) If Hˆ halts on input wHˆ T hen loop forever Else halt Costas Busch - RPI 38 Hˆ on input wHˆ : If H ˆ halts then loops forever If H ˆ doesn’t halt then it halts N O N S EN S E !!!!! Costas Busch - RPI 39 T herefore, w e have contradiction T he halting problem is undecidable EN D O F PR O O F Costas Busch - RPI 40 Another proof of the same theorem: If the halting problem w as decidable then every recursively enumerable language w ould be recursive Costas Busch - RPI 41 T heorem: T he halting problem is undecidable Proof: Assume for contradiction that the halting problem is decidable Costas Busch - RPI 42 T here exists T uring M achine H that solves the halting problem M Y E S M halts on w H w N O doesn’t M w halt on Costas Busch - RPI 43 Let L be a recursively enumerable language Let M be the T uring M achine that accepts L W e w ill prove that L is also recursive: w e w ill describe a T uring machine that accepts L and halts on any input Costas Busch - RPI 44 T uring M achine that accepts L and halts on any input M H N O reject w M halts on w ? w Y E S accept w H alts on final state R un M w ith input w reject w H alts on non-final state Costas Busch - RPI 45 T herefore L is recursive S ince L is chosen arbitrarily, every recursively enumerable language is also recursive But there are recursively enumerable languages w hich are not recursive Contradiction!!!! Costas Busch - RPI 46 T herefore, the halting problem is undecidable EN D O F PR O O F Costas Busch - RPI 47.