CMPU 145

Foundations of Computer Science

Spring 2020

Monday & Thursday, 3:10–4:25 p.m.
Sanders Physics 105

Friday, 11:00 a.m.–1:00 p.m.
Sanders Physics 309

Prof. Jonathan Gordon

Monday Thursday Friday

1

Introduction

Jan. 20

Jan. 23

Sets

Jan. 24

Racket tutorial

2

Set theory

Jan. 27

Set relations and operations
element-of.rkt

Jan. 30

Sets and power sets

Jan. 31

Lab 1

3

Proofs

How do we prove results with certainty?

Feb. 3

Direct proofs

Feb. 6

Indirect proofs

Feb. 7

Lab 2

4

Propositional logic

How can we formalize our reasoning?

Feb. 10

Propositional logic, part 1

Feb. 13

Propositional logic, part 2

Feb. 14

Lab 3

5

First-order logic

  • Assignment 4

Feb. 17

First-order logic, part 1

Feb. 20

First-order logic, part 2

Feb. 21

Lab 4

6

Relations

How do we model relationships between objects?

  • Read §2.1–2.2, 2.3.1, 2.3.3, 2.4
  • Assignment 5

Feb. 24

Binary relations, converse and composition

Feb. 27

Reflexivity and transitivity

Feb. 38

Lab 5

Resources

Perspectives

Readings

We will primarily use this textbook, available online:

From outside the Vassar network, you may need to search for the book on the library website, which will prompt you to log in. The textbook is also available for sale at the Vassar bookstore.

The author’s list of errata is available.

Programming

A computer is not dependent so much on technology as on ideas.

W. Daniel Hillis, The Pattern on the Stone