Communicating Mathematics
Communicating Mathematics
1 Introduction
1.1 Purpose This article describes certain ideas originating in the the-
ory and practice of computer science, and shows how the teaching and expo-
sition of mathematics could bene¯t if these ideas were widely understood by
mathematicians and used in their teaching and writing.
These ideas are discussed here because I believe they are important for
mathematicians to understand. Some of them are based on theoretical work
by computer scientists and others are based on the practice of computer
professionals inside and outside academia. Computer scientists would not
regard the various concepts as of equal importance, and the whole collection
of ideas is nothing like a fair presentation of the current state of computing.
2 Speci¯cation
1
not fast enough for practical use. Later, a implementation using modern
fast techniques could be substituted. Since the external behavior of the
function PrimeQ is the same in either implementation, substituting the new
implementation for the old should not introduce new bugs in the program.
In this section, I discuss some issues involved in presenting mathematics
to students that can be clari¯ed by this idea of specifying external behavior.
2.2 Is everything a set? One concern of those who study the founda-
tions of mathematics is to show how to develop the main body of modern
mathematics from a small number of principles or concepts that are as clear
and primitive as possible. The bulk of the work in this direction has been to
reduce all mathematical constructions to the primitive notion of \set" and
\element of a set" and to impose a small number of clear axioms on these
primitives.2 In carrying this program out, an ordered pair ha; bi is typically
interpreted as the set ffa; bg; fbgg, and a function as a set of ordered pairs
with the functional property.
Many mathematicians have taken this approach to mean that every
mathematical object is really a complicated set. At least, they say this
when the topic of foundations comes up. They often don't behave as if they
actually believe every mathematical object is a set. Wouldn't you expect
a mathematician to be confused, at least momentarily, if you asked which
points in the plane had nonempty intersection with the point h3; 2i?3 I
maintain that in practice many mathematicians regard points as one type
of mathematical object, sets as another, and perhaps functions as a third.
Since intersection is an operation de¯ned on sets and points are not sets,
the question about which points have nonempty intersection with h3; 2i is
to be rejected as meaningless.
The best way to think of the reduction to sets that has been carried out
by those who study foundations is that it is a representation of mathemat-
ics which is desirable for various reasons, for example showing consistency.
Although an ordered pair is not a set, it can be represented as a set and
that representation may be useful for certain purposes.
2
de¯nition of a concept may require the mention of details of representations
used for other purposes (such as consistency proofs) that obscure the way
the concept is used in practice. In courses for undergraduates other than in
foundations, we should not even attempt to say what sets, pairs, functions
and other basic mathematical objects \really are". What matters is how
they relate to other objects.
Recommendation In elementary exposition, explain a basic concept
by giving a speci¯cation of the concept | a carefully written description
of the interaction of the object with other mathematical objects.4
Here are two examples based on my text [Wells, 1993], which is aimed
at students who have had calculus but no course in abstract mathemat-
ics. In these speci¯cations, I use the word \object" to denote any sort of
mathematical entity.
Ordered pairs: An ordered pair is a mathematical object
which is distinct from but completely determined by objects
called its ¯rst coordinate and its second coordinate. The
ordered pair with ¯rst coordinate x and second coordinate y is
denoted by hx; yi.
It follows that ordered pairs are the same if and only if their
coordinates are the same, that is,
(hx; yi = hx0 ; y0 i) , (x = x0 and y = y 0 )
Thus we have a method of proof : To prove two ordered pairs
hx; yi and hx0 ; y 0 i are the same, prove that x = x0 and y = y 0 .
Functions: A function F is a mathematical object which
determines and is completely determined by the following data:
F.1 F has a domain, which is a set and is denoted by dom F .
F.2 F has a codomain, which is also a set and is denoted by
cod F .
F.3 For each element x 2 dom F , F has a value at x. This
value is completely determined by x and F and must be an
element of cod F . The value of F at x is denoted by F (x).
4
The word \speci¯cation" in computer science generally means a description in a for-
mal language of the external behavior of a program, suitable for being transformed by
strict rules into an actual program. In this document, the analogy is more with the infor-
mal descriptions practicing programmers give of the external behavior of a program, as
described in Section 2.1.
3
I am sure these speci¯cations could be improved in various ways and
would welcome suggestions concerning them. There may be a better name
than \speci¯cation" for the practice, too, but it seems clear that the practice
should have an explicit name to signal its logical status.
There is a sense in which 2=(4+3) is 2=7 and another sense in which 2=(4+3)
is not 2=7. The number 2=(4 + 3) is indeed the same number as 2=7. The
expression 2=(4 + 3) is not the same as the expression 2=7. For one thing,
the expression 2=(4 + 3) has seven symbols and the expression 2=7 has only
three.
Syntax is the study of expressions in linguistics or computer science, and
semantics is the study of how meaning is assigned to expressions. There are
two di®erent points to make concerning syntax and semantics: (a) Expres-
sions represent mathematical objects but are not the objects themselves,
and (b) expressions have structure.
3.1 Expressions and their denotations A mathematical expression
denotes a mathematical object. The object it denotes is not the expres-
sion | the expression is only a representation of the object. In particular,
di®erent expressions may denote the same object.
This point of view, that there is an object independent of the expressions
that denote it, is often called \Platonist"5 . By contrast, some assert that
the expressions are merely themselves (\everything is syntax") and that
mathematics consist of manipulating these expressions according to precise
rules. Presumably, those who hold that attitude will admit that there is an
equivalence relation on expressions which identi¯es di®erent expressions that
name the same object from a Platonist's point of view. In any case, people
who hold these di®ering points of view generally agree on which statements
are theorems.
It is my observation that students and teachers at the college level in the
USA don't communicate well with each other because many teachers talk like
Platonists, but many students have the attitude6 that what they need are
rules to manipulate the expressions (more about this in 3.3 below). Students
5
This usage of the word \Platonist" does not imply an endorsement of all of Plato's
attitudes toward reality and truth.
6
Usually, this attitude is unexpressed. I am saying this out of my observations of
students rather than what they actually say.
4
who go on to higher mathematics learn to talk as if the mathematical objects
were \out there", but it is noticeable that many college freshmen in calculus
courses do not talk that way.
Recommendation Teachers and authors of textbooks should make the
distinction between syntax and semantics explicit.
If the student has words for this distinction, he or she may avoid certain
types of confusion that result from being unaware of the distinction.
3.2 Parsing Computer science is intimately concerned with the rela-
tionship between syntax and semantics, particularly with parsing, which is
the explication of the abstract structure of an expression such as 2=(4 + 3).
This structure is often given as a tree
=
¡ @@
¡ +
¡
¡ ¡¡ @@
2 4 3 (1)
To parse an expression such as 2=(4 + 3) is to exhibit its structure. The
¯rst task a compiler for a computer language has is to parse the commands
of the language, for only then can the commands be executed.
Laborde [1990] notes that many students (these were mostly below the
USA freshman level) see expressions such as 2=(4 + 3) merely as strings and
are not really aware of their abstract structure.
Recommendation Introduce informal parsing of mathematical expres-
sions as a learning tool.
3.3 Mathematics as syntax Another point of view is that we should
stop talking like Platonists and go along with the students' desire for rules for
manipulation. Some hold that mathematics is a game of syntax, and that to
succeed in mathematics you must master the rules of the game (more about
this in Section 4.3). You need not hold that view, however, to realize that a
lot of mathematics is accomplished precisely by syntactic manipulation |
what else is high school algebra? And even Platonists agree that you have
to master the rules of the game.
Recommendation Make explicit the allowable syntax for statements
about a type of object.
For example, one can helpfully explain application of functions by adding
the following sentence to the speci¯cation of function in Section 2.3:
5
The expression \F (x)" is meaningful if and only if \x 2
dom F " is true, and in that case \F (x) 2 cod F " is true.
4 Formal transformations
6
4.2 Proof by rewriting Gries [1991], Dijkstra and Scholten [1990] and
others have urged that proofs be done by applying formal transformations.
Many examples may be found in [van Gasteren, 1990] and [Gries and Schnei-
der, 1993]. Proofs are not often done that way by mathematicians except in
teaching formal logic. The preferred method is more often the \semantic"
approach: the proof proceeds via an understanding of the objects involved
rather than by the formal application of rules. Gries, and Dijkstra and
Scholten, urge a syntactic approach: express the desired result in a for-
mal language and apply meaning-preserving transformations to it until it
becomes a consequence of a known fact. This turns a proof into a type of
computation.
I will now give two proofs of a simple statement about the ordering of
the real numbers drawn from Gries [1991]. The statement to prove is
(x > z) ) ((x > y) _ (y > z)) (2)
4.2.1 Semantic proof The way I proved (2) when I ¯rst saw it was
to envision x and z as points on the line placed this way:
² ²
z x
There are three di®erent regions into which we can place y. In the right two,
y > z and in the left two, x > y. End of proof.
This proof is written in English, not in symbolic notation, and it refers
to a particular mental representation of the structure in question (the usual
ordering of the real numbers).
4.2.2 Syntactic Proof This proof is due to David Gries (private
communication). It is based on these principles:
P.1 (Contrapositive) The equivalence of P ) Q and :Q ) :P .
P.2 (DeMorgan) The equivalence of :(P _ Q) and :P ^ :Q.
P.3 The equivalence in any totally ordered set of :(x > y) and x · y.
Proof:
(x > z) ) ((x > y) _ (y > z))
, by P.1
:((x > y) _ (y > z)) ) :(x > z)
, by P.2
(:(x > y) ^ :(y > z)) ) :(x > z)
, by P.3 three times
((x · y) ^ (y · z)) ) (x · z)
7
which is true by the transitive law.
4.2.3 About the syntactic proof There are many advantages to
the technique illustrated by the second proof. It holds in any totally ordered
set, not just in the real numbers. Each instance of the application of a trans-
formation can be mechanically checked to see that it is correctly applied.
(Ingenuity, of course, is still required to create the proof.) This mechanical
veri¯ability is certainly not true in the case of the usual mathematical proof;
it is notorious that if you read a proof written by someone whose mental
representation of the concepts is very di®erent from yours, the proof is next
to impossible to follow.
4.2.4 About the semantic proof There are several arguments for
the semantic proof. For one thing, many mathematicians prefer the proofs
to be written out in English sentences rather than in the symbolic notation
of 4.2.2. This view is advocated in the works on mathematical writing by
Halmos [1975] (page 42), Steenrod [1975] (page 57), Gillman [1987] (page 15)
and Boas [1981]. Another point is that it is easy to make mistakes in checking
the application of transformations, particularly when the patterns that must
match are complex.
However, the major argument for semantic proofs concerns mental rep-
resentations.
4.3 Mental representations Several mathematicians who read the
syntactic proof in 4.2.2 in an earlier version of this paper expressed dis-
satisfaction with it as compared to the pictorial proof preceding it. One
objection they gave is that the pictorial proof helps them to understand the
theorem. I believe that when they say that, they mean they want a mental
representation of the object involved in the theorem that makes the truth
of the theorem obvious or easy to understand.7 A mental representation
of a particular concept is an elaborate metaphor. If you can ¯nd the right
metaphor for a mathematical object, you can follow proofs concerning the
object much more easily and you can frequently avoid falling into concep-
tual traps. (Not only that, it is the mental representation that suggests
how the mathematical structure can be used in applications.) Following the
proof line by line may convince one that the theorem is correct, but it gives
7
I do not claim that making the truth of the theorem obvious constitutes proof of the
theorem. Argumentative philosophers of science who suspect mysticism in this paragraph
should observe that I am making a checkable claim about the behavior of mathematicians,
not a philosophical claim about Truth.
8
no understanding unless the proof aligns in some sense with one's internal
representation of the concept.8 Indeed, the hope is that it will re¯ne or
reform one's inner representation of the concept9 .
The statements in the preceding paragraph about mental reservation
are controversial: they re°ect my own position but not the position of all
mathematicians. Those statements caused far more correspondence than
any others in this article. Some said that they do not use mental represen-
tations. For them, mathematics is all syntax. Others were dismayed by the
syntactic proof and felt that the primary purpose in teaching was to trans-
mit to the students useful mental representations of the concepts. Thus
there are two kinds of mathematicians: Those for whom the mental rep-
resentation (they often say \intuition" or \understanding") is paramount,
and those who insist that syntax is primary. The gulf between these two
kinds of mathematicians is vast. It is as if we were two di®erent kinds of
intelligent beings who are deluded into thinking we are communicating with
each other. (But we do communicate.)
It is not unreasonable to assume that some of our students tend one
way and some the other. I am in the mental representation camp, but in
recent years, I have used syntax and transformations of statements in class
more than I used to, and I believe it makes a di®erence for the better to the
students.
4.4 Explicit use of logic Even mathematicians in the mental represen-
tation camp use computation in proofs. Finding a suitable representation
of an object that allows one to compute is as old as mathematics. However,
most mathematicians rarely compute explicitly with the rules of logic as
exempli¯ed in 4.2.2. I believe that mathematicians should be aware of the
possibilities of this approach, in teaching if not in their own research.
Recommendation Transmit your mental representation of concepts
whenever you can, but also give proofs as explicit logical calculations when
appropriate, because that provides the student with a second way to deal
with the problem and provides him or her with the tools to carry out similar
8
Some readers commented that after reading the syntactic proof in 4.2.2 they sud-
denly understood that in a totally ordered set the condition to be proved is merely the
contrapositive of transitivity. So a syntactic type of proof can be illuminating, too.
9
There is a sizeable research literature on the subject of mathematicians' and students'
mental representations of mathematics. See the articles in [Schoenfeld, 1987a], particu-
larly [Schoenfeld, 1987b] and [Maurer, 1987], as well as [Harel and Dubinsky, 1992], [Miller,
1987] and the discussion starting in the second column of page 1187 of [Devlin, 1992].
9
proofs.
Related to explicit mention of logical concepts is the idea of giving a rule
of inference for particular types of objects. For example, setbuilder notation
has the following rules of inference: From the statement a 2 fx j P (x)g
(where P (x) is a predicate) one can deduce P (a), and from the truth of
P (a) one can deduce a 2 fx j P (x)g. My students have found this explicit
mention of allowable inference to be helpful.
Recommendation Give explicit rules of inference for concepts when
they are introduced.
Note that this was done in the speci¯cation for ordered pairs in Sec-
tion 2.3.
Lamport [1993] provides a detailed model for presenting proofs in a struc-
tured way that have the potential for clarifying proofs in either style, sym-
bolic or based on mental representations.
10
Recommendation Use the concepts of type and polymorphism explic-
itly to help students to understand and avoid the traps of type confusion.
Most students now have had some experience with programming lan-
guages that use typing. I have found that to refer to types explicitly is
helpful. I write \TYPE ERROR" on their homework when such a mistake is
made, and sometimes when I forget to put the little arrow over a symbol for
a vector on the blackboard, I get a chorus of \TYPE ERROR" from the class,
which I think is great.
6 Self-Monitoring
11
enjoyable dictionaries ever composed. One thing that becomes noticeable if
you read it straight through is the number of words and phrases hackers11
have invented to describe their own mental states or behavior while working.
This is discussed in the introduction to the Dictionary. \Juggling eggs", for
example, refers to the necessity of keeping a lot of details in your head while
modifying a program | with the consequence that an interruption can cause
you to scramble the program (this is a paraphrase of the book's de¯nition).
Of course, that is a phenomenon familiar to research mathematicians.
You can't spend short, separated pieces of time trying to understand a
complicated mathematical phenomenon; you need the time to concentrate
and to get it all in your head at once | to be in \hack mode" (p. 190
of [Raymond, 1991]). The point is, mathematicians don't have a name for
this, as far as I know. Computer hackers do. We should emulate them.
Computer people give names to their own counterproductive behav-
ior quite freely | look up \creationism", \kluge", \mung" and \thrash"
in [Raymond, 1991]. (I have personally munged several chapters of my
class notes and had to tear them up and start over.) It would be particu-
larly helpful to give names to common mistakes made by students in math
courses. P¶ olya [1948] emphasized the importance of introducing notation
for the quantities in a problem. It is equally important to name behaviors,
both useful and harmful, that occur in problem solving.
Recommendation Describe and name the common kinds of mistakes
students make.
If there is a memorable name for such mistakes the student will be more
likely (and will ¯nd it easier) to monitor his or her behavior. Self-monitoring
is widely cited in the educational literature as one of the properties that
distinguish good students from poor ones. See [Resnick, 1987], pages 25{27,
and [Schoenfeld, 1987c].
One typical mistake occurs when using concepts that by de¯nition
require the existence of something. For example, for integers m and n, m
divides n if there is an integer q such that n = qm. When faced with proving
that if m divides both n and p, then m divides n + p, a common mistake
is to write down the assumptions as n = qm and p = qm, using the same
q. Recently in class I exclaimed, \If Bob and Ray are both married, that
11
A hacker is someone who programs for the sake of programming | although useful
tools may result, they are not the primary motivation | and who enjoys learning and
using the obscure features and behavior of various operating systems and programming
languages. The latter-day meaning of someone who breaks into private systems is not
intended here.
12
doesn't mean they have the same wife!" If I had said this on the network,
such behavior might have become known as \existential bigamy" (or some
such phrase).
It would be useful to come up with punchy names for good behaviors
such as the following:
² Working examples before attacking the general case of a problem.
13
this lesson to other areas of our life, insisting on low-context conversation
even when high-context conversation is possible. Or perhaps bright people
who are not particularly talented at picking up social context are attracted
to mathematics.
I don't know how we can change the mathematical culture to encourage
high-context interaction. Perhaps the spread of email will help; linguists
have discovered that linguistic innovation spreads much more rapidly in a
language spoken by a large number of people in contact with each other
than it does in small groups.
7 Acknowledgments
This work has bene¯ted by discussion with and suggestions and corrections
from Atish Bagchi, Michael Barr, Stephen J. Bevan, J. E. Fritz, Leonard
Gillman, David Gries, C. A. R. Hoare, Colin McLarty, Eric S. Raymond,
Daniel M. Rosenblum, Guy Steele, and Leon Sterling. I am particularly
grateful to Eric Raymond for many detailed suggestions and insights, par-
ticularly in Sections 2 and 6, and for organizing an electronic mailing list for
discussions of earlier drafts of this article and of [Bagchi and Wells, 1993].
References
At the end of each entry, the pages on which that entry is cited are listed in
parentheses.
[Bagchi and Wells, 1994] Atish Bagchi and Charles Wells. The varieties of
mathematical prose. In preparation. When published, it will be available
by anonymous FTP from ftp.cwru.edu. It will be the ¯le mathrite.dvi
in the directory math/wells, 1994. (14)
14
[Devlin, 1992] Keith Devlin. Computers and mathematics. Notices of the
American Mathematical Society, 39(10):1186{1188, 1992. (9)
[Harel and Dubinsky, 1992] Guershon Harel and Ed Dubinsky, editors. The
Concept of Function, volume 25 of MAA Notes. Mathematical Asso-
ciation of America, 1992. (9)
[Knuth et al., 1989] Donald E. Knuth, Tracy Larrabee, and Paul M. Roberts.
Mathematical Writing, volume 14 of MAA Notes. Mathematical Asso-
ciation of America, 1989.
[Maurer, 1987] Stephen B. Maurer. New knowledge about errors and new
views about learners: What they mean to educators and more educators
would like to know. In Cognitive Science and Mathematics Educa-
tion, Alan Schoenfeld, editor, pages 165{188. Lawrence Erlbaum Asso-
ciates, 1987. (6, 9)
15
[McLarty, 1993] Colin McLarty. Numbers can be just what they have to.
Nous, 27:487{498, 1993. (2)
[Nesher and Kilpatrick, 1990] Pearla Nesher and Jeremy Kilpatrick. Math-
ematics and Cognition. ICMI Study Series. Cambridge University
Press, 1990. (13)
[P¶
olya, 1948] G. P¶
olya. How to Solve It. Princeton University Press, 1948.
(12)
[Raymond, 1991] Eric Raymond. The New Hacker's Dictionary. The
MIT Press, 1991. (11, 12)
[Selden and Selden, 1992] Annie Selden and John Selden. Research perspec-
tives on conceptions of functions. In The Concept of Function, Guer-
shon Harel and Ed Dubinsky, editors, volume 25 of MAA Notes, pages
1{16. Mathematical Association of America, 1992. (11)
[Sfard, 1992] Anna Sfard. Operational origins of mathematical objects and
the quandary of rei¯cation { the case of function. In The Concept of
Function, Guershon Harel and Ed Dubinsky, editors, volume 25 of MAA
Notes, pages 59{84. Mathematical Association of America, 1992. (11)
16
[Steenrod et al., 1975] Norman E. Steenrod, Paul R. Halmos, Menahem M.
Schi®er, and Jean A. Dieudonn¶e. How to Write Mathematics. Ameri-
can Mathematical Society, 1975. (8)
Charles Wells
Department of Mathematics, Case Western Reserve University
10900 Euclid Ave. Cleveland, OH 44106-7058, USA
[email protected]
17