CSE 3813 Introduction to Formal Languages and Automata - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

CSE 3813 Introduction to Formal Languages and Automata

Description:

C is a finite set of constants, consisting of two disjoint ... Grammars, Post systems, and even Turing machines can be looked at as types of rewriting systems. ... – PowerPoint PPT presentation

Number of Views:67
Avg rating:3.0/5.0
Slides: 21
Provided by: genebo
Category:

less

Transcript and Presenter's Notes

Title: CSE 3813 Introduction to Formal Languages and Automata


1
CSE 3813Introduction to Formal Languages and
Automata
  • Chapter 13
  • Other Models of Computation
  • These class notes are based on material from our
    textbook, An Introduction to Formal Languages and
    Automata, 4th ed., by Peter Linz, published by
    Jones and Bartlett Publishers, Inc., Sudbury, MA,
    2006. They are intended for classroom use only
    and are not a substitute for reading the textbook.

2
Introduction
  • There are many other models of computation that
    have been devised, mostly by mathematicians.
  • All of these have turned out to be equivalent to
    Turing machines in terms of their power to solve
    problems (or compute functions, or accept
    languages).

3
Introduction
  • They were primarily in response to Goedels proof
    that any interesting consistent system must be
    incomplete that is, it must contain some
    statements that are true but unprovable within
    the system.

4
Churchs Thesis
  • All possible models of computation, if
    sufficiently broad, must be equivalent.
  • We believe this to be true, although it hasnt
    been proven.

5
Recursive functions
  • Assume that all functions have 1 or 2 variables,
    with a domain of I (the set of all non-negative
    integers) or I ? I, and a range of I.
  • Then we can describe three simple functions
  • 1. zero function z(x) 0, for all x ? I
  • 2. successor function s(x) x 1
  • 3. projector functions p(x1, x2) xk

6
Recursive functions
  • We can combine these simple functions to make
    more complicated functions by these two methods
    (assuming h, g1, and g2 are already defined
  • 1. Composition
  • f(x, y) h(g1 (x, y), g2 (x, y))
  • 2. Primitive recursion
  • f (x, 0) g1(x)
  • f(x, y 1) h(g2(x, y), f(x, y))

7
Example of Recursive Functions
  • Addition of integers x and y can be implemented
    with the function add(x, y) defined by
  • add(x, 0) x,
  • add(x, y 1) add(x, y) 1
  • To add 3 and 2, we apply these rules
    successively
  • add(3, 2) add(3, 1) 1
  • (add(3, 0) 1) 1
  • (3 1) 1
  • 4 1 5

8
Example of Recursive Functions
  • We could then use this to define multiplication
    by
  • mult(x, 0) 0,
  • mult(x, y 1) add(x, mult(x, y))

9
Primitive recursive functions
Definition A function is called primitive
recursive iff it can be constructed from the
basic functions z, s, and pk by successive
composition and primitive recursion. Primitive
recursive functions are all total functions.
10
Primitive recursive functions
Theorem Not all functions are primitive
recursive. (Proof by diagonalization.) Theorem
Not all computable functions are primitive
recursive. (Proof also by diagonalization.)
11
?-recursive functions
The ? or minimization operator can be defined
as ?y(g(x, y)) smallest y such that g(x, y)
0 Definition a function is said to be
?-recursive if it can be constructed from the
basic functions by a sequence of applications of
the ?-operator and the operations of composition
and primitive recursion.
12
?-recursive functions
Theorem A function is a ?-recursive function
iff it is computable. Conclusion We now have
another way of defining computable that is not
in terms of a Turing machine (but is equivalent
to it, in the sense that both methods encompass
the same class of functions).
13
Post systems
  • Emil Post devised the idea of a Post system,
    which is very similar to a grammar.
  • A Post system, ?, is defined by
  • ? (C, V, A, P), where
  • C is a finite set of constants, consisting of
    two disjoint sets CN, called the nonterminal
    constants, and CT, the set of terminal constants
  • V is a finite set of variables
  • A is a finite set from C called the axioms
  • P is a finite set of productions

14
Post systems
Production rules in a Post system must satisfy a
certain set of restrictions, just as grammars
do. It turns out that Theorem A language is
recursively enumerable iff there exists some Post
system that generates it.
15
Post machines
Post also devised an automaton similar to the
Turing machine (in the same year Turing
introduced his machine). The Post machine looks
sort of like a PDA, but with a queue (FIFO)
instead of a stack (LIFO) as auxiliary memory.
Theorem A Post machine is equivalent to a
Turing machine in computational power.
16
Rewriting systems
Grammars, Post systems, and even Turing machines
can be looked at as types of rewriting systems.
There are a number of other rewriting systems
that are comparable in power to Turing machines.
17
Matrix grammars
Matrix grammars are similar to phrase-structure
grammars with respect to how their productions
can be applied. Actually, a phrase-structure
grammar is a type of matrix grammar in which each
production rule contains exactly one production.
Matrix grammars and phrase structure grammars
have the same power as models of computation, but
often it takes fewer rules to describe a language
using matrix grammars.
18
Markov algorithms
Markov algorithms are rewriting systems whose
productions are ordered, so that productions, if
they apply to a sentential form, must be used in
a certain sequence. They are equivalent to
phrase-structure grammars in computational
power. Theorem a language is recursively
enumerable iff there exists a Markov algorithm
for it.
19
L-systems
Lindemeyer systems, or L-systems, are basically
parallel rewriting systems. Although the
original L-systems were somewhat weak, extended
L-systems turn out to be equivalent to
phrase-structure grammars in computational power.
20
Conclusion
As we have seen, all proposed general algorithmic
models of computation have no more power than a
standard Turing machine. Since there are limits
on what a TM can compute, these limits apply, so
far as we know, to all algorithmic models of
computation.
Write a Comment
User Comments (0)
About PowerShow.com