[sage-devel] Clifford + Sage

2009-01-17 Thread luis


Hello,

I would like to make a relatively simple (but cumbersome) symbolic
calculation in exterior algebra (more precisely in \Lambda^{k}(R^
{n})).
One possibility would be to use the Clifford algebra Cl(R^{n}, Q=0).
Do you know if there is something in "Sage" appropriate to make this
kind of calculation?

Thanks in advance for any hint.

Cordially,

Luis

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread David Joyner

Sage contains sympy and there is this:
http://wiki.sympy.org/wiki/Geometric_Algebra_Module
If that does what you want, you might want to ask about it on
the sympy list: http://groups.google.com/group/sympy?hl=en
since I not sure if the author subscribes to this list.
Sage contains Maxima and there is this:
http://maxima.sourceforge.net/docs/manual/en/maxima_29.html

Hope one of these helps.

On Sat, Jan 17, 2009 at 6:45 AM, luis  wrote:
>
>
> Hello,
>
> I would like to make a relatively simple (but cumbersome) symbolic
> calculation in exterior algebra (more precisely in \Lambda^{k}(R^
> {n})).
> One possibility would be to use the Clifford algebra Cl(R^{n}, Q=0).
> Do you know if there is something in "Sage" appropriate to make this
> kind of calculation?
>
> Thanks in advance for any hint.
>
> Cordially,
>
> Luis
>
> >
>

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Plan for shifting Pchpack functionality into Sage

2009-01-17 Thread mhampton

Currently Phcpack is an optional package for sage.  Its main purpose
is to numerically compute isolated solutions of polynomial systems,
although it has some other functionality as well (e.g. computing mixed
volumes, witness sets for higher-dimensional solution components).

I have wanted Phcpack to be standard in Sage for a while, but have
been blocked by concerns about portability.  Phcpack is written in
Ada.  Recently Jan Verschelde (the author of Phcpack) and his students
have added some C and Python interfaces, which help integration
efforts but don't solve the portability issue.

I discussed this situation recently with Jan (who I am cc'ing on this
email in case he has clarifications or corrections) and he seems
willing to work with me on porting Phcpack into Sage as a native
program.  Although Phcpack is pretty fast, there are closed source
programs that seem quite a bit faster at the moment (although its not
a simple comparison, they different strengths and weaknesses).  A Sage
implementation could be quite a bit faster by taking advantage of
Sage's linear algebra and other components.

My plan for doing this is to move in the functionality piece by piece
starting in late Febuary (earlier if I can magically find extra
time).  The first piece will be a parameter-homotopy path tracker,
since I understand that part the best at the moment and its relatively
straightforward.  This would take as input a polynomial start system
and a list of solutions to the start system, and a target system.  The
algorithm would deform the start system and its solutions into the
target system and its corresponding solutions.  There is quite a bit
of literature on how to do this, and if Jan helps me understand how
Phcpack does this I think it won't be hard to get something running.
Optimizing it will probably take longer but I know there are some Sage
developers out there who might find it fun to help.

After the parameter homotopy, we would need:

1) A way to compute mixed volumes and the cells of a mixed
subdivision.  Jan ported a C implementation in Ada to do this, so he
thinks it might be fairly easy for him to do this.

2) Create ways to generate start systems and their solutions.  The
main way is to use the mixed subdivision from (1), but there are some
alternatives.

3) Routines for "endgames" - issues that arise at the end of
homotopies, where solutions might be degenerate in various senses.

4) Techniques for higher-dimensional solution components.

I imagine that Jan and I and our students will do most of this, but we
will need some help and I am soliciting it in advance.  One thing I
need is a deeper knowledge of Cython, which will be crucial in getting
our implementation competitive with closed source alternatives.

-Marshall Hampton
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Bill Page

On Sat, Jan 17, 2009 at 6:45 AM, luis wrote:
>
>
> Hello,
>
> I would like to make a relatively simple (but cumbersome)
> symbolic calculation in exterior algebra (more precisely in
> \Lambda^{k}(R^{n})).
> One possibility would be to use the Clifford algebra
> Cl(R^{n}, Q=0).
> Do you know if there is something in "Sage" appropriate to
> make this kind of calculation?
>

Clifford algebra is available in the fricas-1.0.3.p0 add-on to Sage. E.g.

sage: LambdaK=axiom('CliffordAlgebra(4,Fraction Polynomial
Integer,quadraticForm diagonalMatrix [0,0,0,0])')
sage: e1=axiom('x*e(1)$%s'%(LambdaK.name()))
sage: e2=axiom('x*e(2)$%s'%(LambdaK.name()))
sage: e3=axiom('x*e(3)$%s'%(LambdaK.name()))
sage: e4=axiom('x*e(4)$%s'%(LambdaK.name()))
sage: a=3*e2*e1 + 4*e1
sage: b=4*e2*e1 + 3*e2
sage: a*b

 2
  12x e e
   1 2

Is that of any help?

Regards,
Bill Page.

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread mhampton

I would like a vote on including the lrs optional package as a
standard package in Sage.

lrs stands for linear reverse search, an algorithm for computing
convex hulls which is quite different from that of cddlib (which is
already in Sage).  You can read about the algorithm and initial
implementation here:

http://sage.math.washington.edu/home/mhampton/Avis_lrs_99.pdf

One advantage of lrs is that the memory it uses is linear in the size
of the problem (roughly speaking, see the reference for more precise
statements).  It can also be much faster than cddlib for certain
families of polytopes.  Because of this, polymake includes cddlib and
lrs as well as its own third convex hull algorithm (beneath-and-
beyond, which someone should implement in Sage one day).

lrs can also compute triangulations and volumes of polytopes.  We
currently don't have anything else that can do those things, as far as
I am aware.  TOPCOM does all sorts of triangulations but it is a big,
complicated program that would be much more difficult to include.
Much as with polymake, it seems that the best way forward at the
moment is to include the key smaller libraries and build our own
functionality on them.

lrs has been extended by David Avis since 1999.  Because Komei Fukuda
was a co-creator of it, its files are compatible with those of cddlib,
which makes incorporating it into polytope code that uses cddlib very
easy.  It is a mature package that has had many rounds of bugfixes for
its core functionality.

lrs is pretty small - the optional spkg is 120 kB, which unpacks to
less than 1 MB.  The executable is only 92 kB on my machine.  It buils
qiuckly and I have seen no reports of build problems (although I don't
know how many people have tried the optional package).

I am cc'ing David Avis on this announcement in case he has any
clarifications or comments.

The license is GPL v2.

Overall I think this is almost a model candidate for the sort of code
that should be in Sage.

Marshall Hampton

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread mabshoff



On Jan 17, 6:17 am, mhampton  wrote:

Hi,

> I would like a vote on including the lrs optional package as a
> standard package in Sage.
>
> lrs stands for linear reverse search, an algorithm for computing
> convex hulls which is quite different from that of cddlib (which is
> already in Sage).  You can read about the algorithm and initial
> implementation here:
>
> http://sage.math.washington.edu/home/mhampton/Avis_lrs_99.pdf
>
> One advantage of lrs is that the memory it uses is linear in the size
> of the problem (roughly speaking, see the reference for more precise
> statements).  It can also be much faster than cddlib for certain
> families of polytopes.  Because of this, polymake includes cddlib and
> lrs as well as its own third convex hull algorithm (beneath-and-
> beyond, which someone should implement in Sage one day).
>
> lrs can also compute triangulations and volumes of polytopes.  We
> currently don't have anything else that can do those things, as far as
> I am aware.  TOPCOM does all sorts of triangulations but it is a big,
> complicated program that would be much more difficult to include.
> Much as with polymake, it seems that the best way forward at the
> moment is to include the key smaller libraries and build our own
> functionality on them.
>
> lrs has been extended by David Avis since 1999.  Because Komei Fukuda
> was a co-creator of it, its files are compatible with those of cddlib,
> which makes incorporating it into polytope code that uses cddlib very
> easy.  It is a mature package that has had many rounds of bugfixes for
> its core functionality.

