CS 3813: Introduction to Formal Languages and Automata Chapter 13 Other Models of Computation These class notes are based on material from our textbook,

Slides:



Advertisements
Similar presentations
1 Turing Machines and Equivalent Models Section 13.2 The Church-Turing Thesis.
Advertisements

CS 345: Chapter 9 Algorithmic Universality and Its Robustness
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
1 Section 14.1 Computability Some problems cannot be solved by any machine/algorithm. To prove such statements we need to effectively describe all possible.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
Theory of Computation What types of things are computable? How can we demonstrate what things are computable?
Lecture 3 Goals: Formal definition of NFA, acceptance of a string by an NFA, computation tree associated with a string. Algorithm to convert an NFA to.
CHAPTER 3 The Church-Turing Thesis
1 Other Models of Computation. 2 Models of computation: Turing Machines Recursive Functions Post Systems Rewriting Systems.
November 10, 2009Theory of Computation Lecture 16: Computation on Strings I 1Diagonalization Another example: Let TOT be the set of all numbers p such.
79 Regular Expression Regular expressions over an alphabet  are defined recursively as follows. (1) Ø, which denotes the empty set, is a regular expression.
Normal forms for Context-Free Grammars
COMMONWEALTH OF AUSTRALIA Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf of Monash University.
Chapter 9 Turing Machine (TMs).
Finite State Machines Data Structures and Algorithms for Information Processing 1.
Chapter 4: A Universal Program 1. Coding programs Example : For our programs P we have variables that are arranged in a certain order: Y 1 X 1 Z 1 X 2.
1 CSCI 2400 section 3 Models of Computation Instructor: Costas Busch.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
111 Computability, etc. Recap. Present homework. Grammar and machine equivalences. Turing history Homework: Equivalence assignments. Presentation proposals,
Introduction Chapter 0. Three Central Areas 1.Automata 2.Computability 3.Complexity.
CSE 3813 Introduction to Formal Languages and Automata Chapter 8 Properties of Context-free Languages These class notes are based on material from our.
111 Discrete Mathematics Computability Brief introduction to computable functions, recursive functions, etc. Jeanine Meyer.
Pushdown Automata (PDAs)
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
CS 3813: Introduction to Formal Languages and Automata
CISC 2315 Discrete Structures Professor William G. Tanner, Jr. Spring 2011 Slides created by James L. Hein, author of Discrete Structures, Logic, and Computability,
CSE 3813 Introduction to Formal Languages and Automata Chapter 14 An Introduction to Computational Complexity These class notes are based on material from.
CS 345: Chapter 8 Noncomputability and Undecidability Or Sometimes You Can’t Get It Done At All.
CS 3240 – Chapter 11.  They may not halt on every possible input!  And not just because the creator of a specific TM was a doofus  This is related.
1 Section 13.2 The Church-Turing Thesis The Church-Turing Thesis: Anything that is intuitively computable can be be computed by a Turing machine. It is.
MATH 224 – Discrete Mathematics
CSE 3813 Introduction to Formal Languages and Automata Chapter 10 Other Models of Turing Machines These class notes are based on material from our textbook,
CS 3813: Introduction to Formal Languages and Automata Chapter 2 Deterministic finite automata These class notes are based on material from our textbook,
CS 3813: Introduction to Formal Languages and Automata Chapter 12 Limits of Algorithmic Computation These class notes are based on material from our textbook,
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
CS 203: Introduction to Formal Languages and Automata
Chapter 10 Computable Functions Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
1 Other Models of Computation Costas Busch - LSU.
Chapter 8 Properties of Context-free Languages These class notes are based on material from our textbook, An Introduction to Formal Languages and Automata,
CSCI 2670 Introduction to Theory of Computing October 13, 2005.
1 Introduction to Abstract Mathematics Chapter 3: The Logic of Quantified Statements. Predicate Calculus Instructor: Hayk Melikya 3.1.
CS 154 Formal Languages and Computability February 11 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron.
CS 154 Formal Languages and Computability March 8 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
1 Chapter Pushdown Automata. 2 Section 12.2 Pushdown Automata A pushdown automaton (PDA) is a finite automaton with a stack that has stack operations.
1 8.4 Extensions to the Basic TM Extended TM’s to be studied: Multitape Turing machine Nondeterministic Turing machine The above extensions make no increase.
CS 154 Formal Languages and Computability May 12 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
CS 154 Formal Languages and Computability May 5 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
CS 154 Formal Languages and Computability April 28 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis (Winter 2016, these slides were also used for Day 33)
Week 14 - Friday.  What did we talk about last time?  Simplifying FSAs  Quotient automata.
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis Delayed due dates for HWs See updated schedule page. No class meeting.
CSE202: Introduction to Formal Languages and Automata Theory
Cellular Automata Universalities.
Computable Functions.
Copyright © Cengage Learning. All rights reserved.
Review : Theory of Computation
Context free grammar.
CSE 3813 Introduction to Formal Languages and Automata
LIMITS OF ALGORITHMIC COMPUTATION
Other Models of Computation
A HIERARCHY OF FORMAL LANGUAGES AND AUTOMATA
Jaya Krishna, M.Tech, Assistant Professor
Theory Of Computer Science
Chapter 3 Turing Machines.
On Kripke’s Alleged Proof of Church-Turing Thesis
Presentation transcript:

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, They are intended for classroom use only and are not a substitute for reading the textbook.

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).

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.

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.

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 projector functions: p(x 1, x 2 ) = x k

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))

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.

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.)

 -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.

 -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).

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

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.

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.

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.

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.

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.

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.

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.