Neill Clift on Sat, 31 Dec 2016 17:37:26 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: Getting a very large polynomial into pari/gp |
On 12/31/2016 7:44 AM, Bill Allombert wrote: > Are your polynomials univariate ? > We have dedicated functions for handling univariate polynomials over > finite fields. Hi, Yes the polynomials are univariate. Some 15 years ago I wrote some code to try and find the linear roots of this polynomial: f(x) = x^16777213 - 24 * x^16777153 - 120 * x^3 - 198 * x^2 - 264 * x + c For various constants c over the field F_p with p = 2^64-59 The code calculates g(x) = x^p-x mod f(x) by repeated squaring using FFT and 5 primes. The code was way to slow back then but now my home machine can do that calculation is a short time. I am using the classical Euclidean gcd of g(x) and f(x) and that looks like it will take quite a few days to complete. I have had Pari/gp working on it over night but it has not finished yet. I did this: (18:18) gp > a = Mod(Pol(read("a.gp")),2^64-59) %1 = Mod(1, 18446744073709551557)*x^16777213 + Mod(18446744073709551533, 18446744073709551557)*x^16777153 + Mod(18446744073709551437, 18446744073709551557)*x^3 + Mod(18446744073709551359, 18446744073709551557)*x^2 + Mod(18446744073709551293, 18446744073709551557)*x + Mod(12702625443273995572, 18446744073709551557) (18:21) gp > b = Mod(Pol(read("b.gp")),2^64-59) %2 = Mod(2635936562008398736, 18446744073709551557)*x^16777212 + [+++] (18:21) gp > gcd(a,b) At some point I need to understand the Half GCD and maybe use that but I assumed Pari would use that. I'll try a different method if there is one. Thanks. Neill.