This is the author's site for Mathematical Foundations of Computer Science (Ashwin Lall). Here is the publisher site.
The guiding principle behind this book is to make the mathematics needed in computer science accessible to students who are motivated by computer science topics. This is achieved by connecting discrete math topics to automata, regular expressions, grammars, Turing machines, and computability.
Chapter 1: Mathematical Data Types
Chapter 2: Deterministic Finite Automata
Chapter 4: Nondeterministic Finite Automata
Chapter 5: Regular Expressions
Chapter 6: Equivalence of Regular Languages and Regular Expressions
Chapter 7: Direct Proof and Closure Properties
Chapter 9: Proving the Language of a DFA
Chapter 10: Proof by Contradiction
Chapter 11: Pumping Lemma for Regular Languages
Chapter 12: Context-Free Grammars
Appendix C: Elementary Number Theory
Appendix D: Asymptotic Notation
Appendix G: Recurrence Relations
This PDF is for personal use only. All commercial rights are held by the publisher (CRC Press/Taylor and Francis).
Here is the errata for the book. Please email any corrections, no matter how minor, to me.
Instructor resources: Here is a 15-week schedule for covering the entire book except Chapters 9, 12 and appendices C, E. Here are the homework assignments I've used in the past. Quizzes and exams are available by email request. I recommend the use of this site (external link) for creating DFAs/NFAs/TMs as it can output LaTeX for each figure. No solutions are available at this time.