  The connection between languages defined by computational models and logic
for languages is well-studied. Monadic second-order logic and finite automata
are shown to closely correspond to each-other for the languages of strings,
trees, and partial-orders. Similar connections are shown for first-order logic
and finite automata with certain aperiodicity restriction. Courcelle in 1994
proposed a way to use logic to define functions over structures where the
output structure is defined using logical formulas interpreted over the input
structure. Engelfriet and Hoogeboom discovered the corresponding "automata
connection" by showing that two-way generalised sequential machines capture the
class of monadic-second order definable transformations. Alur and Cerny further
refined the result by proposing a one-way deterministic transducer model with
string variables---called the streaming string transducers---to capture the
same class of transformations. In this paper we establish a transducer-logic
correspondence for Courcelle's first-order definable string transformations. We
propose a new notion of transition monoid for streaming string transducers that
involves structural properties of both underlying input automata and variable
dependencies. By putting an aperiodicity restriction on the transition monoids,
we define a class of streaming string transducers that captures exactly the
class of first-order definable transformations.
