mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Software (https://www.mersenneforum.org/forumdisplay.php?f=10)
-   -   How can I enter a larger exponent? (https://www.mersenneforum.org/showthread.php?t=22824)

potonono 2017-12-24 17:19

[QUOTE=evanh;474789]Is there a link that anyone can provide that explains what the "residue", "shift", "type", and "results" all mean on the "primenet exponent status" page?[/QUOTE]

The LL-test residue, is like a remainder for the test. If two people perform the same test, we expect the same residue from both tests, unless one (or both) of the tests had errors.
[URL="http://www.mersennewiki.org/index.php/Residue"]http://www.mersennewiki.org/index.php/Residue[/URL]

The 'shift' is just part of the FFT (fast fourier transform) used in the test. It is expected to be different. The below link doesn't discuss the shift, but might give you a good starting point if you want to get more detail on the subject.
[URL="http://www.mersennewiki.org/index.php/Fast_Fourier_Transform"]http://www.mersennewiki.org/index.php/Fast_Fourier_Transform[/URL]

The result 'type' is what each test tells us. If someone performs partial factoring, "NF" tells us there was no factor for the factoring range. If an LL test indicates the candidate is composite, "C" is the result type.

The 'result' column just has some extra details about the test type, like the residue for an LL test, or the 'bit-range' that someone checked for factors.

evanh 2017-12-24 17:26

[QUOTE=ET_;474796]Let me add that

IF (prime-proving requires high-level CPU calculations)
AND (prime95 is CPU heavy)
THEN (prime95 will reach its result much faster than Maple)

and

IF (prime95 proves numbers of the form 2^p - 1)
AND (your number is not of the form 2^p - 1)
THEN (you cannot use prime95 to prove your numbers: the result will be wrong)

I beg your pardon if such syllogisms are already clear to you: having to do daily with students who do not know how computers work, I felt the urge to elaborate. :smile:

Luigi[/QUOTE]

This is a very good point. I thought perhaps Maple might be more efficient with how it uses the Computers hardware but it looks like I am very wrong. I need to read up on how these types of computations utilize the computers hardware ...

I was thinking that Maple is using a code where it checks all integers 2 to n-1 to see if they factor into n but somehow stores each check in the RAM for efficiency so it doesn't have to compute factors it already computed but rather it just checks against previous calculations...

I could be making no sense here but I'm learning...

evanh 2017-12-24 17:27

[QUOTE=potonono;474797]The LL-test residue, is like a remainder for the test. If two people perform the same test, we expect the same residue from both tests, unless one (or both) of the tests had errors.
[URL="http://www.mersennewiki.org/index.php/Residue"]http://www.mersennewiki.org/index.php/Residue[/URL]

The 'shift' is just part of the FFT (fast fourier transform) used in the test. It is expected to be different. The below link doesn't discuss the shift, but might give you a good starting point if you want to get more detail on the subject.
[URL="http://www.mersennewiki.org/index.php/Fast_Fourier_Transform"]http://www.mersennewiki.org/index.php/Fast_Fourier_Transform[/URL]

The result 'type' is what each test tells us. If someone performs partial factoring, "NF" tells us there was no factor for the factoring range. If an LL test indicates the candidate is composite, "C" is the result type.

The 'result' column just has some extra details about the test type, like the residue for an LL test, or the 'bit-range' that someone checked for factors.[/QUOTE]

I see. Thank you very much. So is it correct that a result of "C-Mismatch" means that the result is composite but did not match someone else result?

thank you for the links.

chalsall 2017-12-24 17:37

[QUOTE=ET_;474796]I beg your pardon if such syllogisms are already clear to you: having to do daily with students who do not know how computers work, I felt the urge to elaborate. :smile:[/QUOTE]

When I was going to UVic in the late '80's, a friend of mine was a support consultant in the Computing Services department.

A graduate student came in complaining that his program wasn't working on the IBM 360.

My friend looked at the code, and carefully and gently explained to him that he was trying to allocate a four dimensional complex number array which would consume more memory than existed on earth.

"Well", said the graduate student, "when are you going to upgrade your computer so it can run my program?

Believe it or not, this is a true story.

science_man_88 2017-12-24 17:40

[QUOTE=evanh;474800]
I was thinking that Maple is using a code where it checks all integers 2 to n-1 to see if they factor into n[/QUOTE]
Testing a number for factors is much smaller you need only check up to sqrt n. This is because if n=pq with p and q both greater than sqrt you get n> n a contradiction.

ET_ 2017-12-24 17:50

[QUOTE=evanh;474800]
I was thinking that Maple is using a code where it checks all integers 2 to n-1 to see if they factor into n but somehow stores each check in the RAM for efficiency so it doesn't have to compute factors it already computed but rather it just checks against previous calculations...

I could be making no sense here but I'm learning...[/QUOTE]

If you are learning, then it makes sense.

First things first.
You don't have to test all integers from 2 to n-1 to see if they factor into n: you may well use only prime numbers (hence the explosion in RAM usage) up to the square root of n. Can you see why? Because every factor above the square root of n gives a second (co)factor that is less than the square root of n: if you start from 2 and go up the ladder of primes, then you have already checked such cofactor. Hence the reason to stop at the square root of n.

Second heuristic.
Division operations are quite slow on modern CPUs, referred to (integer) multiplication, so we can use modular arithmetic instead. As you may remember the modulus of an operation is the remainder from an integer division, i.e. 5 % 2 = 1.
Using modulus is quite efficient and lets you test numbers up to 4,200,000,000 using only a few modulo operations with primes in the very low range.

Interlude.
I guess Maple uses a symbolic engine to (try to) solve primality problems. Consider that the isprime() function used on Maple does not perform a primality test, it only performs a probabilistic test. So I hope you don't use that function to test your number...

a1call 2017-12-24 18:05

[QUOTE=evanh;474794]Thank you a1call. I am looking into your suggestions now.

I am new to code but better late than never. It seems like the general theme is a billion digit number will require either a supercomputer or a search to be passed down from generation to generation lol!

Thanks for the input, I will respond again when/if I have questions about Pari-GP[/QUOTE]
Well if the search is parallel-able, distributed computing with a very large number of collaborators would divide the time required by the number of collaborators, at least in theory(individual computing power variations not withstanding).
Primo uses parallel computing for proving general form primes. But it is limited in threads by design, which makes it of limited use. It's a shame that the concept is not utilised as distributed computing.

a1call 2017-12-24 23:07

Regarding primo, it is not the top SERP in Google for its name:
[url]http://www.ellipsa.eu/public/primo/primo.html#FAQ[/url]
Paul Underwood can correct me if I am wrong but going by memory it has a limit on 64 threads.

ATH 2017-12-24 23:22

[QUOTE=evanh;474788]I was looking for an exponent that would produce a billion digit number and I think I was finding that it would take an exponent over 1 billion, probably around 3 billion... as an exponent..[/QUOTE]

You can easily find the smallest exponent:
1,000,000,000 / log[sub]10[/sub](2) = 3321928094,887

The smallest prime above this is: 3,321,928,097 but there is already known factors of 2[sup]3,321,928,097[/sup] - 1. The lowest prime exponent without known factors is:
3,321,928,171:

[url]http://home.earthlink.net/~elevensmooth/Billion.html[/url]

evanh 2017-12-25 04:05

[QUOTE=ET_;474807]
Interlude.
I guess Maple uses a symbolic engine to (try to) solve primality problems. Consider that the isprime() function used on Maple does not perform a primality test, it only performs a probabilistic test. So I hope you don't use that function to test your number...[/QUOTE]

Unfortunately it is a probabilistic test with the following information regarding how it tests... [url]https://www.maplesoft.com/support/help/maple/view.aspx?path=isprime[/url]


[B][I]•
The isprime command is a probabilistic primality testing routine. (See prime number.)

It returns false if n is shown to be composite within one strong pseudo-primality test and one Lucas test. It returns true otherwise.

If isprime returns true, n is very probably prime - see References section. No counterexample is known and it has been conjectured that such a counter example must be hundreds of digits long.[/I][/B]

I suppose if a number I test comes back "true" I will have to seek help in performing a deterministic probability test... the good news is that usually it is quickly able to kick back a "false" output... right now the number I am testing has been "evaluating" for a few days now.. I know thats nothing considering with my hardware it could take a few months... with all of the numbers I have tested with my method up to... 1,000,000,000,000 I have been able to find a prime with this method... no I have not tested ALL of the numbers up to this and I know that just because it holds true for what I have shown that does not mean it holds true for ALL cases...

I still think it will be pretty cool to get a return of "true" on a 100,000,000+ digit number even if it is probabilistic.. anyone care to help out if that happens??? we can split the prize money :big grin:

retina 2017-12-25 04:29

[QUOTE=evanh;474832]Unfortunately it is a probabilistic test with the following information regarding how it tests... [url]https://www.maplesoft.com/support/help/maple/view.aspx?path=isprime[/url]


[B][I]•
The isprime command is a probabilistic primality testing routine. (See prime number.)

It returns false if n is shown to be composite within one strong pseudo-primality test and one Lucas test. It returns true otherwise.

If isprime returns true, n is very probably prime - see References section. No counterexample is known and it has been conjectured that such a counter example must be hundreds of digits long.[/I][/B]

I suppose if a number I test comes back "true" I will have to seek help in performing a deterministic probability test... the good news is that usually it is quickly able to kick back a "false" output... right now the number I am testing has been "evaluating" for a few days now.. I know thats nothing considering with my hardware it could take a few months... with all of the numbers I have tested with my method up to... 1,000,000,000,000 I have been able to find a prime with this method... no I have not tested ALL of the numbers up to this and I know that just because it holds true for what I have shown that does not mean it holds true for ALL cases...

I still think it will be pretty cool to get a return of "true" on a 100,000,000+ digit number even if it is probabilistic.. anyone care to help out if that happens??? we can split the prize money :big grin:[/QUOTE]Don't get your hopes up. You won't be able to simply use off-the-shelf code to test numbers of that size in a few days, or a few months, or a few years. If it was so easy someone else would have already done it by now. There is a very good reason that the prize has remained unclaimed, and it is not because no one else has thought about it before. You haven't discovered any new or interesting.


All times are UTC. The time now is 21:29.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.