>  * libSingular is significant more effort to build and the interface
> isn't exactly clean

That can and is being addressed.


>  * CoCoALib is beautifully designed and tight. modern C++ code
> without going nuts with templates. I have build it using g++, MSVC and
> the Sun compiler.
>  * license: CoCoALib is GPL V3 while Singular is GPL V2 or V3.
>  * CoCoALib is exception save code, no such thing in Singular
>  * CoCoALib did not leak memory at all while I was around and I
> believe this is still the case. Between Martin and I we have found and
> fixed about half a dozen memory leaks in Singular over the last year
> and a half.

(a) at least half of those bugs were bugs in my interface
(b) since we fixed quite a few, I'm not sure that there are many outstanding.

>  * CoCoALib is significantly smaller than libSingular, i.e. oMalloc by
> itself is half as large as all of CoCoALib
>  * CoCoALib's ideal and module operations are faster than Singulars

Can you back that one up with hard facts?

>  * GBasis computations for DegRevLex and F_p are about comparable with
> a slight advantage for slimgb, but switching to the rational and Lex
> makes CoCoALib look *much* better

Can you back that one up with hard facts?

>  * libSingular's memory management is better, i.e. when doing large
> non-GB computations using CoCoALib the memory manager eats more and
> more memory, but does not give it back to the system once the
> computation is over. The issue is side stepped during GB computations
> because each GB computation has its own memory manager that gets
> destroyed once the GB computation is over
>  * regardless which monomial ordering you choose in CoCoALib there is
> no speed penalty while Singular is optimized for DegRevLex.

I'm not sure what that means? GBs are faster/slower depending on the term 
ordering.

>  * CoCoALib's non-commutative side is way underdeveloped compared to
> Singular, i.e. even for Weyl algebras (the only non-commutative ring
> implemented in CoCoALib) the code by Victor Levandovsky in Singular
> blows it away.
>  * my main issue with Singular: arithmetic and GBasis computations for
> F_p are limited to wordsize modulus. This is quite annoying and an
> issue with Sage since we fall back on some generic implementation.

True, that's annoying. So CoCoALib has F_p for |p| > 2^64? How about p^n?

>  * Singular can do Gbases over rings, CoCoALib still cannot do it
> despite me telling the CoCoALib team since *2006* that this would be
> the quickest way to get them into Sage. Now that Singular can do it
> that advantage has gone.

Singular *will* be able to do this starting from 3.1.

>  * CoCoALib is significantly more open, i.e. development snapshots are
> regularly posted. When I worked for the ApCoCoALib group I actually
> posted hg repos of the complete CoCoALib history converted from CVS.
> They no longer do that, I still do in theory have access to CoCoA[Lib]
> s CVS [probably not any more after his email :)], but I am not
> touching that code for obvious reasons.  The CVS of Sinuglar not
> available to the public, in the last 14 months or so there has been
> one snapshot of 3.1 available to the public.

Well, I have access to the Singular CVS and could post an hg repository ... 
just kidding.

> I could rave on, but you get the idea. Given the licensing situation
> and the above facts using [lib]Singular is the right call even though
> the use of libSingular on Solaris, OSX 64 bit, Cygwin and so on has be
> a constant source of pain for me. But it looks like we have gotten
> over the hump there, so what is in the past is in the past. Now there
> is the obvious large problem with libSingular on Fedora 9 and 10, but
> we will get that fixed, too.

Maybe someone (e.g. me) should spend some time making libSingular truely 
accessible. Right now, it is a bit of black art (you have to know the tricks 
or read the Sage sources).

Btw. gfan also supports libSingular IIRC.

Cheers,
Martin

-- 
name: Martin Albrecht
_pgp: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x8EF0DC99
_otr: 47F43D1A 5D68C36F 468BAEBA 640E8856 D7951CCF
_www: http://www.informatik.uni-bremen.de/~malb
_jab: martinralbre...@jabber.ccc.de


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to