Ok. I have certainly seen it as components of various other packages.
It certainly seems to be mature.

> lrs is pretty small - the optional spkg is 120 kB, which unpacks to
> less than 1 MB.  The executable is only 92 kB on my machine.  It buils
> qiuckly and I have seen no reports of build problems (although I don't
> know how many people have tried the optional package).

It seems only to be tested on Linux, OSF and Cygwin. Poking around
through the code it seems that there is an optional signal handler
component which can easily be ported to native Windows. Since the code
itself seems to have zero dependencies this ought to be an easy port.
But the code certainly needs prettying up, i.e. I couldn't find a test
suite, the files were all dumped in the same directory and on and on.
If upstream is interested I could certainly make some suggestions.

Do you want to use the code also in "library mode"? This certainly
seems to be the goal in the end.

> I am cc'ing David Avis on this announcement in case he has any
> clarifications or comments.
>
> The license is GPL v2.

It is GPL V2+ which is pretty important.

> Overall I think this is almost a model candidate for the sort of code
> that should be in Sage.

Yes, I would vote +1 assuming some cleanup happens and someone
actually takes the code for a spin with MSVC. Until then I am a 0 on
this :)

> Marshall Hampton

Cheers,

Michael
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] FW: [Sage Bug Report] or not?

2009-01-17 Thread mabshoff




-- Forwarded message --
From: Yann Laigle-Chapuy 
Date: Sat, Jan 17, 2009 at 4:06 AM
Subject: [Sage Bug Report] or not?
To: Michael Abshoff < SNIP >


Hi,
is the following a feature or a bug?

sage: 0*log(0)
...
ValueError: self must be positive

ok, but

sage: f=x*log(x)
sage: f(0)
0



--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Bill Page

Luis,

I get:

sage: ...
sage: a=3*e2*e1 + 4*e1
sage: a

2
  4x e  - 3x e e
  1   1 2

---

I notice you are using sage-3.1.4. That should be fine. In the example
above I am using 3.1.3 but it includes the patches done by Mike Hansen

http://trac.sagemath.org/sage_trac/ticket/4036

that are not yet in the Sage distribution (review needed). See also

http://trac.sagemath.org/sage_trac/ticket/4633

The error message you show seems typical of the problems that these
patches solve.

Regards,
Bill Page.

On Sat, Jan 17, 2009 at 9:47 AM, luis wrote:
>
> Hi Bill,
>
> Thanks for your answer. Yes, it seems to be a good answer
> to my question.
> I have however a problem. The error message is included
> below. Do you have some idea?
>
> Regards,
>
> Luis
>
> --
> 
> sage: e1=axiom('x*e(1)$%s'%(LambdaK.name()))
> sage: e2=axiom('x*e(2)$%s'%(LambdaK.name()))
> sage: e3=axiom('x*e(3)$%s'%(LambdaK.name()))
> sage: e4=axiom('x*e(4)$%s'%(LambdaK.name()))
> sage: a=3*e2*e1 + 4*e1
> ---
> TypeError Traceback (most recent call
> last)
>
> /home/luis/sage-3.1.4-debian32-IntelXeon-x86-i686-Linux/ console> in ()
>
> /home/luis/sage-3.1.4-debian32-IntelXeon-x86-i686-Linux/local/lib/
> python2.5/site -packages/sage/structure/element.so in
> sage.structure.element.RingElement.__mul_ _ (sage/structure/element.c:
> 8187)()
>
> /home/luis/sage-3.1.4-debian32-IntelXeon-x86-i686-Linux/local/lib/
> python2.5/site -packages/sage/structure/coerce.so in
> sage.structure.coerce.CoercionModel_cache_ maps.bin_op (sage/structure/
> coerce.c:5559)()
>
> TypeError: unsupported operand parent(s) for '*': 'Integer Ring' and
> 'Axiom'
>

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Bill Page

Luis,

Now that I have had some coffee, let me also give you a slightly
better example :-)

sage: LambdaK=axiom('CliffordAlgebra(4,Fraction Polynomial
Integer,quadraticForm diagonalMatrix [0,0,0,0])')
sage: e1=axiom('e(1)$%s'%(LambdaK.name()))
sage: e2=axiom('e(2)$%s'%(LambdaK.name()))
sage: e3=axiom('e(3)$%s'%(LambdaK.name()))
sage: e4=axiom('e(4)$%s'%(LambdaK.name()))
sage: var('x,y,z')
(x, y, z)
sage: a=x*e1*e2
sage: b=x*e1*e3
sage: c=y*e4*e3
sage: a*b
0
sage: a*c

  - x y e e e e
 1 2 3 4
sage:

Regards,
Bill Page.

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Bill Page

On Sat, Jan 17, 2009 at 10:30 AM, luis wrote:
> Bill,
>
> Thanks again.  Yes, this is exactly the kind of thing I want to
> do.
>
> A couple of questions:
>
> - Can you give me a small example in using axiom directely?
> (I mean without passing through sage).

Sure, no problem. Try something like this:

wsp...@virtual-debian:~/sage-3.1.3$ vi LambdaK.input
--
)set message autoload off
LambdaK:=CliffordAlgebra(4,Fraction Polynomial Integer,quadraticForm
diagonalMatrix [0,0,0,0])
e1:=e(1)$LambdaK
e2:=e(2)$LambdaK
e3:=e(3)$LambdaK
e4:=e(4)$LambdaK
a:=x*e1*e2
b:=x*e1*e3
c:=y*e4*e3
a*b
a*c
--

If you have FriCAS (or another fork of Axiom) installed you can just
run the above script directly, or you can start the FriCAS installed
in Sage like this

  $ sage -axiom

or from within Sage like this:

sage: axiom.console()
viewman not present, disabling graphics
Checking for foreign routines
AXIOM="/home/wspage/sage-3.1.3/local/lib/fricas/target/i686-pc-linux"
spad-lib="/home/wspage/sage-3.1.3/local/lib/fricas/target/i686-pc-linux/lib/libspad.so"
foreign routines found
 FriCAS (AXIOM fork) Computer Algebra System
Version: FriCAS 1.0.3
   Timestamp: Monday October 20, 2008 at 10:14:54
-
   Issue )copyright to view copyright notices.
   Issue )summary for a summary of useful system commands.
   Issue )quit to leave FriCAS and return to shell.
-

(1) -> )read LambdaK.input

)set message autoload off

LambdaK:=CliffordAlgebra(4,Fraction Polynomial Integer,quadraticForm
diagonalMatrix [0,0,0,0])

   (1)  CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)
Type: Domain

e1:=e(1)$LambdaK

   (2)  e
 1
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

e2:=e(2)$LambdaK

   (3)  e
 2
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

e3:=e(3)$LambdaK

   (4)  e
 3
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

