[Edu-sig] more technical writing re Pythonic math

kirby urner kirby.urner at gmail.com
Thu Jan 14 05:35:18 CET 2010

Some notes on:

Mathematics for the Digital Age and
Programming in Python, 2nd Edition

by Maria Litvin and Gary Litvin


I just got my evaluation copy of the 2nd edition and I've been
plowing through it eagerly.

For those just joining, I've been somewhat zealously proposing
we converge math and computer topics more successfully --
including pre-college.  I've been internationally outspoken on
this per 4dsolutions.net/presentations

Now we finally have a slim, yet action-packed volume that's a
pretty good proof of concept I think, plus it comes with a small
test demographic @ Phillips / Andover, a world class school.

I'll just enumerate some of features I've been hoping for, and
am finding in this book:

0) a Rational number class w/ operator overloading
1) graphs (as in networks) relating to polyhedra
2) ASCII -> Unicode
3) a Madlib example
4) triangular numbers, link to OEIS **
5) polynomials
6) fibonacci numbers, phi
7) RSA (public key crypto)

Lots more is included of course, including a rather
deep foray into computer hardware and low level
language (8088 assembler), boolean truth
tables, strategy games, matrix multiplication (exercise
pg. 249).

** On-Line Encyclopedia of Integer Sequences

This text is like a kernel or seed in that it plants all the
"right stuff" for a larger tree of topics, branching off
from the many covered.

As a teacher, you're at liberty to expand coverage in
any number of directions.

Just to take one example:


Let's go from triangular and square numbers, ala 'Gnomon'
by Midhat Gazale, to polyhedral numbers ala 'The Book
of Numbers' by Conway and Guy.

The number sequence 1, 12, 42, 92, 162... is especially
worthy (including of Python generator treatment).  Type
that into OEIS and we get the cuboctahedral numbers,
aka icosahedral numbers:


That these polyhedra go together is deep chemistry (literally),
plus you'll find segues to architecture and virology. Scroll
down to the links section and you'll find one to my site:

K. Urner, Microarchitecture of the Virus

See also:  4dsolutions.net/ocn/numeracy0.html (includes
animated GIF showing the ball packing in question:
http://4dsolutions.net/ocn/graphics/cubanim.gif   )

The Python generator might be:

def cubocta():
    layer, total = 1, 1
    n = 0
    while True:
        yield (layer, total)
        n += 1
        layer = 10 * n * n + 2
        total += layer

Where "layer" will be 1, 12, 42, 92... and "total" will
be a running accumulation of that total number of
balls packed out from a nucleus, 1, 13, 55, 147...

See also:  wikieducator.org/PYTHON_TUTORIALS#Generators
(crystal ball sequence)



When new x-ray diffraction techniques were disclosing
the icosahedral shape of the virus, scientists contacted
Buckminster Fuller, because he was Mr. Icosahedron
in those days (the geodesic dome guy).

He had this formula for 1, 12, 42, 92..., a mathematical
result H.S.M. "King of Infinite Space" Coxeter thought was
pretty brilliant (simple, elementary, easy to prove).

"Coxeter told Fuller how impressed he was with his formula
-- on the cubic close-packing of balls. And he later took
pleasure in proving it, noting in his diary one day in
September 1970: "I saw how to prove Bucky Fuller's
formula," and publishing it in a paper, "Polyhedral Numbers."
Of course more than anything, Coxeter fell in love with
Fuller's geodesic domes."

[from: Siobhan Roberts, King of Infinite Space (recent
bio of H.S.M. Coxeter, to whom Fuller dedicated his
magnum opus -- w/ permission -- citing pg. 71 of
'Regular Polytopes' deeper into his text) ]

< technical >

Here's my own proof, dunno how similar, and kinda
dense (f is the number of intervals along an edge, so
one less than the number of balls).



Fuller's formula was published in the NY Herald Tribune in
connection with a virology conference @ Cold Spring
Harbor, but then a follow-up Scientific American article
on the same topic dropped all mention of Fuller, ostensibly
because Coxeter and others had by this time generalized
the viral micro-architecture using the related mathematical
work of Michael Goldberg.

I know Fuller was distraught about being cut out of the
narrative (I saw some of the archived correspondence),
though he had his posthumous comeuppance I suppose,
w/ the discovery of "buckminsterfullerene" (also icosahedral,
in the sense of five-fold rotationally symmetric).

 "They show the same kind of structure as the domes
of Buckminster Fuller" Dr. [Robert] Horne, who took
the first  photos, explained, "We went along working
out the mathematics of the viruses when somebody
told us about Fuller's book . . . We opened it and
there it was all worked out. It seems that both Fuller
and nature have picked out the most rigid geometry
they can find."

"Virus - A Triumph and a Photograph"
New York Herald Tribune. February 6, 1962.

(cited in B.G. DeVarco, Invisible Architecture: The
Nanoworld of Buckminster Fuller, 1997)


Per my workshop @ Pycon / Chicago, I go with
these two axes:  technical content vs. lore.  A curve
of finite / constant bandwidth, like the opportunity
cost curve in economics, suggests we need to vary
the mix, going more for the lore in some contexts.

Dry-as-bones technical stuff is just as necessary
though, so we oscillate, go back and forth.


More information about the Edu-sig mailing list