CSCI%202670%20Introduction%20to%20Theory%20of%20Computing - PowerPoint PPT Presentation

About This Presentation
Title:

CSCI%202670%20Introduction%20to%20Theory%20of%20Computing

Description:

Languages Alphabet Finite collection of objects ... Method for modeling computers with limited memory ... (ball moves right) Hand grabs ball (stop moving) ... – PowerPoint PPT presentation

Number of Views:148
Avg rating:3.0/5.0
Slides: 20
Provided by: Wim129
Learn more at: http://cobweb.cs.uga.edu
Category:

less

Transcript and Presenter's Notes

Title: CSCI%202670%20Introduction%20to%20Theory%20of%20Computing


1
CSCI 2670Introduction to Theory of Computing
  • September 4, 2007

2
Languages
  • Alphabet
  • Finite collection of objects (denoted ?)?
  • String
  • Concatenation of 0 or more elements of an
    alphabet
  • Language
  • Collection of strings
  • ? is the set of all strings over ? (including
    e)?
  • This week we will define a specific class of
    languages regular languages

3
Deterministic finite automata (DFA)?
  • Method for modeling computers with limited memory
  • Language recognizer
  • Idea
  • Keep track of current state
  • Events can move you from one state to another
  • Todays goal
  • Formally describe DFAs
  • Interpret DFAs

4
Example
  • Ball in frictionless room
  • Moves left, right or not at all
  • Three possible states left, right, stop
  • One other state impossible
  • Start at rest (in stop state)?
  • State changes under four conditions
  • Ball hits a wall (reverse direction)?
  • Paddle hits left (ball moves left)?
  • Paddle hits right (ball moves right)?
  • Hand grabs ball (stop moving)?

5
Example
  • State table

Event
State
6
Example
  • Ball in frictionless room
  • Ball hits a wall (reverse direction)?
  • Paddle hits left (ball moves left)?
  • Paddle hits right (ball moves right)?
  • Hand grabs ball (stop moving)?

7
Finite automaton (formal definition)?
  • A finite automaton is a 5-tuple (Q,?,?,q0,F),
    where
  • Q is a finite set called the states
  • ? is a finite set called the alphabet
  • ? Q ? ? Q is the transition function
  • ? corresponds to the event function from previous
    example
  • q0 is the start state, and
  • F ? Q is the set of accept states (also called
    final states).

8
Example
  • From previous example
  • Q
  • ?
  • ?
  • q0
  • F
  • Left, Right, Stop, Impossible
  • Hit wall, Paddle left, Paddle right, Grab
  • The state table we constructed
  • Stop
  • Left, Right, Stop
  • What if we accept any set of events that ends
    with the ball in motion?
  • F Left, Right

9
Another example
0,1
? 0,1
q4
0
1
1
q1
q2
q3
0
1
0
  • Q
  • ?
  • ?
  • q0
  • F

q1, q2, q3, q4 0, 1 (next slide)? q1 q3
10
Another example
0,1
? 0,1
q4
0
1
1
q1
q2
q3
0
1
0
11
Another example
0,1
? 0,1
q4
0
1
1
q1
q2
q3
0
1
0
  • Informal description of the strings accepted by
    this DFA
  • All strings of 0s and 1s beginning with a 0 and
    ending with a 1

12
Group problem
  • Formally describe the DFA (deterministic finite
    automaton) illustrated in your groups sheet

13
Group problem
  • 0, 1 for all groups
  • Q is a finite set called the states
  • ? is a finite set called the alphabet
  • ? Q ? ? Q is the transition function
  • q0 is the start state, and
  • F ? Q is the set of accept states (also called
    final states).
  • Include informal description

14
Group 1
0,1
q1
q2
q4
1
0
q3
0
1
0
1
q5
0,1
Hint What string doesnt this DFA accept?
15
Group 2
0,1
q2
0,1
q3
0
q1
0,1
1
q4
0,1
q5
Hint String length counts.
16
Group 3
0,1
1
q1
q2
0
q3
0,1
Hint Symbol position counts.
17
Group 4
0
q1
q2
1
0,1
0,1
0,1
q3
q4
Hint Can you simplify this DFA?
18
Group 5
0,1
q7
1
q1
1
q3
q5
1
0
0
0
0
0
0
q4
q2
1
q6
1

Hint For each state, what do you know about how
many times each symbol has appeared?
19
Group 6
0
q1
1
q2
0
1
q3
0, 1
Hint What happens when you get to q3?
Write a Comment
User Comments (0)
About PowerShow.com