2018 by Stefan Hugtenburg, Neil Yorke-Smith, Delft University.
a textbook for a one quarter introductory course in theoretical computer science. It includes topics from propositional and predicate logic, proof techniques, set theory and the theory of computation, along with practical applications to computer science. It has no prerequisites other than a general familiarity with computer programming.
2011 by Carol Critchlow, David Eck, Hobart and William Smith Colleges.
Textbook for a one-semester course in theoretical computer science. No prerequisites other than introductory computer programming. The first half of the course covers material on logic, sets, and functions that would often be taught in a course in discrete mathematics. The second part covers material on automata, formal languages, and grammar that would ordinarily be encountered in an upper level course in theoretical computer science.