Princeton University
|
Computer Science 116
|
|
Computers have brought the world to our fingertips. We will try to understand at a basic level the science -- old and new -- underlying this new Computational Universe. Our quest takes us on a broad sweep of scientific knowledge and related technologies: propositional logic of the ancient Greeks (microprocessors); quantum mechanics (silicon chips); network and system phenomena (internet and search engines); computational intractability (secure encryption); and efficient algorithms (genomic sequencing). Ultimately, this study makes us look anew at ourselves -- our genome; language; music; "knowledge"; and, above all, the mystery of our intelligence.
This course satisfies Princeton's Science and Technology (with Lab) Distribution requirement.
Professor: Sanjeev Arora, 307 CS Building, 258-3869, arora@cs.princeton.edu
Teaching Assistants: J. Alex Halderman (Head TA), Umar Syed and David Xiao
Course staff email: (Please use this address to contact the course staff)
Office Hours:
Prof. Arora: Tue 3 - 4pm, Fri 1:15 - 2:15pm, CS 307
Umar: Wed 4:30 - 6pm, CS 001C
Dave: Thu 3 - 4:30pm, CS 103B
Precepts:
Umar: Mon 6:15 - 7pm, Friend 005
Dave: Tue 6:15 - 7pm, Friend 005
Labs:
Session 1: Mon 7pm - 10pm, Friend 005
Session 2: Tue 7pm - 10pm, Friend 005
Session 3: Wed 1:30pm - 4:20pm, Friend 005
Course blog: http://courseblog.cs.princeton.edu/spring06/cos116/
Lab reports and homeworks are due in the appropriately marked box at the start of lecture. Lab reports on Tuesday the week after the lab was finished. Homeworks on Thursdays, collected in the same fashion. Please do not send us emailed reports and homework---we cannot handle the email volume. (Please ignore any instructions to the contrary you may have been given by mistake. We will try to process anything you already emailed us, but it will be safest if you also print it out and put it in the bin on the due date.)
Extensions will be available if you send email to before the assignment/lab is due, explaining the circumstance that necessitates it. (Illness, absences due to sports, etc., must be documented with a note/email from a college administrator or suitable official.) Otherwise late homeworks/reports will receive 50% of the points (or even less if very late).
Missed a lab? Please try to make it up during another scheduled session the same week. If there is a reason you cannot attend any lab session during that week, please send email to explaining the circumstance and we will work out an alternative arrangement.
Collaboration policy: You
may discuss the labs and assignments with other students, and you may
ask for help from the professor or the TAs. However, you are not
allowed to copy another student’s programs or answers. Any violations
will be reported.
Week |
Lecture Topic |
Lab topic |
1 |
Intro: Computer science, a new way of
looking at the world. |
|
Telling a robot how to behave. slides |
||
2 |
Telling a computer how to behave. (Via pseudocode). slides |
|
“Everything’s a number.” |
||
3 |
“It ain’t no good if it ain’t snappy
enough.” |
|
“It sure is clever, but can it swing?” (Computer music.) slides |
||
4 |
"Seek and Ye shall find." (The continuum of computer “intelligence”.) slides |
|
What is a computation? The fluid boundary between program and data. slides |
||
5 |
Universal machines. What computers just
cannot do. slides |
|
Self-reproducing programs. Introduction to logic. slides |
||
6 |
Logic: From Greeks to philosophers to circuits. slides |
No lab session. Instead, Blogging Assignment 3 |
More Boolean logic and combinational circuits; Boolean circuits and memory. slides |
||
7 |
Sequential and clocked circuits; Finite state machines. slides |
|
Computer organization: CPUs and RAM. slides |
||
8 |
How to streamline your life (Lessons from computer architecture). slides |
Lab cancelled. |
What computers talk about and how. (Networking & the Internet.) slides |
||
9 |
The science that drives modern computers. slides |
|
How can computers help cure cancer? |
||
10 |
What is the computational cost of automating
brilliance or serendipity? |
|
Secrets and Lies, Knowledge and Trust. (Modern cryptography.) slides |
||
11 |
Viruses, worms, zombies, and other beasties. slides |
Special precept, and a Turing Test. |
Self-improvement for dummies. (Machine
Learning.) slides |
||
12 |
Can machines think? (A rigorous examination of Searle's objection.) slides |
|
|