Reading List

Mort Yao

N.B. This list is personal and volatile.


  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein. Introduction to Algorithms, 3rd edition.
  • S. Dasgupta, C. H. Papadimitriou and U. V. Vazirani. Algorithms.

Theory of computation:

  • Michael Sipser. Introduction to the Theory of Computation, 3rd edition.
  • Neil D. Jones. Computability and Complexity: From a Programming Perspective.


  • Jonathan Katz and Yehuda Lindell. Introduction to Modern Cryptography, 2nd edition.
  • Alfred Menezes and Scott Vanstone. Guide to Elliptic Curve Cryptography.
  • John Talbot and Dominic Welsh. Complexity and Cryptography: An Introduction.


  • Peter Norvig and Stuart J. Russell. Artificial Intelligence: A Modern Approach, 3rd edition.

Computer vision:

  • David Forsyth and Jean Ponce. Computer Vision: A Modern Approach, 2nd edition.

Machine learning:

  • Yaser S. Abu-Mostafa, Malik Magdon-Ismail and Hsuan-Tien Lin. Learning from Data: A Short Course.

Basic discrete mathematics:

  • Eric Lehman, F. Thomson Leighton and Albert R. Meyer. Mathematics for Computer Science.
  • Kenneth H. Rosen. Discrete Mathematics and Its Applications, 7th edition.
  • Paul Halmos. Naive Set Theory.

Basic probability and statistics:

  • Michael Mitzenmacher and Eli Upfal. Probability and Computing: Randomized Algorithms and Probabilistic Analysis.
  • Michael Baron. Probability and Statistics for Computer Scientists, 2nd edition.

Introduction to mathematical logic:

  • Herbert B. Enderton. A Mathematical Introduction to Logic, 2nd edition.
  • Raymond M. Smullyan. First-Order Logic.
  • Raymond M. Smullyan and Melvin Fitting. Set Theory and the Continuum Problem.

Logic and programming:

  • Paul Taylor. Practical Foundations of Mathematics.
  • Michael Huth. Logic in Computer Science: Modelling and Reasoning about Systems.

Leisure reading:

  • Bertrand Russell. Introduction to Mathematical Philosophy.
  • Douglas Hofstadter. Gödel, Escher, Bach: an Eternal Golden Braid.
  • G. H. Hardy. A Mathematician’s Apology.