turing machine: structure and operational functionality

83
Structure and Operational Functionality of The Turing Machine 11 — 13 — 2008 oren Wellh¨ ofer

Upload: soeren-wellhoefer

Post on 10-Apr-2015

3.370 views

Category:

Documents


0 download

DESCRIPTION

This is a professional PDFLaTeX Presenatation about the Turing Machine, its theoretical backgrounds as well as the key concepts surrounding its fundamental ideas.Since the model of a Turing Machine is embedded in various contexts of computational theory, this presentation makes the attempt to teach them in an easy-to-understand manner and to offer a wide range of illustrious means to do so.Officially, this presentation was held only once in a computer science class but since it offers a good general synopsis and summary about the key concepts of the Turing Machine it might be used as a readily available review possibility or as a way of teaching and learning it as new material.

TRANSCRIPT

Page 1: Turing Machine: Structure and Operational Functionality

Structure and Operational Functionality of

The Turing Machine

11—13—2008

Soren Wellhofer

Page 2: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Table of Contents

1 History

2 Structure and Definition

3 Samples

4 Varieties

5 Computability

6 References

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 3: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Time frame — The 20th century

What were mathematicians working on?

• Rediscover Theory of Numbers

• Reduction of all math to fundamental logic

• Arithmetics/computations by means of automatic formalsystem

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 4: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Time frame — The 20th century

What were mathematicians working on?

• Rediscover Theory of Numbers

• Reduction of all math to fundamental logic

• Arithmetics/computations by means of automatic formalsystem

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 5: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Time frame — The 20th century

What were mathematicians working on?

• Rediscover Theory of Numbers

• Reduction of all math to fundamental logic

• Arithmetics/computations by means of automatic formalsystem

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 6: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Time frame — The 20th century

What were mathematicians working on?

• Rediscover Theory of Numbers

• Reduction of all math to fundamental logic

• Arithmetics/computations by means of automatic formalsystem

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 7: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

What does it mean to be computable?

Turing’s achievements

• Proof of the possibility of a symbol-processing machine

• Simple operations according to rules

• Instruction tables for machine’s moves = formal system

• All computations logically feasible!

→ wrote first programmes

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 8: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

What does it mean to be computable?

Turing’s achievements

• Proof of the possibility of a symbol-processing machine

• Simple operations according to rules

• Instruction tables for machine’s moves = formal system

• All computations logically feasible!

→ wrote first programmes

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 9: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

What does it mean to be computable?

Turing’s achievements

• Proof of the possibility of a symbol-processing machine

• Simple operations according to rules

• Instruction tables for machine’s moves = formal system

• All computations logically feasible!

→ wrote first programmes

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 10: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

What does it mean to be computable?

Turing’s achievements

• Proof of the possibility of a symbol-processing machine

• Simple operations according to rules

• Instruction tables for machine’s moves = formal system

• All computations logically feasible!

→ wrote first programmes

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 11: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

What does it mean to be computable?

Turing’s achievements

• Proof of the possibility of a symbol-processing machine

• Simple operations according to rules

• Instruction tables for machine’s moves = formal system

• All computations logically feasible!

→ wrote first programmes

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 12: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Elements of the Turing Machine

• Read/Write Head

• Infinetly long tape

• Divided into cells

• Cells containing symbols

• Action table = the program

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 13: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Elements of the Turing Machine

• Read/Write Head

• Infinetly long tape

• Divided into cells

• Cells containing symbols

• Action table = the program

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 14: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Elements of the Turing Machine

• Read/Write Head

• Infinetly long tape

• Divided into cells

• Cells containing symbols

• Action table = the program

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 15: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 16: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 17: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 18: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 19: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 20: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 21: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 22: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 23: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 24: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

Infinetly long ...

�� �� ���� �� �� 0 0 00

Tape

Read/Write Head

A

Machine’s State

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 25: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 0 0 00

Read/Write Head

A

Machine’s State

Now action accordingto state table

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 26: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 0 0 00

Read/Write Head

A

Machine’s State

State table might say:When in state A reading 0:write 1, move right, changestate to B.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 27: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 1 0 00

Read/Write Head

A

Machine’s State

State table might say:When in state A reading 0:write 1, move right, changestate to B.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 28: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 1 0 00

Read/Write Head

A

Machine’s State

Move right

State table might say:When in state A reading 0:write 1, move right, changestate to B.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 29: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 1 0 00

AMove right

State table might say:When in state A reading 0:write 1, move right, changestate to B.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 30: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 1 0 00

BNew state B

State table might say:When in state A reading 0:write 1, move right, changestate to B.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 31: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

The Turing Machine

�� �� ���� �� �� 1 0 00

B

Now read again, etc ...

... until final configuration.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 32: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of states

Γ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 33: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbols

b ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 34: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbol

Σ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 35: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbols

δ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 36: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of states

s0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 37: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial state

F ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 38: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 39: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 40: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Formal definition — 7-tupel

M = 〈S , Γ, b, Σ, δ, s0, F 〉

S Finite set of statesΓ Finite set of symbolsb ∈ Γ Blank symbolΣ ⊆ Γ \ {b} Input symbolsδ : S × Γ× {L, R} Finite set of statess0 ∈ S Initial stateF ⊆ S Accepting states

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 41: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Action table/Transition function δ — Quintupel

siaj −→ si1aj1dk

When in state si reading symbol aj :

• write symbol aj1

• move into dk , k ∈ {L,R}• change state to si1

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 42: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Action table/Transition function δ — Quintupel

siaj −→ si1aj1dk

When in state si reading symbol aj :

• write symbol aj1

• move into dk , k ∈ {L,R}• change state to si1

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 43: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Action table/Transition function δ — Quintupel

siaj −→ si1aj1dk

When in state si reading symbol aj :

• write symbol aj1

• move into dk , k ∈ {L,R}

• change state to si1

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 44: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Action table/Transition function δ — Quintupel

siaj −→ si1aj1dk

When in state si reading symbol aj :

• write symbol aj1

• move into dk , k ∈ {L,R}• change state to si1

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 45: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Action table/Transition function δ — Quintupel

siaj −→ si1aj1dk

When in state si reading symbol aj :

• write symbol aj1

• move into dk , k ∈ {L,R}• change state to si1

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 46: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

General StructureFormal definitionAction table

Action table/Transition function δ — Quintupel

siaj −→ si1aj1dk

When in state si reading symbol aj :

• write symbol aj1

• move into dk , k ∈ {L,R}• change state to si1

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 47: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Numbers

n−→u

1−→X5−→XXXXX

n = mu... number of Xsn... natural number

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 48: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition — Self-performed

Simulating a Turing Machine:

Now it’s your turn!

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 49: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}

s0=0 b=B

Action table δ si = 0 si = 1aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = Raj = + si1 = 0; aj1 = X; dK = R —aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 50: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}s0=0 b=B

Action table δ si = 0 si = 1aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = Raj = + si1 = 0; aj1 = X; dK = R —aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 51: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}s0=0 b=B

Action table δ si = 0 si = 1

aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = Raj = + si1 = 0; aj1 = X; dK = R —aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 52: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}s0=0 b=B

Action table δ si = 0 si = 1aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = R

aj = + si1 = 0; aj1 = X; dK = R —aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 53: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}s0=0 b=B

Action table δ si = 0 si = 1aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = Raj = + si1 = 0; aj1 = X; dK = R —

aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 54: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}s0=0 b=B

Action table δ si = 0 si = 1aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = Raj = + si1 = 0; aj1 = X; dK = R —aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 55: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

Unary Number Addition Machine

S ={0, 1,HALT} Γ={B,X,+}F ={HALT} Σ={X,+}s0=0 b=B

Action table δ si = 0 si = 1aj = X si1 = 0; aj1 = X; dK = R si1 = HALT; aj1 = B; dK = Raj = + si1 = 0; aj1 = X; dK = R —aj = B si1 = 1; aj1 = B; dK = L —

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 56: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}

s0=0 b=B

Action table δ si = 0aj = 0 si1 = 0; aj1 = 1; dK = Raj = 1 si1 = 0; aj1 = 0; dK = Raj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 57: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}s0=0 b=B

Action table δ si = 0aj = 0 si1 = 0; aj1 = 1; dK = Raj = 1 si1 = 0; aj1 = 0; dK = Raj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 58: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}s0=0 b=B

Action table δ si = 0

aj = 0 si1 = 0; aj1 = 1; dK = Raj = 1 si1 = 0; aj1 = 0; dK = Raj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 59: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}s0=0 b=B

Action table δ si = 0aj = 0 si1 = 0; aj1 = 1; dK = R

aj = 1 si1 = 0; aj1 = 0; dK = Raj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 60: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}s0=0 b=B

Action table δ si = 0aj = 0 si1 = 0; aj1 = 1; dK = Raj = 1 si1 = 0; aj1 = 0; dK = R

aj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 61: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}s0=0 b=B

Action table δ si = 0aj = 0 si1 = 0; aj1 = 1; dK = Raj = 1 si1 = 0; aj1 = 0; dK = Raj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 62: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

AdditionClass activityComplement

A Complement Machine

S ={0,HALT} Γ={B, 0, 1}F ={HALT} Σ={0, 1}s0=0 b=B

Action table δ si = 0aj = 0 si1 = 0; aj1 = 1; dK = Raj = 1 si1 = 0; aj1 = 0; dK = Raj = B si1 = HALT; aj1 = B; dK = R

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 63: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Variations of the TMs ...

