FSU Seal

    COURSE SYLLABUS

    COT 5507: Analytic Methods in Computer Science
    Fall 2016


Prerequisites:

COP 4531: Analysis of Data Structures and Algorithms (this pre-requisite will not be waived). You are also expected to have the mathematical maturity to write formal proofs.

Lecture hours:

MW 8:00 am - 9:15 am, LOV 103.

Contact information:

Instructor: Ashok Srinivasan
Office hours: Mon 9:15 am - 10:15 am, Wednesday 3:30 pm - 4:30 pm. I am also usually available in my office, and you can feel free to meet me except before class. Alternatively, you may schedule an appointment, either by email or by phone.
Office: 169, Love Building
Phone: 644-0559
Email: asriniva AT cs.fsu.edu
Course web site: Access through blackboard http://campus.fsu.edu.

Text book:

Course rationale:

In your undergraduate Discrete Mathematics course(s), you learned mathematical techniques that subsequently enabled you to perform simple analysis of algorithms. In this course, you will learn more sophisticated mathematical techniques, which will enable you to perform more complex analysis of algorithms. You may, therefore, think of this as a graduate level discrete mathematics course, targeted at Computer Science applications.

Apart from learning certain mathematical techniques, you will also learn to write formal proofs and derive results. Both of these skills should help you in theoretical Computer Science courses, and in your research.

Course description:

In this course, you will learn more sophisticated mathematical techniques than in your undergraduate level discrete mathematics course. This will enable you to analyze more complex algorithms than those you studied in your undergraduate algorithms course.

To be more specific, we will discuss the following topics. (i) Recurrences, where the solution to a problem is formulated in terms of solutions to its subproblems. (ii) Sums, which are commonly encountered in algorithm analysis, since we can often formulate the time complexity of an algorithm as the sum of the time taken for a sequence of steps. (iii) Generating functions, where we deal with a sequence of numbers by manipulating functions that generate a corresponding infinite series. (iv) Discrete probability, which is useful for average-case analysis of algorithms.

This course does not require any programming. It does involve deep thinking and rigorous theoretical analysis. Therefore, much mathematical maturity is required of you. (However, specific mathematical skills, beyond those learned in undergraduate Discrete Mathematics courses, are not required.) For example, you should be able to understand and write formal proofs. This course will also require you to be creative; you will need to solve problems that differ from the ones discussed in class, though the solution strategies will often be related to those discussed.

Learning objectives:

By the end of the semester, you should develop the following skills: (i) solve problems that require a direct application of the techniques discussed in class or in reading assignments, (ii) given a practical application or algorithm, identify appropriate techniques that can be used to solve the problem or analyze the algorithm, and then apply those techniques, and (iii) understand the basic idea behind the techniques, so that you can modify them when required, and prove the correctness of your modifications. We will provide specific objectives for each lecture, through links from the online course calender.

Grading criteria:

    Class participation and review questions 10
    Two Homework assignments 2 x 20 = 40
    Midterm 20
    Final Exam 30
    Course average Letter grade
    90 - 100 A
    85 - 90 A-
    80-85 B+
    75-80 B
    70-75 B-
    0-70 F to C+

Your grade will be based on the scores obtained in the above categories, with weights as given above. You should also score at least 70% in the weighted average of the midterm and finals in order to get a grade of B or higher. Note that the thresholds for grades in this course are a little lower than they normally are in other courses. Please don't think this makes it easier to obtain a high grade. The thresholds are lower because the exams are more difficult!

Examples
  1. If you obtain 83% total and 93% on the exams, your grade will be B+.
  2. If you obtain 83% total and 65% on the exams, you will not get a B+. Your grade will be B-, because your exam grade is below 70%.
Class participation and review questions
Class participation consists of answering questions correctly in class, and other positive contributions, discussed in greater detail at www.cs.fsu.edu/~asriniva/courses/AM16/classparticipation.html.

Assignments
Assignments will all be theoretical; there will be no programming involved. Hardcopies should be turned in to me in my office. If I am not in my office, you can slip it under my door. Assignments are due 5 pm on the due date.

Midterm and final exams
Both exams will be closed book. You will be tested on knowledge, understanding, and application of material discussed in class. You will also have some questions testing your ability to creatively solve new problems, using techniques discussed in class. The final exam will be comprehensive.

Your responsibilities:

Deadlines and instructions
Following the same professional guidelines that you will encounter in business, there are strict deadlines, and instructions that must be followed. Please read instructions carefully, and schedule your activities so that you submit assignments well in time. You should check your FSU email account and the class web page regularly, and note other announcements, on-line and in class. The subject line of any mail you send me should start with COT5507:.

Participation
I will ask you questions in class: (i) review questions on the previous lecture, and (ii) questions on the material currently being discussed, in order for me to obtain feedback on how well you understand the material. You should be prepared to answer these questions, and should also participate by asking questions, suggesting ideas, and performing in-class assignments that I give. Of course, you cannot participate in class unless you attend it!

