Expressiveness and Abstraction with Computer Algebra Software

Phillip Kent

Mathematics Education Technology Research, Londres


Twenty years ago, Seymour Papert put forth a vision for how computer software could transform the learning of mathematics: “The idea of ‘talking mathematics’ to a computer can be generalised to a view of learning mathematics in ‘Mathland’; that is to say, in a context which is to learning mathematics what living in France is to learning French.” (Mindstorms, 1980, p. 6)
When I first read this (in 1994), it connected very powerfully with my work at that time, which was developing new mathematics curriculum for undergraduate students based on the computer algebra system (CAS), Mathematica. Surely (I thought) a CAS is the closest one can get to “talking mathematics” with a computer? Was I standing on the borders of Mathland? Well, six years later I am still excited by Papert’s vision, but, of course, still a long distance from a realisation of Mathland.
In my presentation, I will describe two curriculum developments undertaken by myself and colleagues at Imperial College in London during the past five years, and the two-way flow of ideas that has taken place between the practice of curriculum design and the theoretical principles that have influenced the design work. Inspired by ideas developed within the Logo research community, we have conceived a CAS as a computational, expressive medium: a medium where actions are carried out by means of programming in a syntactically precise language. Expressiveness means that it is possible to express ideas (mental objects) in concrete form (visible, public objects): it is possible to build mathematical structures “…into the fabric of the medium, thus shaping the types of action that are possible: they do not only exist in the mind of the learner. The level of what can be thought about, talked about, is notched up a rung or two” (Noss & Hoyles, Windows on Mathematical Meanings, 1996, p. 126).
I will illustrate our uses of expressiveness (and the related idea of “webbing”, also due to Noss & Hoyles) by means of a curriculum example that concerns first-year university science students at the very beginning of their learning about ordinary differential equations (ODEs). We developed a Mathematica “toolkit” (i.e. a set of programmed functions) to enable students to produce graphs of “direction fields”—these are a familiar visual representation for ODEs, linking a first-order ODE with its solutions by distributing small “tangent segments” across the x-y plane, whose gradients are specified by the ODE. In paper-and-pencil mathematics, a direction field is only really usable by someone with the substantial experience to know the shapes and behaviours of typical solutions. Given an expressive medium, however, our hope was that the working with direction fields could become an entry point into understanding the essential concept of differential equation.
My second example is concerned with a course on dynamics taken by third-year mathematics students. In this work, I’ve tried to make Mathematica “expressive” for dynamics by exploiting a feature of its programming language that allows for the creation of new data structures (objects), and functions that can operate on them. As the students program (create and manipulate) these objects, they are dealing with a concrete implementation of abstract mathematical concepts. In principle, meaning can be given to mathematics through this constructive, explicit interplay of concrete and abstract; but, of course, this is easier said than done. On the theoretical side, this work has shown up some interesting comparisons between “abstraction” as it is conventionally conceived in mathematics education, and the quite different ideas about abstraction that have been developed by computer scientists.