In 1984, the TIME magazine ran a cover story on computer
software. In the otherwise excellent article, an editor of a certain software
magazine was quoted as saying:
Put the right kind of software into a computer, and it will
do whatever you want it to. There may be limits on what you can do with
machines themselves, but there are no limits on what you can do with software.
A simple way of summarizing this course is that it is
devoted to describing and explaining the facts that refute – no, shutter! –
this claim.
In the 5 modules that comprise this course we will acquaint
ourselves with the logical limits of computation, as they were conceived within
the framework of the foundations of mathematics. We will get to know the
standard model for computation, the Turing machine, and learn about problems
that it can and cannot solve. Turning to physics, we will find parallel
definitions for computability in dynamical systems and in spacetime theories,
and use notions from complexity theory to reframe long-standing problems in the
philosophy of mind about free will, creativity, and the mind-body problem.
Each module will be composed of frontal lectures, 2-3
writing assignments, and a group project that will be presented in class.
Typically, these projects will consist of a digital presentation and an
exposition of one of the concepts that will be discussed in the respective
module, with an emphasis on its use and mention (or, as usually is the case,
abuse and misinterpretation) inside academia and outside it in the popular
culture. The course is self-contained and presupposes a mathematical background
at the high-school level.