Skip to Content.
Sympa Menu

cado-nfs - Re: [Cado-nfs-discuss] Documentation and/or parameter suggestions for SNFS

Subject: Discussion related to cado-nfs

List archive

Re: [Cado-nfs-discuss] Documentation and/or parameter suggestions for SNFS


Chronological Thread 
  • From: Paul Leyland <paul.leyland@gmail.com>
  • To: cado-nfs-discuss@lists.gforge.inria.fr
  • Subject: Re: [Cado-nfs-discuss] Documentation and/or parameter suggestions for SNFS
  • Date: Thu, 24 Oct 2013 16:42:24 +0100
  • List-archive: <http://lists.gforge.inria.fr/pipermail/cado-nfs-discuss>
  • List-id: A discussion list for Cado-NFS <cado-nfs-discuss.lists.gforge.inria.fr>

(TL;DR --- having troubles setting up a SNFS factorization with cado-nfs
2.0 beta)


On Thu, 2013-10-24 at 10:06 +0100, Paul Leyland wrote:
> I would like to suggest that the documentation on how to run SNFS with
> CADO-NFS be expanded. Unless I've missed something very important the
> present documentation can be summarized as "create a polynomial file by
> hand instead of using the GNFS polynomial finder".

Further to this, I'm trying to set up to factor 235*8^235+1 which has
just started under "Msieve v. 1.52 (SVN 923M)". The msieve polynomial
file, working very nicely, is

n:
9344879323330582132476647523076036766251058644308032256575482675551196064229458278655388065516061224981191913520205352585413584634611067426349293720079701
Y0: -166153499473114484112975882535043072
Y1: 1
c0: 1
c1: 0
c2: 0
c3: 0
c4: 0
c5: 0
c6: 1880
skew: 0.284647271438178

and I've saved that as msieve.poly on the system where cado-nfs is
installed

The docs in cado-nfs refer me to:

Factoring with SNFS:
====================

It is possible to take advantage of the special form of an
integer and use the Special Number Field Sieve. See the doc in
scripts/cadofactor/parameters.snfs for that.

but that file isn't in the beta tarball ====> documentation bug at
least.

The doc in scripts/cadofactor/README tells me to

If you want to import a polynomial file (either a SNFS
polynomial, or
polynomial selection was already done), use:

tasks.polyselect.import=xxx.poly

where xxx.poly is the name of the polynomial file (in CADO-NFS
format).

By default this will consider this polynomial in addition to
those found during
the polynomial selection. If you want to avoid polynomial
selection, also add:

tasks.polyselect.admin=0
tasks.polyselect.admax=0

which I did. After unsuccessful attempts to convert to CADO-NFS format
by hand I discovered /installed/bin/misc/convert_poly which is not
obviously documented. After experimentation I used

convert_poly -if msieve < msieve.poly > c8_235.poly

with the result
n: 0
c0: 0
Y0: 0
m: 0

which is not very helpful 8-(

Tried again with the msieve c8_235.fb file as input to convert_poly.
The contents this time are

N

9344879323330582132476647523076036766251058644308032256575482675551196064229458278655388065516061224981191913520205352585413584634611067426349293720079701
SKEW 0.284647271438178
A6 1880
A5 0
A4 0
A3 0
A2 0
A1 0
A0 1
R1 1
R0 -166153499473114484112975882535043072
FAMAX 26400000
FRMAX 26400000
SALPMAX 536870912
SRLPMAX 536870912

with result

n:
9344879323330582132476647523076036766251058644308032256575482675551196064229458278655388065516061224981191913520205352585413584634611067426349293720079701
c6: 1880
c5: 0
c4: 0
c3: 0
c2: 0
c1: 0
c0: 1
Y1: 1
Y0: -166153499473114484112975882535043072
m: 166153499473114484112975882535043072

Importing this one (note the SKEW line in the input and lack of a skew:
line in the output) into cado-nfs yielded

...
Info:Client Launcher: Running clients: localhost4 (Host
localhost, PID 4045), localhost3 (Host localhost, PID 4042),
localhost2 (Host localhost, PID 4039), localhost (Host
localhost, PID 4036)
Info:Polynomial Selection: Starting
Info:Polynomial Selection: No polynomial was previously found
Warning:Polynomial Selection: Invalid polyselect file
'/home/pcl/cado_fact/c8_235.poly': Key skew missing
Info:Polynomial Selection: Adding workunit
c8_235_polyselect_0-100000 to database
Info:Polynomial Selection: Adding workunit
c8_235_polyselect_100000-200000 to database
...

Adding a line

skew: 0.284647271438178

to c8_235.poly and restarting cadofactor.py produced

...
Info:Client Launcher: Running clients: localhost4 (Host
localhost, PID 4307), localhost3 (Host localhost, PID 4304),
localhost2 (Host localhost, PID 4301), localhost (Host
localhost, PID 4298)
Info:Polynomial Selection: Starting
Info:Polynomial Selection: No polynomial was previously found
Warning:Polynomial Selection: Polynomial in
file /home/pcl/cado_fact/c8_235.poly has no Murphy E value
Info:Polynomial Selection: New best polynomial from
file /home/pcl/cado_fact/c8_235.poly: Murphy E = 0
Info:Polynomial Selection: Adding workunit
c8_235_polyselect_0-100000 to database
Info:Polynomial Selection: Adding workunit
c8_235_polyselect_100000-200000 to database
...

and now I'm stuck. What next?

Note that I blew away the entire $(workdir) and any orphan polyselect2l
process between each successive run of cadofactor.py

Thanks for any assistance which may be forthcoming.

Paul (this one)








Archive powered by MHonArc 2.6.19+.

Top of Page