e4:=e(4)$LambdaK

   (5)  e
 4
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

a:=x*e1*e2

   (6)  x e e
   1 2
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

b:=x*e1*e3

   (7)  x e e
   1 3
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

c:=y*e4*e3

   (8)  - y e e
 3 4
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

a*b

   (9)  0
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

a*c

   (10)  - x y e e e e
1 2 3 4
Type: CliffordAlgebra(4,Fraction Polynomial Integer,MATRIX)

(11) -> )quit

sage:

> - I can see the patches in "trac", but I don't know how to apply them
>  (I am just starting with sage). Is there some tool to apply them?
>

This thread might help:

http://groups.google.com/group/fricas-devel/browse_thread/thread/ce55dbdfbb0e65ff/28a682142f569ccf

If you still have questions, please ask... And also try to encourage
the Sage/FriCAS developers to review this ticket so that we can
finally get it into Sage! :-)

Regards,
Bill Page.


>
> On Jan 17, 4:10 pm, Bill Page  wrote:
>> Luis,
>>
>> Now that I have had some coffee, let me also give you a slightly
>> better example :-)
>>
>> sage: LambdaK=axiom('CliffordAlgebra(4,Fraction Polynomial
>> Integer,quadraticForm diagonalMatrix [0,0,0,0])')
>> sage: e1=axiom('e(1)$%s'%(LambdaK.name()))
>> sage: e2=axiom('e(2)$%s'%(LambdaK.name()))
>> sage: e3=axiom('e(3)$%s'%(LambdaK.name()))
>> sage: e4=axiom('e(4)$%s'%(LambdaK.name()))
>> sage: var('x,y,z')
>> (x, y, z)
>> sage: a=x*e1*e2
>> sage: b=x*e1*e3
>> sage: c=y*e4*e3
>> sage: a*b
>> 0
>> sage: a*c
>>
>>   - x y e e e e
>>  1 2 3 4
>> sage:
>>
>> Regards,
>> Bill Page.
>

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread mabshoff



On Jan 17, 8:56 am, Bill Page  wrote:
> On Sat, Jan 17, 2009 at 10:30 AM, luis wrote:



Hi Bill,

> If you still have questions, please ask... And also try to encourage
> the Sage/FriCAS developers to review this ticket so that we can
> finally get it into Sage! :-)

I don't want to point out the obvious, but since you have been using
those patches and are also familiar with Axiom why don't you review
them?

> Regards,
> Bill Page.

Cheers,

Michael
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Bill Page

Michael,

In an email list usually it doesn't hurt much to point out the obvious
... :-) But I don't understand. Haven't I reviewed them many times
here already? Perhaps I just don't understand the process... Overall
there does not seem to be very much interest in the fricas package for
Sage, so I haven't had much incentive to try to do more. Specifically:
what can I do to help get these patches into Sage?

Regards,
Bill Page.

On Sat, Jan 17, 2009 at 12:15 PM, mabshoff  wrote:
>
>
>
> On Jan 17, 8:56 am, Bill Page  wrote:
>> On Sat, Jan 17, 2009 at 10:30 AM, luis wrote:
>
> 
>
> Hi Bill,
>
>> If you still have questions, please ask... And also try to encourage
>> the Sage/FriCAS developers to review this ticket so that we can
>> finally get it into Sage! :-)
>
> I don't want to point out the obvious, but since you have been using
> those patches and are also familiar with Axiom why don't you review
> them?
>
>> Regards,
>> Bill Page.
>
> Cheers,
>
> Michael

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread David Joyner

I think roughly speaking what Michael is referring to is to ask you to:

(a) apply the patches at http://trac.sagemath.org/sage_trac/ticket/4036
to the latest version of Sage
(b) see if it applies cleanly, see if the tests pass, see if you find
problems in the code or docstrings. Assume for simplicity there
are no problems (this may be incorrect!).
(c) issue a new patch with your changes which replaces all the other
patches.
(d) change the subject line from "needs rebase" to
"positive review".

If there are any questions, just ask on the trac ticket or on
sage-devel.


On Sat, Jan 17, 2009 at 12:28 PM, Bill Page  wrote:
>
> Michael,
>
> In an email list usually it doesn't hurt much to point out the obvious
> ... :-) But I don't understand. Haven't I reviewed them many times
> here already? Perhaps I just don't understand the process... Overall
> there does not seem to be very much interest in the fricas package for
> Sage, so I haven't had much incentive to try to do more. Specifically:
> what can I do to help get these patches into Sage?
>
> Regards,
> Bill Page.
>
> On Sat, Jan 17, 2009 at 12:15 PM, mabshoff  wrote:
>>
>>
>>
>> On Jan 17, 8:56 am, Bill Page  wrote:
>>> On Sat, Jan 17, 2009 at 10:30 AM, luis wrote:
>>
>> 
>>
>> Hi Bill,
>>
>>> If you still have questions, please ask... And also try to encourage
>>> the Sage/FriCAS developers to review this ticket so that we can
>>> finally get it into Sage! :-)
>>
>> I don't want to point out the obvious, but since you have been using
>> those patches and are also familiar with Axiom why don't you review
>> them?
>>
>>> Regards,
>>> Bill Page.
>>
>> Cheers,
>>
>> Michael
>
> >
>

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Simon King

Dear Bill,

On 17 Jan., 18:28, Bill Page  wrote:
...
> ... :-) But I don't understand. Haven't I reviewed them many times
> here already?

Ticket #4633 is, as much as I see, your code. Therefore, someone else
must review it (obviously, in a peer review system one can not be
referee for one's own contribution). And in ticket #4036, I see no
review of you.

You say "Haven't I reviewed them many times *here*" - does 'here' mean
'on this list'? I guess this would not suffice, it only counts as a
review if it appears on the ticket. But perhaps you can make a review
for #4036 without much additional effort by copy-and-paste your posts?

Yours
Simon

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Bill Page

David,

http://trac.sagemath.org/sage_trac/ticket/4036

Does not apply cleanly to recent source versions of Sage. It says:

[...,needs rebase]

How do I do that? It is not hard to manually fix the mismatches in the
old patches, but what does it mean to "re-base"?

The existing tests pass, but I am aware of some other issues - some of
which I have posted to the list, including patches. And I have some
additional code that I have added to trac. By item c) below, do you
mean that I should accumulate all of my local changes plus Mike
Hansen's original stuff and post the result to 4036? I could certainly
give that a positive review since I am currently using it, but then
isn't a review by some else also required?

Actually like most people I expect, I have to admit that with my
limited available time the rate at which Sage source code changes
makes it hard for me to keep up. Since I want to accomplish other
things with Sage and Axiom besides development work and no one has
expressed much interest in the interface, this issue has just been
pushed to the bottom of the pile until someone posts something that
seems directly related.

Regards,
Bill Page.

