giac et sage?
Modérateur : xcasadmin
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
Oui j'ai mis le patch sur le serveur trac:
http://trac.sagemath.org/sage_trac/ticket/10940
j'espere que quelqu'un le validera car si un utilisateur n'a pas les droits pour modifier certains fichiers, les conversions avec les symboliques de sage (ainsi que les matrices) ne marcheront pas bien avec le fichier giac.py seul.
Fred
http://trac.sagemath.org/sage_trac/ticket/10940
j'espere que quelqu'un le validera car si un utilisateur n'a pas les droits pour modifier certains fichiers, les conversions avec les symboliques de sage (ainsi que les matrices) ne marcheront pas bien avec le fichier giac.py seul.
Fred
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
J'ai voulu tester le spkg du 17 mars sur une machine 64 bits.
factor un gros poly de 3 variables sur ZZ est 200 fois plus lent que le binaire debian. Il y a eu un changement?
Fred
factor un gros poly de 3 variables sur ZZ est 200 fois plus lent que le binaire debian. Il y a eu un changement?
Fred
Re: giac et sage?
J'ai fait des changements dans le code, mais ca n'aurait pas du affecter les binaires 32/64 bits Intel. C'est quoi ton exemple?
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
Non c'est le nouveau spkg (que j'ai compile) qui est bien plus lent (j'ai retrouve l'ancien) par exemple avec
f:=(x+y+z+1)^20+1
p:=normal(f*(f+1))
l'ancien code met 0.7 s le nouveau est tres long.
Fred
f:=(x+y+z+1)^20+1
p:=normal(f*(f+1))
l'ancien code met 0.7 s le nouveau est tres long.
Fred
Re: giac et sage?
Chez moi (32 bits) c'est normal, 0.4s, c'est quoi tes flags de compile? Moi j'ai -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS, en 64 bits il devrait rajouter tout seul -DSMARTPTR64
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
Le nouveau spkg (avec ce probleme corrige aujourd'hui) est maintenant tres rapide en 64 bits aussi:
sur:
model name : Intel(R) Core(TM)2 Duo CPU E4700 @ 2.60GHz
----------------------------------------------------------------------
| Sage Version 4.6.2, Release Date: 2011-02-25 |
| Type notebook() for the GUI, and license() for information. |
----------------------------------------------------------------------
sage: x,y,z=tuple(giac('x,y,z'))
sage: f=(x+y+z+1)^33+1
sage: time p=(f*(f+1)).normal()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 0.52 s
sage: p.nops()
52394
sage: time p.factor().nops()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 7.85 s
5
sur:
model name : Intel(R) Core(TM)2 Duo CPU E4700 @ 2.60GHz
----------------------------------------------------------------------
| Sage Version 4.6.2, Release Date: 2011-02-25 |
| Type notebook() for the GUI, and license() for information. |
----------------------------------------------------------------------
sage: x,y,z=tuple(giac('x,y,z'))
sage: f=(x+y+z+1)^33+1
sage: time p=(f*(f+1)).normal()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 0.52 s
sage: p.nops()
52394
sage: time p.factor().nops()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 7.85 s
5
Re: giac et sage?
super! tu as un exemple plus court ou on peut comparer avec sage built-in (je suppose que c'est singular dans ce cas).
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
sage: R.<x,y,z>=QQ[]
sage: f=(x+2*y+3*z-5)^22+1
sage: gf=giac(f)
sage: p=f*(f+1)
sage: gp=giac(p).normal()
sage: gp.nops()
16215
sage: time fp=p.factor()
CPU times: user 42.72 s, sys: 0.01 s, total: 42.73 s
Wall time: 42.73 s
sage: wt=walltime();t=giac.cputime();gfp=gp.factor();giac.cputime(t);walltime(wt)
3.0600000000000001
3.0662870407104492
NB: Je ne sais pas rester dans ZZ[x,y,z] sous sage pour le magma.Gcd ce qui desavantage giac par rapport a magma car magma peut garder de petites fractions comme coefficients alors que giac a de grands entiers. Et je n'arrive pas a augmenter la complexite sans faire crasher l'interface sage/magma (sur la machine ou je peux utiliser magma j'ai un vieux sage)
avec des poly sparses sur Q c'est moins net.
sage: R.<x,y,z>=QQ[]
sage: binomial(23,20)
1771
sage: l=[R.random_element(20,50),R.random_element(20,50)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
1539
sage: time l1=p1.factor()
CPU times: user 0.78 s, sys: 0.00 s, total: 0.78 s
Wall time: 0.79 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 1.27 s
sage: l=[R.random_element(20,300),R.random_element(20,300)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
10456
sage: time l1=p1.factor()
CPU times: user 4.74 s, sys: 0.01 s, total: 4.76 s
Wall time: 4.84 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 3.66 s
sage: l=[R.random_element(20,600),R.random_element(20,600)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
11971
sage: time l1=p1.factor()
CPU times: user 8.78 s, sys: 0.04 s, total: 8.82 s
Wall time: 8.88 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 4.98 s
sage: l=[R.random_element(20,900),R.random_element(20,900)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
12223
sage: time l1=p1.factor()
CPU times: user 9.76 s, sys: 0.01 s, total: 9.77 s
Wall time: 9.83 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 4.81 s
sage: l=[R.random_element(20,1200),R.random_element(20,1200)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
12298
sage: time l1=p1.factor()
CPU times: user 18.26 s, sys: 0.00 s, total: 18.26 s
Wall time: 18.36 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 4.61 s
sage: f=(x+2*y+3*z-5)^22+1
sage: gf=giac(f)
sage: p=f*(f+1)
sage: gp=giac(p).normal()
sage: gp.nops()
16215
sage: time fp=p.factor()
CPU times: user 42.72 s, sys: 0.01 s, total: 42.73 s
Wall time: 42.73 s
sage: wt=walltime();t=giac.cputime();gfp=gp.factor();giac.cputime(t);walltime(wt)
3.0600000000000001
3.0662870407104492
NB: Je ne sais pas rester dans ZZ[x,y,z] sous sage pour le magma.Gcd ce qui desavantage giac par rapport a magma car magma peut garder de petites fractions comme coefficients alors que giac a de grands entiers. Et je n'arrive pas a augmenter la complexite sans faire crasher l'interface sage/magma (sur la machine ou je peux utiliser magma j'ai un vieux sage)
avec des poly sparses sur Q c'est moins net.
sage: R.<x,y,z>=QQ[]
sage: binomial(23,20)
1771
sage: l=[R.random_element(20,50),R.random_element(20,50)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
1539
sage: time l1=p1.factor()
CPU times: user 0.78 s, sys: 0.00 s, total: 0.78 s
Wall time: 0.79 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 1.27 s
sage: l=[R.random_element(20,300),R.random_element(20,300)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
10456
sage: time l1=p1.factor()
CPU times: user 4.74 s, sys: 0.01 s, total: 4.76 s
Wall time: 4.84 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 3.66 s
sage: l=[R.random_element(20,600),R.random_element(20,600)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
11971
sage: time l1=p1.factor()
CPU times: user 8.78 s, sys: 0.04 s, total: 8.82 s
Wall time: 8.88 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 4.98 s
sage: l=[R.random_element(20,900),R.random_element(20,900)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
12223
sage: time l1=p1.factor()
CPU times: user 9.76 s, sys: 0.01 s, total: 9.77 s
Wall time: 9.83 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 4.81 s
sage: l=[R.random_element(20,1200),R.random_element(20,1200)]
sage: p1=l[0]*l[1]
sage: p2=giac(p1)
sage: p2.nops()
12298
sage: time l1=p1.factor()
CPU times: user 18.26 s, sys: 0.00 s, total: 18.26 s
Wall time: 18.36 s
sage: time l2=p2.factor()
CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s
Wall time: 4.61 s
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
sur intel core2 2.6Ghz
sage 4.6.2 compile depuis les sources et giac spkg ?
# exemple assez court pour sage rapport toujours >50
sage: R.<x,y>=QQ[]
sage: l=[R.random_element(15,30),R.random_element(10,50),R.random_element(30,50),R.random_element(20,50)]
sage: gl=giac(l)
sage: wt=walltime();t=giac.cputime();gf1=(gl[0]*gl[1]).normal();giac.cputime(t);walltime(wt)
-1.1368683772200001e-13
0.010113000869750977
sage: wt=walltime();t=cputime(); f1=l[0]*l[1] ; cputime(t);walltime(wt)
0.0
0.0010118484497070312
sage: giac(f1).nops;gf1.nops();
sage: wt=walltime();t=giac.cputime();gf2=(gl[3]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0099999999998800007
0.019656896591186523
sage: wt=walltime();t=cputime(); f2=l[3]*l[1] ; cputime(t);walltime(wt)
0.0040010000002439483
0.0025229454040527344
sage:
sage: wt=walltime();t=giac.cputime();gf12=gf1.gcd(gf2);giac.cputime(t);walltime(wt)
0.02
0.028865814208984375
sage: gf12.degree()-gl[1].degree()
0
sage: wt=walltime();t=cputime(); f12=gcd(f1,f2) ; cputime(t);walltime(wt)
1.5840990000001511
1.5869238376617432
sage: (f12/gf12).normal()
1
sage:
###################################
#rapport >700 (3 essais)
sage: R.<x,y,z>=QQ[]
sage: l=[R.random_element(7,30),R.random_element(10,15),R.random_element(10,30),R.random_element(10,30)]
sage: gl=giac(l)
sage: wt=walltime();t=giac.cputime();gf1=(gl[0]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0099999999999899995
0.014853954315185547
sage: wt=walltime();t=cputime(); f1=l[0]*l[1] ; cputime(t);walltime(wt)
0.0
0.00037312507629394531
sage: giac(f1).nops;gf1.nops();
sage: wt=walltime();t=giac.cputime();gf2=(gl[3]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0
0.010710954666137695
sage: wt=walltime();t=cputime(); f2=l[3]*l[1] ; cputime(t);walltime(wt)
0.0
0.00046610832214355469
sage: wt=walltime();t=giac.cputime();gf12=gf1.gcd(gf2);giac.cputime(t);walltime(wt)
0.02
0.025274991989135742
sage: wt=walltime();t=cputime(); f12=gcd(f1,f2) ; cputime(t);walltime(wt)
57.295579999999518
58.063894987106323
sage: (f12/gf12).normal()
-1
####################################
#Un exemple limite pour sage: rapport >40000
sage: A.<x,y,z,t>=QQ[]
sage: R.<x,y,z,t>=ZZ[]
sage: l=[A(R.random_element(7,10)),A(R.random_element(10,15)),A(R.random_element(10,20))]
sage: gl=giac(l)
sage: wt=walltime();t=giac.cputime();gf1=(gl[0]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0
0.0075490474700927734
sage: wt=walltime();t=cputime(); f1=l[0]*l[1] ; cputime(t);walltime(wt)
0.0
0.00021696090698242188
sage: giac(f1).nops;gf1.nops();
sage: wt=walltime();t=giac.cputime();gf2=(gl[2]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0
0.0078761577606201172
sage: wt=walltime();t=cputime(); f2=l[2]*l[1] ; cputime(t);walltime(wt)
0.0
0.00025606155395507812
sage: wt=walltime();t=giac.cputime();gf12=gf1.gcd(gf2);giac.cputime(t);walltime(wt)
0.02
0.038819789886474609
sage: wt=walltime();t=cputime(); f12=gcd(f1,f2) ; cputime(t);walltime(wt)
1635.1781920000003
1637.7164239883423
sage: (f12/gf12).normal()
-1
sage:
sage 4.6.2 compile depuis les sources et giac spkg ?
# exemple assez court pour sage rapport toujours >50
sage: R.<x,y>=QQ[]
sage: l=[R.random_element(15,30),R.random_element(10,50),R.random_element(30,50),R.random_element(20,50)]
sage: gl=giac(l)
sage: wt=walltime();t=giac.cputime();gf1=(gl[0]*gl[1]).normal();giac.cputime(t);walltime(wt)
-1.1368683772200001e-13
0.010113000869750977
sage: wt=walltime();t=cputime(); f1=l[0]*l[1] ; cputime(t);walltime(wt)
0.0
0.0010118484497070312
sage: giac(f1).nops;gf1.nops();
sage: wt=walltime();t=giac.cputime();gf2=(gl[3]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0099999999998800007
0.019656896591186523
sage: wt=walltime();t=cputime(); f2=l[3]*l[1] ; cputime(t);walltime(wt)
0.0040010000002439483
0.0025229454040527344
sage:
sage: wt=walltime();t=giac.cputime();gf12=gf1.gcd(gf2);giac.cputime(t);walltime(wt)
0.02
0.028865814208984375
sage: gf12.degree()-gl[1].degree()
0
sage: wt=walltime();t=cputime(); f12=gcd(f1,f2) ; cputime(t);walltime(wt)
1.5840990000001511
1.5869238376617432
sage: (f12/gf12).normal()
1
sage:
###################################
#rapport >700 (3 essais)
sage: R.<x,y,z>=QQ[]
sage: l=[R.random_element(7,30),R.random_element(10,15),R.random_element(10,30),R.random_element(10,30)]
sage: gl=giac(l)
sage: wt=walltime();t=giac.cputime();gf1=(gl[0]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0099999999999899995
0.014853954315185547
sage: wt=walltime();t=cputime(); f1=l[0]*l[1] ; cputime(t);walltime(wt)
0.0
0.00037312507629394531
sage: giac(f1).nops;gf1.nops();
sage: wt=walltime();t=giac.cputime();gf2=(gl[3]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0
0.010710954666137695
sage: wt=walltime();t=cputime(); f2=l[3]*l[1] ; cputime(t);walltime(wt)
0.0
0.00046610832214355469
sage: wt=walltime();t=giac.cputime();gf12=gf1.gcd(gf2);giac.cputime(t);walltime(wt)
0.02
0.025274991989135742
sage: wt=walltime();t=cputime(); f12=gcd(f1,f2) ; cputime(t);walltime(wt)
57.295579999999518
58.063894987106323
sage: (f12/gf12).normal()
-1
####################################
#Un exemple limite pour sage: rapport >40000
sage: A.<x,y,z,t>=QQ[]
sage: R.<x,y,z,t>=ZZ[]
sage: l=[A(R.random_element(7,10)),A(R.random_element(10,15)),A(R.random_element(10,20))]
sage: gl=giac(l)
sage: wt=walltime();t=giac.cputime();gf1=(gl[0]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0
0.0075490474700927734
sage: wt=walltime();t=cputime(); f1=l[0]*l[1] ; cputime(t);walltime(wt)
0.0
0.00021696090698242188
sage: giac(f1).nops;gf1.nops();
sage: wt=walltime();t=giac.cputime();gf2=(gl[2]*gl[1]).normal();giac.cputime(t);walltime(wt)
0.0
0.0078761577606201172
sage: wt=walltime();t=cputime(); f2=l[2]*l[1] ; cputime(t);walltime(wt)
0.0
0.00025606155395507812
sage: wt=walltime();t=giac.cputime();gf12=gf1.gcd(gf2);giac.cputime(t);walltime(wt)
0.02
0.038819789886474609
sage: wt=walltime();t=cputime(); f12=gcd(f1,f2) ; cputime(t);walltime(wt)
1635.1781920000003
1637.7164239883423
sage: (f12/gf12).normal()
-1
sage:
Re: giac et sage?
Tu es patient!
Tu penses refaire un post sur sage-devel?
a+
Tu penses refaire un post sur sage-devel?
a+
Re: giac et sage?
Bonjour,
la compilation du spkg plante sur ubuntu 10-10 64:
bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -I/home/moi/sage/local/include -I/home/moi/sage/local/include -MT gl2ps.lo -MD -MP -MF .deps/gl2ps.Tpo -c -o gl2ps.lo gl2ps.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -I/home/moi/sage/local/include -I/home/moi/sage/local/include -MT gl2ps.lo -MD -MP -MF .deps/gl2ps.Tpo -c gl2ps.c -fPIC -DPIC -o .libs/gl2ps.o
In file included from gl2ps.c:36:
gl2ps.h:66: fatal error: GL/gl.h: Aucun fichier ou dossier de ce type
compilation terminated.
make[1]: *** [gl2ps.lo] Erreur 1
make[1]: quittant le répertoire « /home/moi/sage/spkg/build/giac-0_9_1/src/src »
make: *** [install-recursive] Erreur 1
pouratnt j'ai bien un gl2ps d'installé...?
la compilation du spkg plante sur ubuntu 10-10 64:
bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -I/home/moi/sage/local/include -I/home/moi/sage/local/include -MT gl2ps.lo -MD -MP -MF .deps/gl2ps.Tpo -c -o gl2ps.lo gl2ps.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -I/home/moi/sage/local/include -I/home/moi/sage/local/include -MT gl2ps.lo -MD -MP -MF .deps/gl2ps.Tpo -c gl2ps.c -fPIC -DPIC -o .libs/gl2ps.o
In file included from gl2ps.c:36:
gl2ps.h:66: fatal error: GL/gl.h: Aucun fichier ou dossier de ce type
compilation terminated.
make[1]: *** [gl2ps.lo] Erreur 1
make[1]: quittant le répertoire « /home/moi/sage/spkg/build/giac-0_9_1/src/src »
make: *** [install-recursive] Erreur 1
pouratnt j'ai bien un gl2ps d'installé...?
Re: giac et sage?
Il manque les headers d'open GL, ca doit etre dans xlibmesa-gl-dev je dirais,
Re: giac et sage?
Merci ! La compil du spkg a fonctionné.
J'ai ensuite installé le patch dans devel et fait
patch -p0 -u <sagegiac.diff
puis
sage -b
mais en lançant sage, voici que tout tourne mal...
J'ai ensuite installé le patch dans devel et fait
patch -p0 -u <sagegiac.diff
puis
sage -b
mais en lançant sage, voici que tout tourne mal...
Code : Tout sélectionner
----------------------------------------------------------------------
| Sage Version 4.6.2, Release Date: 2011-02-25 |
| Type notebook() for the GUI, and license() for information. |
----------------------------------------------------------------------
ERROR: An unexpected error occurred while tokenizing input
The following traceback may be corrupted or invalid
The error message is: ('EOF in multi-line statement', (80, 0))
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
/home/moi/sage/local/lib/python2.6/site-packages/IPython/ipmaker.pyc in force_import(modname)
64 reload(sys.modules[modname])
65 else:
---> 66 __import__(modname)
67
68
/home/moi/sage/local/bin/ipy_profile_sage.py in <module>()
5 preparser(True)
6
----> 7 import sage.all_cmdline
8 sage.all_cmdline._init_cmdline(globals())
9
/home/moi/sage/local/lib/python2.6/site-packages/sage/all_cmdline.py in <module>()
12 try:
13
---> 14 from sage.all import *
15 from sage.calculus.predefined import x
16 preparser(on=True)
/home/moi/sage/local/lib/python2.6/site-packages/sage/all.py in <module>()
62 get_sigs()
63
---> 64 from sage.misc.all import * # takes a while
65
66 from sage.misc.sh import sh
/home/moi/sage/local/lib/python2.6/site-packages/sage/misc/all.py in <module>()
76 from func_persist import func_persist
77
---> 78 from functional import (additive_order,
79 sqrt as numerical_sqrt,
80 arg,
/home/moi/sage/local/lib/python2.6/site-packages/sage/misc/functional.py in <module>()
36
37
---> 38 from sage.rings.complex_double import CDF
39 from sage.rings.real_double import RDF, RealDoubleElement
40
/home/moi/sage/local/bin/complex_double.pyx in init sage.rings.complex_double (sage/rings/complex_double.c:16539)()
/home/moi/sage/local/lib/python2.6/site-packages/sage/rings/complex_field.pyc in ComplexField(prec, names)
87 if not C is None:
88 return C
---> 89 C = ComplexField_class(prec)
90 cache[prec] = weakref.ref(C)
91 return C
/home/moi/sage/local/lib/python2.6/site-packages/sage/rings/complex_field.pyc in __init__(self, prec)
187 ParentWithGens.__init__(self, self._real_field(), ('I',), False, category = Fields())
188 # self._populate_coercion_lists_()
--> 189 self._populate_coercion_lists_(coerce_list=[complex_number.RRtoCC(self._real_field(), self)])
190
191 def __reduce__(self):
/home/moi/sage/local/lib/python2.6/site-packages/sage/rings/complex_number.so in sage.rings.complex_number.RRtoCC.__init__ (sage/rings/complex_number.c:14791)()
/home/moi/sage/local/lib/python2.6/site-packages/sage/categories/map.so in sage.categories.map.Map.__init__ (sage/categories/map.c:2139)()
/home/moi/sage/local/lib/python2.6/site-packages/sage/categories/homset.pyc in Hom(X, Y, category)
150 # For the moment, this is the category, for compatibility with the current implementations
151 # of Homset in rings, schemes, ...
--> 152 H = category.hom_category().parent_class(X, Y, category = category)
153
154 ##_cache[key] = weakref.ref(H)
/home/moi/sage/local/lib/python2.6/site-packages/sage/categories/rings.pyc in __new__(cls, X, Y, category)
115 <class 'sage.rings.number_field.morphism.CyclotomicFieldHomset_with_category'>
116 """
--> 117 from sage.rings.homset import RingHomset
118 return RingHomset(X, Y, category = category)
119
/home/moi/sage/local/lib/python2.6/site-packages/sage/rings/homset.pyc in <module>()
15
16 import morphism
---> 17 import quotient_ring
18
19 def is_RingHomset(H):
/home/moi/sage/local/lib/python2.6/site-packages/sage/rings/quotient_ring.pyc in <module>()
30 import commutative_ring
31 import ideal
---> 32 import sage.rings.polynomial.multi_polynomial_ideal
33 import sage.structure.parent_gens
34 from sage.interfaces.all import singular as singular_default, is_SingularElement
/home/moi/sage/local/lib/python2.6/site-packages/sage/rings/polynomial/multi_polynomial_ideal.py in <module>()
227 from __future__ import with_statement
228
--> 229 from sage.interfaces.all import (singular as singular_default,
230 macaulay2 as macaulay2_default,
231 magma as magma_default)
/home/moi/sage/local/lib/python2.6/site-packages/sage/interfaces/all.py in <module>()
10 from genus2reduction import genus2reduction, Genus2reduction
11 from gfan import gfan, Gfan
---> 12 from giac import giac, giac_console, Giac
13 from gp import gp, gp_console, gp_version, is_GpElement, Gp
14 from gnuplot import gnuplot, gnuplot_console
ImportError: No module named giac
Error importing ipy_profile_sage - perhaps you should run %upgrade?
WARNING: Loading of ipy_profile_sage failed.
Re: giac et sage?
ce n'est plus de mon domaine de competence, j'espere que Frederic pourra repondre...
-
- Messages : 1139
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: giac et sage?
Bonjour,
(J'ai teste avec sage compile depuis les sources)
Il a l'air de ne pas trouver giac.py
apres le patch, y a t'il bien eu creation d'un fichier giac.py
(identique a celui ci: http://people.math.jussieu.fr/~han/xcas/giac.py)
dans:
devel/sage/sage/interfaces/
apres le
sage -b
avez vous bien un giac.py et giac.pyc
dans:
local/lib/python/site-packages/sage/interfaces
qui chez moi est aussi
devel/sage/build/sage/interfaces
le sage -b a t'il compile des choses sans raler ou peut etre manquait il une dependance et il n'a pas termine? (vous pouvez le refaire)
NB: normalement
patch -p0 -Ru <sagegiac.diff
puis sage -b permet de revenir en arriere
Frederic
(J'ai teste avec sage compile depuis les sources)
Il a l'air de ne pas trouver giac.py
apres le patch, y a t'il bien eu creation d'un fichier giac.py
(identique a celui ci: http://people.math.jussieu.fr/~han/xcas/giac.py)
dans:
devel/sage/sage/interfaces/
apres le
sage -b
avez vous bien un giac.py et giac.pyc
dans:
local/lib/python/site-packages/sage/interfaces
qui chez moi est aussi
devel/sage/build/sage/interfaces
le sage -b a t'il compile des choses sans raler ou peut etre manquait il une dependance et il n'a pas termine? (vous pouvez le refaire)
NB: normalement
patch -p0 -Ru <sagegiac.diff
puis sage -b permet de revenir en arriere
Frederic