Modelling recursion
Doctoral thesis
English
OPEN
AmmariAllahyari, Mojtaba
The purpose of my research is to examine and explore the ways that\ud undergraduate students understand the concept of recursion. In order to do\ud this, I have designed computerbased software, which provides students with a\ud virtual and interactive environment where they can explore the concept of\ud recursion, and demonstrate and develop their knowledge of recursion through\ud active engagement. I have designed this computerbased software environment\ud with the aim of investigating how students think about recursion. My approach\ud is to design digital tools to facilitate students' understanding of recursion and to\ud expose that thinking.\ud My research investigates students' understanding of the hidden layers and\ud inherent complexity of recursion, including how they apply it within relevant\ud contexts. The software design embedded the idea of functional abstraction\ud around two basic principles of: 'functioning' and 'functionality'. The\ud functionality principle focuses on what recursion achieve, and the functioning\ud dimension concerns how recursion is operationalised. I wanted to answer the\ud following crucial question: How does the recursive thinking of university\ud students evolve through using carefully designed digital tools?\ud In the process of exploring this main question, other questions emerged:\ud 1. Do students understand the difference between recursion and iteration?\ud 2. How is tail and embedded recursion understood by the students?\ud 3. To what extent does prior knowledge of the concept of iteration\ud influence students' understanding of tail and embedded recursion?\ud 4. Why is it important to have a clear understanding of the control passing\ud mechanisms in order to understand recursion?\ud 5. What is the role of functional abstraction in both, the design of\ud computerbased tools and the students' understanding of recursion?\ud 6. How are students' mental models of recursion shaped by their\ud engagement with computerbased tools?\ud From a functional abstraction point of view almost all previous research into\ud the concept of recursion has focused on the functionality dimension. Typically,\ud it has focused on procedures for the calculation of the factorial of a natural\ud number, and students were tested to see if they are able to work out the values\ud of the a function recursively (Wiedenbeck, 1988; Anazi and Uesato, 1982) or if\ud they are able to recognize a recursive structure (Sooriamurthi, 2001; Kurland\ud and Pea, 1985). Also, I invented the Animative Visualisation in the Domain of\ud Abstraction (AVDA) which combines the functioning and functionality\ud principles regarding the concept of recursion. In the AVDA environment,\ud students are given the opportunity to explore the hidden layers and the\ud complicated behaviour of the control passing mechanisms of the concept of\ud recursion.\ud In addition, most of the textbooks in mathematics and computer sciences\ud usually fail to explain how to use recursion to solve a problem. Although it is\ud also true that text books do not typically explain how to use iteration to solve\ud problems, students are able to draw on to facilitate solving iterative problems\ud (Pirolli et al, 1988).\ud My approach is inspired by how recursion can be found in everyday life and in\ud real world phenomena, such as fractalshaped objects like trees and spirals.\ud This research strictly adheres to a Design Based Research methodology (DBR),\ud which is founded on the principle of the cycle of designing, testing (observing\ud the students' experiments with the design), analysing, and modifying (Barab\ud and Squire, 2004; Cobb and diSessa, 2003). My study was implemented\ud throughout three iterations. The results showed that in the AVDA (Animative\ud Visualisation in the Domain of Abstraction) environment students' thinking\ud about the concept of recursion changed significantly. In the AVDA\ud environment they were able to see and experience the complicated control\ud passing mechanism of the tail and embedded recursion, referred to a delegatory\ud control passing. This complicated control passing mechanism is a kind of\ud generalization of flow in the iterative procedures, which is discussed later in\ud the thesis.\ud My results show that, to model a spiral, students prefer to use iterative\ud techniques, rather than tail recursion. The AVDA environment helped students\ud to appreciate the delegatory control passing for tail recursive procedures.\ud However, they still demonstrated difficulties in understanding embedded\ud recursive procedures in modelling binary and ternary trees, particularly\ud regarding the transition of flow between recursive calls.\ud Based on the results of my research, I have devised a model of the evolution of\ud students' mental model of recursion which I have called – the quasipyramid\ud model. This model was derived from applying functional abstraction including\ud both functionality and functioning principles. Pedagogic implications are\ud discussed. For example, the teaching of recursion might adopt 'animative'\ud visualization, which is of vitally important for students' understanding of latent\ud layers of recursion.

References
(5)
Anderson, J. R., Farrell, R., and Sauers, R. (1984), „Learning to Program LISP‟, Cognitive Science, Vol. 8, pp. 87129.
Barab, S., and Squire, K. (2004), „DesignBased Research: Putting a Stake in the Ground‟”, The Journal of The Learning Sciences, 13(1), pp. 114.
Gentner, D., Brem, S., Ferguson, R. W., Markman, A. B., Levidow, B. B., Wolff, P., and Forbus, K. D. (1997), „Analogical reasoning and conceptual change: A case study of Johannes Kepler‟, The Journal of the Learning Sciences. 6(1), pp. 340.
Kann, C., Lindenman, R., and Heller, R. (1997), „Integrating algorithm animation into a learning environment‟, Computers Education, 28 (4), pp. 223 228.
Kessler, A., and Anderson, J. (1986), „Learning Flow of Control: Recursive and Iterative Procedures‟, Human  Computer Interaction, 2, pp. 135166.

Metrics
0
views in local repository
29
downloads in local repository
The information is available from the following content providers: