Identification and addressing reduction-related misconceptions

Abstract Reduction is one of the key techniques used for problem-solving in computer science. In particular, in the theory of computation and complexity (TCC), mapping and polynomial reductions are used for analysis of decidability and computational complexity of problems, including the core concept of NP-completeness. Reduction is a highly abstract technique that involves revealing close non-trivial connections between problems that often seem to have nothing in common. As a result, proper understanding and application of reduction is a serious challenge for students and a source of numerous misconceptions. The main contribution of this paper is detection of such misconceptions, analysis of their roots, and proposing a way to address them in an undergraduate TCC course. Our observations suggest that the main source of the misconceptions is the false intuitive rule “the bigger is a set/problem, the harder it is to solve”. Accordingly, we developed a series of exercises for proactive prevention of these misconceptions.

[1]  Eitan M. Gurari,et al.  Introduction to the theory of computation , 1989 .

[2]  D. Tirosh,et al.  Intuitive rules in science and mathematics: the case of ‘more of A ‐‐ more of B’ , 1996 .

[3]  Christian Pape Using Interactive Visualization for Teaching the Theory of Np-completeness , 1997 .

[4]  Mordechai Ben-aft,et al.  Constructivism in computer science education , 1998, SIGCSE '98.

[5]  Orit Hazzan Reducing abstraction level when learning computability theory concepts , 2002, ITiCSE '02.

[6]  Mark B. Trakhtenbrot Analysis of typical misconceptions in a theoretical CS course, and how to address them in e-learning , 2003, ITiCSE.

[7]  Ian Douglas Sanders,et al.  Mental models of recursion , 2003, SIGCSE.

[8]  J. Gal-Ezer,et al.  Use of visual tools in distance teaching of computational models , 2003, 33rd Annual Frontiers in Education, 2003. FIE 2003..

[9]  Ela Zur,et al.  The efficiency of algorithms - misconceptions , 2004, Comput. Educ..

[10]  Judith Gal-Ezer,et al.  Challenges in teaching the pumping lemma in automata theory course , 2005, ITiCSE '05.

[11]  Judith Gal-Ezer,et al.  Solving Problems Reductively , 2005 .

[12]  Lauri Malmi,et al.  Observations on student errors in algorithm simulation exercises , 2005 .

[13]  Judith Gal-Ezer,et al.  Reductive thinking in computer science , 2006, Comput. Sci. Educ..

[14]  Judith Gal-Ezer,et al.  Algebraic characterization of regular languages: how to cope with all these equivalences? , 2006, ITICSE '06.

[15]  Andrea F. Lobo,et al.  NP-completeness for all computer science undergraduates: a novel project-based curriculum , 2006 .

[16]  Susan H. Rodger,et al.  JFLAP: An Interactive Formal Languages and Automata Package , 2006 .

[17]  Lauri Malmi,et al.  Observations on student misconceptions—A case study of the Build – Heap Algorithm , 2006, Comput. Sci. Educ..

[18]  Nesrin Özdener,et al.  A comparison of the misconceptions about the time-efficiency of algorithms by various profiles of computer-programming students , 2008, Comput. Educ..

[19]  Michal Armoni,et al.  Reduction in CS: A (Mostly) Quantitative Analysis of Reductive Solutions to Algorithmic Problems , 2009, JERC.

[20]  Pierluigi Crescenzi Using AVs to explain NP-completeness , 2010, ITiCSE '10.

[21]  Viggo Kann,et al.  Computer lab work on theory , 2010, ITiCSE '10.

[22]  Jan Vahrenhold,et al.  Detecting and understanding students' misconceptions related to algorithms and data structures , 2012, SIGCSE '12.

[23]  J. A. V. Iturbide Identification and removal of misconceptions about greedy algorithms assisted by an interactive system , 2012, 2012 International Symposium on Computers in Education (SIIE).

[24]  Jan Vahrenhold,et al.  Hunting high and low: instruments to detect misconceptions related to algorithms and data structures , 2013, SIGCSE '13.

[25]  Emma Enström Dynamic programming - Structure, difficulties and teaching , 2013, 2013 IEEE Frontiers in Education Conference (FIE).

[26]  Ari Korhonen,et al.  Misconceptions in Visual Algorithm Simulation Revisited: On UI's Effect on Student Performance, Attitudes and Misconceptions , 2013, 2013 Learning and Teaching in Computing and Engineering.

[27]  Anya Helene Bagge,et al.  Classifying and Measuring Student Problems and Misconceptions , 2013 .

[28]  Mark B. Trakhtenbrot Students misconceptions in analysis of algorithmic and computational complexity of problems , 2013, ITiCSE '13.

[29]  Pierluigi Crescenzi,et al.  From theory to practice: NP-completeness for every CS student , 2013, ITiCSE '13.