Finite Automata COT 4810 Topics in Computer Science
- Slides: 23
Finite Automata COT 4810 Topics in Computer Science ©Daniel Dassing January 24, 2008
What are Finite Automata? Finite meaning bounded/ not infinite Automata meaning machine, self acting construct
What are the Really? Machines Finite number of states Transitions between states
What can they look like? 0 S 0 0 1 S 1 0 1 S 2 0, 1 1 S 3
Finite Acceptor Quintuple (Σ, Q, S 0, δ, F) Input Alphabet: Σ = {0, 1}{a, b, . . . , z}{it, was, is} Set of States Q = {S 0, S 1, S 2, . . . SK} Initial State S 0 Transition Functiuon: δ (S X Σ -> S) Final/Accept State(s): F = a subset of S
But why are they useful? Basis of a language definition language being a set of strings over an alphabet Regular Languages Example 1: Dictionary(very large FSA) Example 2: All binary strings with less than three 1's
DFA for less than three 1's Alphabet: Σ = {0, 1} States:
DFA for less than three 1's S 0 S 1 S 2 S 3
DFA for less than three 1's Alphabet: Σ = {0, 1} States: Q = {S 0, S 1, S 2, S 3} Initial State: S 0 Transition Function:
DFA for less than three 1's 0 S 0 0 1 S 1 0 1 S 2 0, 1 1 S 3
DFA for less than three 1's State Input S 0 S 1 S 2 S 3 1 S 2 S 3 S 0/0 -> S 0/1 -> S 1/0 -> S 1/1 -> S 2/0 -> S 1 S 2/1 -> S 3/0 -> S 3/1 -> S 3
DFA for less than three 1's Alphabet: Σ = {0, 1} States: Q = {S 0, S 1, S 2, S 3} Initial State: S 0 Transition Function: δ Final States:
DFA for less than three 1's 0 S 0 0 1 S 1 0 1 S 2 0, 1 1 S 3
DFA for less than three 1's Alphabet: Σ = {0, 1} States: Q = {S 0, S 1, S 2, S 3} Initial State: S 0 Transition Function: δ Final States: { S 0, S 1, S 2}
Non-Determinism Incomplete Transition Function Multiple Transitions from one state/input pair λ Transitions
Transducer Allows for output. Generally does not have a final state. Used to implement control function.
Transducer Sextuple (Σ, Γ, Q, S 0, δ, ω) Input Alphabet: Σ = {0, 1}{a, b, . . . , z}{get, stop} Output Alphabet: Γ = {a, b, c}{good, bad, done} Set of States Q = {S 0, S 1, S 2, . . . SK} Initial State S 0 Transition Functiuon: δ : S X Σ -> S Output Function: ω : S X Σ -> Γ or ω : S -> Γ
Pushdown Automata A Finite Acceptor with a stack Transition Function: δ : Q X Σ X Γ-> Q Can be used to check syntax in a compiler
Pushdown Automata Septuple (Σ, Γ, Q, S 0, Z 0, δ, F) Input Alphabet: Σ = {0, 1}{a, b, . . . , z}{it, was, is} Set of States Q = {S 0, S 1, S 2, . . . SK} Initial State S 0 Initial Stack Symbol Transition Function: δ : Q X Σ X Γ-> Q Final/Accept State(s): F = a subset of S
Turing Machines Finite Automata with external storage Model modern computing including recursion Turing machine can model other Turing machines
In Summary Machines Finite Number of States Transitions Between States Many Different Types Very Useful.
References 1. “Finite State Machine” Wikipedia. Jan 2008 http: //en. wikipedia. org/wiki/Finite_state_machine
QUESTIONS FOR YOU What are the 5 parts of a DFA? Name at least 3 types of finite state machines.
- Elen 4810
- Elen 4810
- Sysc 4810
- Finite subordinate clause
- Finite verb
- Learning objectives of non finite verbs
- How to find finite and nonfinite verbs
- Non finite forms of the verb qayda
- Contoh soal dan jawaban teori bahasa dan automata
- String matching finite automata
- Nfa non deterministic finite automata
- Diagram fsa
- Lexical analysis finite automata
- Nfa diagram generator
- Fsa diagram
- Automata
- Union of two fas
- Moore state machine adalah
- Finite automata calculator
- Lambda closure nfa
- Informal picture of finite automata
- Aturan tata bahasa reguler
- Limitations of finite state machine
- Finite automata