Reading assignments
You will have a reading assignment for each lecture, which you should read. New material often builds on the old ones. So, if you have trouble with some material, please get help from me before the next class. You should also peruse the material for the next lecture, and be prepared to answer questions on it, which I will provide in advance. I expect that you will need to spend between one and two hours studying, for each lecture. The assignments and exams will consume additional time. The following learning components are important, and you may want to verify if you perform satisfactorily on these, after studying the material.

  • Knowledge: Do you understand the terminology used? Can you explain the techniques discussed in class?

  • Understanding/Application: Given a problem or an algorithm, can you identify a suitable technique, or a combination of techniques, and use them to solve the problem, or analyze the algorithm?

  • Creativity: If some aspect of a problem were modified, then can you modify the techniques learned in order to analyze the new problem? In order to accomplish this, you will need to understand the underlying problem structure that made the original technique work, why the new problem features makes the previous technique not directly applicable, and how that limitation can be overcome.

Assignments
You will have two assignments in this course, and you will have around ten days to work on each one.

Course policies:

Attendance Policy:

The university requires attendance in all classes, and it is also important to your learning. The attendance record may be provided to deans who request it. If your grade is just a little below the cutoff for a higher grade, then your attendance will be one of the factors that we consider in deciding whether to "bump" you up to the higher grade. Three or fewer unexcused absences in lectures and recitations will be considered good attendance.

Excused absences include documented illness, deaths in the immediate family and other documented crises, call to active military duty or jury duty, religious holy days, and official university activities. Accommodations for these excused absences will be made and will do so in a way that does not penalize students who have a valid excuse. Consideration will also be given to students whose dependent children experience serious illness.

You should let me know in advance, when possible, and submit your documentation. You should make up for any materials missed due to absences.

Missed exam Policy:

A missed exam will be recorded as a grade of zero. We will follow the university rules regarding missed final exams (see http://registrar.fsu.edu/dir_class/fall/exam_schedule.htm), for all the exams, including the final exam.

Late Assignment Policy:

In order to enable us to provide timely solutions to assignments, we have the following policy regarding submission of late assignments.

Grade of 'I' Policy:

The grade of 'I' will be assigned only under the following exceptional circumstances:

Professional ethics:

You will gain confidence in your ability only when you do the work independently. On the other hand, one does learn a lot through discussions with ones peers. In order to balance these two goals, I give below a list of things that you may, and may not, do.

Things you may not do: You should not copy from the assignments of other students. This includes directly copying or making modifications to others' assignments. If you happen to find a solution to an assignment problem from some source, you may not copy it. Furthermore, you should take steps to ensure that others cannot copy your assignment.

Things you may do: You may ask others about (i) terminology that you do not understand, (ii) clarifications on what is required of you in an assignment problem (though you may be much better of asking me), and (iii) how to submit your assignment. After the assignment has been graded, you are encouraged to discuss each others' solutions.

Honor Code: The Florida State University Academic Honor Policy outlines the University's expectations for the integrity of students' academic work, the procedures for resolving alleged violations of those expectations, and the rights and responsibilities of students and faculty members throughout the process. Students are responsible for reading the Academic Honor Policy and for living up to their pledge to be honest and truthful and [to] strive for personal and institutional integrity at Florida State University. (Florida State University Academic Honor Policy can be found at http://fda.fsu.edu/content/download/21140/136629/AHPFinal2014.pdf .)

Plagiarism:

Plagiarism is "representing another's work or any part thereof, be it published or unpublished, as ones own. For example, plagiarism includes failure to use quotation marks or other conventional markings around material quoted from any source" (Florida State University General Bulletin 1998-1999, p. 69). Failure to document material properly, that is, to indicate that the material came from another source, is also considered a form of plagiarism. Copying someone else's program, and turning it in as if it were your own work, is also considered plagiarism.

Course calender:

Week Lecture Chapter Assignments
1 29 Aug Introduction.
31 Aug Tower of Hanoi -- Sec 1.1
2 5 Sep Labor Day - no class.
7 Sep Lines in a plane -- Sec 1.2.
3 12 Sep Lines in a plane -- Sec 1.2 (completed).
14 Sep Answer review questions.
4 19 Sep Sums and recurrences -- Sec 2.1 and 2.2
21 Sep Answer review questions.
5 26 Sep Manipulation of sums -- Sec 2.3. Assignment 1 announced 26 Sep.
28 Sep Answer review questions.
6 3 Oct Multiple sums -- Sec 2.4, General methods -- Sec 2.5 methods 0 and 1. Assignment 1 due 5 Oct.
5 Oct Answer review questions.
7 10 Oct General methods -- Sec 2.5 methods 2 and 3.
12 Oct Answer review questions.
8 17 Oct Midterm review. Midterm this week!
19 Oct Midterm.
9 24 Oct Generating functions, Domino theory and change -- Sec 5.4 and 7.1.
26 Oct Answer review questions.
10 31 Oct Basic maneuvers -- Sec 7.2.
2 Nov Answer review questions.
11 7 Nov Solving recurrences -- Sec 7.3 (to be continued).
9 Nov Answer review questions.
12 14 Nov Solving recurrences -- Sec 7.3 (to be continued).
16 Nov Answer review questions.
13 21 Nov Solving recurrences -- Sec 7.3 (to be continued). Assignment 2 announced 21 Nov.
23 Nov Thanksgiving -- no class.
14 28 Nov Solving recurrences -- Sec 7.3 (completed). Assignment 2 due 1 Dec.
1 Dec Answer review questions.
15 5 Dec Probability generating functions -- Sec 8.3.
7 Dec Answer review questions.
16 15 Dec Final exam: Thursday 12:30 pm - 2:30 pm.

SYLLABUS CHANGE POLICY:

This syllabus is a guide for the course and is subject to change with advanced notice.


Last modified: 10 Aug 2016