Spring 2000

**Time:**Monday, Wednesday, Friday 9:05-9:55 am.**Place:**Olin 155.

**Instructor:**- Jon Kleinberg, 5134 Upson Hall, 255-3600. email: kleinber@cs.cornell.edu

**Teaching Assistants:**- Venu Ramasubramanian, 5132 Upson, 255-5577, email: ramasv@cs.cornell.edu .
- Chaitanya Swamy, 5132 Upson, 255-5577, email: swamy@cs.cornell.edu .
- Douglas Burdick, email: drb19@cornell.edu .
- Vadim Grinshpun, email: vg23@cornell.edu .
- Mikhail Kobyakov, email: msk15@cornell.edu .
- Yeongwee Lee, email: yl79@cornell.edu .
- Michael Priscott, email: mbp11@cornell.edu .
- Shan-Leung Maverick Woo, email: sw77@cornell.edu .

**Support Staff:**Scott Coldren, 4119 Upson, 255-0957, email: coldren@cs.cornell.edu .

- Mon. 10:00 - 11:00, Jon Kleinberg, (5134 Upson)
- Tues. 1:30 - 2:30, Douglas Burdick, (320 Upson)
- Tues. 3:00 - 4:00, Mikhail Kobyakov, (320 Upson)
- Wed. 1:30 - 2:30, Michael Priscott, (320 Upson)
- Wed. 2:30 - 3:30, Jon Kleinberg, (5134 Upson)
- Wed. 3:30 - 4:30, Vadim Grinshpun, (320 Upson)
- Thurs. 10:00 - 11:00, Yeongwee Lee, (320 Upson)
- Thurs. 1:15 - 2:15, Venu Ramasubramanian, (5132 Upson)
- Thurs. 2:55 - 3:55, Chaitanya Swamy, (5132 Upson)
- Thurs. 9:30 PM - 10:30 PM, Shan-Leung Maverick Woo, (320 Upson)

Extra copies of handouts will be kept in 303 Upson, and on the racks outside. We will post some of the handouts to the course home page.

For the first time this semester, we will be using a draft of a book by Jon Kleinberg and Eva Tardos, which we developed while teaching last year's version of CS 482. It is available at the Campus Store.

Although the book is organized around the structure of the course, we will still cover things in lecture that are not written down there; there are also things in the book that we will not cover. The content of the lectures forms the material that you are responsible for knowing in the course.

An optional book for the course, which has a lot of material, is

- T. Cormen, C. Leiserson, R. Rivest.
*Introduction to Algorithms*. McGraw-Hill, 1990.

- A. Aho, J. Hopcroft, J. Ullman.
*The Design and Analysis of Computer Algorithms*. Addison-Wesley, 1974. - G. Brassard, P. Bratley.
*Fundamentals of Algorithmics*. Prentice-Hall, 1996. - M. Garey and D. Johnson.
*Computers and Intractability: A Guide to the Theory of NP-Completeness*. W.H. Freeman, 1979. - D. Kozen.
*The Design and Analysis of Algorithms*. Springer-Verlag, 1992.

- We will assume that everyone has seen the material in CS 211/212 and 280, and we will use it as necessary in 482. This includes elementary data structures, sorting, and basic terminology involving graphs (including the concepts of depth-first search and breadth-first search).
- From 381/481, we mainly expect you to be familiar with the Turing machine model.
- The lectures and homework will involve the analysis of algorithms at a fairly mathematical level. We expect everyone to be comfortable with reading and writing mathematical proofs, at the level of CS 280 and 381/481.

- Prelim 1: Thursday, February 24th at 7:30 pm.
- Prelim 2: Tuesday, April 11th at 7:30 pm.
- Final: Friday, May 12th, 3-5:30 pm.

There will be weekly homework sets, generally due on Fridays. Homework should be handed in in lecture, at the end of class, on the day it is due.

- Late homeworks will not receive credit. (If a genuine emergency situation prevents you from handing in an assignment on time, come talk to one of us and we can work something out.)
- Most homework will consist of written questions asking you to design algorithms for various problems. (There will not be any programming assignments.) A complete answer consists of a clear description of an algorithm (an English description is fine), followed by an analysis of its running time and a proof that it works correctly. You should try to make your algorithms as efficient as possible.

You are expected to maintain the utmost level of academic integrity in the course. Any violation of the code of academic integrity will be penalized severely.

You are allowed to collaborate on the homework to the extent of formulating ideas as a group. However, you must write up the solutions to each problem set completely on your own. You must also list the names of everyone that you discussed the problem set with.