Mailing List Archive

revamping K-12 math curriculum
Exploring Integrated Math Topics + a Programming Language
with an Eye towards Developing the Content of a
Standard Pre-College Mathematics Curriculum

by Kirby Urner
March 15, 2001

[.slightly revised from first draft on math-teach at
the Swarthmore Math Forum ]


I've used this forum (math-teach) as a scratch pad for evolving
some curriculum segments. A curriculum segment is a patch of
related topics and activities that might be revisited at
different levels of difficulty and sophistication. Another,
perhaps better, word for a segment is a "fabric" or a "weave".
There's an emphasis on achieving a kind of seamless blend of
themes and patterns, which assists students wanting a sense of
the big picture (overview is what seems to be lacking in a lot
of current math teaching).[1]

One example of a fabric is the whole patch of topics surrounding
sequences and series, figurate numbers, polyhedra and Pascal's
Triangle. Conway & Guy develop this weave in 'The Book of Numbers'
(Springer-Verlag, 1996), whereas I'd independently hit on a similar
approach in my 'Numeracy and Computer Literacy' series. I add
the Buckminster Fuller element, with mention of the jitterbug
transformation, geodesic spheres, viral protein sheaths and

Another example of a fabric blends topics from cryptology,
probability and group theory. Here we develop the idea of a
simple 'clubhouse code' based on letter substitution, and use
this as a segue to the group theory concept of permutations,
and multiplication as the composition of permutations. This
framework allows us to discuss the properties of a group, in
contrast to those of semi-groups, rings and fields. The next
step is to use the new concepts to develop more sophisticated
enciphering strategies, wherein the substitution dictionary
continues to change throughout the encryption process. This
provides a useful segue to historical threads, such as the
storylines involving German U-boats, the Enigma code, Alan
Turing and Bletchy Park ala Neal Stephenson's bestseller

Both of these fabrics contain material we could be phasing in
as early as first or second grade...

Fabric #1: Number and Geometry

