CS 701 Research Paper (MS150200090)
CS 701 Research Paper (MS150200090)
MS150200090
Muhammad Saeed
CS701 Theory of
Computation
Abstract
In turning machine we have seen several abstract models of computing
devices: Deterministic Finite Automata, Nondeterministic Finite Automata, and
Nondeterministic Finite Automata with Transitions, Pushdown Automata, and
Deterministic Pushdown Automata. However, none of the above seem to be
as powerful as a real computer, right? We now turn our attention to a much
more powerful abstract model of a computing device: a Turing machine. This
model is believed to do everything that a real computer can do .
computable and what is not. The Turing
1. Introduction
Machine
Turing machines are an abstract model of
computation.
They
provide
precise,
of
computation
have
been
with
an
infinite
amount
be
the
2.
3.
of
to
seems
definition
of
instructions
in
predefined language.
4.
Self-reference:
the
programming
state,
optionally
halting
and
programs.
and
uncomputable
Turing Machines
machine
writes
new
a b
b a
also
decide
to
halt
and,
halting.
The
machine's
Finite State
Control
1.
A Formal Definition
2.
3.
4.
To
5.
state
A Simple Example
input up
input after
to scanned
scanned square
square
blanks.
K=
= 0, 1, ,
s=
H=
=
(1)
b
(2)
(1)
(q, aab, b)
(q, aabb)
(2)
(h, aabb, )
(h,
aabb)
(*( - {}))
a halting configuration.
An Example Computation
a
b
(0, aaab) |-M
(1, aaab) |-M
(2, 1aab) |-M
Notes on Programming
The machine has a strong procedural feel.
It's very common to have state pairs, in
which the first writes on the tape and the
second move. Some definitions allow both
actions at once, and those machines will
Examples:
write.
>M1
M2
M3
Start in the start state of M1.
Compute until M1 reaches a halt
state.
Examine the tape and take the
appropriate transition.
Example:
a writes an a
Conclusion:
produce
turning,
materials
years.
complex
geometric
figures,
even
taper
such