Difficulty of SNFS polynomials
I have recently come across SNFS factorization, and I have yet to find an answer to the following questions: How is the SNFS difficulty calculated? Is there an equation for calculating it?

It's generally the size of the input, or the size of the original composite that generates the polynomial (for example, you might have a 25 digit factor already, but doing SNFS on the original number is faster than doing GNFS on the cofactor, so the SNFS difficulty doesn't match the composite size).
Say I'm trying to factor 2^901  1. That can be written 2x^6  1, with x equal to 2^150. That nice poly is what SNFS would use so even if a couple of factors are known and the cofactor is 200 digits, this SNFS job at ~270 digits would be easier than a GNFS of 200. 
SNFS requires two polynomials, a degree[TEX]d[/TEX] polynomial [TEX]f(x)[/TEX], and a linear polynomial, [TEX]g(x)=axb[/TEX], which share a common root modulo the number you are factoring. The difficulty is given by the size of [TEX]a^d f(b/a)[/TEX].
In the example above, [TEX]f(x)=2x^61[/TEX] and [TEX]g(x)=x2^{150}[/TEX]. [TEX]d=6[/TEX], [TEX]a=1[/TEX], and [TEX]b=2^{150}[/TEX]. So the difficulty is given by the size of [TEX]a^d f(b/a)=1^6 f(2^{150}/1) = 2*2^{900}1 = 2^{901}1[/TEX], the number being factored. Difficulty is usually expressed as the common log of the number, [TEX]\log_{2}(2^{901}1)\approx 901\ \log_{10}(2) = 271.2[/TEX]. 
[QUOTE=frmky;557110]SNFS requires two polynomials, a degree[TEX]d[/TEX] polynomial [TEX]f(x)[/TEX], and a linear polynomial, [TEX]g(x)=axb[/TEX], which share a common root modulo the number you are factoring. The difficulty is given by the size of [TEX]a^d f(b/a)[/TEX].[/QUOTE]Strictly speaking it does not require that one of the polynomials be linear. Any two polynomials which share a common root mod N will work.
A linear polynomial is almost always used (but not exclusively) because of the difficulty of finding good polynomials when neither are linear. 
[QUOTE=xilman;557113]Strictly speaking it does not require that one of the polynomials be linear. Any two polynomials which share a common root mod N will work.
A linear polynomial is almost always used (but not exclusively) because of the difficulty of finding good polynomials when neither are linear.[/QUOTE] :goodposting: 
Are there any good examples of snfs with nonlinear polynomials? As far as I know only gnfs has been done with nonlinear.

[QUOTE=henryzz;557161]Are there any good examples of snfs with nonlinear polynomials? As far as I know only gnfs has been done with nonlinear.[/QUOTE]
Good question. I will try to try to find out. Nonetheless, the general point remains true. 
All times are UTC. The time now is 03:06. 
Powered by vBulletin® Version 3.8.11
Copyright ©2000  2020, Jelsoft Enterprises Ltd.