Semigroups, automata and languages University of Porto, 20 - 24 June 1994 (World Scientific, 1996)