Download presentation
Presentation is loading. Please wait.
Published byBuck Warner Modified over 9 years ago
1
CS 3813: Introduction 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, 3 rd ed., by Peter Linz, published by Jones and Bartlett Publishers, Inc., Sudbury, MA, 2001. 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 Goedel’s 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
Church’s Thesis “All possible models of computation, if sufficiently broad, must be equivalent.” We believe this to be true, although it hasn’t been proven.
5
Recursive functions Assume that all functions have one or two 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(x 1, x 2 ) = x k
6
Recursive functions We can combine these simple functions to make more complicated functions by these two methods (assuming h, g 1, and g 2 are already defined: 1. Composition: f(x, y) = h(g 1 (x, y), g 2 (x, y)) 2. Primitive recursion: f (x, 0) = g 1 (x) f(x, y + 1) = h(g 2 (x, y), f(x, y))
7
Primitive recursive functions Definition: A function is called primitive recursive iff it can be constructed from the basic functions z, s, and p k by successive composition and primitive recursion. Primitive recursive functions are all total functions.
8
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.)
9
-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.
10
-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).
11
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 C N, called the nonterminal constants, and C T, 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
12
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.
13
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.
14
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.
15
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.
16
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.
17
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.
18
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.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.