This book is based on the constructivist belief that, before students can make sense of any presentation of abstract mathematics, they need to be engaged in mental activities which will establish an experiential base for any future verbal explanation. The main source of activities in this course is computer constructions, specifically, small programs written in the mathlike programming language ISETL; the main tool for reflections is work in teams...