ABSTRACT

This chapter discusses an exercise that starts the discussion of writing proofs, and it helps students consider issues of argument and writing in the context of computing theory. In the author's experience, students often have difficulties understanding what to include in a formal argument and how to present their reasoning. When discussing NP Completeness, it seems common for students to be able to parrot the definitions and high-level approaches, but understanding may seem shallow. Students have strong motivation to delve deeply into a problem, learning why the problem is in Class NP and how a known NP Complete problem can be reduced to it. Each course presents its own challenges and opportunities for teaching and learning. The ideas presented seem to have had less discussion, but may be of interest to teachers in a range of courses.