Theoretical computer science

cosmos 20th January 2017 at 7:35pm
Computer Science and IT

Computer science is what came out of asking: what kind of maths can actually be effectively carried out in the physical world? Theoretical computer science, looks at the more theoretical (as opposed to applied) aspects of this question.

The nature of computation by Moore and Mertens (looks like a nice book). Good reads page and Amazon page

Oxford course 1st year

Computational learning theory

Leonid A. Levin. Fundamentals of Computing.

See Discrete mathematics

Computational theories

Turing triad (as defined by Leslie Valiant), see his PAC book):

  • Establishing a robust computational model for your problem. Robust here means that it is equivalent to many other models that we could reasonably propose for the problem at hand; then, any of these models is considered robust.
  • Proving some strong possibility results, like the fact that certain things are computable
  • Proving some impossibility results that explain the ultimate limitations.

These pattern is followed by most computational theories, like:


...need to organize this better.

Structure and interpretation of computer programs Companion site

Functional programming

Oxford course - func prog

http://learnyouahaskell.com/introduction

https://www.haskell.org/

Higher-order functions. Composition.

Examples in JS: .filter, map, reduce


Theory of computation

Church-Turing thesis


People, Problems, and Proofs

Emergence, Complexity and Computation

Philosophy of computer science