A Practical Introduction to Parallel Programming in C with MPI
Computability and Computational Complexity