T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE &...

88
TURING MACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 FORMAL LANGUAGE & AUTOMATA THEORY Aug-Dec,2010

Transcript of T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE &...

Page 1: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

TURING MACHINE

ALAK ROY.Assistant ProfessorDept. of CSENIT Agartala

CSE-501 FORMAL LANGUAGE & AUTOMATA

THEORYAug-Dec,2010

Page 2: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

2

The Language Hierarchy

*aRegular Languages

Context-Free Languagesnnba Rww

nnn cba ww?

**ba

?

Page 3: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

3

*aRegular Languages

Context-Free Languagesnnba Rww

nnn cba ww

**ba

Languages accepted byTuring Machines

Page 4: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

4

A Turing Machine

............Tape

Read-Write head

Control Unit

Page 5: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

5

The Tape

............

Read-Write head

No boundaries -- infinite length

The head moves Left or Right

Page 6: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

6

............

Read-Write head

The head at each time step:

1. Reads a symbol 2. Writes a symbol 3. Moves Left or Right

Page 7: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

7

............

Example:Time 0

............Time 1

1. Reads

2. Writes

a a cb

a b k c

a

k3. Moves Left

Page 8: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

8

............Time 1

a b k c

............Time 2

a k cf

1. Reads

2. Writes

bf

3. Moves Right

Page 9: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

9

The Input String

............

Blank symbol

head

a b ca

Head starts at the leftmost positionof the input string

Input string

Page 10: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

10

............

Blank symbol

head

a b ca

Input string

Remark: the input string is never empty

Page 11: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

11

States & Transitions

1q 2qLba ,

Read Write Move Left

1q 2qRba ,

Move Right

Page 12: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

12

Example:

1q 2qRba ,

............ a b ca

Time 1

1qcurrent state

Page 13: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

13

............ a b caTime 1

1q 2qRba ,

............ a b cbTime 2

1q

2q

Page 14: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

14

............ a b caTime 1

1q 2qLba ,

............ a b cbTime 2

1q

2q

Example:

Page 15: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

15

............ a b caTime 1

1q 2qRg,

............ ga b cbTime 2

1q

2q

Example:

Page 16: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

16

Determinism

1q

2qRba ,

Allowed Not Allowed

3qLdb ,

1q

2qRba ,

3qLda ,

No lambda transitions allowed

Turing Machines are deterministic

Page 17: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

17

Partial Transition Function

1q

2qRba ,

3qLdb ,

............ a b ca

1q

Example:

No transitionfor input symbol c

Allowed:

Page 18: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

18

Halting

The machine halts if there areno possible transitions to follow

Page 19: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

19

Example:

............ a b ca

1q

1q

2qRba ,

3qLdb ,

No possible transition

HALT!!!

Page 20: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

20

Final States

1q 2q Allowed

1q 2q Not Allowed

• Final states have no outgoing transitions

• In a final state the machine halts

Page 21: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

21

Acceptance

Accept Input If machine halts in a final state

Reject Input

If machine halts in a non-final state or If machine enters an infinite loop

Page 22: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

22

Turing Machine Example

A Turing machine that accepts the language:

*aa

0q

Raa ,

L,1q

Page 23: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

23

aaTime 0

0q

a

0q

Raa ,

L,1q

Page 24: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

24

aaTime 1

0q

a

0q

Raa ,

L,1q

Page 25: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

25

aaTime 2

0q

a

0q

Raa ,

L,1q

Page 26: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

26

aaTime 3

0q

a

0q

Raa ,

L,1q

Page 27: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

27

aaTime 4

1q

a

0q

Raa ,

L,1q

Halt & Accept

Page 28: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

28

Rejection Example

0q

Raa ,

L,1q

baTime 0

0q

a

Page 29: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

29

0q

Raa ,

L,1q

baTime 1

0q

a

No possible Transition

Halt & Reject

Page 30: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

30

Infinite Loop Example

0q

Raa ,

L,1q

Lbb ,

A Turing machine for language *)(* babaa

Page 31: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

31

baTime 0

0q

a

0q

Raa ,

L,1q

Lbb ,

Page 32: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

32

baTime 1

0q

a

0q

Raa ,

L,1q

Lbb ,

Page 33: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

33

baTime 2

0q

a

0q

Raa ,

L,1q

Lbb ,

Page 34: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

34

baTime 2

0q

a

baTime 3

0q

a

baTime 4

0q

a

baTime 5

0q

a

Infinite

loop

Page 35: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

35

Because of the infinite loop:

•The final state cannot be reached

•The machine never halts

•The input is not accepted

Page 36: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

FORMAL DEFINITIONSFOR TURING MACHINES

36

Page 37: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

37

Transition Function

1q 2qRba ,

),,(),( 21 Rbqaq

Page 38: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

38

1q 2qLdc ,

),,(),( 21 Ldqcq

Transition Function

Page 39: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

39

Turing Machine:

),,,,,,( 0 FqQM

States

Inputalphabet

Tapealphabet

Transitionfunction

Initialstate

blank

Finalstates

Page 40: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

40

Configuration

ba

1q

a

Instantaneous description:

c

baqca 1

Page 41: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

41

yx

2q

a b

Time 4

yx

0q

a b

Time 5

A Move: aybqxxaybq 02

Page 42: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

42

yx

2q

a b

Time 4

yx

0q

a b

Time 5

bqxxyybqxxaybqxxaybq 1102

yx

1q

x b

Time 6

yx

1q

x b

Time 7

Page 43: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

43

bqxxyybqxxaybqxxaybq 1102

bqxxyxaybq 12

Equivalent notation:

Page 44: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

44

Initial configuration: wq0

ba

0q

a b

w

Input string

Page 45: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

45

The Accepted Language

For any Turing Machine M

}:{)( 210 xqxwqwML f

Initial state Final state

Page 46: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

46

Standard Turing Machine

• Deterministic

• Infinite tape in both directions

•Tape is the input/output file

The machine we described is the standard:

Page 47: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

COMPUTING FUNCTIONSWITH TURING MACHINES

47

Page 48: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

48

A function )(wf

Domain: Result Region:

has:

D

Dw

S

Swf )()(wf

Page 49: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

49

A function may have many parameters:

yxyxf ),(

Example: Addition function

Page 50: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

50

Integer Domain

Unary:

Binary:

Decimal:

11111

101

5

We prefer unary representation:

easier to manipulate with Turing machines

Page 51: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

51

Definition:

A function is computable ifthere is a Turing Machine such that:

fM

Initial configuration Final configuration

Dw Domain

0q

w

fq

)(wf

final stateinitial state

For all

Page 52: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

52

)(0 wfqwq f

Initial Configuration

FinalConfiguration

A function is computable ifthere is a Turing Machine such that:

fM

In other words:

Dw DomainFor all

Page 53: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

53

Example

The function yxyxf ),( is computable

Turing Machine:

Input string: yx0 unary

Output string: 0xy unary

yx, are integers

Page 54: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

54

0

0q

1 1 1 1

x y

1 Start

initial state

The 0 is the delimiter that separates the two numbers

Page 55: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

55

0

0q

1 1 1 1

x y

1

0

fq

1 1

yx

11

Start

Finish

final state

initial state

Page 56: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

56

0

fq

1 1

yx

11Finish

final state

The 0 helps when we usethe result for other operations

Page 57: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

57

0q

Turing machine for function

1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

yxyxf ),(

Page 58: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

58

Execution Example:

11x

11y 0

0q

1 1 1 1

Time 0

x y

Final Result

0

4q

1 1 1 1

yx

(2)

(2)

Page 59: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

59

0

0q

1 1Time 0

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

1 1

Page 60: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

60

0q

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

01 11 1Time 1

Page 61: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

61

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

0

0q

1 1 1 1Time 2

Page 62: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

62

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

1q

1 11 11Time 3

Page 63: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

63

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

1q

1 1 1 11Time 4

Page 64: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

64

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

1q

1 11 11Time 5

Page 65: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

65

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

2q

1 1 1 11Time 6

Page 66: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

66

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

3q

1 11 01Time 7

Page 67: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

67

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

3q

1 1 1 01Time 8

Page 68: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

68

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

3q

1 11 01Time 9

Page 69: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

69

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

3q

1 1 1 01Time 10

Page 70: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

70

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

3q

1 11 01Time 11

Page 71: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

71

0q 1q 2q 3qL, L,01

L,11

R,

R,10

R,11

4q

R,11

4q

1 1 1 01

HALT & accept

Time 12

Page 72: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

72

Another Example – SELF STUDY

The function xxf 2)( is computable

Turing Machine:

Input string: x unary

Output string: xx unary

x is integer

Page 73: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

73

0q

1 1

x

1

1

fq

1 1

x2

11

Start

Finish

final state

initial state

Page 74: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

74

Turing Machine Pseudocode for xxf 2)(

• Replace every 1 with $

• Repeat:

• Find rightmost $, replace it with 1

• Go to right end, insert 1

Until no more $ remain

Page 75: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

75

0q 1q 2q

3q

R,1$

L,1

L,

R$,1 L,11 R,11

R,

Turing Machine for xxf 2)(

Page 76: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

76

0q 1q 2q

3q

R,1$

L,1

L,

R$,1 L,11 R,11

R,

Example

0q

1 1

3q

1 11 1

Start Finish

Page 77: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

77

Block Diagram

TuringMachine

input output

Page 78: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

TURING’S THESIS

78

Page 79: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

79

Turing’s thesis:

Any computation carried outby mechanical meanscan be performed by a Turing Machine

(1930)

Page 80: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

80

Computer Science Law:

A computation is mechanical if and only ifit can be performed by a Turing Machine

There is no known model of computationmore powerful than Turing Machines

Page 81: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

81

Definition of Algorithm:

An algorithm for functionis a Turing Machine which computes

)(wf

)(wf

Page 82: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

82

When we say:

There exists an algorithm

Algorithms are Turing Machines

We mean:

There exists a Turing Machinethat executes the algorithm

Page 83: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

Construct a Turing Machine:

• Construct a TM to accept the set L of all strings over {0,1} ending with 010.

83

Page 84: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

Can a TM simulate a TM?

Can one TM simulate every TM?

Yes, obviously.

Page 85: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

An Any TM Simulator

Input: < Description of some TM m, w >Output: result of running m on w

UniversalTuring

Machine

m

w

Output Tapefor runningTM- m starting on tape w

Page 86: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

Universal Turing Machine (UTM)

• functional notation of UTM:

U(“m”“w”) = “m(w)”• takes 2 arguments:

– m : a description of a Turing Machine TM– w : description of an input string w

• have 2 properties:– UTM halts on input “m” “w” if & only if TM halts on

input “w”.

86

Page 87: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

Halting Problem

87

Page 88: T URING M ACHINE ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala CSE-501 F ORMAL L ANGUAGE & A UTOMATA T HEORY Aug-Dec,2010.

THANK YOU88