Week 3:
The main goals for Week 3 are to:
- Show how simple models of computing can result in complex behavior.
- Begin building a bridge from theoretical models of computing (like straightline programs and boolean circuits) to practical implementations of computing (like Python and integrated circuits).
- Explore the powers and limitations of a model of computing, including being able to understand the details of how to use that model, and why it is defined in the way chosen.
Schedule
Day | "Tuesday" Cohort | "Wednesday" Cohort | "Thursday" Cohort | "Friday" Cohort | "Sunday" Cohort | "Monday" Cohort |
---|---|---|---|---|---|---|
Wed 9 Sep | Preparation | (Week 2) | (Week 2) | (Week 2) | (Week 2) | (Week 2) |
Thu 10 Sep | Preparation | Preparation | (Week 2) | (Week 2) | (Week 2) | (Week 2) |
Fri 11 Sep | September 11 and Distributed Hashing (links from Week 2) | |||||
Preparation | Preparation | Preparation | (Week 2) | (Week 2) | (Week 2) | |
Sat/Sun 12/13 Sep | Cohort Meeting | Preparation | Preparation | Preparation | (Week 2) | (Week 2) |
Mon 14 Sep | Preparation | Cohort Meeting | Preparation | Preparation | Preparation | (Week 2) |
Tue 15 Sep | Assessed Cohort Meeting | Preparation | Cohort Meeting | Preparation | Preparation | Preparation |
Wed 16 Sep | Write-up Due | Assessed Cohort Meeting | Preparation | Cohort Meeting | Preparation | Preparation |
Thu 17 Sep | Week 4 | Write-up Due | Assessed Cohort Meeting | Preparation | Cohort Meeting | Preparation |
Fri 18 Sep | Week 4 | Week 4 | Write-up Due | Assessed Cohort Meeting | Preparation | Cohort Meeting |
Sat/Sun 19/20 Sep | Week 4 | Week 4 | Week 4 | Write-up Due | Assessed Cohort Meeting | Preparation |
Mon 21 Sep | Week 4 | Week 4 | Week 4 | Week 4 | Write-up Due | Assessed Cohort Meeting |
Tue 22 Sep | Week 4 | Week 4 | Week 4 | Week 4 | Week 4 | Write-up Due |
Cohort Problems
These are the problems you should discuss in your Cohort Meeting, and everyone in your cohort should be prepared to present and discuss solutions to at the Assessed Cohort Meeting:
Cohort Problems for Week 3 [PDF]
Programming Problems for Week 3 [adders.py]
The problems are posted here and we think its a good idea to look at them early, but you’re not expected to be able to solve them until after doing the readings and watching the videos below.
After the Assessed Cohort Meeting, your Cohort Leader will select one problem that your cohort needs to write-up and submit. The write-up is due by 11:59pm on the day after your assessed cohort meeting (see the schedule above).
The PS3 Template provides directions and a template for producing the PDF file you will submit as your write-up.
Download the Problem Set 3 Template [zip].
Reading
Material in this week’s lectures parallels with:
- Ch. 3, Defining Computation of the TOC textbook. We discussed this last week as well, we’re looking at this chapter in more detail this week
- Ch. 4, Syntactic sugar and computing every function from the TOC textbook. In particular, we cover sections 4.1 through 4.3.
Videos
You can play all the videos using this playlist, but don’t forget to take breaks:Week 3 Playlist
These videos are edited from these cs3102 classes (we don't generally recommend watching the unedited versions, but they are available if you want to)::
-
(Fall 2019) Class 6: Defining Boolean Circults - Unedited Video, Slides (PDF)
-
(Fall 2019) Class 7: Syntactic Sugar - Unedited Video, Slides (PDF)
-
(Spring 2020) Feb 4: Syntactic Sugar - Unedited Video, Slides (PDF)
Defining a Computing Model for Boolean Circuits (14:44)
Boolean Circuit Execution (11:06)
Good Circuits Evaluate (2:12)
Computing Models and Syntactic Sugar (9:13)
De-Sugaring Procedures (11:40)
Constructing Conditionals (10:37)
Lengthening LOOKUP (12:14)
Cost of LOOKUP (3:33)