Top Banner
Courtesy Costas Busch - R PI 1 Linear Bounded Automata LBAs
47
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 1

Linear Bounded AutomataLBAs

Page 2: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 2

Linear Bounded Automata (LBAs)are the same as Turing Machineswith one difference:

The input string tape spaceis the only tape space allowed to use

Page 3: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 3

[ ]a b c d e

Left-endmarker

Input string

Right-endmarker

Working space in tape

All computation is done between end markers

Linear Bounded Automaton (LBA)

Page 4: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 4

We define LBA’s as NonDeterministic

Open Problem:

NonDeterministic LBA’shave same power withDeterministic LBA’s ?

Page 5: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 5

Example languages accepted by LBAs:

}{ nnn cbaL

}{ !naL

LBA’s have more power than NPDA’s

LBA’s have also less power than Turing Machines

Page 6: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 6

The Chomsky Hierarchy

Page 7: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 7

Unrestricted Grammars:

Productionsvu

String of variablesand terminals

String of variablesand terminals

Page 8: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 8

Example unrestricted grammar:

dAc

cAaB

aBcS

Page 9: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 9

A language is recursively enumerableif and only if is generated by anunrestricted grammar

LL

Theorem:

Page 10: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 10

Context-Sensitive Grammars:

and: |||| vu

Productionsvu

String of variablesand terminals

String of variablesand terminals

Page 11: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 11

The language }{ nnn cba

is context-sensitive:

aaAaaaB

BbbB

BbccAc

bAAb

aAbcabcS

|

|

Page 12: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 12

A language is context sensistive if and only if is accepted by a Linear-Bounded automatonL

LTheorem:

There is a language which is recursivebut not context-sensitive

Observation:

Page 13: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 13

Non-recursively enumerable

Recursively-enumerable

Recursive

Context-sensitive

Context-free

Regular

The Chomsky Hierarchy

Page 14: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 14

Decidability

Page 15: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 15

Consider problems with answer YES or NO

Examples:

• Does Machine have three states ?M

• Is string a binary number? w

• Does DFA accept any input? M

Page 16: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 16

A problem is decidable if some Turing machinedecides (solves) the problem

Decidable problems:

• Does Machine have three states ?M

• Is string a binary number? w

• Does DFA accept any input? M

Page 17: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 17

Turing MachineInputprobleminstance

YES

NO

The Turing machine that decides (solves) a problem answers YES or NO for each instance of the problem

Page 18: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 18

The machine that decides (solves) a problem:

• If the answer is YES then halts in a yes state

• If the answer is NO then halts in a no state

These states may not be final states

Page 19: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 19

YES states

NO states

Turing Machine that decides a problem

YES and NO states are halting states

Page 20: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 20

Difference between

Recursive Languages and Decidable problems

The YES states may not be final states

For decidable problems:

Page 21: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 21

Some problems are undecidable:

which means:there is no Turing Machine thatsolves all instances of the problem

A simple undecidable problem:

The membership problem

Page 22: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 22

The Membership Problem

Input: •Turing MachineM

•String w

Question: Does accept ? M w

?)(MLw

Page 23: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 23

Theorem:

The membership problem is undecidable

Proof: Assume for contradiction thatthe membership problem is decidable

(there are and for which we cannotdecide whether )

M w)(MLw

Page 24: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 24

Thus, there exists a Turing Machinethat solves the membership problem

H

HM

w

YES M accepts w

NO M rejects w

Page 25: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 25

Let be a recursively enumerable language L

Let be the Turing Machine that acceptsM L

We will prove that is also recursive: L

we will describe a Turing machine thataccepts and halts on any inputL

Page 26: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 26

M accepts ?wNO

YESM

w

Hacceptw

Turing Machine that acceptsand halts on any input

L

reject w

Page 27: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 27

Therefore, L is recursive

But there are recursively enumerablelanguages which are not recursive

Contradiction!!!!

Since is chosen arbitrarily, every recursively enumerable language is also recursive

L

Page 28: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 28

Therefore, the membership problem is undecidable

END OF PROOF

Page 29: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 29

Another famous undecidable problem:

The halting problem

Page 30: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 30

The Halting Problem

Input: •Turing MachineM

•String w

Question: Does halt on input ? M w

Page 31: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 31

Theorem:

The halting problem is undecidable

Proof: Assume for contradiction thatthe halting problem is decidable

(there are and for which we cannotdecide whether halts on input )

M wM w

Page 32: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 32

Thus, there exists Turing Machinethat solves the halting problem

H

HM

w

YES M halts on w

Mdoesn’t halt on

wNO

Page 33: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 33

H

wwM 0q

yq

nq

Input:initial tape contents

Encodingof M w

String

YES

NO

Construction of H

Page 34: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 34

Construct machine :H

If returns YES then loop forever H

If returns NO then haltH

Page 35: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 35

H

wwM 0q

yq

nq NO

aq bq

H

Loop forever

YES

Page 36: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 36

HConstruct machine :

Input:

If M halts on input Mw

Then loop forever

Else halt

Mw (machine )M

Page 37: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 37

MwMM wwcopy

MwH

H

Page 38: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 38

HRun machine with input itself:

Input:

If halts on input

Then loop forever

Else halt

Hw ˆ (machine )H

H Hw ˆ

Page 39: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 39

on input H Hw ˆ

If halts then loops forever

If doesn’t halt then it halts

:

H

H

NONSENSE !!!!!

Page 40: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 40

Therefore, we have contradiction

The halting problem is undecidable

END OF PROOF

Page 41: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 41

Another proof of the same theorem:

If the halting problem was decidable thenevery recursively enumerable languagewould be recursive

Page 42: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 42

Theorem:

The halting problem is undecidable

Proof: Assume for contradiction thatthe halting problem is decidable

Page 43: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 43

There exists Turing Machinethat solves the halting problem

H

HM

w

YES M halts on w

Mdoesn’t halt on

wNO

Page 44: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 44

Let be a recursively enumerable language L

Let be the Turing Machine that acceptsM L

We will prove that is also recursive: L

we will describe a Turing machine thataccepts and halts on any inputL

Page 45: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 45

M halts on ?wYES

NOM

w

Run with input

Mw

Hreject w

acceptw

rejectw

Turing Machine that acceptsand halts on any input

L

Halts on final state

Halts on non-final state

Page 46: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 46

Therefore L is recursive

But there are recursively enumerablelanguages which are not recursive

Contradiction!!!!

Since is chosen arbitrarily, every recursively enumerable language is also recursive

L

Page 47: Courtesy Costas Busch - RPI1 Linear Bounded Automata LBAs.

Courtesy Costas Busch - RPI 47

Therefore, the halting problem is undecidable

END OF PROOF