Why Is Discrete Math Hard To Teach?
A new approach to teaching discrete math
I am about to teach our basic discrete math class to computer science majors, and need some advice.
At Tech this class has been taught for years by others such as Dana Randall. She is a master teacher, and her rankings from the students are always nearly perfect. Alas, she is on leave this spring term, and I have been selected to replace her.
I know the material—it’s a basic course that covers the usual topics:
Summary: Fundamentals of numbers, Sets, Representation, Arithmetic operations, Sums and products, Number theory
General: Fundamentals of numbers, Sets, Representation, Arithmetic operations, Sums and Products, Number Theory;
Proof Techniques: Direct Proofs, Contradiction, Reduction, Generalization, Invariances, Induction;
Algorithmic Basics: Order of Growth, Induction and Recursion;
Discrete Mathematics: Graph Theory, Counting, Probability (in relation to computability).
My dilemma is how to make teaching fun for me, make it fun for the students trying to learn this material, and do half as well as Dana. Well maybe as well.
This dilemma made me think about a new approach to teaching discrete math. I would like to try this approach on you to see if you like it. Any feedback would be most useful—especially before I launch the class this January.
First an answer to what Descartes and Viète have in common. Viète introduced at the end of 16th century the idea of representing known and unknown numbers by letters, although he was probably not the first. That is possibly Jordanus de Nemore. Descartes decades later created the convention of representing unknowns in equations by x, y, and z, and knowns by a, b, and c. This was much better than Viète’s idea of using consonants for known values and vowels for unknowns.
What does this have to do with teaching discrete math? Everything. I believe that we may confuse students by mixing two notions together. The first is that math in general, and discrete math in particular, requires students to learn a new language. The above rules for what are variables and what are constants is an example language rule that one must learn.
Let me phrase this again:
View learning discrete math as learning a new language.
In order to be successful students must learn the basics of a language that has many symbols they need to know—for example “”—and also many words and terms that have special meanings. Think about the word “odd.” In usual discourse this means:
different from what is usual or expected; strange.
But in a discrete math course, an odd natural number is one that is not divisible by . I once told a story here about what an “odd prime is”: of course, it’s just a prime that is not .
Learning A Language
If you accept that learning the language of math is fundamental, then you should accept that we may be able to use methods from teaching real languages. So I looked into how people learn new languages—how, for example, an English speaker might learn German. One of the main principles is that there are four parts to learning any new language. We must be able to:
- Read the language;
- Write the language;
- Speak the language;
- Listen to the language.
That these all are important seems obvious, but in years of teaching discrete math I never spent any time explicitly on these skills. I never worked on speaking, for example, nor on the other skills. Yet to learn a new language one must be facile in all of the above. So this January perhaps I will do some of the following:
- Have students read math aloud in class.
- Have students write down math as I say it.
Another exercise might be to have students select from math statements and identity which say the same thing. Or which are ill-formed statements; or rewrite a statement without using a certain symbol or word.
For example, which of the following statements does not say the same thing as the rest:
- If is a finite set of numbers, then there is a prime .
- If are primes, then there is a prime so that for some .
Some comments about the math language itself. It is filled with symbols that act as shorthand for terms or words—students must learn these. The concepts are difficult for some, but this is increased by the use of some many special symbols. Also the math language uses “overloading” quite often. That is the same exact symbol may mean different things, which means that students must use the global context to figure out what the word or symbol mean. This is nothing special, since many languages do the same thing. But it does add to the difficulty in understanding the language. A simple example is “i”: is this a variable?; is it the square root of ; or is it or something else?
A student who knows her math language is in a good position to make progress. But discrete math is more than just a new language. It includes the notion of “proof.” Notice that it seems that one can become facile in math as a language without understanding proofs. This is perhaps the most radical part of this approach to teaching discrete math. I wonder, and ask you, whether decoupling the language from the ability to understand and create proofs is a good idea. What do you think?
The point here is that we view proofs as reasoning about statements in the math language. It is a type of rhetoric. Recall that according Aristotle, rhetoric is:
The faculty of observing in any given case the available means of persuasion.
Rhetoric was part of the medieval Threefold Path whose meeting point is Truth, and which prepared students for the Fourfold Path of arithmetic, geometry, music, and astronomy. Thus rhetoric came before mathematics in the classic curriculum—recall “mathematics” meant astronomy back then—and before proofs as taught in geometry. I feel it should be so now.
Of course one of the central dogmas of mathematics is that our reasoning about statements is precise. If one proves that statement implies , then one can be sure that if is true, then so is . We expect our students to learn many types of reasoning, that is many types of proof methods. They must be both able to understand a proof we give them andto create new proofs. They must be facile with rhetorical arguments in the new math language.
Proofs will still be a central part of the course. But it will not be the only part. And it will not be entangled with the learning of the math language. I hope that this separation will make learning discrete math easier and more fun.
A colleague once had a student near the middle of the semester ask this question: what is the difference between
I must add that this is from a colleague who is a terrific teacher. Perhaps this shows that stressing the math language aspect is important. Ken chimes in to say that he experienced issues at almost this level teaching this fall’s graduate theory of computation course, which he treats as much like a discrete mathematics course as the syllabus allows. He emphasizes not so much “language” as “type system” (per his post last February) but completely agrees with the analogy to rhetoric.
What do you think of this approach to teaching discrete math?