20061124, 15:35  #1 
Jan 2005
Transdniestr
503 Posts 
Multiply Perfect Numbers
Hello,
I'm curious about the methods for optimizing the search for these. Could anyone lend some insight? I see George Woltman has found a large number of these. Thanks. Some background: http://wwwhomes.unibielefeld.de/achim/mpn.html 
20061124, 16:34  #2 
P90 years forever!
Aug 2002
Yeehaw, FL
7483_{10} Posts 
There used to be a mailing list but it died off.
At present I am the only active searcher. I have a dual PII400 that cannot run prime95 due to sumout errors searching 24/7. In simplest terms, the program basically does the following: 1) Generate a likely combination of powers for the first 5 primes. (actually the number of primes is configurable). Add up all the sigma chains for these 5 primes. 2) Now we play whackamole with the next 34 primes. For example, if the sigma chains for the first 5 primes generated 47^2 then we add in the sigma chain for 47^2, then we pick another random prime and add in its sigma chain, say 59^3, this sigma chain might generate another 47, so we'll have to go back and change 47^2 to 47^3 at some point. When there are no more powers to correct among these 34 primes, then we proceed to step 3 (or abort this step after trying several thousand correction attempts). 3) We now check if the perfectly balanced sigma chains of the 34 primes happens to magically match the powers of the first 5 primes. If so, we have a multiperfect number. You can see that this is not a foolproof search. Many multiperfects are missed or found only after many attempts. I have ugly source code that you can use to start your own research. I can even give you some ideas to try (or better yet you can invent some new ones)! 
20061124, 16:53  #3 
Jan 2005
Transdniestr
503 Posts 
Thanks much for the explanation, George. I'd appreciate if you could point me to the source code (and share your ideas as well). Is it all C?
Last fiddled with by grandpascorpion on 20061124 at 17:01 
20061124, 17:51  #4 
May 2005
2^{2}·3·5 Posts 

20061124, 19:38  #5 
P90 years forever!
Aug 2002
Yeehaw, FL
7×1,069 Posts 
I'm uploading mpfn.zip to ftp://mersenne.org/gimps
It is C++ code. The file mpfn.cpp is the one to look at. It reads chains.db and subst.db which are produced by the massage*.cpp files. Ideas: 1) Ditch all the nasty tree pruning code for the small primes. This was a classic mistake where I optimized the code before taking the time to determine if it was the bottleneck. It isn't. 2) Use SSE or SSE2. The small prime powers could be kept in an array of bytes with sigma chain additions and subtractions done brutally fast using these instructions. 3) Try different heuristics in the whackamole code for deciding if we are getting closer to a solution. 4) Sometimes, I think, some power combinations are hard to generate using the whackamole technique. For example, lets say you're at 47^3 and 101^2. Yet, 101^3 generates another 47 and 47^4 generates another 101. The whackamole code will never explore this case because 47 and 101 are currently in balance. 5) Maybe it would make more sense to have more than 34 midsize primes. It would be nice if you could change the number of small primes using a runtime parameter (rather than recompiling and rebuilding the chains.db). It has been several years since I last looked at the code, so I'm sure there are more possible ideas that I've long since forgotten. Last fiddled with by Prime95 on 20061124 at 20:01 
20061124, 19:47  #6 
Jan 2005
Transdniestr
503 Posts 
Thanks guys. I'll check both out.

Thread Tools  
Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
oddperfect numbers don't exist  Bill Bouris  Miscellaneous Math  15  20110508 15:22 
Odd Perfect Numbers  davar55  Miscellaneous Math  16  20110129 01:53 
Proof of Perfect Numbers  Vijay  Miscellaneous Math  10  20050528 18:11 
Perfect Numbers  MajUSAFRet  Math  3  20031213 03:55 
Odd Perfect Numbers  ZetaFlux  Math  1  20030528 19:41 