This is the home page for CMPSCI 611. CMPSCI 611 is the graduate core course in the theory of algorithms and will deal with analysis techniques, algorithmic paradigms, and NP-completeness in a mathematically sophisticated way.

**Instructor Contact Info:**
David Mix Barrington, 210 CMPSCI
building, 545-4329, office hours Wed 11-12, Fri 2-3 or by appointment.
(Dropping in to my office is usually ok as well.)

**TA Contact Info:** Piyanuch Silapachote,
better known as "Pla", pla@cs.umass.edu,
office hours Tue 11-1 in the CMPSCI lounge.
Also Shaolei Feng, slfeng@cs.umass.edu,
office hours Mon 11-1 in the CMPSCI lounge.

- Course Requirements and Grading (not yet, but see Lecture 1)
- Homework Assignment Directory (with HW#5)
- Exam Directory (with practice final and solution)
- Questions and Answers on Homework (with some on HW#5)
- Syllabus
- Lecture Transparencies (with #25)

The course is primarily intended for graduate students in computer science, and forms one of the core courses for the Master's and Ph.D. programs. Other qualified students, such as undergraduate, non-degree, and engineering graduates students, will be admitted if space allows. The minimal prerequisite is a good undergraduate discrete mathematics course (such as our CMPSCI 250) and the mathematical sophistication expected of a computer science graduate student (e.g., a good background in linear algebra and statistics). Most students will have taken an undergraduate course in algorithms comparable to our CMPSCI 311 -- those who haven't will have to acquire some of this background on the fly.

The course will meet for two lecture meetings a week, Tuesday and Thursday 1:00-2:15. Lectures will be videotaped for off-campus students in the PEEAS program, and on-campus stduents will be able to borrow these tapes from the CMPSCI main office.

The required textbook will be lecture notes from previous versions of this course
given by Prof. Micah Adler, who is on
sabbatical leave. These will be available **by hardcopy only**, through
Collective Copies
in downtown Amherst. Most but not
all of the material of the course is covered in published books, which you may or may not
want to buy. The most popular text for a course like this is *Introduction to Algorithms*
by Cormen, Leiserson, Rivest, and Stein. Another good recent text is *Algorithm Design*,
by Kleinberg and Tardos.

The grade for the course will be based on a midterm (to be held Wed 26 October, 6:30-9:00 p.m., in Herter 231), a final exam, and five or six problem sets. I have a somewhat nuanced acedemic honesty policy for problem sets, which even some graduate students have had difficulty following, so I set it out here:

Solutions to homework problems must be entirely the student's own work **in
presentation**. You may get the idea of how to solve a problem from a variety of
sources, such as the instructor, the TA, fellow students, books, or the web. In your
writeup of the solution, you must **indicate if and where you got such help** and
**present the writeup in your own words**. A good way to ensure your own presentation
is to write up your solution without other written material in front of you. Handing in
work that is substantially identical to another student's work or to your reference is
**plagiarism** and will lead to sanctions. These may include **failure for the course**
and a report to the Graduate School, **even on a first offense**. (Any discplinary
action by me is subject to appeal to the Graduate School according to the established
procedures.)

The most common violation of these procedures comes when two or more
students hand in solutions
that are substantially identical to each other. **Please don't do this.** It is usually
a matter of excessively close collaboration rather than deliberate copying, but if I can't
distinguish it from the latter I have to treat it as the latter. With reasonable care on
your part to write up your own solutions, this shouldn't happen.

The primary avenue for course announcements will be the list/blog below:

**Announcements (23 December 2005):**

- (23 Dec) I have graded the final exams and computed grades for the course. I emailed grades for both the exam and the course to each of you. The scale for the final was 88 = A, 52 = B. The mean score was five points higher than on the midterm -- the high was 97, second-best 91, first quartile 83,median 66, third quartile 57, low 33. Of the 39 people who took the final, the course grades were as follows: one (unofficial) A+, 12 other A's, 6 A-'s, 15 B+'s, and 5 B's. You may pick up your final from me (I don't want to put them in the public pickup box). Happy holidays!
- (20 Dec) The graded HW#5 papers are now available in the main office. The mean was 88, the scale (as on HW#4) is A = 95, A- = 85, B+ = 75, etc., so that the overall scale for the five homeworks comes out to A = 90, A- = 80, etc., the same scale that is probably for the final. (Since the midterm was harder than I intended, it is scaled as A = 80, A- = 70, etc.)
- (20 Dec) A student has pointed out an error in the practice final solution, in the last problem -- this has now been corrected.
- (19 Dec) Solutions to HW#5 are now available in the main office. The graded HW#5 will probably be available tomorrow. Also, Shaolei is moving his office hours today to 1:30-2:30.
- (16 Dec) The current estimate from the TA's is that graded HW#5 and HW#5 solutions will be ready on Monday. I'll let you know when they're available in the main office.
- (16 Dec) In the last lecture we were under the impression that our
final exam was to be in the new engineering building near the computer
science building. This is
**not true**-- the correct site, as listed on the registrar's web site, is "AEBN 119", a room in the Agricultural Engineering building, in grid square B3 on this campus map. Room 119 is most easily accessed by entering the building on the north side, at the bottom of a staircase between Holdsworth and Chenoweth. It is the first room on the left if you enter that way. - (15 Dec) The practice final solution is now available. The real final is written and has been field-tested by one of the TA's with no evident problems. I will be around my office a lot until the real final on Wednesday, except that I may or may not be in tomorrow if the weather is as bad as predicted.
- (13 Dec) Ok, the practice final is done. I'll post answers in a few days.
- (13 Dec) Most of the practice final is ready, I need one more 10-point question which I'll add later tonight.
- (13 Dec) I've just posted today's slides -- sorry I forgot to post them before the lecture. I hope to post the practice final exam tonight.
- (12 Dec) I've posted a few more questions and answers on HW#5. One of them necessitated a correction to the HW#5 assignment: in Problem 5.3(c) your correction to the random coloring should be performed in linear time.
- (8 Dec) Here are today's slides, sorry they are so late. There are also some corrections to the HW#5 assignment, and some new questions and answers on HW#5.
- (6 Dec) I've posted a revised copy of today's slides, correcting the typos that we found during the lecture. Let me also take the chance to advertise the seminar tomorrow by David Liben-Nowell on social network theory. (For example, he will probably talk about the Erdos graph, where vertices are mathematicians, edges represent collaboration on a paper and a low distance to Paul Erdos is a status symbol, or the Bacon graph where vertices are actors, edges represent appearing in the same movie, and nearly every actor is within distance six of Kevin Bacon. There is at least one person in both graphs, actress and UCLA math major Danica McKellar).
- (6 Dec) Here are today's slides.
- (1 Dec) I've posted today's slides and corrrected a bad link on the HW#5 assignment.
- (30 Nov) I've posted HW#5, due on 13 Dec at 3:00 to the main office. Only the last question deals with linear programming, so it is 90% on Chapter 8 of Adler. Some of these problems probably have solutions out there on the web, so be careful to document your sources if you use any and make the presentation your own.
- (29 Nov) At the end of today's lecture I added some material on on-line algorithms, that will be relevant to one of the problems on HW#5. I've revised the lecture notes to add four more slides on this material, and to correct some errors.
- (29 Nov) Here are today's slides. I have mostly figured out problems for the last HW assignment and will probably post them today or tomorrow.
- (22 Nov) I've posted today's lecture slides. The last homework assignment, HW#5, will be due for on-campus students on the last day of classes, Wednesday 14 December 2005, at 3:00 p.m. to the main office. I'll post the HW#5 assignment early next week. I'm leaving town shortly after today's classes, so I will miss office hours tomorrow. I will be back sometime over the weekend, and will have some email access when I am away.
- (21 Nov) I've added several questions and answers on HW#4 to the Q&A page. None of them required corrections to the assignment text. The HW#3 papers are now graded -- I will put the folder in the pickup box in the main office soon and also bring it to class tomorrow. These were much better than previous homeworks -- the mean was 85 and the low only 47. The scale will thus be A=90, B=60.
- (15 Nov) I've just corrected a serious mistake on Question 4.3 of HW#4 -- all the references to "reducible to B" should (and now do) read "reducible to A". Thanks to the student that caught this. Today's slides are now up. I have also started a Q&A page for HW#4.
- (10 Nov) OK, the HW#4 assignment is posted, due a week from Tuesday. It would be good to look at it in the early part of next week, before I go away. I do apologize for the number of edits that have been necessary in the HW's -- I know this is annoying. There should be fewer (or even none) with this one, I hope.
- (10 Nov) A reminder -- I will be away from Wednesday afternoon through
Saturday. There will be no lecture on Thursday 17 November. We
*will*have a lecture on 22 November, the Tuesday of Thanksgiving week. - (10 Nov) Today's slides are ready. The HW#4 assignment will probably be ready before class.
- (10 Nov) Now that the off-campus students have all taken the exam, here
are the statistics for the on-campus exam:
- Grade scale: 80=A, 70=A-, 60=B+, 50=B, 40=B-, 30=C+
- Overall order statistics: high 90, first quartile 77, median 60, third quartile 45, low 27
- Question 1: high 37, 1Q 28, median 22, 3Q 19, low 11
- Question 2: high 15, 1Q 15, median 12, 3Q 6, low 0
- Question 3: high 20, 1Q 15, median 14, 3Q 10, low 2
- Question 4: high 25, 1Q 22, median 13, 3Q 10, low 1

The scale is lower because Question 1 was really harder than I intended. I am mindful of the fact that you will have only two hours for the final, so I will actually make the final shorter than the midterm.

- (8 Nov) I've just posted today's lecture notes, a full half-hour before the lecture. They are long -- I may wind up moving the last few slides to Lecture 18, depending on how things go. I owe you a new homework assignment -- this isn't ready yet but will be by Thursday at the latest.
- (7 Nov) I've answered several more questions on the
Q&A page. In particular, in Problem 3.3c you are
*not*required to factor n completely, just to find two nontrivial factors of n. - (4 Nov) I've gotten a number of good questions on HW#3 today. I'll post them on the Q&A page this afternoon, but I wanted to call your attention immediately to some edits in the assignment text. In Problem 3.1, I no longer ask you to show that your algorithm uses polynomial time, just that it uses a polynomial number of regular expression operations. The time needed for a regular epxression operation will depend on the answer to the last question I ask in the problem. The other edits are mostly there to rule out some unintended possible readings of the question, which I'll refer to specifically in the Q&A.
- (4 Nov) A purely self-serving announcement -- I'm singing in the
Valley Light Opera production of Lehar's
*The Merry Widow*, opening tonight and continuing on 5, 6, 11, and 12 November. For tonight's show only, students (even graduate students) can get general admission seats for $5 at the door. - (3 Nov) Today's lecture slides are posted.
- (2 Nov) I've made the updates to the Q&A page. They are minor -- basically they just explain the minor edits in green and purple on the HW#3 assignment.
- (1 Nov) Here are the slides for today, sorry they are so late. I am almost finished with the grading, and may or may not have the exams to give back in lecture. I will also update the Q&A page this afternoon.
- (28 Oct) I have posted the first question and answer on HW#3. There are significant revisions to Problem 3.3 to correct a mistake that the questioner pointed out. I'm grading the midterms, and hope to get them back to you by Tuesday.
- (27 Oct) Today's slides are now up. I will make up paper solutions to the midterm -- I may get them done in time to hand out in class today but otherwise I will make them available in the main office. I'll have more to say here about the midterm next week, when I've graded it and when the off-campus students have taken it.
- (26 Oct) I've just posted HW #3, due a week from next Tuesday, 8 November, for in-class students. I'm planning two more HW assignments, #4 to be due on 22 November and #5 to be due at the end of classes.
- (24 Oct) I've just posted the solutions to the practice midterm and the slides for tomorrow.
- (21 Oct) If you would like an emailed PDF or postscript version of the Adler notes with the original diagram captions, please email me. Remember that after the mistake was noted, Collective Copies started selling the correct version, but we can't refund the original copying costs. Sorry it took me so long to deal with this.
- (21 Oct) I'll post solutions to the practice exam on Monday.
- (19 Oct) The practice midterm is up, along with a preliminary version of tomorrow's lecture.
- (17 Oct) Paper copies of the HW#2 solutions are avialable in the main office. I've posted a preliminary version of tomorrow's slides -- I still have to proofread them.
- (11 Oct) Today's slides are now up. I've decided that since we have a midterm exam two weeks from tomorrow, I'm going to have HW#3 come after the exam. By the middle of next week I will post a practice midterm, of about the same length and difficulty as the real one.
- (8 Oct) There's a mistake in Problem 2.3(d) on the homework -- what I asked you
to prove is
**not necessarily true**. I've revised the question, and half of it is now extra credit (so it's a 90-point homework with 10 extra credit points). - (7 Oct) I've just added several more HW#2 questions to the Q&A page. By the way, since Monday is a holiday I don't expect the TA's to have office hours. But I will be reading email.
- (6 Oct) Graded HW#1 was returned in lecture today. Those papers not picked up are available in the CMPSCI main office, in a box in the gray metal cabinet to the left of Pauline as you come in. I will email off-campus students individually with grades and comments. Hig score was 99, mean about 79, low 44. The scale is 90=A, 80=A-, 70=B+, and so on.
- (6 Oct) I will not be around or on email tomorrow morning, but I expect to be there for my office hours 2-3.
- (6 Oct) Today's lecture slides are now posted. In general I will post these as soon as I have them ready, which may be only an hour or two before I deliver the lecture or (if I have my act together) earlier.
- (5 Oct) By the way, remember that if you consult a text or a web page
to get the idea of how to solve a homework problem, you must indicate your
source on your submission. The graders report some answers that look like
they came off the web but weren't so acknowledged. This is
*in addition*to your responsibility for submitting an answer that is your own in presentation. - (5 Oct) I've got another correction on Problem 2.3 on HW#2. The text
defines a "subset system" to have the downward closure property, that if
X ⊆ Y and Y ∈ I, then X ∈ I. But for 2.3 I do
*not*want this assumption -- a greedoid need not have this property and I am not asserting that the given (E,I) has it. I will correct the assignment now. - (4 Oct) Sorry for the delay in posting here. The notes for today's lecture are posted. Pauline has the HW#1 solutions. I made some corrections in the HW#2 assignment, and I will post some questions later today.
- (27 Sept) Paper solutions to HW#1 will be made available in the CMPSCI main office, probably on Thursday.
- (27 Sept) Interested off-campus students may join an email discussion group for the course set up by PEEAS -- go to this page and look for "Semester Information".
- (27 Sept) Remember that there is
**no lecture**this Thursday, 29 September. I will be in Denver Thursday through Sunday and will have little or no access to email. - (27 Sept) The new homework assignment is posted, due 11 Oct for on-campus students, 18 Oct for off-campus students.
- (20 Sept) Welcome to the off-campus students! Could each of you please send me an email, so I will be able to communicate with you easily? In answer to a question I got: Your HW due date will be a week after the regular one, and you should fax your answers to 413-545-1249, attention "Prof. Barrington". Your exams will be scheduled individually, about a week after the in-class exam, depending on when you can get a proctor.
- (20 Sept) The discussion at the end of today's lecture has inspired
the first problem of HW#2:
Problem 2.1 (10): Give an example of a subset system that is

*not*a matroid and has a few elements as possible. That is, prove that any subset system whose $E$ has fewer elements than yours*is*a matroid. Also, give an example of a weight function for your subset system where the greedy algorithm does not find a maximum element of $I$. - (20 Sept) The slides for today's lecture are up. I'll make corrections after the lecture if I find any mistakes. We may be over in ELAB rather than CMPSCI 142 today due to a technical problem with the videa people. If you come to CMPSCI 142 you'll be directed where to go.
- (20 Sept) We've finally set office hours. Mine are Wed 11-12 and Fri 2-3 in my office, 210 CMPSCI building. I'm also usually willing to have people drop in -- I will send you away if I need to. The TA's will hold office hours in the CMPSCI "multi-purpose room" ("lounge") on the first floor: Pla Tuesdays 11-1 and Shaolei Mondays 11-1. Notes for today's lecture will be posted later this morning.
- (19 Sept) A clever student has found a mistake in Problem 1 of HW#1.
I asked you to prove that f = Θ(g) from the given conditions, but this
may not be true. The revised problem is to prove that if f is one of the
functions arising from the Master Theorem, that is,
Θ(n
^{α}) or Θ(n^{α}log n), then f = Θ(g). In fact it is true if the ratio log(f(x))/(log x) reaches a limit as x goes to infinity. I'll also correct this on the assignment page. - (15 Sept) I've started the question and answer page for HW#1 and answered two questions, including the one asked in lecture today.
- (15 Sept) The first homework assignment is now posted, due Tuesday 27 September in class.
- (13 Sept) I'm bringing new originals of the lecture notes to Collective Copies. If you haven't bought a copy yet, or you don't mind paying again for the second one, you may get a copy with good diagrams from them. (Since you are paying for copying, and the copying has been done, we can't do a refund for the copies with bad diagrams.) By my count there are bad diagrams on 32 different pages: 16, 18, 19, 23, 24, 27, 35, 37, 38, 49, 50, 53, 54, 67, 76, 79, 103, 104, 106, 109, 110, 112, 116, 117, 119, 138, 143, 145, 146, 147, 148, and 149. I plan to work out some arrangement to make the correct diagrams available to anyone who doesn't buy another copy.
- (13 Sept) I expect to post HW#1 tomorrow or Thursday, to be due for on-campus students on Tue 27 September.
- (13 Sept) The slides for today's lecture are now posted. Off-campus students will probably want to print these out before viewing the DVD, since while I had the correct page available on the table in the lecture hall, the camera operator was not always able to focus on it. I also corrected a few typos from the lecture version before I posted them.
- (12 Sept) Whoops, never mind about the Chaitin seminar -- it has been canceled.
- (11 Sept) I wanted to call the attention of the on-campus students
to the department colloquium tomorrow, by Gregory Chaitin of IBM. He is
one of the most original and interesting thinkers in computer science and
will be talking about the
*philosophy*of computing and how it relates to the real universe. He speaks at 4:00 in CMPSCI 151, with refreshments at 3:45. - (9 Sept) There's a problem with the lecture notes -- some of the captions
on the figures, starting with Figure 2.8 on page 16, have been translated in
some unknown way. This is my fault, it seems -- the figures were ok on the
last version I proofread, they look fine on the Preview version of the file
I printed, and I didn't check through the originals I gave to
the copy shop because I knew I hadn't changed any of the figures.
Unfortunately there's not a lot to be done about it, because the copies are printed and the copy shop needs to be paid for printing them. What I can do is clarify each of the bad figures in lecture and in the slides. Figure 2.8 on page 16 is relevant to Tuesday's lecture -- the double arrows should all be labeled "δ" ("delta") and the points should be labeled "1, 2, 3, 4" in the top row and "p, 6, 7, 5" on tne bottom row.

- (8 Sept) The slides for today's lecture
are now avaiable in the lecture notes section of this
site. I apologize to the off-campus students for making you read these off
of the projection screen on the DVD -- I can keep a paper copy available for
the camera in future lectures but I didn't manage to do this today. You can
always print out the PDF slides before you watch the lecture.
I believe I have now talked to everyone who has asked to join the course, and given permission to add to all qualified students. If you are still interested in adding the course, email me soon.

- (7 Sept) We now have a second half-TA for the course, Shaolei Feng, and a firm date for the midterm exam. The course capacity change has gone through, so please register if you can and come to the first lecture if you cannot.
- (6 Sept) The textbook is now available at Collective Copies and costs $13.00. There are now 40 people registered for the course, including several new graduate students. I have asked to have the course capacity raised to 50, which I hope will take care of the rest of the new CMPSCI grad students. Others should come to the first lecture and I will see about overriding you in.
- (31 Aug) The "textbook" (lecture notes) will be available from Collective Copies in downtown Amherst starting on Wed 7 September. I've just put up a preliminary syllabus.
- (22 Aug) I've just put up the preliminary web page. I will be out of town for the latter part of this week, but back on Monday 29 August. If you would like to add the course but are not eligible because you are not a CMPSCI graduate student, please email me and come to the first lecture. I expect to admit most or all such students if they are qualified, but I cannot make a final decision on this until the new CMPSCI graduate students have registered.

Last modified 23 December 2005