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:

    The present century has not dealt kindly with the farmer. His legends are all but obsolete, and his beliefs have been pared away by the professors at colleges of agriculture. Even the farm- bred bards who twang guitars before radio microphones prefer “I’m Headin’ for the Last Roundup” to “Turkey in the Straw” or “Father Put the Cows Away.”
    —For the State of Kansas, U.S. public relief program (1935-1943)

    The energy, the brutality, the scale, the contrast, the tension, the rapid change—and the permanent congestion—are what the New Yorker misses when he leaves the city.
    In New York City, U.S. public relief program (1935-1943)