Finite State Automata and Transducers Flashcards
Describe a Finite State Automata
A different way to describe regular expressions
An FSA has:
- A finite set of states
- A finite input alphabet
- One start state
- A set of final states
- Transitions
The Uses of a Finite State Automata
Use to:
- Generate a string
- Test a string (look at letters on the tape) and accept or reject - if the branch doesn’t end in a final state, the string is rejected
How a Finite State Automata Works
- Start in the start state, S0
- The current letter is the first letter on the tape, X
- If the current state has a transition for the letter X to state S1, then new current state is S1, new current letter is the next letter on the tape
- Else, if no transition from the current state for letter X, reject
Formal Language
The collection of strings accepted by an FSA
Non-Deterministic Finite State Automaton
There can be more than one transition for a given letter
If there is some way to get to the final state, then accept
Equivalent to a Finite State Automaton
Morphological Parsing
Analyze and generate text
Create plurals, prefixes, verb endings, etc.
Map one string (lexical: cat +n +pl) to another (surface: cats) - use Finite State Transducer
Finite State Transducer
An FSA that reads form one tape and writes to another