On Sat, Jan 17, 2009 at 12:52 PM, David Joyner  wrote:
>
> I think roughly speaking what Michael is referring to is to ask you to:
>
> (a) apply the patches at http://trac.sagemath.org/sage_trac/ticket/4036
> to the latest version of Sage
> (b) see if it applies cleanly, see if the tests pass, see if you find
> problems in the code or docstrings. Assume for simplicity there
> are no problems (this may be incorrect!).
> (c) issue a new patch with your changes which replaces all the other
> patches.
> (d) change the subject line from "needs rebase" to
> "positive review".
>
> If there are any questions, just ask on the trac ticket or on
> sage-devel.
>
>
> On Sat, Jan 17, 2009 at 12:28 PM, Bill Page  
> wrote:
>>
>> Michael,
>>
>> In an email list usually it doesn't hurt much to point out the obvious
>> ... :-) But I don't understand. Haven't I reviewed them many times
>> here already? Perhaps I just don't understand the process... Overall
>> there does not seem to be very much interest in the fricas package for
>> Sage, so I haven't had much incentive to try to do more. Specifically:
>> what can I do to help get these patches into Sage?
>>
>> Regards,
>> Bill Page.
>>
>> On Sat, Jan 17, 2009 at 12:15 PM, mabshoff  wrote:
>>>
>>>
>>>
>>> On Jan 17, 8:56 am, Bill Page  wrote:
 On Sat, Jan 17, 2009 at 10:30 AM, luis wrote:
>>>
>>> 
>>>
>>> Hi Bill,
>>>
 If you still have questions, please ask... And also try to encourage
 the Sage/FriCAS developers to review this ticket so that we can
 finally get it into Sage! :-)
>>>
>>> I don't want to point out the obvious, but since you have been using
>>> those patches and are also familiar with Axiom why don't you review
>>> them?
>>>
 Regards,
 Bill Page.
>>>
>>> Cheers,
>>>
>>> Michael
>>
>> >
>>
>
> >
>

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread David Joyner

Given your time constraints and the problems you mentioned,
what I would do is the following (though possibly Michael might
recommend something else):

(a) apply to a clone of the most recent version of Sage the
changes you want (including those of M Hansen)
"manually",

(b) create a new "big" patch and attach it to 4036. (this is
the rebase). Test this on as many platforms as you can.

(c) Mention as a trac comment what you just said (you give
everything a positive review, but you added some material ...), then
replace "needs rebase" by "positive review, needs further review".
(I can't find the "legal" strings for trac tickets on
http://wiki.sagemath.org/TracGuidelines,
but it's something like this.)

(d) Email someone to ask for an immediate quick review. I can try
myself or maybe Martin Rubey or Simon King can?



On Sat, Jan 17, 2009 at 1:15 PM, Bill Page  wrote:
>
> David,
>
> http://trac.sagemath.org/sage_trac/ticket/4036
>
> Does not apply cleanly to recent source versions of Sage. It says:
>
> [...,needs rebase]
>
> How do I do that? It is not hard to manually fix the mismatches in the
> old patches, but what does it mean to "re-base"?
>
> The existing tests pass, but I am aware of some other issues - some of
> which I have posted to the list, including patches. And I have some
> additional code that I have added to trac. By item c) below, do you
> mean that I should accumulate all of my local changes plus Mike
> Hansen's original stuff and post the result to 4036? I could certainly
> give that a positive review since I am currently using it, but then
> isn't a review by some else also required?
>
> Actually like most people I expect, I have to admit that with my
> limited available time the rate at which Sage source code changes
> makes it hard for me to keep up. Since I want to accomplish other
> things with Sage and Axiom besides development work and no one has
> expressed much interest in the interface, this issue has just been
> pushed to the bottom of the pile until someone posts something that
> seems directly related.
>
> Regards,
> Bill Page.
>
> On Sat, Jan 17, 2009 at 12:52 PM, David Joyner  wrote:
>>
>> I think roughly speaking what Michael is referring to is to ask you to:
>>
>> (a) apply the patches at http://trac.sagemath.org/sage_trac/ticket/4036
>> to the latest version of Sage
>> (b) see if it applies cleanly, see if the tests pass, see if you find
>> problems in the code or docstrings. Assume for simplicity there
>> are no problems (this may be incorrect!).
>> (c) issue a new patch with your changes which replaces all the other
>> patches.
>> (d) change the subject line from "needs rebase" to
>> "positive review".
>>
>> If there are any questions, just ask on the trac ticket or on
>> sage-devel.
>>
>>
>> On Sat, Jan 17, 2009 at 12:28 PM, Bill Page  
>> wrote:
>>>
>>> Michael,
>>>
>>> In an email list usually it doesn't hurt much to point out the obvious
>>> ... :-) But I don't understand. Haven't I reviewed them many times
>>> here already? Perhaps I just don't understand the process... Overall
>>> there does not seem to be very much interest in the fricas package for
>>> Sage, so I haven't had much incentive to try to do more. Specifically:
>>> what can I do to help get these patches into Sage?
>>>
>>> Regards,
>>> Bill Page.
>>>
>>> On Sat, Jan 17, 2009 at 12:15 PM, mabshoff  wrote:



 On Jan 17, 8:56 am, Bill Page  wrote:
> On Sat, Jan 17, 2009 at 10:30 AM, luis wrote:

 

 Hi Bill,

> If you still have questions, please ask... And also try to encourage
> the Sage/FriCAS developers to review this ticket so that we can
> finally get it into Sage! :-)

 I don't want to point out the obvious, but since you have been using
 those patches and are also familiar with Axiom why don't you review
 them?

> Regards,
> Bill Page.

 Cheers,

 Michael
>>>
>>> >
>>>
>>
>> >
>>
>
> >
>

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread mabshoff



On Jan 17, 10:31 am, David Joyner  wrote:
> Given your time constraints and the problems you mentioned,
> what I would do is the following (though possibly Michael might
> recommend something else):
>
> (a) apply to a clone of the most recent version of Sage the
> changes you want (including those of M Hansen)
> "manually",

hg provides merge tools for that, i.e. k3diff is some people's
preferred tool to do that on Linux.

> (b) create a new "big" patch and attach it to 4036. (this is
> the rebase). Test this on as many platforms as you can.

This might or might not be a good idea since that screws with the
credit situation. Ideally you would use Queues to rebase the patch
series and fold together patches. In this situation I would just
complain long enough until Mike posts a rebased patch.

