The determinization, minimization and minimum path algorithms for transducers are implemented in a fully general way, i.e., for various types of transducers. For each supported type, a number of predicates must be defined in a special semiring module *Type*. This module supplies the definitions for the fsa_strings semiring, which is used for `ordinary' string to string transducers.