Logic can be called the “calculus” of computer science just like calculus is a basic language of natural sciences. But logic predates computer science and can rightfully be considered responsible for its very creation. Logicians laid out the basic properties of various forms of computations and of “thinking machines” at least half a century before the first computer was created. To this day, logic provides a theoretical framework for computer science and plays a prominent role in many of its applications. Studying logic, you learn about the general laws of reasoning and computing, and reasoning and computing are everywhere.
This track provides a thorough introduction into logic (building upon what you learnt in the bachelor program) and leads you to the forefront of research in several active areas, always from a computer science perspective. We will study issues of complexity and proof theory as well as logics for reasoning about knowledge and time, as they are being used in connection with verification problems in distributed environments. There will be courses on algebraic properties of logical systems and fuzzy logics. In addition, on the more applied side, we consider automata, questions of data privacy and knowledge management in structures like the semantic web.