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:

    “It is said that a carpenter building a summer hotel here ... declared that one very clear day he picked out a ship coming into Portland Harbor and could distinctly see that its cargo was West Indian rum. A county historian avers that it was probably an optical delusion, the result of looking so often through a glass in common use in those days.”
    —For the State of New Hampshire, U.S. public relief program (1935-1943)

    “The actions of each dancer were scrutinized with great care and any little mistake noted and remembered. The strain upon a dancer was consequently so great that when a fine dancer died soon after a feast it was said, “The peoples’ looks have killed him.””
    —Merle Colby, U.S. public relief program (1935-1943)