mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Factoring (https://www.mersenneforum.org/forumdisplay.php?f=19)
-   -   Brent tables reservations (https://www.mersenneforum.org/showthread.php?t=16646)

R.D. Silverman 2013-11-14 19:16

[QUOTE=jcrombie;359292]You can sieve on two sides -- the 'algebraic' side and the 'rational' side. If your .poly file has "type: snfs" then the factMsieve.pl script will sieve on the 'rational' side. If your .poly file has "type: gnfs" then it sieves on the 'algebraic' side. I believe the .py script is just a straight port from the perl script, so this should also apply there.

<snip>
[/QUOTE]

I hate it when someone who is ignorant of the subject insists on posting
misinformation.

NFS sieves on BOTH SIDES. Didn't you read my prior post on this subject?
You can read, can't you???? Within this very thread I already said that it sieves on BOTH sides.

The only question is: On which side do we sieve with respect to the full
lattice and on which side do we sieve with respect to the special-q
sub-lattice? But both sides get sieved.

[QUOTE]
Hope that helps a bit:smile:.
[/QUOTE]

About as much as a toothache.

bsquared 2013-11-14 19:44

[QUOTE=R.D. Silverman;359294]

The only question is: On which side do we sieve with respect to the full
lattice and on which side do we sieve with respect to the special-q
sub-lattice? But both sides get sieved.
[/QUOTE]



You are talking about different things. The OP asked about how to most effectively [B]use the tools[/B] and you answered with an introduction to how to implement a sieve. That is fine, and the resulting discussion is good, but I see no need to jump on someone's case when they are trying to answer the OP's [B]tool usage question.[/B]

R.D. Silverman 2013-11-14 22:05

[QUOTE=bsquared;359296]You are talking about different things. The OP asked about how to most effectively [B]use the tools[/B] and you answered with an introduction to how to implement a sieve. That is fine, and the resulting discussion is good, but I see no need to jump on someone's case when they are trying to answer the OP's [B]tool usage question.[/B][/QUOTE]

You need to learn to read as well. The OP asked about how
small to make the starting value for special_q. I replied
with what I do. The OP then said he did not understand my reply. (#176)
The rest followed. The OP's first post showed that he knew how to
use the tool to set the starting q. The question was about its value.

The reply I criticized was NOT about tool usage. It contained
a blatantly false assertion about sieving on just one side.

Such assertions make my job much harder, because I have
to spend time to correct the misinformation. And this especially
applies when the misinformation directly contradicts something that
I said just a few posts earlier.

YuL 2013-11-14 22:14

[QUOTE=R.D. Silverman;359268]
huh? One allocates space for the table. If there are more primes
to store than space allows one gets an overflow. Why is this a
mystery? One can also get an "overflow" as the table starts to get full.
If a collision occurs it has to be resolved. There are a variety of ways
to do this. But once the table starts to get full one spends TOO MUCH
TIME resolving the *()!#&*@#&* collisions. It isn't worth it.

Yes. I could re-code to dynamically allocate more space for the table
as it starts to get full. I never thought it worth the effort.
[/QUOTE]

OK, now I see what you mean.

[QUOTE=R.D. Silverman;359268]
Perhaps you might want to read "Development of the Number Field Sieve",
by Lenstra et.al.?
[/QUOTE]

I read about that book (in this forum) I'm looking for it.


[QUOTE=jcrombie;359292]
...
If your .poly file has "type: snfs" then the factMsieve.pl script will sieve on the 'rational' side. If your .poly file has "type: gnfs" then it sieves on the 'algebraic' side. I believe the .py script is just a straight port from the perl script, so this should also apply there.
...
[/QUOTE]

No. It goes like this:

[CODE]
# factmsieve.py line 1672
siever_option = '-r' if lats_p['lss'] else '-a'
siever_side = 'rational' if lats_p['lss'] else 'algebraic'
[/CODE]

If lss is set in the poly file => 'rational', otherwise 'algebraic'.
However I have no idea what 'lss' is.

A lot of things were said in the previous posts thank you all,
I think I have to do my homework now :)
I understand the theory behind NFS is far from being easy, but I'm willing
to learn.
However on the practical side I think there is a lack of information
for someone who would like to start digging into the details
instead of just running the script (which is pretty easy thanks to this[URL="http://gilchrist.ca/jeff/factoring/nfs_beginners_guide.html"]
excellent page[/URL]).

bsquared 2013-11-14 22:57

[QUOTE=R.D. Silverman;359301]The reply I criticized was NOT about tool usage. It contained
a blatantly false assertion about sieving on just one side. [/QUOTE]

Where did he say "only one side"? I believe it is colloquial to say "algebraic side" when one means "special-q on the algebraic side". Nowhere can I see him say that only one side is sieved.

R.D. Silverman 2013-11-14 23:04

[QUOTE=bsquared;359308]Where did he say "only one side"? I believe it is colloquial to say "algebraic side" when one means "special-q on the algebraic side". Nowhere can I see him say that only one side is sieved.[/QUOTE]

I quote:

"You can sieve on two sides -- the 'algebraic' side and the 'rational' side. If your .poly file has "type: snfs" then the factMsieve.pl script will sieve on the 'rational' side. If your .poly file has "type: gnfs" then it sieves on the 'algebraic' side."

This is clear. The post says that it sieves on one side depending on
how the type is set.

This is wrong. It sieves on both sides. "applying special_q" does NOT
equal "sieve".

jcrombie 2013-11-15 04:52

[QUOTE=R.D. Silverman;359309]I quote:
This is wrong. It sieves on both sides. "applying special_q" does NOT
equal "sieve".[/QUOTE]

Thanks for pointing that out. I'll update my language from now on.

jcrombie 2013-11-16 03:00

[QUOTE=YuL;359302]
No. It goes like this:

[CODE]
# factmsieve.py line 1672
siever_option = '-r' if lats_p['lss'] else '-a'
siever_side = 'rational' if lats_p['lss'] else 'algebraic'
[/CODE]If lss is set in the poly file => 'rational', otherwise 'algebraic'.
However I have no idea what 'lss' is.
[/QUOTE]

My guess: lss = 'lattice sieve side'.

Look around a bit and you will see that it does actually mimic the perl script with regards to "type: snfs" vs. "type: gnfs". (It also apparently has an extra feature that allows the user to override the side :smile:)


[QUOTE=YuL;359302]
However on the practical side I think there is a lack of information
for someone who would like to start digging into the details
instead of just running the script (which is pretty easy thanks to this[URL="http://gilchrist.ca/jeff/factoring/nfs_beginners_guide.html"]
excellent page[/URL]).[/QUOTE]

Yes, sad but true.

YuL 2013-11-16 13:40

1 Attachment(s)
[QUOTE=jcrombie;359462]
Yes, sad but true.[/QUOTE]

There is a tex document in [URL="https://sourceforge.net/p/ggnfs/code/HEAD/tree/trunk/doc/ggnfs-doc/"]subfolder ggnfs-doc of ggnfs[/URL] written by Chris Monico,
I converted it to pdf, it is a very interesting reading. Although it is way
out of date there is a lot of useful information (see section 10 for info
about the parameters in the poly file).

Here is the pdf:

chris2be8 2013-11-16 16:51

Back on topic I'm reserving:
53^128+1 C182
76^124+1 C156
96^113+1 C156

(The last two by GNFS).

Chris

chris2be8 2013-11-28 16:55

Time to reserve:
53^143+1
89^113+1

Chris


All times are UTC. The time now is 22:05.

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