In this paper we regard languages and their acceptors - such as deterministic
or weighted automata, transducers, or monoids - as functors from input
categories that specify the type of the languages and of the machines to
categories that specify the type of outputs. Our results are as follows:
A) We provide sufficient conditions on the output category so that
minimization of the corresponding automata is guaranteed.
B) We show how to lift adjunctions between the categories for output values
to adjunctions between categories of automata.
C) We show how this framework can be instantiated to unify several phenomena
in automata theory, starting with determinization, minimization and syntactic
algebras. We provide explanations of Choffrut's minimization algorithm for
subsequential transducers and of Brzozowski's minimization algorithm in this
setting.Comment: journal version of the CALCO 2017 paper arXiv:1711.0306