Ok unbundle. Sorry for the noise. On May 17, 8:29 pm, Michel <[EMAIL PROTECTED]> wrote: > When I do > > sage: hg_sage.import_patch("libsingular.hg") > > I get > > cd "/home/vdbergh/sage-2.5/devel/sage" && hg status > cd "/home/vdbergh/sage-2.5/devel/sage" && hg import "/home/vdbergh/ > sage-2.5/libsingular.hg" > applying /home/vdbergh/sage-2.5/libsingular.hg > abort: no diffs found > > What does this mean. How to fix it? > > Michel > > On May 17, 7:51 pm, Martin Albrecht <[EMAIL PROTECTED]> > wrote: > > > Hi there, > > > I have a release candidate of my libSINGULAR code available. The HG patch is > > at > > > http://sage.math.washington.edu/home/malb/pkgs/libsingular.hg > > > and the required (!) updated SPKG is at: > > > http://sage.math.washington.edu/home/malb/pkgs/singular-3-0-2-2007051... > > > . This spkg also re-enables building of libfac and libcf which are required > > by > > the optional M2. > > > This patch does: > > * switch the default implementation for MPolynomials over QQ and GF(p) to > > libSINGULAR > > * MPolynomial_libsingular should provide everything provided by > > MPolynomial_polydict so far > > * print all MPolynomials with respect to their monomial ordering > > * add a couple of methods to aid Gröbner basis algorithms, stuff like > > monomial_lcm etc. > > > This patch misses: > > * much of the cool stuff in SINGULAR > > * e.g. block orderings > > * support for MPolynomials over GF(p^n) etc. > > * intense testing. > > > As a proof of concept I made a stand alone version of my F4 implementation > > (over GF(p)) available at: > > > http://sage.math.washington.edu/home/malb/f4.py > > > # old implementation > > sage: P1.<a,b,c,d,e,f,g,h,i,j> = > > MPolynomialRing_polydict_domain(GF(127),10,order=TermOrder('degrevlex')) > > sage: F1 = sage.rings.ideal.Katsura(P1,6) > > sage: time gb = f4(F1) > > CPU times: user 4.45 s, sys: 0.07 s, total: 4.51 s > > Wall time: 4.55 > > > # new implementation > > sage: P2.<a,b,c,d,e,f,g,h,i,j> = > > MPolynomialRing(GF(127),10,order=TermOrder('degrevlex')) > > sage: F2 = sage.rings.ideal.Katsura(P2,6) > > sage: time gb = f4(F2) > > CPU times: user 0.37 s, sys: 0.01 s, total: 0.38 s > > Wall time: 0.38 > > > Please note that this is still way slower than SINGULAR (0.10 seconds) > > mainly > > because so much time is wasted converting between the polynomial > > representation and the matrix representation. > > > Another fun example, Buchberger's original algorithm: > > > ------------------------------------------ > > # should these be defined globally? > > LM = lambda f: f.lm() > > LT = lambda f: f.lt() > > Spol = lambda f,g: LCM(LM(f),LM(g)) // LT(f) * f - LCM(LM(f),LM(g)) // > > LT(g) * > > g > > > def buchberger(F): > > G = set(F) > > > while True: > > Gprime = G.copy() > > for p in Gprime: > > for q in Gprime: > > if p != q: > > S = Spol(p,q).reduce(Gprime) > > if S != 0: > > G.add(S) > > if G == Gprime: > > break > > > return list(G) > > ------------------------------------------ > > > This is of course very very slow but it shows that we have machinery in > > place > > for this kind of commutative algebra and that this machinery looks pretty > > natural. > > > Martin > > > -- > > name: Martin Albrecht > > _pgp:http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x8EF0DC99 > > _www:http://www.informatik.uni-bremen.de/~malb > > _jab: [EMAIL PROTECTED]
--~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---