Le forum de XCAS

Xcas: un logiciel libre de calcul formel
Nous sommes actuellement le Lun Déc 11, 2017 7:10 pm

Heures au format UTC




Publier un nouveau sujet Répondre au sujet  [ 4 messages ] 
Auteur Message
 Sujet du message: 1.2.3 testing
MessagePublié: Mer Déc 14, 2016 10:00 am 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4153
Je viens de mettre un package debian 64 bits de la toute premiere version de la 1.2.3 dans testing. J'y ai fait quelques optimisations qui necessitent d'etre un peu testees avant de remplacer la 1.2.2 stable (mise a jour en 1.2.2-105 pour debian et windows).


Haut
 Profil  
 
 Sujet du message: Re: 1.2.3 testing
MessagePublié: Ven Déc 23, 2016 4:37 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4153
Mise a jour 1.2.3-3, toujours des optimisations.
Par exemple (tire de http://nemocas.org/benchmarks.html) le polynome minimal ou caracteristique d'une matrice a coefficients polynomiaux:
Code:
n1:=10; n:=2*n1; m:=matrix(n1,n1,(j,k)->ranv(3,-21)*[x^2,x,1]); M:=blockmatrix(2,2,[m,0*m,0*m,m]):;
for j from 1 to 10 do p:=idn(n); q:=p; r:=rand(n); d:=ranv(1,-4)[0]; p[r]:=seq(d,n); p[r,r]:=1; q[r]:=seq(-d,n); q[r,r]:=1; M:=normal(q*M*p); od:;
time(p:=pmin(M)); size(p); horner(horner(p,y),M,y);
time(b:=pcar(M,y,lagrange)); normal(b-horner(p,y)^2);


Haut
 Profil  
 
 Sujet du message: Re: 1.2.3 testing
MessagePublié: Ven Déc 23, 2016 4:58 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4153
La liste complete des benchmarks
Fateman
n:=30; f:=1+x+y+z+t; f:=symb2poly(f,[x,y,z,t]); p:=f^n:; time(q:=p*(p+1)); size(q);

Pearce
n:=12; f := symb2poly((1 + x + y + 2*z^2 + 3*t^3 + 3*u^5)^n,[x,y,z,t,u]):; g := symb2poly((1 + u + t + 2*z^2 + 3*y^3 + 3*x^5)^n,[x,y,z,t,u]):; size(f); time(p:=f*g); size(p);

Bernoulli polynomials
n:=1000;series("t"); u := t + O(t^n); time(r:=(u*exp(symb2poly(x,[x])*u))*inv(exp(u)-1));

Polynomials over number fields:
x:=rootof(cyclotomic(20));f:=(3x^7 + x^4 - 3x + 1)*y^3 + (2x^6-x^5+4x^4-x^3+x^2-1)*y +(-3x^7+2x^6-x^5+3x^3-2x^2+x);p:=symb2poly(f,y,[]); time(s:=p^300);

Determinant over a field:
n:=80;a:=rootof(x^3+3x+1); m:=ranm(n,n,a):; time(d:=det(m)); evalf(d);det(evalf(m,20));

Determinant of a matrix over a polynomial ring
n:=40; m:=matrix(n,n,(j,k)->randpoly(x,3,-21)-x^3):; time(d:=det(m));

Linear solving over a polynomial ring
n:=20; m:=matrix(n,n+1,(j,k)->y^2*ranv(3,-21)*[x^2,x,1]+y*ranv(3,-21)*[x^2,x,1]+ranv(3,-21)*[x^2,x,1]):; time(t:=rref(m,keep_pivot)); normal((m[0..n-1,0..n-1]*t[0..n-1,n..n])-t[0..n-1,0..n-1]*m[0..n-1,n..n]);

Determinant over a commutative ring:
p := 2003*1009; n:=80; f(j,k):={ k:=rand(6); return randpoly(x,k) % p; }; m:=matrix(n,n,f); det(m);

Resultant:
GF(7,11,x); p:=factor(j^3+3*x*j+1); rootof(p):=y;f := (3y^2 + y + x)*z^2 + ((x + 2)*y^2 + x + 1)*z + 4x*y + 3;g := (7y^2 - y + 2x + 7)*z^2 + (3y^2 + 4x + 1)*z + (2x + 1)*y + 1;F:=symb2poly(f,[[z]]);G:=symb2poly(g,[[z]]);n:=12; Fn:=F^n:; GFn:=(G+Fn)^n:; resultant(Fn,GFn);

Minimal polynomial of a matrix over the integers
n1:=80; n:=2*n1; m:=ranm(n1,n1,-21):; M:=blockmatrix(2,2,[m,0*m,0*m,m]):; for j from 1 to 10 do p:=idn(n); q:=p; r:=rand(n); d:=ranv(1,-4)[0]; p[r]:=seq(d,n); p[r,r]:=1; q[r]:=seq(-d,n); q[r,r]:=1; M:=q*M*p; od:; M:; time(a:=pmin(M)); time(b:=pcar(m)); a-b;

Characteristic polynomial of a matrix over the integers
n:=80; m:=ranm(n,n,-21):; time(charpoly(m));

Minpoly over a finite field
n1:=40; n:=2*n1; GF(103,2); m:=ranm(n1,n1,g):; M:=blockmatrix(2,2,[m,0*m,0*m,m]):; for j from 1 to 10 do p:=idn(n); q:=p; r:=rand(n); d:=ranv(1,-4)[0]; p[r]:=seq(d,n); p[r,r]:=1; q[r]:=seq(-d,n); q[r,r]:=1; M:=q*M*p; od:; M:; time(a:=pmin(M)); time(b:=pcar(m)); a; a-b;

Minpoly over a gcd domain
n1:=10; n:=2*n1; m:=matrix(n1,n1,(j,k)->ranv(3,-21)*[x^2,x,1]); M:=blockmatrix(2,2,[m,0*m,0*m,m]):; for j from 1 to 10 do p:=idn(n); q:=p; r:=rand(n); d:=ranv(1,-4)[0]; p[r]:=seq(d,n); p[r,r]:=1; q[r]:=seq(-d,n); q[r,r]:=1; M:=normal(q*M*p); od:; time(p:=pmin(M)); size(p); horner(horner(p,y),M,y); time(b:=pcar(M,y,lagrange)); normal(b-horner(p,y)^2);


Haut
 Profil  
 
 Sujet du message: Re: 1.2.3 testing
MessagePublié: Sam Déc 31, 2016 9:45 pm 
Hors-ligne

Inscrit le: Mar Déc 20, 2005 4:02 pm
Messages: 4153
Mise a jour (la derniere de l'annee!) 1.2.3-7 avec encore quelques accelerations.


Haut
 Profil  
 
Afficher les messages publiés depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 4 messages ] 

Heures au format UTC


Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Rechercher pour:
Sauter vers:  
Powered by phpBB® Forum Software © phpBB Group
Traduction réalisée par Maël Soucaze © 2009 phpBB.fr