Furthermore, most of the definitions uses only basic notions, and thus allows to relate fundations of various fields of fundamental computer science such as automata theory, syntactic semigroup, model theory and semigroup theory.