Pentagonal Number Theorem - Example Program

Example Program

Here is a simple Python program which computes p(n), the number of partitions, using the recurrence resulting from the pentagonal number theorem.

pentagonal = lambda n : n*(3*n-1)/2 def generalised_pentagonal(n): # 0, 1, -1, 2, -2 if n < 0: return 0 if n%2 == 0: return pentagonal(n/2+1) else: return pentagonal(-(n/2+1)) pt = for n in range (1, 1000+1): r = 0 f = -1 i = 0 while 1: k = generalised_pentagonal(i) if k > n: break if i%2==0: f = -f r += f*pt i += 1 pt.append(r) print pt

Read more about this topic:  Pentagonal Number Theorem

Famous quotes containing the word program:

    Who will join in the march to the Rocky Mountains with me, a sort of high-pressure-double-cylinder-go-it-ahead-forty-wildcats- tearin’ sort of a feller?... Git out of this warming-pan, ye holly-hocks, and go out to the West where you may be seen.
    —Administration in the State of Miss, U.S. public relief program (1935-1943)

    Along the highway, all but lost among blatant neon lights flashing ‘Whiskey’ and ‘Dance and Dine,’ are crudely daubed warnings erected by itinerant evangelists, announcing that ‘Jesus is soon coming,’ or exhorting the traveler to ‘prepare to meet thy God.’
    —For the State of Florida, U.S. public relief program (1935-1943)