Combinatorics on traces - Diekert, Volker, (Lecture notes in computer science ;)