I received an A.B. degree in linguistics from Cornell University in 1978, and a Ph. D. in computer science from the University of Illinois in 1981. Then I worked three years for Hewlett-Packard in Palo Alto, California. Subsequently, I taught for four years at Princeton University, and then 34 years at Ohio State University, where I retired in May, 2022, and now have emeritus status. Along the way, I’ve consulted for IBM, AT&T, Hewlett-Packard, and various small companies. My research has primarily been in the analysis of algorithms, however, I’ve long been fascinated by computability theory, which has been the focus of my research and much of my teaching in recent years. In Autumn, 2021, I taught a graduate level course using an earlier draft of this book as the text.
“This is a concise book on the subject of computably enumerable (c.e.) sets and their constructions. … This book differs from all other textbooks in computability theory in its exercises. Instead of math-oriented problem sets, the exercises here are mostly discussions of technical details of the proofs … . This type of trial-and-error process is an essential step in learning computability as a beginner, and it is interesting to see how to explicitly emphasize it in the form of exercises.” (Mingzhong Cai, Mathematical Reviews, August, 2024) “The book is organized as a mathematics or theoretical computer science (CS) textbook. Theorems and lemmas, as well as pseudocode, demonstrate the solutions, and each chapter concludes with exercises. A very useful chapter summary describes the resultspresented in the chapter through a semiformal explanation.” (Bálint Molnár, Computing Reviews, November 15, 2023)