Canonical Forms in Interactive Exercise Assistants

  • Bastiaan Heeren
  • Johan Jeuring
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5625)


Interactive exercise assistants support students in practicing exercises, and acquiring procedural skills. Many mathematical topics can be practiced in such assistants. Ideally, an interactive exercise assistant not only validates final answers, but also comments on intermediate steps submitted by a student, provides hints on how to proceed, and presents worked-out examples. For these purposes, fine control over the symbolic simplification procedures of the underlying mathematical machinery is needed.

In this paper, we introduce views for mathematical expressions. A view defines an equivalence relation by choosing a canonical form of mathematical expressions. We use views to track and recognize intermediate answers, to help in presenting expressions to a user, and to control the granularity of the steps in worked-out examples. We develop the concept of a view, discuss the laws it satisfies, and show how views are composed, which means that they can be used for multiple exercise classes.


Canonical Form Computer Algebra System Abstract Syntax Congruence Relation Type Constructor 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alimarine, A., Smetsers, S., van Weelden, A., van Eekelen, M., Plasmeijer, R.: There and back again: arrows for invertible programming. In: Haskell 2005, pp. 86–97. ACM Press, New York (2005)Google Scholar
  2. 2.
    Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1997)zbMATHGoogle Scholar
  3. 3.
    Beeson, M.J.: A computerized environment for learning algebra, trigonometry, and calculus. Journal of Artificial Intelligence and Education 1, 65–76 (1990)Google Scholar
  4. 4.
    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)Google Scholar
  5. 5.
    Boon, P., Drijvers, P.: Algebra en applets, leren en onderwijzen (algebra and applets, learning and teaching, in Dutch) (2005),
  6. 6.
    Chaachoua, H., et al.: Aplusix, a learning environment for algebra, actual use and benefits. In: ICME 2004: 10th International Congress on Mathematical Education (May 2008),
  7. 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)CrossRefGoogle Scholar
  8. 8.
    Gang, X.: WIMS: An interactive mathematics server. Journal of Online Mathematics and its Applications (2001)Google Scholar
  9. 9.
    Goguadze, G., González Palomo, A., Melis, E.: Interactivity of exercises in ActiveMath. In: International Conference on Computers in Education, ICCE 2005 (2005)Google Scholar
  10. 10.
    Heeren, B., Jeuring, J., van Leeuwen, A., Gerdes, A.: Specifying strategies for exercises. In: Autexier, S., Campbell, J., Rubio, J., Sorge, V., Suzuki, M., Wiedijk, F., et al. (eds.) AISC 2008, Calculemus 2008, and MKM 2008. LNCS (LNAI), vol. 5144, pp. 430–445. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  11. 11.
    Kyle, J., Sangwin, C.J.: To simplify or not to simplify: that is the question in the CAA of mathematics. In: 3rd International Conference on the Teaching of Mathematics (2006)Google Scholar
  12. 12.
    van Noort, T., Yakushev, A.R., Holdermans, S., Jeuring, J., Heeren, B.: A lightweight approach to datatype-generic rewriting. In: WGP 2008, pp. 13–24. ACM Press, New York (2008)Google Scholar
  13. 13.
    Paterson, R.: Arrows and computation. In: Gibbons, J., de Moor, O. (eds.) The Fun of Programming, Palgrave, pp. 201–222 (2003)Google Scholar
  14. 14.
    Jones, S.P., et al.: Haskell 98, Language and Libraries. The Revised Report. Cambridge University Press, Cambridge (2003); A special issue of the Journal of Functional Programming, zbMATHGoogle Scholar
  15. 15.
    The OpenMath Society. The OpenMath Standard (2006),
  16. 16.
    Sorge, V.: Non-Trivial Computations in Proof Planning. In: Kirchner, H. (ed.) FroCos 2000. LNCS, vol. 1794, pp. 121–135. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  17. 17.
    W3C. MathML 2.0 (2001),
  18. 18.
    Wadler, P.: Views: A way for pattern matching to cohabit with data abstraction. In: POPL, pp. 307–313 (1987)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Bastiaan Heeren
    • 1
  • Johan Jeuring
    • 1
    • 2
  1. 1.School of Computer ScienceOpen Universiteit NederlandHeerlenThe Netherlands
  2. 2.Department of Information and Computing SciencesUniversiteit UtrechtNetherlands

Personalised recommendations