Provides a study of the fundamental theoretical ideas of computing and examining how to design accurate and efficient algorithms.