Title: Languages and Finite Automata
1Finite Automata
2Finite Automaton
Input
String
Output
Finite Automaton
String
3Finite Accepter
Input
String
Output
Accept or Reject
Finite Automaton
4Transition Graph
abba - Finite Accepter
initial state
final state accept
transition
state
5Initial Configuration
Input String
6Reading the Input
7 8 9 10Input finished
Output accept
11Rejection
12 13 14 15Input finished
Output reject
16Another Rejection
17Output reject
18Another Example
19(No Transcript)
20(No Transcript)
21(No Transcript)
22Input finished
Output accept
23Rejection
24(No Transcript)
25(No Transcript)
26(No Transcript)
27Input finished
Output reject
28Formalities
- Deterministic Finite Accepter (DFA)
(A finite) set of states
(A finite) set of input alphabet
transition function
initial state (an element of Q)
set of final states (a subset of Q)
29Input Alphabet
30Set of States
31Initial State
32Set of Final States
33Transition Function
34 35 36(No Transcript)
37Transition Function
38Extended Transition Function
39(No Transcript)
40(No Transcript)
41(No Transcript)
42 Observation There is a walk from to
with label
43 Example There is a walk from to
with label
44Recursive Definition
45 46Languages Accepted by DFAs
- Take DFA
- Definition
- The language contains
- all input strings accepted by
- strings that drive to a
final state
47Example
accept
48Another Example
accept
accept
accept
49Formally
- For a DFA
- Language accepted by
-
50Observation
51More Examples
trap state
accept
52 all strings with prefix
accept
53 all strings without substring
54Regular Languages
- A language is regular if there is
- a DFA such that
- All regular languages form a language family
-
55Examples of regular languages
all strings with prefix
all strings with suffix
all strings without substring
There exist automata that accept these Languages
(see previous slides).
56Another Example
57There exist languages which are not Regular
Example
There is no DFA that accepts such a language
(we will prove this later!)