# [Edu-sig] another "must have" generator

kirby urner kirby.urner at gmail.com
Tue Jan 20 00:24:09 CET 2009

```This is just to get junior experimenting with convergence / divergence
on the complex plane.  c is our variable.

Per this Wikipedia article (fine to project in class, why not, though
"teacher reading from encyclopedia" shouldn't come off as mechanical):

See: http://en.wikipedia.org/wiki/Mandelbrot_set
Also: http://www.4dsolutions.net/ocn/fractals.html

IDLE 3.0a2
>>> def mandelbrot(c):
z = 0 + c
while True:
yield z
z = z ** 2 + c

>>> c1 = mandelbrot(1)
>>> next(c1)
1
>>> next(c1)
2
>>> next(c1)
5
>>> next(c1)
26
>>> next(c1)
677
>>> ci = mandelbrot(1j)
>>> next(ci)
1j
>>> next(ci)
(-1+1j)
>>> next(ci)
-1j
>>> next(ci)
(-1+1j)
>>> next(ci)
-1j
>>> next(ci)
(-1+1j)
>>>

Taking inventory of what I have so far in my Python toolkit:

Figurate Numbers
Pascal's Triangle (triangular and tetrahedral numbers)
Fibonacci Numbers (converge to phi, pentagon math)
Vectors (VPython -- xyz, spherical coordinates etc.)
Prime Numbers (sieves)
Prime Numbers (trials by division)
Polyhedra (as Python objects: scale, rotate, translate)
Polyhedral Numbers (icosahedral, geodesic spheres)
Finite Groups (Python module)
Euclid's Algorithm (Guido's gcd)
Euclid's Extended Algorithm (needed for inverses)
Totient and Totative (gcd based)
Fermat's Little Theorem (assert...)
Euler's Theorem for Totients (assert...)
Mandelbrot Set (chaotic sequences)
Miller-Rabin (or Jython probablePrime)
RSA.encrypt(m, N)
RSA.decrypt(c, N, d=secretkey)
...

I've ordered these roughly in sequence of first encounter, assuming
numerous loop-backs and repetitions (Saxon a good model -- called
spiraling with scaffolding), thinking roughly grades 9-12, though some
adults will do this sequence as a refresher or first time exposure to
basic numeracy.  This is in no way a complete list, just a smattering
of dots, curriculum "nodes" as it were.

For some of it, I'd expect to switch more into a "music appreciation"
mode i.e. we spend too little time explaining why on earth we do so
much around polynomials, make them an in-depth vocational exercise
without promising anything specific about their job relevance.  When
was the last time any of you needed to factor a polynomial for work,
and couldn't use Mathematica?

Time was, if you lived in Pisa and could factor a 3rd or 4th degree
polynomial of a specific form, you could attract a patron for a kind
of cerebral cockfighting that went on.

"""
In 1530, Niccolò Tartaglia (1500-1557) received two problems in cubic
equations from Zuanne da Coi and announced that he could solve them.
He was soon challenged by Fiore, which led to a famous contest between
the two. Each contestant had to put up a certain amount of money and
to propose a number of problems for his rival to solve. Whoever solved
more problems within 30 days would get all the money. Tartaglia
received questions in the form x3 + mx = n, for which he had worked
out a general method. Fiore received questions in the form x3 + mx2 =
n, which proved to be too difficult for him to solve, and Tartaglia
won the contest.
"""
[ http://en.wikipedia.org/wiki/Cubic_equation ]

The lack of an historical dimension in modern math teaching is just
another symptom of out-of-control overspecialization, what we're
seeking to counter with these more integrative approaches.  Moving to
executable notations is a clear sign of the times, ample evidence that
"time marches on", so it makes sense that we're more time-aware, no
longer supposing that the grade school math of our grandparents is the
math of our children.  Since when did time stand still?

I've got more ideas for offering refresher numeracy courses to adults
at the Math Forum.  A lot of the focus will be instructional game
playing on LCDs, sometimes with real money involved, definitely
working towards credentialing i.e. adding scores to transcripts, which
implies access to testing centers.  The coffee shop may still be the
best place to study, bone up for that job interview.