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)

    ““Why visit the playhouse to see the famous Parisian models, ... when one can see the French damsels, Norma and Diana? Their names have been known on both continents, because everything goes as it will, and those that cannot be satisfied with these must surely be of a queer nature.””
    —For the City of New Orleans, U.S. public relief program (1935-1943)