Theory of Computation (Fall 2013): Trivial & Non-Trivial Program Properties, The Halting Problem, Index Sets, Rice's Theorem, Turing Machines