Abstract

This lightning talk describes the development of Complexity Tutor, an interactive tutoring system to assist students in understanding theoretical models of computation and computational complexity. Many computer science students, especially ones lacking a strong background in mathematics, struggle to learn these subjects with the traditional regimen of lectures and written homework assignments. When they are in the process of developing proofs for these homework assignments, they receive no immediate feedback that would illuminate their errors. We intend to remedy this. The main components of our system will entail a novel framework for constructing proofs, as well as a framework for producing algorithmic reductions. The first framework provides continuous feedback to the student on their approach and progress toward the needed proof. The second framework involves analyzing code the student writes in a pseudocode-like language, such as Python. Currently, we have prototypes, which show how to use our frameworks to construct NP-completeness reduction proofs. We are planning to test the efficacy of this system in theoretical computer science courses at the University of Massachusetts Amherst.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call