Formal Language Theory Preliminaries