This textbook provides undergraduate students with an introduction to the basic theoretical models of computability.
Students who have already some experience with elementary discrete mathematics will find this a well-paced first course.
Plenty of exercises are provided, ranging from the easy to the challenging.