| Karim BELABAS on Fri, 29 Mar 2002 19:56:37 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: bug in bnfnarrow? |
On 28 Mar 2002, John Jones wrote:
> I have tried this in several versions of gp 2 and they all produce the
> same error.
[...]
> ? 1 - 9*x + 14*x^2 + 28*x^3 - 7*x^4 - 12*x^5 + x^6 + x^7
> %1 = x^7 + x^6 - 12*x^5 - 7*x^4 + 28*x^3 + 14*x^2 - 9*x + 1
> ? bnfnarrow(bnfinit(%))
> *** non invertible matrix in gauss
An embarassing typo. It's fixed in all CVS branches now. Here's a minimal
patch (should apply to all 2.2 and 2.1 versions, I think). The right fix
is to dump the current bnfnarrow and have it call bnrinit. Unfortunately the
latter is currently much slower (for a number of bad reasons). I shall add
this explicitly to the TODO list.
RCS file: /home/megrez/cvsroot/pari/src/basemath/buch3.c,v
diff -c -r1.15.2.2 -r1.15.2.3
*** src/basemath/buch3.c 2001/11/20 14:05:47 1.15.2.2
--- src/basemath/buch3.c 2002/03/29 18:51:10 1.15.2.3
***************
*** 54,60 ****
for (i=1; i<=rankmax; i++)
vecsign[i] = (gsigne(gsubst(alpha,va,(GEN)rac[i])) > 0)? (long)_0
: (long)_1;
! v1 = concatsp(v, vecsign);
if (rank(v1) == rankinit) avma=av1;
else
{
--- 54,60 ----
for (i=1; i<=rankmax; i++)
vecsign[i] = (gsigne(gsubst(alpha,va,(GEN)rac[i])) > 0)? (long)_0
: (long)_1;
! v1 = concat(v, vecsign);
if (rank(v1) == rankinit) avma=av1;
else
{
Karim.
--
Karim Belabas Tel: (+33) (0)1 69 15 57 48
Dép. de Mathematiques, Bat. 425 Fax: (+33) (0)1 69 15 60 19
Université Paris-Sud Email: Karim.Belabas@math.u-psud.fr
F-91405 Orsay (France) http://www.math.u-psud.fr/~belabas
--
PARI/GP Home Page: http://www.parigp-home.de/