Slashdot Mirror


Euler's Partition Function Theory Finished

universegeek writes "Mathematician Ken Ono, from Emory, has solved a 250-year-old problem: how to exactly and explicitly generate partition numbers. Ono and colleagues were able to finally do this by realizing that the pattern of partition numbers is fractal (PDF). This pattern allowed them to find a finite, algebraic formula, which is like striking oil in mathematics."

12 of 117 comments (clear)

  1. Fractals are sexy by Suki+I · · Score: 4, Funny

    Fractals are the mathematical thingie that turn me on the most in all of mathematics. The paisley pattern is natures tribute to the fractal, when executed correctly. Fractals make me hot, they really turn me on. Striking oil, even hotter.

  2. Ageism strikes again by Dr.+Gamera · · Score: 4, Informative

    Well, Ono can't win the Fields medal for it -- he's too old. (Born in 1968; you can't win the Fields medal after 40.)

    1. Re:Ageism strikes again by MarkRose · · Score: 5, Funny

      He's too old? Is it time to start writing his eulergy?

      --
      Be relentless!
  3. A Partician is: by Charliemopps · · Score: 4, Interesting

    From the article:
    "a partition is a way of representing a natural number n as the sum of natural numbers (ie. for n = 3, we have three partitions, 3, 2 + 1, and 1 + 1 + 1, independent of order). Thus, the partition function, p(n), represents the number of possible partitions of n. So, p(3) = 3, p(4) = 5 (for n = 4, we have: 4, 3 + 1, 2 + 2, 2 + 1 + 1, 1 + 1 + 1 + 1) , etc.."

    Very interesting read.

  4. Re:In English by masterwit · · Score: 4, Insightful

    So what does this mean and what does this give us in practical applications?

    A new textbook version for another $150.00.

    --
    We should start a new Slashdot and return control to the geeks. It actually wouldn't be that hard to get some users to
  5. Ken Ono is a great guy by GlobalEcho · · Score: 4, Interesting

    Couldn't happen to a harder-working guy BTW, or a nicer one. I'll never forget him desperately writing the final draft of his wedding vows on the day of the ceremony.

  6. Re:In English by martin-boundary · · Score: 5, Informative
    Suppose you have a large amount of data, and you've turned it into a whole lot of integers. You might not want to store the integers each in a full byte/word/double word, as you'd be wasting a lot of memory that way.

    So you come up with a scheme where small integers are stored in a slot that only takes up the number of bits that they actually need. For example, the number 5 can be stored in 3 bits or more, and the number 3 can be stored in two bits or more, which is a far cry from the "standard" size of 64 bits per integer used on many computers these days.

    The Euler partition function tells you in how many ways you can split 64 bits up into differently sized slots, which is great if you want to design flexible encoding schemes that make good use of those 64 bits.

  7. Re:In English by AchilleTalon · · Score: 5, Insightful
    Why should it gives us any practical applications right now or tomorrow? Do you know Boole was considered wasting his time when he put together the fundation of the boolean algebra which is a cornerstone of the logical circuitry? Do you know Maxwell was also considered wasting his time working on the unification of electrical and magnetic forces? Do you know Faraday was asked what the heck the electricity was for?

    All pratical things begin with someone dreaming and working on useless things otherwise these discoveries wouldn't have been done if only practical purpose and necessity was the rule. I'm tired reading peoples always asking what it's for as if everything should have a pratical usage right away. We are talking about the foundations of reasoning here, we are talking about mathematics, not about engineering in case you didn't notice.

    --
    Achille Talon
    Hop!
  8. Better Link by GlobalEcho · · Score: 4, Informative

    Here is a link that explains the whole discovery process much better:

    http://esciencecommons.blogspot.com/2011/01/new-theories-reveal-nature-of-numbers.html

  9. Re:In English by Daniel+Dvorkin · · Score: 4, Interesting

    Well, in statistics it's pretty common to fit models to partitions of data, and the partitioning process gets ugly when the data set is large (in terms of classes of data, not in terms of the number of points in the data.) And translating from partition numbers to actual partitions is trivial. Speaking as a statistician who only deals with number theory on the (rare) occasions that it's directly relevant to my work, I have to say that the existing partitioning algorithms, although they work, strike me as inelegant, and I'd be happy to have something cleaner that can deal with an arbitrarily large number of classes of data in "O(something small)" time. I can see this speeding up model selection problems at least somewhat, although most of the computational expense will still be in actually fitting the models and calculating the relevant performance criteria.

    --
    The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
  10. Re:Mr. Ono... by djlemma · · Score: 4, Funny

    I think you need to APOLOgize..


    aaaand I can just hear my slashdot karma crashing down. :)

  11. Re:In English by martin-boundary · · Score: 4, Informative
    There's a nice book on variable length encoding schemes by David Salomon. What I was thinking of was Anh and Moffat's Simple9 code (couldn't find a direct link), which goes like this:

    Suppose you have 32 bits to play with, and you reserve 4 bits for bookkeeping, then you have 28 bits available for data. In Simple9, you partition the 28 bits in 9 equal sized slots (9 fits in 4 bits).

    28 x 1 bit -> 28 numbers in the range 0-1
    14 x 2 bit -> 14 numbers in the range 0-3
    9 x 3 bit -> 9 numbers in the range 0-7
    7 x 4 bit -> 7 numbers in the range 0-15
    5 x 5 bit -> 5 numbers in the range 0-31
    4 x 7 bit -> 4 numbers in the range 0-127
    3 x 9 bit -> 3 numbers in the range 0-511
    2 x 14 bit -> 2 numbers in the range 0-16383
    1 x 28 bit -> 1 number in the range 0-268435455
    ----
    9 different encodings -> fits in 4 bookkeeping bits.

    This isn't space optimal, but it's not bad because 28 is divisible without remainder in nearly all of the cases. Moreover, it's fast to decode because it's just bit masks, and it offers localized random access whereas a lot of more efficient codes can only extract the data in order.

    However, the partition function tells us how to fill the slots exactly! So in principle, if we reserve B bookkeeping bits for a number which describes a partion of the R = 64 - B remaining databits, then we should be able to decode those R bits with a template which is a function of the value stored in B. So, take a list of Euler partition numbers, compute the log2 of the values of p(R), calling it B, then see when R + B = 64.

    For example, with R = 47, p(R) = 105558 which fits in B = 17 bits. So you can encode 105558 different partitions exactly in 47 bits, and use 17 bits to identify the actual partition being used.

    Anyway, this is getting too long for slashdot :)