Looks that I forgot the most important thing in my last post: thanking the ones who helped me a lot. I entirely mean what I wrote below.
I am profoundly indebted to my adviser, Jan Schwinghammer, for his continuous support during the last year. I thank Jan for his unlimited patience when explaining the basic concepts I needed to know before I could get started with my thesis. Not only did he share with me some of his knowledge and ideas, but also some of his enthusiasm. Our discussions provided much motivation, and radically changed the way I perceive theoretical computer science.
I am grateful to Gert Smolka for his valuable advice given on many occasions, for his inspiring introductions to logic and semantics, and for offering me the opportunity to work with Jan. I also thank Gert Smolka and Holger Hermanns for reviewing my thesis.
Finally, I would like to thank the members of the Programming Systems Lab and the International Max Planck Research School for Computer Science for their friendship and support.