> (c) Mention as a trac comment what you just said (you give
> everything a positive review, but you added some material ...), then
> replace "needs rebase" by "positive review, needs further review".
> (I can't find the "legal" strings for trac tickets 
> onhttp://wiki.sagemath.org/TracGuidelines,
> but it's something like this.)

Don't do that, just change the status to "needs review" and then
explain on the ticket which additional patches need review. If you
rebase things be also very specific what patches to apply in which
order. Long and somewhat ambiguous ticket descriptions make the ticket
get picked up by the wrong report and I will then rename it.

> (d) Email someone to ask for an immediate quick review. I can try
> myself or maybe Martin Rubey or Simon King can?

Cheers,

Michael
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Plan for shifting Pchpack functionality into Sage

2009-01-17 Thread Robert Bradshaw

On Jan 17, 2009, at 5:45 AM, mhampton wrote:

> Currently Phcpack is an optional package for sage.  Its main purpose
> is to numerically compute isolated solutions of polynomial systems,
> although it has some other functionality as well (e.g. computing mixed
> volumes, witness sets for higher-dimensional solution components).
>
> I have wanted Phcpack to be standard in Sage for a while, but have
> been blocked by concerns about portability.  Phcpack is written in
> Ada.  Recently Jan Verschelde (the author of Phcpack) and his students
> have added some C and Python interfaces, which help integration
> efforts but don't solve the portability issue.
>
> I discussed this situation recently with Jan (who I am cc'ing on this
> email in case he has clarifications or corrections) and he seems
> willing to work with me on porting Phcpack into Sage as a native
> program.  Although Phcpack is pretty fast, there are closed source
> programs that seem quite a bit faster at the moment (although its not
> a simple comparison, they different strengths and weaknesses).  A Sage
> implementation could be quite a bit faster by taking advantage of
> Sage's linear algebra and other components.
>
> My plan for doing this is to move in the functionality piece by piece
> starting in late Febuary (earlier if I can magically find extra
> time).  The first piece will be a parameter-homotopy path tracker,
> since I understand that part the best at the moment and its relatively
> straightforward.  This would take as input a polynomial start system
> and a list of solutions to the start system, and a target system.  The
> algorithm would deform the start system and its solutions into the
> target system and its corresponding solutions.  There is quite a bit
> of literature on how to do this, and if Jan helps me understand how
> Phcpack does this I think it won't be hard to get something running.
> Optimizing it will probably take longer but I know there are some Sage
> developers out there who might find it fun to help.
>
> After the parameter homotopy, we would need:
>
> 1) A way to compute mixed volumes and the cells of a mixed
> subdivision.  Jan ported a C implementation in Ada to do this, so he
> thinks it might be fairly easy for him to do this.
>
> 2) Create ways to generate start systems and their solutions.  The
> main way is to use the mixed subdivision from (1), but there are some
> alternatives.
>
> 3) Routines for "endgames" - issues that arise at the end of
> homotopies, where solutions might be degenerate in various senses.
>
> 4) Techniques for higher-dimensional solution components.
>
> I imagine that Jan and I and our students will do most of this, but we
> will need some help and I am soliciting it in advance.  One thing I
> need is a deeper knowledge of Cython, which will be crucial in getting
> our implementation competitive with closed source alternatives.

This sounds great. The math is (as far as I know) outside my field of  
expertise, but I'm always up for learning something new (subject to  
time constraints) and I do know quite a bit about Cython. At some  
point, this sounds like it would make a good coding sprint project at  
a Sage Days too. The site http://wiki.sagemath.org/SageDays has a  
listing but seems out of date.

- Robert



--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: FW: [Sage Bug Report] or not?

2009-01-17 Thread Robert Bradshaw

On Jan 17, 2009, at 6:54 AM, mabshoff wrote:

> -- Forwarded message --
> From: Yann Laigle-Chapuy 
> Date: Sat, Jan 17, 2009 at 4:06 AM
> Subject: [Sage Bug Report] or not?
> To: Michael Abshoff < SNIP >
>
>
> Hi,
> is the following a feature or a bug?
>
> sage: 0*log(0)
> ...
> ValueError: self must be positive
>
> ok, but
>
> sage: f=x*log(x)
> sage: f(0)
> 0

I would say that's a bug. Probably an overly-naive simplification.  
Also, note

sage: f = x*log(x)
sage: f(0)
0
sage: f.subs(x=0)

Traceback (most recent call last):
   File "", line 1, in 
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 3811, in subs
 return self.substitute(*args, **kwds)
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 3808, in substitute
 return X._recursive_sub(kwds)
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 4857, in _recursive_sub
 new_ops = [SR(op._recursive_sub(kwds)) for op in ops]
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 6275, in _recursive_sub
 return ops[0](ops[1]._recursive_sub(kwds))
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 6600, in __call__
 return getattr(x, self._repr_())(*args)
   File "integer.pyx", line 1560, in sage.rings.integer.Integer.log  
(sage/rings/integer.c:11178)
ValueError: self must be positive

sage: f(x) = x*log(x)
sage: f(0)

Traceback (most recent call last):
   File "", line 1, in 
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 5922, in __call__
 return self._expr.substitute(dct)
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 3808, in substitute
 return X._recursive_sub(kwds)
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 4857, in _recursive_sub
 new_ops = [SR(op._recursive_sub(kwds)) for op in ops]
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 6275, in _recursive_sub
 return ops[0](ops[1]._recursive_sub(kwds))
   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/ 
sage/calculus/calculus.py", line 6600, in __call__
 return getattr(x, self._repr_())(*args)
   File "integer.pyx", line 1560, in sage.rings.integer.Integer.log  
(sage/rings/integer.c:11178)
ValueError: self must be positive


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] compilation

2009-01-17 Thread luis

Hi,

In compiling sage on a linux debian (stable) I have a problem
with "flint-1.0.13.p0".

Some lines of the install.log file are included hereafter.

Thanks,

Luis


