COMPSCI 250 is the undergraduate core course in discrete mathematics and will deal with logic, elementary number theory, proof by induction, recursion on trees, search algorithms, finite state machines, and a bit of computability.

The two lectures each day will be very similar and use very similar lecture slides. Lecture 250-01 (Dave) meets MWF 1:25-2:15 p.m. in Thompson 102. Lecture 250-02 (Mordecai) meets MWF 10:10-11:00 a.m. in Morrill (II) 131. The sections will have the same homework and exams, and will use a single Moodle site.

There are nine discussion sections each Friday:

Instructor Contact Info:

David Mix Barrington, 210 Computer Science Building, 545-4329, private zoom number 459 532 6175, office hours for Spring 2024: TBA

Mordecai Golin, A143 LGRC, office hours for Fall 2023: TBA

The best way to contact either Dave or Mordecai is by email. Dave will usually eventually answer email at barring@umass.edu, but not as quickly.

TA and UCA Contact Info:

This course is primarily intended for undergraduates in computer science and related majors such as informatics, mathematics or computer engineering. CICS 160 (using data structures) and MATH 132 (Calculus II) are prerequisites and are pretty strictly enforced.

The four-credit course meets for three lecture meetings a week, Monday, Wednesday, and Friday. Mordecai will lecture 10:10-11:00 in Morrill II 131 and Dave will lecture 12:20-1:10, in Thompson 102 -- the lectures will be similar and will follow the textbook pretty closely. Both lecture sections of the course will have the same assignments, exams, and grade scale.

The schedule below indicates which lectures and discussions happen which days, which sections of the book to which they refer, and when the homework assignments are due.

There is one discussion meeting per week for each of the nine sections, at various times on Fridays before lecture as indicated on SPIRE. Each discussion will have a written assignment which you will carry out in groups. Discussion attendance is required, so that missing a discussion will incur a grade penalty. The TA's and instructors will cover the sections in various combinations, so they will be as interchangeable as we can make them.

The course is using the Moodle course management system and the Piazza system for student discussion. We will also use a free system called ClassQuestion, which replaces the iClicker system we used in prior years. They will be used in grading only for classroom attendance. Basic information about the course will be on this site, and specifics of the course will be off of the Moodle main page once it is established.

Course Objectives:

This is a course about mathematical proof -- how and why to prove things about the objects of digital computation. In order to write programs, you need to think clearly about them, and the techniques of mathematical proof are an essential tool for that. The single most important tool is mathematical induction, which allows us to prove statements about any system that is defined in terms of itself. The natural numbers are the most familar such system, but in computing we create other structures by recursive definition, and process them with recursive algorithms. We show you recursion and induction using a variety of systems that are used in actual computation.

Learning Outcomes:

This page lists specific things that might be asked on a final exam.

Textbook:

The textbook is the current draft of Dave's in-progress book, A Mathematical Foundation for Computer Science. This is available as an e-book from Kendall Hunt Publishing (last year for $60, probably a bit more this year). It has an "assessment package" where you will need the current version of the book to answer quiz questions. The book and package can be obtained from the eCampus site or directly from Kendall Hunt. (Dave does not get royalties for purchases from students in the course -- they are contributed to the David Mix Barrington Scholarship in Computer Science.)

Schedule:

This page indicates the dates and topics of each lecture and discussion, including the sections of the textbook used in each.

Course Requirements and Grading

Your grade in COMPSCI 250 will be based on the following:

Calculation of Grades

My (Dave's) system for computing grades is a bit unusual, so I will try to explain it here. I take every graded component of the course and assign it a number on a scale from F (0) through C (200) to A (400) and sometimes higher. These are the numbers that are averaged together by Moodle to get your "course total" at the end of the term, and this is the basis for your letter grade. (For example, if your course total is 342, the closest letter grade to this is a B+ (333) so that's what you get. There is some provision for rounding up in close cases, since a 345 is within five points of the boundary (350) between A- and B+, I would give that an A-. Please don't whine about the exact boundaries.

For exams and homeworks, there is thus both a raw score, typically ranging from 0 to around 100, and a normalized score on the 0-400 scale. The mapping from raw score to normalized score does not always take 0 to 0. A typical scale for a homework assignment takes 30 (and lower) to 0, 45 to 100, 60 to 200, 75 to 300, 90 to 400, and higher grades above 400 by the same linear function. On each assignment, we decide after grading what raw score constitutes a 200, and what score a 400, then find the linear function that meets those two points.

Academic Honesty Policy:

All work submitted must be your own in presentation. How much outside help is allowed depends on the course component.

Accommodation Statement:

The University of Massachusetts Amherst is committed to providing an equal educational opportunity for all students. If you have a documented physical, psychological, or learning disability on file with Disability Services (DS), you may be eligible for reasonable academic accommodations to help you succeed in this course. If you have a documented disability that requires an accommodation, please notify me within the first two weeks of the semester so that we can make appropriate arrangements. For more information, consult the Disability Services website at http://www.umass.edu/disability/.

Inclusivity Statement:

We celebrate the diversity in our community and actively seek to include and listen to voices that are often silenced in the computing world. We welcome all individuals regardless of age, background, citizenship, disability, sex, education, ethnicity, family status, gender, gender identity, geographical origin, language, military experience, political views, race, religion, sexual orientation, socioeconomic status, and work experience.

Names and Pronouns:

Everyone has the right to be addressed by the name and pronouns that they use for themselves. You can indicate your preferred/chosen first name and pronouns on SPIRE, which appear on class rosters. I am committed to ensuring that I address you with your chosen name and pronouns. Please let me know what name and pronouns I should use for you if they are not on the roster. Please remember: A student’s chosen name and pronouns are to be respected at all times in the classroom.

Title IX Statement:

UMass is committed to fostering a safe learning environment by responding promptly and effectively to complaints of all kinds of sexual misconduct. If you have been the victim of sexual violence, gender discrimination, or sexual harassment, the university can provide you with a variety of support resources and accommodations If you experience or witness sexual misconduct and wish to report the incident, please contact the UMass Amherst Equal Opportunity (EO) Office (413-545-3464 | equalopportunity@admin.umass.edu) to request an intake meeting with EO staff. Members of the CICS community can also contact Erika Lynn Dawson Head, director of diversity and inclusive community development (erikahead@cics.umass.edu | 860-770-4770).

Learning Support:

Along with the staff and the textbook, there are additional support resources for the course.

Last modified 27 January 2024