P. 1


|Views: 17|Likes:
Published by Mike Corpus

More info:

Published by: Mike Corpus on Jan 30, 2012
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





At the turn of the 20th century the German mathematician David Hilbert

proposed the
Entscheidungsproblem. Given a set X, and a universe of elements U, and a criteria
for membership, is it possible to formulate a general procedureto decide whether
a given element of U is a member of X?
Hilbert’s grand ideas were watered down by the incompleteness theorem
proposed by the Austrian Kurt Gödel. His theorem states that in any mathematical
system, there exist certain obviously true assertions that cannot be proved to be
true by the system.




CFL example:




Multi-stack PDA

PDA with queues


In 1936 the British cryptologist Alan Turing, addressed Hilbert’s
Entscheidungsproblem using a different approach. He proposed two kinds of
mathematical machines called the a-machine and the c-machine respectively, and
showed the existence of some problems where membership cannot be determined.
But Turing’s a-machine became famous for something else other than its
original intentions. The a-machine was found to be more expressive than CFGs. It
can recognize strings that cannot be modeled by CFLs like anbncn. The a-
machines came to be more popularly known as Turing Machines
The Princeton mathematician Alonzo Church recognized the power of a-
machines. He invited Turing to Princeton to compare Turing Machines with his own

Church and Turing proved the equivalence of Turing Machines and l-
calculus, and showed that they represent algorithmic computation. This is called
the Church-Turing thesis.

Turing Machines


A Turing Machine (TM) is an abstract, mathematical model that describes
what can and cannot be computed. A Turing Machine consists of a tape of infinite
length, on which input is provided as a finite sequence of symbols. A head reads
the input tape. The Turing Machine starts at “start state” S0. On reading an input
symbol it optionally replaces it with another symbol, changes its internal state and
moves one cell to the right or left.

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->