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: <technical> 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: http://www.research.att.com/~njas/sequences/A005901 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 Grunch.net/synergetics/virus.html 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) </technical> <lore> 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). http://mybizmo.blogspot.com/2007/01/gnu-math-memo.html </technical> 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) </lore> 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. Kirby _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig