×

Interleaving strategies. (English) Zbl 1335.68290

Davenport, James H. (ed.) et al., Intelligent computer mathematics. 18th symposium, Calculemus 2011, and 10th international conference, MKM 2011, Bertinoro, Italy, July 18–23, 2011. Proceedings. Berlin: Springer (ISBN 978-3-642-22672-4/pbk). Lecture Notes in Computer Science 6824. Lecture Notes in Artificial Intelligence, 196-211 (2011).
Summary: Rewrite strategies are used to specify how mathematical exercises are solved in interactive learning environments, and to provide feedback to students solving such exercises. We have developed a generic strategy language with which we can specify rewrite strategies in many (mathematical) domains. Although our strategy language is quite powerful, it lacks an essential component for specifying strategies, namely the interleaving of two strategies. Often students have to perform multiple subtasks, but the order in which these tasks are performed is irrelevant, and steps of solutions may be interleaved. We show the need for combinators that support interleaving by means of several examples. We extend our strategy language with different combinators for interleaving, define the semantics of the extension, and show how the interleaving combinators are implemented in the parsing framework we use for recognizing student behavior and providing hints.
For the entire collection see [Zbl 1218.68014].

MSC:

68U35 Computing methodologies for information systems (hypertext navigation, interfaces, decision support, etc.)
97U50 Computer-assisted instruction, e-learning (aspects of mathematics education)
Full Text: DOI

References:

[1] Aspinall, D., Denney, E., Lüth, C.: Tactics for hierarchical proof. Mathematics in Computer Science 3(3), 309–330 (2010) · Zbl 1205.68359 · doi:10.1007/s11786-010-0025-6
[2] Baars, A.I., Löh, A., Swierstra, S.D.: Parsing permutation phrases. Journal of Functional Programming 14, 635–646 (2004) · Zbl 1063.68028 · doi:10.1017/S0956796804005143
[3] Beeson, M.J.: Design principles of MathPert: Software to support education in algebra and calculus. In: Kajler, N. (ed.) Computer-Human Interaction in Symbolic Computation, pp. 89–115. Springer, Heidelberg (1998)
[4] Bergstra, J.A., Klop, J.W.: Algebra of communicating processes with abstraction. Theoretical Computer Science 37, 77–121 (1985) · Zbl 0579.68016 · doi:10.1016/0304-3975(85)90088-X
[5] Bundy, A.: The use of explicit plans to guide inductive proofs. In: International conference on automated deduction, pp. 111–120 (1988) · Zbl 0656.68106 · doi:10.1007/BFb0012826
[6] Claessen, K., Hughes, J.: QuickCheck: A lightweight tool for random testing of Haskell programs. In: ICFP 2000, pp. 268–279 (2000) · doi:10.1145/351240.351266
[7] Cohen, A., Cuypers, H., Reinaldo Barreiro, E., Sterk, H.: Interactive mathematical documents on the web. In: Algebra, Geometry and Software Systems, pp. 289–306. Springer, Heidelberg (2003) · Zbl 1034.68120 · doi:10.1007/978-3-662-05148-1_16
[8] Doorman, M., Drijvers, P., Boon, P., van Gisbergen, S., Gravemeijer, K.: Design and implementation of a computer supported learning environment for mathematics. In: Earli 2009 SIG20 invited Symposium Issues in designing and implementing computer supported inquiry learning environments (2009)
[9] Fokkink, W.: Introduction to Process Algebra. Springer, Heidelberg (2000) · Zbl 0941.68087 · doi:10.1007/978-3-662-04293-9
[10] Gerdes, A., Heeren, B., Jeuring, J.: Constructing Strategies for Programming. In: Cordeiro, J., et al. (eds.) Proceedings of the First International Conference on Computer Supported Education, pp. 65–72. INSTICC Press (March 2009)
[11] Gerdes, A., Heeren, B., Jeuring, J.: Properties of Exercise Strategies. In: Proceedings of IWS 2010: 1st International Workshop on Strategies in Rewriting, Proving, and Programming. Electronic Proceedings in Theoretical Computer Science (2011) · Zbl 1205.68184
[12] Heeren, B., Jeuring, J.: Adapting mathematical domain reasoners. In: Autexier, S., Calmet, J., Delahaye, D., Ion, P.D.F., Rideau, L., Rioboo, R., Sexton, A.P. (eds.) AISC 2010. LNCS, vol. 6167, pp. 315–330. Springer, Heidelberg (2010) · Zbl 1286.97012 · doi:10.1007/978-3-642-14128-7_27
[13] Heeren, B., Jeuring, J., Gerdes, A.: Specifying rewrite strategies for interactive exercises. Mathematics in Computer Science 3(3), 349–370 (2010) · Zbl 1205.68184 · doi:10.1007/s11786-010-0027-4
[14] Hoare, C.A.R.: Communicating sequential processes. Prentice-Hall, Inc., Englewood Cliffs (1985) · Zbl 0637.68007
[15] Huet, G.: The zipper. Journal of Functional Programming 7(5), 549–554 (1997) · Zbl 0893.68014 · doi:10.1017/S0956796897002864
[16] Lodder, J., Heeren, B.: A teaching tool for proving equivalences between logical formulae. In: Soler-Toscano, F. (ed.) TICTTL 2011. LNCS, vol. 6680, pp. 154–161. Springer, Heidelberg (2011) · doi:10.1007/978-3-642-21350-2_18
[17] Melis, E., Siekmann, J.: ActiveMath: An intelligent tutoring system for mathematics. In: Rutkowski, L., Siekmann, J.H., Tadeusiewicz, R., Zadeh, L.A. (eds.) ICAISC 2004. LNCS (LNAI), vol. 3070, pp. 91–101. Springer, Heidelberg (2004) · Zbl 1058.97500 · doi:10.1007/978-3-540-24844-6_12
[18] Nipkow, T., Paulson, L.C., Wenzel, M.T. (eds.): Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)
[19] Peyton Jones, S., et al.: Haskell 98, Language and Libraries. The Revised Report. Cambridge University Press, A special issue of the Journal of Functional Programming, (2003), http://www.haskell.org/ · Zbl 1067.68041
[20] Swierstra, S.D.: Combinator parsing: A short tutorial. In: Bove, A., Barbosa, L.S., Pardo, A., Pinto, J.S. (eds.) Language Engineering and Rigorous Software Development. LNCS, vol. 5520, pp. 252–300. Springer, Heidelberg (2009) · Zbl 1250.68083 · doi:10.1007/978-3-642-03153-3_6
[21] Visser, E., Benaissa, Z.A., Tolmach, A.: Building program optimizers with rewriting strategies. In: ICFP 1998, pp. 13–26 (1998) · Zbl 1369.68084 · doi:10.1145/289423.289425
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.