5
Turing Machine Model Are there computations that no “reasonable” computing machine can perform? the machine should not store the answer to all possible problems it should process information (execute instructions) at a finite speed it is capable of performing a particular computation only if it can generate the answer in a finite number of steps Alan M. Turing (1912-1954) in 1936 defined an abstract model for use in describing the decision problem Processor Read/Write Head ... ... Data Tape

Turing Machine Model

  • Upload
    fiona

  • View
    33

  • Download
    0

Embed Size (px)

DESCRIPTION

Turing Machine Model. Are there computations that no “reasonable” computing machine can perform? the machine should not store the answer to all possible problems it should process information (execute instructions) at a finite speed - PowerPoint PPT Presentation

Citation preview

Page 1: Turing Machine Model

Turing Machine Model• Are there computations that no “reasonable” computing machine can perform?

– the machine should not store the answer to all possible problems

– it should process information (execute instructions) at a finite speed

– it is capable of performing a particular computation only if it can generate the answer in a finite number of steps

• Alan M. Turing (1912-1954) in 1936 defined an abstract model for use in describing the decision problem

Processor

Read/Write Head

... ...Data Tape

Page 2: Turing Machine Model

Diagramming a Turing MachineHalt

%

S0

R

Y

b

Y

%

Halt

S2

R

S1

R

S3

R

X b

Y

bL

%

XHalt

X b

L

@

R

“The Turing Machine”, Isaac Malitz, Byte, November 1987, pp 345-357.

Page 3: Turing Machine Model

Finite State Automatons

• A Finite-State Automaton (FSA) consists of:– a set I, the input alphabet;– a set S, the states;– an initial state;– a subset of S called accepting states;– a state transition function N: S x I S

• N(s,m) is the state to which the FSA goes if m is the input when the FSA is in state s.

Page 4: Turing Machine Model

Petri Nets• A Petri Net is a bipartite directed graph and consists of:

– a set P of places (a state in which the system could be observed);– a set T of transitions (the rules “fire” causing state changes);– an input function I:T P*; a mapping from transitions to

“bags” of places– an output function O:T P*; a mapping from transitions to

“bags” of places;– a marking M:P {0,1,2,…} which assigns tokens to places:

• M’(p) = M(p) + 1 if p is a member of O(t) and p is not a member of I(t),

• M’(p) = M(p) - 1 if p is a member of I(t) and p is not a member of O(t),

• M’(p) = M(p) otherwise.– a transition is enabled if M(p) > 0 for all p members of I(t)

Page 5: Turing Machine Model

A Marked Petri Net Example

T7

T2

T4

T3

T5

T6

T8

T10

T9

T1

I1 O1P1 P2 P3P4

P5

P6

P7

P8

P9

P10

P11

P12