Transducers: Theory and Applications