Supplementary Textbook: Introduction to Mathematical Thinking

Introduction to Mathematical Thinking

Supplementary Textbook

Author: Suraj Rampure (

Contributors: Fahad Kamran, Hermish Mehta, Jerry Huang

Last modified: September 18, 2018

This will serve as the textbook for the UC Berkeley student-run course with the same title. It isn’t meant to be a comprehensive book on any of these topics, but rather is meant to supplement the course. If you have any questions, comments or suggestions regarding any of the material in this book (whether or not you are a student at Berkeley taking this course), or want to use this book to teach your own class elsewhere, please email This is a new text, and feedback is appreciated!

Videos embedded in the book can be found on YouTube.

From the course website:

Berkeley’s highly theoretical Computer Science curriculum demands a high level of mathematical maturity. While those with extracurricular math experience from high school are familiar with dense notation, complex mathematical objects, and proof techniques, many students find foundational courses like CS 70, CS 170, and Math 55 confusing and inaccessible.

Introduction to Mathematical Thinking bridges the gap.

We teach mathematical maturity. Our curriculum exposes students to familiar concepts in a more precise, generalized way. By the end of our course, students will be able to:

As a result, this course will prepare students for higher-level mathematics courses, such as CS 70 at Berkeley. However, students can enroll in the course even if they aren’t planning on taking these courses or are not in CS/EECS; these skills and concepts are highly transferrable.

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Built using markdown-folder-to-html.