make[1]: Entering directory `/home/luis/Desktop/sage-3.2.1/spkg'
sage-spkg flint-1.0.13.p0 2>&1
You must set the SAGE_ROOT environment variable or
run this script from the SAGE_ROOT or
SAGE_ROOT/local/bin/ directory.
flint-1.0.13.p0
Machine:
Linux urubamba 2.6.18-6-686 #1 SMP Fri Dec 12 16:48:28 UTC 2008 i686
GNU/Linux
Deleting directories from past builds of previous/current versions of
flint-1.0.13.p0
Extracting package /home/luis/Desktop/sage-3.2.1/spkg/standard/
flint-1.0.13.p0.spkg ...
-rw-r--r-- 1 luis luis 496581 2008-11-27 07:28 /home/luis/Desktop/
sage-3.2.1/spkg/standard/flint-1.0.13.p0.spkg
flint-1.0.13.p0/
flint-1.0.13.p0/.hg/
flint-1.0.13.p0/.hg/00changelog.i
flint-1.0.13.p0/.hg/branch.cache
flint-1.0.13.p0/.hg/dirstate
flint-1.0.13.p0/.hg/requires
...
...  OK
...
flint-1.0.13.p0/src/ZmodF_poly-profile.c
flint-1.0.13.p0/src/ZmodF_poly-test.c
flint-1.0.13.p0/src/ZmodF_poly.c
flint-1.0.13.p0/src/ZmodF_poly.h
flint-1.0.13.p0/test_gcc_version.pl
Finished extraction

Host system
uname -a:
Linux urubamba 2.6.18-6-686 #1 SMP Fri Dec 12 16:48:28 UTC 2008 i686
GNU/Linux


GCC Version
gcc -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ./configure --prefix=/usr/local --enable-languages=c,c
++ --with-gmp=/usr/local --with-mpfr=/usr/local
Thread model: posix
gcc version 4.3.2 (GCC)

Found gcc 4 or later
Deleting old FLINT
make[2]: Entering directory `/home/luis/Desktop/sage-3.2.1/spkg/build/
flint-1.0.13.p0/src'
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
mpn_extras.c -o mpn_extras.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
mpz_extras.c -o mpz_extras.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
memory-manager.c -o memory-manager.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
ZmodF.c -o ZmodF.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
ZmodF_mul.c -o ZmodF_mul.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
ZmodF_mul-tuning.c -o ZmodF_mul-tuning.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
fmpz.c -o fmpz.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
fmpz_poly.c -o fmpz_poly.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
mpz_poly-tuning.c -o mpz_poly-tuning.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
mpz_poly.c -o mpz_poly.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
ZmodF_poly.c -o ZmodF_poly.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
long_extras.c -o long_extras.o
gcc -std=c99 -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/
luis/Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c
zmod_poly.c -o zmod_poly.o
g++  -I/home/luis/Desktop/sage-3.2.1/local/include/ -I/home/luis/
Desktop/sage-3.2.1/local/include  -fPIC -funroll-loops   -O3 -c NTL-
interface.cpp -o NTL-interface.o
gcc -std=c99 -fPIC -shared -Wl,-soname,lib`cat DIRNAME`.so -o lib`cat
DIRNAME`.so mpn_extras.o mpz_extras.o memory-manager.o ZmodF.o
ZmodF_mul.o ZmodF_mul-tuning.o fmpz.o fmpz_poly.o mpz_poly-tuning.o
mpz_poly.o ZmodF_poly.o long_extras.o zmod_poly.o NTL-interface.o -L/
home/luis/Desktop/sage-3.2.1/local/lib/ -L/home/luis/Desktop/
sage-3.2.1/local/lib/  -lgmp -lpthread -lntl -lm -lstdc++
mpz_extras.o: In function `__strcspn_c1':
mpz_extras.c:(.text+0x0): multiple definition of `__strcspn_c1'
mpn_extras.o:mpn_extras.c:(.text+0x0): first defined here
mpz_extras.o: In function `__strcspn_c2':
mpz_extras.c:(.text+0x40): multiple definition of `__strcspn_c2'
mpn_extras.o:mpn_extras.c:(.text+0x40): first defined here
mpz_extras.o: In function `__strcspn_c3':
...
...
...
memory-manager.c:(.text+0xec0): multiple definition

[sage-devel] Re: compilation

2009-01-17 Thread mabshoff



On Jan 17, 11:34 am, luis  wrote:
> Hi,
>
> In compiling sage on a linux debian (stable) I have a problem
> with "flint-1.0.13.p0".
>
> Some lines of the install.log file are included hereafter.
>
> Thanks,
>
> Luis



> Finished extraction
> 
> Host system
> uname -a:
> Linux urubamba 2.6.18-6-686 #1 SMP Fri Dec 12 16:48:28 UTC 2008 i686
> GNU/Linux
> 
> 
> GCC Version
> gcc -v
> Using built-in specs.
> Target: i686-pc-linux-gnu
> Configured with: ./configure --prefix=/usr/local --enable-languages=c,c
> ++ --with-gmp=/usr/local --with-mpfr=/usr/local
> Thread model: posix
> gcc version 4.3.2 (GCC)
> 

I doubt this gcc is the one shipped with the distribution. What is
your env looking like? Setting CC, CXX, CFLAGS and so on does have
side effects in Sage and there are plans to fix all those issues. What
about $PATH and $LD_LIBRARY_PATH?

Cheers,

Michael



--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Clifford + Sage

2009-01-17 Thread Martin Rubey

David Joyner  writes:

> (d) Email someone to ask for an immediate quick review. I can try
> myself or maybe Martin Rubey or Simon King can?

I won't be able to do that, because I cannot build sage anymore.  My computer
has become too old for sage, sorry.

Martin


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: compilation

2009-01-17 Thread William Stein

On Sat, Jan 17, 2009 at 11:42 AM, mabshoff  wrote:
>
>
>
> On Jan 17, 11:34 am, luis  wrote:
>> Hi,
>>
>> In compiling sage on a linux debian (stable) I have a problem
>> with "flint-1.0.13.p0".
>>
>> Some lines of the install.log file are included hereafter.
>>
>> Thanks,
>>
>> Luis
>
> 
>
>> Finished extraction
>> 
>> Host system
>> uname -a:
>> Linux urubamba 2.6.18-6-686 #1 SMP Fri Dec 12 16:48:28 UTC 2008 i686
>> GNU/Linux
>> 
>> 
>> GCC Version
>> gcc -v
>> Using built-in specs.
>> Target: i686-pc-linux-gnu
>> Configured with: ./configure --prefix=/usr/local --enable-languages=c,c
>> ++ --with-gmp=/usr/local --with-mpfr=/usr/local
>> Thread model: posix
>> gcc version 4.3.2 (GCC)
>> 
>
> I doubt this gcc is the one shipped with the distribution.

I agree, especially given the /usr/local's above.  Also, I just
installed Debian stable a month ago and it ships the following:

---
wst...@debian32:~$ gcc -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v
--enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr
--enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --enable-mpfr --with-tune=i686
--enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
---

The user may want to build sage using the gcc that comes with Debian.

William

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: compilation

2009-01-17 Thread luis


Mabshoff,  William,

Yes,  enforcing the use of the original compiler (/usr/bin/gcc)
the "flint" compilation problem disappears.

Thanks,

Luis



On Jan 17, 9:41 pm, William Stein  wrote:
> On Sat, Jan 17, 2009 at 11:42 AM, mabshoff  wrote:
>
> > On Jan 17, 11:34 am, luis  wrote:
> >> Hi,
>
> >> In compiling sage on a linux debian (stable) I have a problem
> >> with "flint-1.0.13.p0".
>
> >> Some lines of the install.log file are included hereafter.
>
> >> Thanks,
>
> >> Luis
>
> > 
>
> >> Finished extraction
> >> 
> >> Host system
> >> uname -a:
> >> Linux urubamba 2.6.18-6-686 #1 SMP Fri Dec 12 16:48:28 UTC 2008 i686
> >> GNU/Linux
> >> 
> >> 
> >> GCC Version
> >> gcc -v
> >> Using built-in specs.
> >> Target: i686-pc-linux-gnu
> >> Configured with: ./configure --prefix=/usr/local --enable-languages=c,c
> >> ++ --with-gmp=/usr/local --with-mpfr=/usr/local
> >> Thread model: posix
> >> gcc version 4.3.2 (GCC)
> >> 
>
> > I doubt this gcc is the one shipped with the distribution.
>
> I agree, especially given the /usr/local's above.  Also, I just
> installed Debian stable a month ago and it ships the following:
>
> ---
> wst...@debian32:~$ gcc -v
> Using built-in specs.
> Target: i486-linux-gnu
> Configured with: ../src/configure -v
> --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr
> --enable-shared --with-system-zlib --libexecdir=/usr/lib
> --without-included-gettext --enable-threads=posix --enable-nls
> --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
> --enable-libstdcxx-debug --enable-mpfr --with-tune=i686
> --enable-checking=release i486-linux-gnu
> Thread model: posix
> gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
> ---
>
> The user may want to build sage using the gcc that comes with Debian.
>
> William
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: FW: [Sage Bug Report] or not?

2009-01-17 Thread William Stein

On Sat, Jan 17, 2009 at 11:31 AM, Robert Bradshaw
 wrote:
>
> On Jan 17, 2009, at 6:54 AM, mabshoff wrote:
>
>> -- Forwarded message --
>> From: Yann Laigle-Chapuy 
>> Date: Sat, Jan 17, 2009 at 4:06 AM
>> Subject: [Sage Bug Report] or not?
>> To: Michael Abshoff < SNIP >
>>
>>
>> Hi,
>> is the following a feature or a bug?
>>
>> sage: 0*log(0)
>> ...
>> ValueError: self must be positive
>>
>> ok, but
>>
>> sage: f=x*log(x)
>> sage: f(0)
>> 0
>
> I would say that's a bug. Probably an overly-naive simplification.
> Also, note

It's a bug, but I think there is not much of a point in even reporting
it to trac, since it is already fixed in the new symbolics which
Burcin and I wrote 5 *months* ago, and which still aren't the default
in Sage.

sage: var('x',ns=1)
x
sage: f(x) = x*log(x)
sage: f(0)
...
ValueError: self must be positive

 -- William

>
> sage: f = x*log(x)
> sage: f(0)
> 0
> sage: f.subs(x=0)
> 
> Traceback (most recent call last):
>   File "", line 1, in 
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 3811, in subs
> return self.substitute(*args, **kwds)
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 3808, in substitute
> return X._recursive_sub(kwds)
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 4857, in _recursive_sub
> new_ops = [SR(op._recursive_sub(kwds)) for op in ops]
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 6275, in _recursive_sub
> return ops[0](ops[1]._recursive_sub(kwds))
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 6600, in __call__
> return getattr(x, self._repr_())(*args)
>   File "integer.pyx", line 1560, in sage.rings.integer.Integer.log
> (sage/rings/integer.c:11178)
> ValueError: self must be positive
>
> sage: f(x) = x*log(x)
> sage: f(0)
> 
> Traceback (most recent call last):
>   File "", line 1, in 
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 5922, in __call__
> return self._expr.substitute(dct)
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 3808, in substitute
> return X._recursive_sub(kwds)
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 4857, in _recursive_sub
> new_ops = [SR(op._recursive_sub(kwds)) for op in ops]
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 6275, in _recursive_sub
> return ops[0](ops[1]._recursive_sub(kwds))
>   File "/Users/robert/sage/current/local/lib/python2.5/site-packages/
> sage/calculus/calculus.py", line 6600, in __call__
> return getattr(x, self._repr_())(*args)
>   File "integer.pyx", line 1560, in sage.rings.integer.Integer.log
> (sage/rings/integer.c:11178)
> ValueError: self must be positive
>
>
> >
>



-- 
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread mhampton

On Jan 17, 8:36 am, mabshoff  wrote:

> But the code certainly needs prettying up, i.e. I couldn't find a test
> suite, the files were all dumped in the same directory and on and on.
> If upstream is interested I could certainly make some suggestions.

I don't think for such a small program that the directory structure is
terribly important; I tend to like a flat file structure.
There are already some tests for it in the optional code in
polyhedra.py, and I would be happy to add more.  Then we would be
testing it through sage.  That seems like the easiest way to add
tests, unless David Avis is interested in adding it upstream.

-Marshall


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: FW: [Sage Bug Report] or not?

2009-01-17 Thread Jason Grout

William Stein wrote:
> On Sat, Jan 17, 2009 at 11:31 AM, Robert Bradshaw
>  wrote:
>> On Jan 17, 2009, at 6:54 AM, mabshoff wrote:
>>
>>> -- Forwarded message --
>>> From: Yann Laigle-Chapuy 
>>> Date: Sat, Jan 17, 2009 at 4:06 AM
>>> Subject: [Sage Bug Report] or not?
>>> To: Michael Abshoff < SNIP >
>>>
>>>
>>> Hi,
>>> is the following a feature or a bug?
>>>
>>> sage: 0*log(0)
>>> ...
>>> ValueError: self must be positive
>>>
>>> ok, but
>>>
>>> sage: f=x*log(x)
>>> sage: f(0)
>>> 0
>> I would say that's a bug. Probably an overly-naive simplification.
>> Also, note
> 
> It's a bug, but I think there is not much of a point in even reporting
> it to trac, since it is already fixed in the new symbolics which
> Burcin and I wrote 5 *months* ago, and which still aren't the default
> in Sage.
> 

Well, depending on how long before the new symbolics is the default, 
I'd say it's worth reporting and fixing, especially if it's easy.

Jason


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread Andrey Novoseltsev

I would be glad to have standard functions for triangulations!

Andrey
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: compilation

2009-01-17 Thread mabshoff



On Jan 17, 12:48 pm, luis  wrote:
> Mabshoff,  William,

Hi,

> Yes,  enforcing the use of the original compiler (/usr/bin/gcc)
> the "flint" compilation problem disappears.

Ok, but I am still curious why this fails for you with the other
compiler. Having compiled Sage with self compiled gcc 4.3.2 on
numerous platforms and never seen that bug I would guess your
environment is somehow mixing up those two compilers, but I have no
prove for this.

Also please do not send off list replies to me unless I explicitly ask
for them. My mailbox is stuffed to the top already and things Sage
related not on [sage-devel] get easily lost.

> Thanks,
>
> Luis

Cheers,

Michael
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread mabshoff



On Jan 17, 12:56 pm, mhampton  wrote:
> On Jan 17, 8:36 am, mabshoff  wrote:

Hi,

> > But the code certainly needs prettying up, i.e. I couldn't find a test
> > suite, the files were all dumped in the same directory and on and on.
> > If upstream is interested I could certainly make some suggestions.
>
> I don't think for such a small program that the directory structure is
> terribly important; I tend to like a flat file structure.

I disagree. Having src, include, test, doc, example make it instantly
understandable what is what.

> There are already some tests for it in the optional code in
> polyhedra.py, and I would be happy to add more.  Then we would be
> testing it through sage.  

No, this is wrong. Stein's Axiom I: Everything not tested is broken.

I want to be able to run "make check" on the code and not depend on
anything else to verify that the code works. *Every* time we merge
code this way and just assume that Sage's test suite will pick up all
the issues I am the one who is getting screwed with the prime examples
being Symmetrica and SYMPOW debugging on more exotic platforms.
Writing tests for this code should be easy since you already have a
command line mode. And since you can use it from Sage via pexpect it
should be trivial to add a bunch of tests by logging the traffic.

If you look at the Makefile of this code you should clearly see that
it needs cleaning up and rewriting it from scratch in this case might
be easier since only a couple files are involved. On problem right off
the bat is that compiler as well as build flags are hard coded for
each file. So if you do something about that and add tests someone
might as well as put files into proper directories, etc.

And lrs can be build as a library and probably will so be integrated
in Sage in the future. Since there are issues with LLP64 this is not a
fun thing to debug, i.e. anything that can go wrong will lead to a
segfault which isn't fun to debug because it happens *in* Python or
the Sage library,  and I wouldn't want to do it via Sage. How things
like this can get screwed up badly (and this is not even a LLP64
issue) is Symmetrica where we see segfaults on Solaris in 32 bit mode
when running some examples. There is a test suite of about 400
examples (at least according to the documentation) and after numerous
attempts to contact the author we still don't have the files. The
author does not reply to emails or bug reports and because of that as
well as the truly horribly nature of the code (worst abuse of the
preprocessor I have *ever* seen) I have lobbied to get the code thrown
it.  Without the test suite it is unclear if Symmetrica even works
reliably on all the platforms I am building Sage on. The same case
about upstream who cannot be bothered to even reply to emails from a
variety of Sage devs is the cddlib upstream. We have send a couple
build system improvements to upstream and six months later we haven't
even gotten an acknowledgment. I have gotten code put on the removal
list, i.e. quaddouble, because it did not work cross platform. And I
will make damn sure no other project like that where I have doubts
about quality will get into Sage.  lrs also has LLP64 issues which
will become relevant if it is used as a library from Sage as mentioned
above and that is a killer knock out punch for me right there.

All of the above leads me to the following conclusion: If upstream is
not willing to help out with doing fresh releases or making
improvements we ask for the code in question is not meant to be in
Sage. The maintenance in this situation often enough ends up in my lap
and I am sick and tired of it. I am not saying that this is the case
here, but if you want to see how communication about issues in code
should look like I would recommend you look at recent conversations on
the flint-devel mailing list I had with Bill Hart. The fact that lrs
does not have a mailing list, did not have a release since 2006 and so
on does not make me bullish.

Having all said the above I am more than happy to help out fixing
those issues in lrs, but my approval will only happen when I see that
upstream is willing to pitch in. Obviously you might "win" this vote,
but even then I will appeal to the JSage board and argue that the code
quality of lrs is not up to the standard we want. And I am pretty sure
the board members will listen to my arguments.

> That seems like the easiest way to add
> tests, unless David Avis is interested in adding it upstream.
>
> -Marshall

Cheers,

Michael


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



[sage-devel] Re: Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread William Stein

On Sat, Jan 17, 2009 at 6:44 PM, mabshoff  wrote:
>
>
>
> On Jan 17, 12:56 pm, mhampton  wrote:
>> On Jan 17, 8:36 am, mabshoff  wrote:
>
> Hi,
>
>> > But the code certainly needs prettying up, i.e. I couldn't find a test
>> > suite, the files were all dumped in the same directory and on and on.
>> > If upstream is interested I could certainly make some suggestions.
>>
>> I don't think for such a small program that the directory structure is
>> terribly important; I tend to like a flat file structure.
>
> I disagree. Having src, include, test, doc, example make it instantly
> understandable what is what.

This is a good measure of code quality, and certainly a good minimum
thing to strive for in software engineering.

>
>> There are already some tests for it in the optional code in
>> polyhedra.py, and I would be happy to add more.  Then we would be
>> testing it through sage.
>
> No, this is wrong. Stein's Axiom I: Everything not tested is broken.
>
> I want to be able to run "make check" on the code and not depend on
> anything else to verify that the code works. *Every* time we merge
> code this way and just assume that Sage's test suite will pick up all
> the issues I am the one who is getting screwed with the prime examples
> being Symmetrica and SYMPOW debugging on more exotic platforms.
> Writing tests for this code should be easy since you already have a
> command line mode. And since you can use it from Sage via pexpect it
> should be trivial to add a bunch of tests by logging the traffic.

+1

I strongly agree with the above comment.  If one is porting Sage to
system X, then the more one can break down the testing issues the
better, for numerous reasons.  It's bad if in order to test and debug
a little 200K program, it is important that all of the rest of Sage
has been built and is working.

> If you look at the Makefile of this code you should clearly see that
> it needs cleaning up and rewriting it from scratch in this case might
> be easier since only a couple files are involved. On problem right off
> the bat is that compiler as well as build flags are hard coded for
> each file. So if you do something about that and add tests someone
> might as well as put files into proper directories, etc.
>
> And lrs can be build as a library and probably will so be integrated
> in Sage in the future. Since there are issues with LLP64 this is not a
> fun thing to debug, i.e. anything that can go wrong will lead to a
> segfault which isn't fun to debug because it happens *in* Python or
> the Sage library,  and I wouldn't want to do it via Sage. How things
> like this can get screwed up badly (and this is not even a LLP64
> issue) is Symmetrica where we see segfaults on Solaris in 32 bit mode
> when running some examples. There is a test suite of about 400
> examples (at least according to the documentation) and after numerous
> attempts to contact the author we still don't have the files. The
> author does not reply to emails or bug reports and because of that as
> well as the truly horribly nature of the code (worst abuse of the
> preprocessor I have *ever* seen) I have lobbied to get the code thrown
> it.

I think you mean "thrown out".  I am sympathetic.

> Without the test suite it is unclear if Symmetrica even works
> reliably on all the platforms I am building Sage on. The same case
> about upstream who cannot be bothered to even reply to emails from a
> variety of Sage devs is the cddlib upstream. We have send a couple
> build system improvements to upstream and six months later we haven't
> even gotten an acknowledgment. I have gotten code put on the removal
> list, i.e. quaddouble, because it did not work cross platform. And I
> will make damn sure no other project like that where I have doubts
> about quality will get into Sage.  lrs also has LLP64 issues which
> will become relevant if it is used as a library from Sage as mentioned
> above and that is a killer knock out punch for me right there.
>
> All of the above leads me to the following conclusion: If upstream is
> not willing to help out with doing fresh releases or making
> improvements we ask for the code in question is not meant to be in
> Sage. The maintenance in this situation often enough ends up in my lap
> and I am sick and tired of it. I am not saying that this is the case
> here, but if you want to see how communication about issues in code
> should look like I would recommend you look at recent conversations on
> the flint-devel mailing list I had with Bill Hart. The fact that lrs
> does not have a mailing list, did not have a release since 2006 and so
> on does not make me bullish.
>
> Having all said the above I am more than happy to help out fixing
> those issues in lrs, but my approval will only happen when I see that
> upstream is willing to pitch in. Obviously you might "win" this vote,
> but even then I will appeal to the JSage board and argue that the code
> quality of lrs is not up to the standard we want. And I am pre

[sage-devel] Re: Proposal for inclusion of lrs as a standard package in Sage

2009-01-17 Thread mabshoff



On Jan 17, 6:57 pm, William Stein  wrote:



> > And lrs can be build as a library and probably will so be integrated
> > in Sage in the future. Since there are issues with LLP64 this is not a
> > fun thing to debug, i.e. anything that can go wrong will lead to a
> > segfault which isn't fun to debug because it happens *in* Python or
> > the Sage library,  and I wouldn't want to do it via Sage. How things
> > like this can get screwed up badly (and this is not even a LLP64
> > issue) is Symmetrica where we see segfaults on Solaris in 32 bit mode
> > when running some examples. There is a test suite of about 400
> > examples (at least according to the documentation) and after numerous
> > attempts to contact the author we still don't have the files. The
> > author does not reply to emails or bug reports and because of that as
> > well as the truly horribly nature of the code (worst abuse of the
> > preprocessor I have *ever* seen) I have lobbied to get the code thrown
> > it.
>
> I think you mean "thrown out".  I am sympathetic.

Yep, I have complained about this off list for over one year and on
list for more than six months. Note that there has been a trac ticket
about this issue for quite a while.



> > Having all said the above I am more than happy to help out fixing
> > those issues in lrs, but my approval will only happen when I see that
> > upstream is willing to pitch in. Obviously you might "win" this vote,
> > but even then I will appeal to the JSage board and argue that the code
> > quality of lrs is not up to the standard we want. And I am pretty sure
> > the board members will listen to my arguments.
>
> I don't think there should even be a vote until you sign off on the
> platform support.   Getting new packages into sage involves two
> things:  (1) a list of minimum requirements about code quality and
> portability, and (2) sufficient interest and support by the community.
>
> IMHO, lrs is in stage (1) right now.  Voting should be mainly for stage (2).

Thanks and good that you agree. Having said all of the above let me
stress again that I highly value how Marshall has been contributing to
Sage, i.e. all the future work on porting/reimplementing ideas and
code from phcpack will hopefully rock, but I would really like to see
a sign of upstream in form of an email before I spend more than an
hour or two on the code and start fixing issues like the build system.
I have 150+ open tickets against me in trac and I am not going to
"waste" my time on this unless there is a chance this will work.

And given the number of computer geeks hanging around a math
department I am somewhat surprised that code like lrs isn't much
cleaner from the get go, especially given the rather central nature of
it in its field one would assume that sooner or later someone with
build system and portability experience would have fixed the code.
This obviously leads to the joke about the professor being asked what
his favorite programming language is and the answer being "PhD" :)

> William

Cheers,

Michael
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---