- 106 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about ' Does not Compute 4: Finite Automata' - selima

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

### Does not Compute 4:Finite Automata

In which we temporarily admit defeat with cellular automata (we will face them again, in the epic final “Does Not Compute” battle at the end of the class)

We choose something new that and actually prove it does not compute something

An Aside – Does Not Compute For Research

Working out computational bounds for simple machines:

- You could take a machine (or a few) from the literature and try to prove equivalence or non-equivalence
- You could design your own machine and try to do the same
- You could try and characterize behavior in some way – i.e. predict when a cellular automata machine acts a certain way

After This Class…

- We review the main point from last time
- You will know a new kind of simple machine (this one, oddly enough, actually is used in the real world)
- You will build machines to solve a couple problems
- Does not compute!
- We do some proofs with our new does not compute power
- Maybe we finally get to talk about the game of life

Our New Machine

- A 5-tuple (Q, E, T, q0, F)
- Q is a finite set of states
- E is a finite set called the alphabet (usually {0, 1} or {a,b})
- T : Q x E → Q is the transition function
- q0 is the start state
- F is the accept states

Design Challenge!

Recognize languages that…

- Begin with a A and end with a B
- Have an even length (0 counts)
- Do not contain the substring AAB

- Has a equal numbers of As as Bs

Recall Last Class…

Design a Finite Automata to recognize the language where…

Every odd position is an A

If you wanna get crazy, you can try:

Has an A in the 3rd position from the end

(i.e. BBBBABB is in the language, BBBBBB is not)

The Pumping Lemma

If a language L can be recognized by a finite automata, then there is a number p (the pumping length) where, if s is any string L of length at least p, then s may divided into three pieces s = xyz, satisfying the following conditions:

For each

|y| > 0

|xy| ≤ p

You’ll want to watch how I do these. I’m going to ask you do #3 yourself.

Examples:

AnBn

AnBAn

Language has an equal number of As and Bs

Some Examples We Won’t Cover

AmBnwhere m does not equal n

combinations of A and B that are not palindromes

E = {0, 1, +, =} . String x=y+z where x y and z are binary integers and x is the sum of y and z

Non-Deterministic finite automata

- More transitions, less transitions, parallel processing and ε
- Waaaay more fun
- Don’t let yourself get lost! (we are covering this material faster that usual)

What has happened…

- You learned about finite automata, and built some to solve a few problems
- We saw the pumping lemma, and you used to it prove a language could not be recognized
- Maybe we finally get to talk about the game of life

Conway’s Game of Life

- For a space that is \'populated\': Each cell with one or no neighbors dies, as if by loneliness. Each cell with four or more neighbors dies, as if by overpopulation. Each cell with two or three neighbors survives.
- For a space that is \'empty\' or \'unpopulated\' Each cell with three neighbors becomes populated.
- This (should you doubt it even for a second) is just a ‘ordinary’ 2D cellular automata

What Happened in Class

- We used the Squaring Automaton as an example of a CA that really does computation
- We have considered the question of color and size, and talked about the universal 1-D Cellular automata. What you ought to remember:
- The method of proving by simulation, which we have used in two different ways (how?)
- The surprising discovery of a computational plateau for 1-D cellular automata

What is to Come

- A new machine! Very different from the old machine!
- And with this machine we will actually be able to find problems that it really cannot compute the answers to

PS…although we will not actually use it in class (at least at the moment) you owe it to yourself to check out the Game of Life. NetLogo has a simulation (just called “Life”). You can also download a simulator here:

http://www.bitstorm.org/gameoflife/

Even if you don’t download a simulator yourself, the Life Lexicon will blow your mind:

http://www.bitstorm.org/gameoflife/lexicon/

Download Presentation

Connecting to Server..