## CS 171 Syllabus## Discrete Structures II## Spring 2016## CIS Department## Saint Vincent College## General Information
## DescriptionThis course continues the study of discrete mathematics which was begun in CS 170. The mathematical and theoretical foundations of computer science are emphasized. Topics to be covered include proofs of program correctness, running time analysis, computability theory (and Turing machines), complexity theory (including the classes P, NP, etc.), more on grammars & parsing, push-down automata, number theory & encryption, and counting techniques (especially recurrence relations and generating functions). Important fundamental questions will be answered, such as whether all functions are computable. Optional topics might be added as time allows, such as the connection between Prolog and predicate logic (e.g. the resolution principle). In spite of the emphasis on theory, the goal is to show how this theory is used in practical applications in computer science. The practical applications that are emphasized include aspects of the design of parsers and compilers, solving the travelling salesperson problem, how to find and compare the computational complexity of various algorithms, and how to show that critical software is correct. The implications for practical computing of unsolvable problems (such as the general halting problem) and problems with bad computational complexity are also considered. ## Why Take This Course?As with CS 170, the major purpose is to help the student to obtain some fluency in specific areas of discrete mathematics and to encourage the use of the associated techniques in other computing courses. This course is required for those CIS majors who are doing the computer science concentration. Computer scientists often use and develop the rich theory of discrete mathematics which is introduced in this course. Students who plan to go to graduate school in computer science will see a number of discrete mathematics questions on the GRE computer science examination (if they take that exam). In addition, many of the practical applications of discrete mathematics outlined above are important for all students of computing. Mathematics majors also sometimes take discrete mathematics in order to broaden their knowledge of mathematics. ## The TextThe course will mostly use those topics from the Rosen text not covered in CS 170 (primarily proofs of program correctness, solving recurrence relations, generating functions, and Turing machines), although some CS 170 topics (such as grammars and finite state machines) will be covered again, but in greater depth. In addition, the instructor will supply other material not found in the text, so as to be able to incorporate a wide range of topics from a number of sources. These topics include computability and complexity theory, Turing's thesis, Church's thesis, Godel's Incompleteness Theorem, infinite sets, and push-down automata. The instructor will also supply software to illustrate a few of the topics covered (such as solving the travelling salesperson problem and using a table-driven parser). ## Core GoalsThis course contributes especially toward the following core curriculum goals, listed in order of emphasis. Writing good mathematics in the solution of problems is the key communication skill for this course.
## CIS Department Student OutcomesThis course contributes mainly to the following desired departmental student outcomes listed in order of emphasis.
## Course Goals and Means of AssessmentSpecific course goals include the following. These goals will be assessed by means of homework assignments, tests, and class participation. Informal student comments are also considered.
## Grading and Course Policies
Letter grades will be given using the scale found in the College Bulletin. Due to the technical nature of the course, exams will be open book, open notes and will be announced in advance. Be sure to bring to each exam notes from class, handouts, homework solutions, and examples. However, you must still be well-prepared as it is not possible to look up how to solve every problem in the time given. Homework and test answers are expected to be written using good English and good mathematics. These items will be graded not just on the correctness of their answers, but also on the clarity of their presentation. This is intended to help the student to develop good written communications skills. On exams, cell phones, tablets, laptops, and similar devices should be turned off and put away. The use of calculators is encouraged (and, in fact, necessary to answer some exam questions), but calculators are not to be shared among students during an exam. Calculators and Mathematica are of use in the graphing of functions and in certain other parts of this course. These can be used to aid you with homework. Not all of the homework will be collected, but some of it will be.
Both the instructor and students are expected to do their best to produce a good class and to treat each other with respect. This includes many factors, such as listening when someone else is speaking, trying to understand what others are saying, being of assistance to others, etc. It definitely does NOT include making fun of others. On a practical level, do your best to improve your grade: read the course materials, attend class, review what was done in each class before having to go to the next class, do the homework, ask questions, and try to answer questions in class! Mathematics is not a spectator sport! It requires active participation and repeated practice. Do lots of homework problems! If you begin to feel lost, consult one of the tutors, see the instructor, or work through the difficulties with the help of another student in the course. Do not let yourself get behind. In fact, one key to academic success is to start early on homework and other tasks. Last-minute miracles seldom work! Note in particular that attendance is expected. Student performance is bound to deteriorate when classes are missed. Partly in order to emphasize the importance of attendance, the policies outlined right after this paragraph will be used.
Make-up exams are strongly discouraged. If possible, take the regularly scheduled exam. For an excused absence or other significant reason, the instructor may agree to give a make-up exam. Whenever possible, see your instructor ahead of time if you know you must miss an exam (e.g. due to sports). Normally some type of written documentation is required (such as a note from the coach, doctor, etc.). If the documentation or reason for missing an exam is poor, the student can count on receiving a significantly more difficult exam, if one is given at all! Do ask about a makeup exam if you have a good reason to miss an exam, even if documentation is not readily available, as it is understood that illnesses and other complications do happen. Homework and exams will ask critical thinking questions that require careful analysis, mathematical explanation and/or proof, and meaningful conclusions. For example, you might be asked to write a mathematical proof that a small section of a program is correct. You might also be asked to take a small integer m to a large integer power e, modulo some prime p. You would have to decide whether finding m to the e on a calculator would work reasonably, whether the "square and multiply" modular exponentiation algorithm would be best to use, or perhaps whether Fermat's Little Theorem would lead more quickly to a solution. You would then need to state your solution method, apply it to the given problem, write the details in good mathematical notation, and then present the solution. In some cases the solution requires some interpretation, some explanation of the meaning and/or correctness of the solution. Intellectual honesty is important at Saint Vincent College. Attempts to pass off the work of another as one's own, or group work as one's individual work, etc. will result in action appropriate to the seriousness of the situation. If there is some doubt as to whether you solved a homework or test question yourself, you may be asked to explain the solution. If you can do so, that provides good evidence that you did do the work yourself. All cases of apparent intellectual dishonesty will be referred to the administration. If the administration does not say what to do about the grades in such a case, the first offense will involve a significant grade penalty (such as a grade of zero on the assignment or test), while a second offense may result in failure of the course. In this course, students are expected to do entirely their own work on tests and homework that is assigned to be collected (unless a collected homework assignment has been designated as a group homework). Note that copying someone else's work, besides being an instance of plagiarism, does little to help you to learn the material. Remember that you are responsible for knowing how to solve the homework problems and that you will have to face the test questions on your own.Be sure to read and follow the CIS Department Policies, available under the CIS Department Web Page. (This statement covers especially the proper use of departmental computing facilities, policies concerning your web pages, academic honesty, etc.) Be sure to read the Regulations section of the College Bulletin (which covers such things as grading, academic honesty, etc.) and the Student Handbook (which covers academic honesty, classroom etiquette, etc.). Students with disabilities who may be eligible for academic accommodations and support services should please contact the Associate Dean of Studies, Mrs. Sandy Quinlivan, by phone (724-805-2371), by email to sandy.quinlivan@stvincent.edu or by appointment (Academic Affairs-Headmaster Hall). Reasonable accommodations do not alter the essential elements of any course, program, or activity. If the instructor needs to cancel class, every effort will be made to send an email message to students' Saint Vincent email accounts. |