,1 Finite State Automata
Definitions:
• Alphabet: finite set A of symbols
• Elements of A are letters.
• A word (or string) over A is a finite sequence of letters, written w = a1 a2 ...an , where each
ai ∈ A.
• The length of a word is n (the number of letters).
• The empty word is written as ε (has length 0 and consists of no letters).
• Concatenation is writing one word after another to make a longer word.
– Note: εw = wε = w
• A∗ denotes the set of all words over A and includes ε. A language is a subset of A∗ .
1.1 Deterministic Finite State Automaton (DFA)
A deterministic finite state automaton (DFA) M is a 5-tuple consisting of:
1. Alphabet A (a finite set).
2. Finite set of states, S.
3. Transition function F : A × S → S with input: (letter, state), output: (state).
4. A state s0 ∈ S called the initial or start state.
5. A subset T ⊆ S containing the accept states or terminals.
Write M = (A, S, F, s0 , T ), which starts in state s0 and reads a word w = a1 a2 ...an (where w ∈ A∗ )
one letter at a time from left to right.
If M is in state s ∈ S and reads letter a, then it moves to state F (a, s).
M accepts the word w if after reading letter an it is in an accept state t (t ∈ T ).
M rejects the word w if after reading letter an it is in a state S \ T (a reject state).
Example
M = (A = {a, b}, S = {s0 , s1 , s2 }, F, s0 , T = {s2 }) where F is the state-transition function described
below:
F s0 s1 s2
a s1 s1 s1
b s2 s2 s1
3
, 1.2 Regular Language
Let M = (A, S, F, s0 , T ) be a DFA. The language L(M ) defined by M (also say accepted by M ) is
the set of all words from A∗ which bring M from s0 into an accept state .
A language L is regular if there exists a DFA M with L = L(M ).
Lemma: If L is a finite language, then L is regular.
1.3 Non-deterministic Finite State Automaton (NFA)
A non-deterministic finite state automaton (NFA) is a 5-tuple (A, S, F, s0 , T ) where A, S, s0 and T
are the same as for a DFA (Section 1.1), but now F is a function from (A ∪ {ε}) × S to P(S). The
power set of S is the set of all subsets of S.
It is allowed for an NFA to have:
• F (a, s) = ∅ to be the empty set, so no arrows are leaving the state s when a is read.
• F (a, s) = {s′ , s′′ } so from state s there can be more than one state transition when a is read.
• F (ε, s) = s′ empty transitions that do not require the NFA to read any symbols to move.
An NFA N accepts a word w if there exists a directed path from s0 to an accept state whose labels
concatenate to give w (i.e. the letters of w appear in order but there may be one or more ε before
or after each letter).
The language L(N ) defined by N is the set of all words that N accepts.
Can think of an NFA as computing in parallel on the word w, where more than one branch of com-
putation is ”alive” at the same time. It accepts if any of the branches of computations accepts .
Example:
N = (A = {a, b}, S = {s0 , s1 , s2 , s3 , s4 }, F, s0 , T = {s4 })
4
Voordelen van het kopen van samenvattingen bij Stuvia op een rij:
Verzekerd van kwaliteit door reviews
Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!
Snel en makkelijk kopen
Je betaalt supersnel en eenmalig met iDeal, creditcard of Stuvia-tegoed voor de samenvatting. Zonder lidmaatschap.
Focus op de essentie
Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!
Veelgestelde vragen
Wat krijg ik als ik dit document koop?
Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.
Tevredenheidsgarantie: hoe werkt dat?
Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.
Van wie koop ik deze samenvatting?
Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper WinterBerry. Stuvia faciliteert de betaling aan de verkoper.
Zit ik meteen vast aan een abonnement?
Nee, je koopt alleen deze samenvatting voor €21,55. Je zit daarna nergens aan vast.