http://infolab.stanford.edu/~ullman/focs.html [focs] Foundations of Computer Science This book has been taken out of print by W. H. Freeman. You are welcome to use it if you like. We believed in 1992 it was the way to introduce theory in Computer Science, and we believe that today. --- Al Aho and Jeff Ullman Index The Book | Materials | Gradiance | Errata PDF's of the Book * Preface * Table of Contents * Chapter 1 Computer Science: The Mechanization of Abstraction * Chapter 2 Iteration, Induction, and Recursion * Chapter 3 The Running Time of Programs * Chapter 4 Combinatorics and Probability * Chapter 5 The Tree Data Model * Chapter 6 The List Data Model * Chapter 7 The Set Data Model * Chapter 8 The Relational Data Model * Chapter 9 The Graph Data Model * Chapter 10 Patterns, Automata, and Regular Expressions * Chapter 11 Recursive Description of Patterns * Chapter 12 Propositional Logic * Chapter 13 Using Logic to Design Computer Components * Chapter 14 Predicate Logic * Index Supplementary Materials * Solutions to Selected Exercises * A Selection of Exams and Projects * Jeff Ullman's Lecture Notes (ancient) * The Programs Appearing in the Book Gradiance Package Available Gradiance is offering a free trial of its automated homeworks for the topics covered by this book. These homeworks are designed as a teaching aid rather than an assessment tool. Students get advice when they make a mistake and are encouraged to try working on the same problem(s) until they get them right. If you would like to try the system gratis for your class, make yourself an account at www.gradiance.com/services. Then, send email to sup port @grad iance .com (ignore the blanks in that email address, of course) telling us your login and that you would like to try the discrete-math product. You can find manuals for instructors, students, and question-authors at www.gradiance.com/info.html. Special offer for students: Until June 30, 2009, we have made use of the Gradiance materials available for students whose instructors are not using the system. Make yourself an account on www.gradiance.com/ services, and then sign up for the class 8CD5ED01. You will be able to work 31 selected homeworks, and will get advice when you make an error. The only difference is that we cannot reveal solutions, because these assignments are open indefinitely. Errata Sheet We are going to try to maintain errata. Please see The Errata Sheet. If you find an unreported error, please send email to ullman at gmail dot com.