There are many definitions of automata and transducers. The differences between them consist mainly in the choice of symbols describing particular items, in the way transitions are defined - as a function, or as a relation, with various orderings of constituents, and whether the -transitions are distinguished in the definition. Notational differences are not important from the theoretical point of view, but the choice of a particular suite of definitions and notational conventions can simplify the description of a problem, thus contributing to the clarity of explanations. The suite of definitions given in this paper is based on two Watson's papers ([Wat93a] and [Wat93b]), but is converted to the notational convention found in [HU79], which is regarded as the standard reference for automata. However, we use different (equivalent) definitions where it enhances the clarity of our discourse. The definitions for finite-state transducers are taken mainly from [RS95].
We introduce a new type of automata: finite-state automata with final transitions. A transformation from the classical automata to the automata with final transitions is provided. We also discuss deterministic acyclic finite-state automata with final transitions. These automata are used in our implementation of the algorithms presented in this dissertation.