The mathematics requirements for computer science (CS) students have been debated for decades. I began teaching in a CS program in 1983, and I recall similar discussions at that time. The debate has continued in one form or another since then. This report reveals the current status of the issue. It is comprehensive and thorough, having been based on data from many institutions, including site visits. Both BS and BA degrees and ABET accredited and non-accredited programs are included. The report has detailed tables showing the use of calculus and discrete mathematics courses as pre-/co-requisites for CS courses.

Several important areas are investigated: (1) the math pre-/co-requisites for entrance
into initial CS1 and CS2 courses; (2) the math pre-/co-requisites for subsequent required courses in the curricula; and (3) the relationship between calculus and discrete mathematics in the pre-/co-requisite structure.

The study reports many major lessons: (1) math requirements and their placement in the curricula vary widely among the institutions studied; (2) there is no consensus on the use of calculus and/or discrete mathematics as pre-/co-requisites for CS1 and CS2; (3) there is no consensus on whether calculus should be a prerequisite for discrete mathematics; (4) there is no clear idea of what should be included in a discrete mathematics course or who
should teach it (the math department or the CS department); and (5) math courses should be pre-/co-requisites for later CS courses only if the content of these math courses is needed for success in the CS courses.

The article concludes with three principal recommendations:

- (1) CS programs should not require calculus as a pre-/co-requisite for CS1, CS2, or discrete mathematics. This recommendation does not deny the utility of calculus, but rather where it may appear in the curriculum.
- (2) The progressions through CS courses and mathematics courses should be decoupled. Complete decoupling would be impossible if discrete mathematics were a pre-/co-requisite for data structures and algorithms. There may also be other points where the pre-/co-requisite structures in CS and mathematics become entwined. The fewer entanglements, the better.
- (3) CS departments should develop substitute courses that teach the mathematics they need instead of depending on the mathematics department to teach them. Implementation of this recommendation will depend on practical matters of faculty time and institutional politics.

In the course of my academic career, I was a department chair, a dean of science, and a member of the ABET Computing Accreditation Commission (CAC) board. Because of my experience, this article and its concluding recommendations succeeded admirably in stimulating thought. If I were still a department chair, I would have made copies of the report and distributed it to all of my faculty members to study before the next department meeting.