0.9.8
Modérateur : xcasadmin
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
0.9.8
Je n'ai teste cela qu'avec une 0.9.8 compilee sous freebsd mais:
pari()
pari_factor(6) donne bien 2 facteurs mais
n:=nextprime(11**11)*nextprime(8**13)
pari_factor(n) n'en donne qu'un.
Fred
pari()
pari_factor(6) donne bien 2 facteurs mais
n:=nextprime(11**11)*nextprime(8**13)
pari_factor(n) n'en donne qu'un.
Fred
Re: 0.9.8
bizarre, chez moi il en renvoie bien 2.
Testé sur mac et sur linux 64.
[Edit]
Testé aussi ok sur linux 32. La version de pari est la 2.5.
Testé sur mac et sur linux 64.
[Edit]
Testé aussi ok sur linux 32. La version de pari est la 2.5.
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: 0.9.8
Ca doit etre ca la difference car la c'est une compil amd64 avec pari 2.3.5 (qui est la version actuelle du port freebsd)
a+
a+
Re: 0.9.8
alors il faut regarder si ce n'est pas une difference de conversion d'entiers entre pari et giac.
Regarde ligne 112 de pari.cc, et change le code execute pour voir. Ou il faudrait comparer avec une version plus ancienne de giac qui marchait avec freebsd.
Regarde ligne 112 de pari.cc, et change le code execute pour voir. Ou il faudrait comparer avec une version plus ancienne de giac qui marchait avec freebsd.
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: 0.9.8
oui c'est surement cela car ils viennent de retrogader la version de pari de 2.5 vers 2.3.
mais pour l'instant je n'ai pas vu de difference je n'ai peut etre pas tout bien recompile.
Fred
mais pour l'instant je n'ai pas vu de difference je n'ai peut etre pas tout bien recompile.
Fred
Re: 0.9.8
Je viens de corriger un bug dans les routines de conversion d'entiers pari->giac, qui affecte les versions 64 bits, peut-etre que c'est lie, voici le nouvelle version
Code : Tout sélectionner
static gen t_INT2gen(const GEN & G){
long Gs=signe(G);
if (!Gs)
return 0;
//setsigne(G,1);
long Gpl=lgefint(G)-2;
// use one of the following code depending how pari codes long integers
// Code 1
#if !defined(__APPLE__) && !defined(WIN32)
ref_mpz_t * mz = new ref_mpz_t;
mpz_realloc2(mz->z,32*Gpl);
mpz_import(mz->z,Gpl,-1,sizeof(GEN),0,0,&G[2]);
//setsigne(G,Gs);
if (Gs>0)
return mz;
else
return -gen(mz);
#else
// Code 2
--Gpl;
long * Gp=int_MSW(G);
gen res;
for (int i=0;i<=Gpl;++i){
#ifdef INT128
res=res*pow2sizeof_long+int128_t((ulonglong)*Gp);
#else
res=res*pow2sizeof_long+longlong(unsigned(*Gp));
#endif
Gp=int_precW(Gp);
}
return Gs<0?-res:res;
#endif
}
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: 0.9.8
Salut,
ca n'a pas l'air d'ameliorer. J'ai essaye avec le source du 1/8. Est ce que la correction est aussi prise en compte avec PARI23?
au fait, est ce que tu as change la version de cocoa qu'il faut utiliser? ca n'avait pas l'air de compiler avec celle que j'avais.
Fred
ca n'a pas l'air d'ameliorer. J'ai essaye avec le source du 1/8. Est ce que la correction est aussi prise en compte avec PARI23?
au fait, est ce que tu as change la version de cocoa qu'il faut utiliser? ca n'avait pas l'air de compiler avec celle que j'avais.
Fred
Re: 0.9.8
non, je n'ai rien rajoute pour prendre en compte pari 2.3.
Pour cocoa, en effet, je suis passe a la version 0.9950, tu peux changer ca en commentant la ligne #define COCOA9950 au debut de cocoa.cc.
Pour cocoa, en effet, je suis passe a la version 0.9950, tu peux changer ca en commentant la ligne #define COCOA9950 au debut de cocoa.cc.