Sphere packing and polyhedra (built with tooth picks and little
marshmellows, for example) are a popular topic with smaller
kids (I know from experience -- and not just because of the
marshmellows -- modeling clay works too). Euler's Law (V+F=E+2)
makes sense to slightly older kids, as does Descartes' Deficit
(720 degrees). The idea of triangular and square numbers,
which may be modeled by packing spheres (as in 'Pool Hall Math'
-- see math-teach archives), makes sense early too, with 'flat
shaped numbers' becoming 'spatial' (my 'beyond flatland' theme)
rather early in the game (ala 'The Book of Numbers'). Fuller's
10 F^2 +2, for the number of spheres in a cuboctahedral shell,
identical to the number in an icosahedral shell, fits into
this context. That the number of spheres is the same for both
shapes is shown by the jitterbug transformation, which hyperlinks
to phi (the cuboctahedron's square cross-sections transform
into the icosahedron's golden rectangles) and provides a segue
to virology, buckyball chemistry, crystalography and architecture.[4]

Fabric #2: Permutations and Cryptology

The idea of a 'clubhouse code' starts to make sense as soon as
children have some mastery of the alphabet, and an understanding
of why you might want to keep a message secret and therefore
indecipherable by anyone but the intended recipient. Games of
chance, ideas about probability, enter the picture here,
explorable with polyhedral dice (not just hexahedra) -- note
the hyperlink to Fabric #1 here. Using permutations to discuss
the composition of functions makes sense at the middle school
level, where we also should be developing the idea of modular
arithmetic e.g. 240 mod 13.


Aside from 'beyond flatland', another major theme promulgated
by my Oregon Curriculum Network (a kind of Oriental Rug Factory
for curriculum fabrics -- math-related especially), is 'beyond
calculators'. Since the 1980s, programming languages have
matured considerably, and since the 1990s we've had the option
of teaching Python as a first language. The synergetic blend
of procedural, functional, and object-oriented programming
styles available through Python provides a good nucleus of
concepts which will serve a student well when branching out to
other languages later, whether in the direction of C/C++/Java,
LISP/Scheme, or any of several other well-traveled pathways.

Having some knowledge of a generic programming language,
developing familiarity with it by coding around interwoven math
topics, is going to yield many benefits later on in life.
Early exposure (but not too early) lowers the chances of
developing debilitating phobias later on, and gives students a
vehicle for turning math topics into opportunities for
exploration and portfolio-building (programs may be saved,
revisited and improved over time). Using programs written in
earlier classes to tackle topics in later classes helps provide
a sense of continuity and relatedness -- something students
need, but don't always get, in the current hodge-podge.

In 'Numeracy + Computer Literacy', I use Fabric #1 to develop
some graphical output capability, by synergizing Python with a
ray tracer (I use POV-Ray and VRML plug-ins, but many other
graphics applications would be suitable, plus there's the
VPython option, permitting an even more interactive approach
based on OpenGL). This link to computer graphics is likewise a
segue to what I'll call Fabric #3, the weave on concepts
relating coordinate systems, vectors, and geometric transformations
as implemented by matrices or quaternions or some other apparatus
(e.g. Clifford Algebra).

Fabric #3 is where we use object-oriented programming to explore
the Gibbs-Heaviside vector operations, bringing in trigonometric
functions, rotation matrices and so on -- all of which makes
more sense and is a lot more fun when one is rewarded with
colorful, shadowed, perspective renderings, such as POV-Ray
(or other software) provides (such colorful renderings might
be transferred to T-shirts for those so inclined).


With Fabric #2, students will be able to encipher and decipher
text files, using their newfound/maturing computer language
skills. Given the opportunity is to encipher random passages,
we have more opportunities to jump outside the math domain and
capture topical paragraphs from other points in the curriculum.
For example, we might choose to encipher Lincoln's Gettysberg
Address, or a speech by Martin Luther King. If students are
on a network, they can practice passing ciphertext and secret
keys back and forth.

Some educators may object to this focus on cryptography at an
early age, suggesting that students will misuse this
knowledge. However, my experience is that many in 8th grade
and above develop this interest on their own, picking up memes
from popular culture, and, since this material is "avoided" in
school, they develop the impression that cryptography is
something the "establishment" is against, i.e. this knowledge
takes on a "subversive" spin. This is unfortunate, and it
would be better if the schools worked in a more empowering
mode, to help students develop skills and knowledge which is
part of the mainstream commercial environment and net-based
ecosphere. Cryptography is not inherently "subversive" --
unless we craft an environment which makes it seem that way
(which, perhaps inadvertently, is where we are today, in
many school districts).[5]

The group theory aspect of permutations (as applied to
cryptography) segues nicely to other kinds of group, such as
sets of postivie integers less than and relatively prime to
some modulus (this is why modulo arithmetic was important).
We can talk about CAIN (closure, associative, inverse,
neutral element) and Abel(ian) groups. The notion of coprimes
segues to Euler's totient function, and Euler's Theorem, of
which Fermat's Little Theorem is a special case -- more
topics typically covered in group theory with applications
to cryptography, in that huge primes are hard to "crack"
into factors (what makes RSA and some other public key
systems effective).

Thanks to Python, we have access to big numbers (long
integers) and don't have to suffer the trade-offs that
plagued earlier "math through programming" forays into
this realm (i.e. we don't trade away access to big numbers
just because we choose to use a generic programming language,
and not a strictly math-focussed or number theoretic

We can loop back to Fabric #1 and talk about symmetry groups
and polyhedra, or the group properties of quaternions under
multiplication. All of these concepts will have been developed
concretely, in a hands-on, interactive context, using a
computer language (I prefer Python) by the end of high school.
The result will be a more sophistacted and non-math-phobic
mindset among students, who have a well-connected set of math-
related concepts and a feel for the bigger picture.

I haven't forgotten the calculus, and will simply point out
that we have a good basis for exploring limits starting with
Fabric #1, with phi and Fibonacci numbers in particular (with
a link between phi and the fractal-like, recursive nature of
phi-based five-fold symmetric geometries). Fabric #1 was a lot
about Sigma and Pi (summations and products of a sequences
respectively), and about differences between successive terms
in a sequence, the discrete math analog of the differential.

With Fabric #3 (graphics/vectors), we have the standard
graphing calculator topics of (x,f(x)) and might explore the
calculus of the catenary for example (suspension bridges and
electrical wires have this shape), which will include mention
of hyperbolic trig functions. I can talk more about Fabric #4
in another post.[7]


[1] these 'fabric' terminology is borrowed from memetics as
embodied in Fluidiom, which is also an elastic interval geometry
application (



[4] Jay Kappraff's, Connections, the geometric bridge between
art and science (McGraw-Hill, 1996) is also good on the
root(2)-based vs. phi-based aesthetics. For an animated GIF
of the jitterbug, see "Getting Inventive with Vectors"

[5] Teachers might want to use the relevance/importance of a
cryptographic "fabric" as an argument for bringing more powerful
computing platforms into math classrooms, vs. "making do" with
less suitable calculators for this purpose. For more along
these lines, see my post to k12.math.teach:

[6] here's a post to math-learn quoting an earlier curriculum
writer who had to contend with this trade-off:

[7] or see