[Edu-sig] Updating some more...

Litvin litvin at skylit.com
Thu Jul 1 03:49:07 CEST 2010

At 07:01 PM 6/30/2010, kirby urner wrote:
>I did something similar with a Ramanujan series converging to pi...

Since you mentioned Ramanujan...

He and Hardy worked quite a bit on the partition function: p(n) = the 
number of different ways n can be represented as a sum of positive 
integers.  The sequence p(n) starts like Fibonacci numbers, 1, 1, 2, 
3, 5... but the next one is 7.  Nice try!

At some point around 1916, an amature mathematician Major MacMahon, 
who was "good with numbers" calculated _by hand_ for Hardy and 
Ramanujan p(n) for n = 1 through 200.  p(200) happens to 
be  3,972,999,029,388.  An interesting story.

It is possible, of course, to write a recursive function to calculate 
p(n), but a more fun way is to use the generating function (1 + x + 
x^2 +x^3+...x^n)*(1+x^2+x^4+x^6+...)(1+x^3+x^6+...)*...*(1+x^n) (due 
to Euler, as most everything else...)  When you distribute, the 
coefficients at x, x^2, ... of the resulting polynomial give you 
p(1), p(2), ... So this could be a basis for a meaningful project on 
lists and polynomials.

If you plug a large enough number into the generating function, say, 
x = 10000, you get a number whose groups of five digits (from the 
right) give you p(n) as long as p(n) < 10000.  So for a relatively 
small n instead of multiplying polynomials you can multiply 
"periodic" integers 100010001...0001*100000001...00000001*...
It is easy, of course, to generate these numbers using strings.  Then 
this becomes a meaningful exercise on strings.

I am currently working on a "test package" for the Math and Python 
book and I've just added a question based on a small peace of this, 
so I felt like sharing.  Not sure whether this is for the left brain 
or for the right brain; these periodic strings are kinda cute. :)

Gary Litvin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/edu-sig/attachments/20100630/90e9d718/attachment.html>

More information about the Edu-sig mailing list