Error-detecting and error-correcting codes – detecting and correcting errors in data: basic modular arithmetic used in the design of such codes, basic issues in theory and applications, well-known examples, real-life applications such as NRIC numbers, ISBN, CD, telecommunications, etc.
Cryptography – ensuring security of information: basic issues and use in applications such as electronic transactions and communication, Euclidean algorithm, congruences, Chinese Remainder Theorem, the RSA cryptosystem.
Travelling Salesman Problem – finding optimal routes: basic concepts in graph theory and linear programming, simplex algorithm, relationship to applications, e.g., wiring a chip, scheduling airline crews.
P vs NP – understanding computational complexity: complexity classes, NP-complete problems and links with other applications such as the RSA cryptosystem and the Travelling Salesman Problem.
Google – search for information on the Web: basic concepts in graph theory, probability and linear algebra, especially eigenvalues, underlying the Google search engine.