... provably equivalent

• Two-way infinite tapes

• Arbitrary movement of the head

• Arbitrary numbers of read-write heads

• Arbitrary finite alphabet

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 64: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Variations of the TMs ...

... provably equivalent

• Two-way infinite tapes

• Arbitrary movement of the head

• Arbitrary numbers of read-write heads

• Arbitrary finite alphabet

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 65: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

4-tupel representation

asi −→ si1dk

When in state si reading symbol a:

• change state to si1

• Take action d : move right/left orwrite

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 66: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

4-tupel representation

asi −→ si1dk

When in state si reading symbol a:

• change state to si1

• Take action d : move right/left orwrite

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 67: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

4-tupel representation

asi −→ si1dk

When in state si reading symbol a:

• change state to si1

• Take action d : move right/left orwrite

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 68: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

4-tupel representation

asi −→ si1dk

When in state si reading symbol a:

• change state to si1

• Take action d : move right/left orwrite

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 69: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

State diagram: successor of a unary number

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 70: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 71: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Instantaneous description

A Turing Machine in an instantaneous state.

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 72: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Universal Turing Machine

Features

• Emulates δ of other Turing Machines

• Von Neumann architecture

• Turing-completeness

... 010110101111 00 101011011 00 110110110111 0011010111011110 ...

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 73: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Universal Turing Machine

Features

• Emulates δ of other Turing Machines

• Von Neumann architecture

• Turing-completeness

... 010110101111 00 101011011 00 110110110111 0011010111011110 ...

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 74: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Universal Turing Machine

Features

• Emulates δ of other Turing Machines

• Von Neumann architecture

• Turing-completeness

... 010110101111 00 101011011 00 110110110111 0011010111011110 ...

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 75: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Variations4-tupelState diagramsInstantaneous descriptionUniversal Turing Machine

Universal Turing Machine

Features

• Emulates δ of other Turing Machines

• Von Neumann architecture

• Turing-completeness

... 010110101111 00 101011011 00 110110110111 0011010111011110 ...

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 76: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Computability

Computable

• Any number ifTM-representable(π, e,

√)

• Numerical functions(+, −,× ,÷)

Incomputable

• Entscheidungsproblem: Willany algorithm A witharbitrary input I halt?h(A, I ) is incomputable

• “Busy beaver” functionΣ(n)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 77: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Computability

Computable

• Any number ifTM-representable(π, e,

√)

• Numerical functions(+, −,× ,÷)

Incomputable

• Entscheidungsproblem: Willany algorithm A witharbitrary input I halt?h(A, I ) is incomputable

• “Busy beaver” functionΣ(n)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 78: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Computability

Computable

• Any number ifTM-representable(π, e,

√)

• Numerical functions(+, −,× ,÷)

Incomputable

• Entscheidungsproblem: Willany algorithm A witharbitrary input I halt?h(A, I ) is incomputable

• “Busy beaver” functionΣ(n)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 79: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Computability

Computable

• Any number ifTM-representable(π, e,

√)

• Numerical functions(+, −,× ,÷)

Incomputable

• Entscheidungsproblem: Willany algorithm A witharbitrary input I halt?h(A, I ) is incomputable

• “Busy beaver” functionΣ(n)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 80: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Church?Turing thesis

“Every effectively calculable function is a computablefunction.”

• Effectively calculable: produced intuitively

• Computable function: computable by a Turing Machine

Solvable by humans = Solvable by machines (algorithm)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 81: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Church?Turing thesis

“Every effectively calculable function is a computablefunction.”

• Effectively calculable: produced intuitively

• Computable function: computable by a Turing Machine

Solvable by humans = Solvable by machines (algorithm)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 82: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

Church?Turing thesis

“Every effectively calculable function is a computablefunction.”

• Effectively calculable: produced intuitively

• Computable function: computable by a Turing Machine

Solvable by humans = Solvable by machines (algorithm)

Soren Wellhofer Structure and Operational Functionality of The Turing Machine

Page 83: Turing Machine: Structure and Operational Functionality

HistoryStructure and Definition

SamplesVarieties

ComputabilityReferences

The Universal Turing Machine: A Half-Century SurveyR. HerkenNew York: Oxford University Press, 1988.

[http://plato.stanford.edu/entries/turing-machine/]Turing MachinesStanford Encyclopedia of Philosophy, 04.11.1995

[http://www.intelligentedu.com/turing machines examples.html]Turing Machines: ExamplesJaime Soffer, 2005.

[http://en.wikipedia.org/wiki] Turing Machine, Busy Beaver,Computability, Turing-completeness, Entscheidungsproblem,11-03-2008

Soren Wellhofer Structure and Operational Functionality of The Turing Machine