Mathematical logic is the field of mathematics dedicated to the study of logical foundations of mathematics and of the expressive power of logical formalisms. The level of abstraction used in logic also allows for many applications in the study of problems from computer science. Its success goes so far that it has been called "unreasonably effective" and "the calculus of computer science." Areas in computer science with applications of logic are the study of constraint satisfaction problems, descriptive complexity, database theory, AI, type theory and verification. This seminar covers basic results of mathematical logic and applications in theoretical computer science.