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