Discrete Mathematics for Computer Science


This course teaches students the skill and process of solving problems in discrete mathematics through active participation in every class. 

Rather than meeting for lectures, the class is a series of problem-solving sessions. Before class, students complete a short online quiz, using the program, Galileo, to ensure they have done the assigned readings. After a short overview of the readings in class, students break up into groups of four and work together to solve problems written on the whiteboard. When they finish a problem, a member of the teaching staff calls on a member of the group to explain the solution. The protocol incentivizes each member to be able to explain the answer. The instructor gives them feedback on how to improve their answer or approves the answer so the students can move on to the next problem.