[sage-devel] Sage 3.0.1-alpha1 released!

2008-04-30 Thread mabshoff

Hello,

this release should have been out two days ago, but somehow
general slowness and me spending a lot of time on various
porting issues did delay this release more than it should
have. Gary's pbuild should now be fully functional, but it
wasn't made the default build system yet. If you run

export SAGE_PBUILD=yes

before building Sage pbuild will be used. All the various
sage [-b|-ba|-br|...] should work as should -clone & friends.
The number of threads used during the build is set via

export SAGE_BUILD_THREADS=8

for eight threads. Switching between pbuild and normal
build is not possible in all cases, so in case of problems
nuke the build directory on devel/sage. Please try out
pbuild and report any trouble. We *really* want to switch
to it per default soon.

I am currently seeing an odd doctest failure in

doctest failure in devel/sage/sage/server/simple/twist.py

Other than that things should "just work".

Sources and binaries are in the usual place.

http://sage.math.washington.edu/home/mabshoff/release-cycles-3.0.1/sage-3.0.1.alpha1.tar

http://sage.math.washington.edu/home/mabshoff/release-cycles-3.0.1/sage-3.0.1.alpha0-sage.math-only-x86_64-Linux.tar.gz

We are getting toward the end of the release cycle

Merged in alpha1:

#1549: Alex Ghitza: Sage 2.9: fix optional doctests in tut.tex
#2216: Alex Ghitza: Creating an order in a number field -->
   infinite loop?
#2504: Alex Ghitza: number field .units() method caches
   proof=False result and returns it for proof=True
#2523: Craig Citro: bug in modular symbols for GammaH subgroup
#2716: Marshall Hampton: convex hulls and polyhedral functions
#2741: William Stein, Timothy Clemans: Implement mesh lines
   in 3d plots
#2938: Craig Citro: Fix ModularSymbols(GammaH(8,[3])).decomposition()
   ModularSymbols(GammaH(81, [10])).decomposition();
#3029: Tim Abbott: Move DEB_AUTO_UPDATE_DEBIAN_CONTROL out
   of Debian packages
#3030: Gary Furnish: Cython working directory command line
   option patch
#3031: Kiran Kedlaya, Craig Citro:  Add zeta_function method
   for schemes
#3032: Dan Bump: minor docstring cleanup in crystals.py and
   tensor_product.py
#3034: Tim Abbott: improved cleaning code for Debian packages
#3036: Tim Abbott: SAGE_TESTDIR broken
#3037: Gary Furnish, Robert Bradshaw: update cython to
   0.9.6.13-20080426
#3038: Tim Abbott: SAGE setup.py fixes for using Debian
   packaged polybori, zn_poly
#3039: Tim Abbott: Improve auto-generated version numbers
   for Debian packages
#3041: Francois Bissey, Michael Abshoff: optimization setting
   in LinBox.spkg is broken
#3054: Jason Grout: copying a graph doesn't copy _pos or
   _boundary
#3055: Jason Grout: creating subgraph does not delete _pos
   entries
#3057: Tom Boothby: MPolynomialRing_generic type-checks to
   determine commutativity
#3059: William Stein, Timothy Clemans: notebook -- rewrite
   notebook(...) function to *not* use SSL by default
#3061: Michael Abshoff, Max Murphy: use readlink and realpatch
   so that symlinking sage works
#3063: Didier Deshommes: empty matrices: norm() returns a
   ValueError
#3064: Didier Deshommes: empty matrices: density() function
   throws a ZeroDivisionError
#3066: Didier Deshommes: empty matrices: gram_schmidt() throws
   a NameError
#3067: Didier Deshommes: matrices: numeric_array() is missing
   an import

Merged in alpha0:

#783: Alex Ghitza: dilog is lame
#1187: Alex Ghitza: bug in G.conjugacy_classes_subgroups()
#1921: Alex Ghitza, Mike Hansen: add random_element to groups
#2302: Michael Abshoff, William Stein, Scot Terry: Add a 64
   bit glibc 2.3 based binary of Sage to the default
   build platforms
#2325: David Roe, Kiran Kedlaya: segfault in p-adic extension()
   method
#2821: Alex Ghitza: get rid of anything "about this document"
   sections of any sage docs that say "send email to stein"
#2939: David Joyner: piecewise.py improvements (docstring and
   laplace fixes)
#2985: Michael Abshoff: ITANIUM (RHEL 5) -- bug in rubik.py's
   OptimalSolver()
#2993: Michael Abshoff: OSX/gcc 4.2: disable padlock support
   per default
#2995: Alex Ghitza: some new functionality and doctests for
   congruence subgroups
#3003: Jason Bandlow: Bugfix for to_tableau() method of
   CrystalOfTableaux elements
#3005: Craig Citro: modabar -- failure to compute endomorphism
   ring
#3006: David Joyner: missing elliptic integrals in special.py
#3014: Michael Abshoff: ZZ.random_element -- corrupted docstring
#3017: Michael Abshoff: invalid link after make install
#3022: Tim Abbott: Debian package support for polybori
#3023: Jason Grout: make apply_map deal with empty matrices
#3025: William Stein: Sparse vector spaces don't cast on
   assignment
#3027: Tim Abbott: Debian lintian fixes
--~--~-~--~~~---~--~~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, se

[sage-devel] Re: gens and ngens

2008-04-30 Thread Robert Bradshaw

On Apr 30, 2008, at 10:43 PM, David Harvey wrote:

> Regarding ticket
>
> http://sagetrac.org/sage_trac/ticket/3045
>
> can someone explain to me what the "gens" and "ngens" methods are  
> supposed to mean? There seems to be a lot of inconsistency. For  
> example:
>
> sage: ZZ.gens()
> (1,)
>
> These are the additive generators.
>
> Ditto here:
>
> sage: GF(7).gens()(1,)
>
> Okay, what about this:
>
> sage: GF(49, "a").gens()(a,)
>
> That's not an additive generator. That's a generator as an algebra  
> over the base ring (GF(7) in this case). Similarly:
>
> sage: ZZ["x", "y"].gens()(x, y)
>
> So is this rule that
>
> (1) If R has a base ring distinct from R, then R.gens() returns the  
> generators over the base ring, where "generator" is interpreted  
> according to what category we're working in, and
> (2) If the base ring of R is just R, then R.gens() returns the  
> additive generators?
>
> That's a bit weird.
>
> I hate to think what happens if we implement, e.g. the ring of  
> continuous functions on the interval [0, 1]. I suppose then "gens"  
> needs to return some kind of uncountable generator object  
> perhaps (excuse the pun)?

This is one of the things David Roe and I have been looking at as  
part of the coercion model. One change is that one will be able to  
specify the category for which the generators are given, and are also  
lifting the assumption of finiteness (and the indexing may be  
something other than the integers).

I think the way to do things is (1). It is a little odd when the base  
of R is R, this happens for non-algebraic operations (e.g. completion  
of QQ to RR). If the R has a 1, then the 1 in R does generate over R  
and in some sense it's the best we can make sense of.

One question is what does one want to be able to do with generators.  
Ideally, for example, one could define morphisms by giving the images  
of the generators. One could do very generic operations (e.g.  
differentiation, quotients, etc.) just by knowing how the operators  
act on generators. To do this one needs to be able to decompose any  
element as some kind of a "structure" (e.g. algebraic expression)  
involving only generators and elements of the base. It is unclear  
what the best way of going about this is.

In any case, I'm curious what everyone else thinks as well.

- Robert


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] gens and ngens

2008-04-30 Thread David Harvey
Regarding ticket

http://sagetrac.org/sage_trac/ticket/3045

can someone explain to me what the "gens" and "ngens" methods are  
supposed to mean? There seems to be a lot of inconsistency. For example:

sage: ZZ.gens()
(1,)

These are the additive generators.

Ditto here:

sage: GF(7).gens()
(1,)

Okay, what about this:

sage: GF(49, "a").gens()
(a,)

That's not an additive generator. That's a generator as an algebra  
over the base ring (GF(7) in this case). Similarly:

sage: ZZ["x", "y"].gens()
(x, y)

So is this rule that

(1) If R has a base ring distinct from R, then R.gens() returns the  
generators over the base ring, where "generator" is interpreted  
according to what category we're working in, and
(2) If the base ring of R is just R, then R.gens() returns the  
additive generators?

That's a bit weird.

I hate to think what happens if we implement, e.g. the ring of  
continuous functions on the interval [0, 1]. I suppose then "gens"  
needs to return some kind of uncountable generator object perhaps  
(excuse the pun)?

david


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread root

>My point was that information on branch cuts should either A) be
>publicly available or B) preferably available as an export option.
>Mathematica and Maple both do A.  Perhaps B is the better answer for
>open systems.  In any event I stand by my point that this is only an
>issue because people have a tendency to ignore branch cuts; it is not
>actually a flaw inherent in aggregating many systems, and there are no
>technical reasons it couldn't be handled better.

Consider what you propose as mechanisms for "handled better".

Systems are unlikely to allow you to dynamically change the chosen
branch cuts ((B) above) since the assumption is "built in" to code,
such as the integration routines and the simplification routines.

Neither the authors of "System A" nor the authors of "System B"
would consider a bug report valid since they are both internally
consistent (one hopes), and thus not in error. But the subtle
mistake made by the user (under an incorrect assumption) is very
hard to track down. If Sage allows composing calls from System A
with calls from System B, this is sure to be an issue. The OpenMath
 project has been working on these kinds
of standards.




One hope is for the end user of the system to be able to look
up such information when needed. For most systems I have no idea
where to look for this. This requires good documentation but I'd
be the last to suggest this :-)

Another hope is to use a set of external test cases (the Computer
Algebra Test Suite (CATS) idea) that consists of well chosen problem
sets; in this case, problem sets that reveal the branch cuts. Each
system would show that they got "the canonical answer" (e.g. that they
agree with Schaum's Mathematical Handbook). In that way we could be
sure that the systems were "plug replaceable" at the user level. Thus,
a Mathematica or Maple user could be sure that Sage gave the same
results for trigonometric branch cuts. (To practice what I preach
I've been checking Axiom against published results from many
different sources. See the mailing list and src/input files.)

I feel that both the documentation and CATS approaches are both
important and necessary. Clearly these fall into (A) above.

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Martin Albrecht

> >  * Tobias Eibach and Gunnar Völkel: Optimising Gröbner Bases on Bivium
> > (used Sage to implement attack)
> >  * Burçin Eröcal: SCrypt: Using Symbolic Computation to Bridge the Gap
> > Between Algebra and Cryptography (module for Sage)
> >  * Ralf-Philipp Weinmann and Johannes Buchmann: Distributed Memory
> > Computation of Row-Reduced Echelon Forms over Finite Fields (benchmarked
> > against Sage) * Yours truly and Carlos Cid: Algebraic Techniques in
> > Differential Cryptanalysis (used Sage to implement attack)
> >
> >   (... yes, I know that 3 out of 4 are Sage developers, but still ...)
>
> So is 2.   Why isn't 1 a Sage developer?  We want their code :-).

I meant: Three authors on that list of four entries are Sage developers. 

> By the way, what does "benchmarked against Sage" mean in RPW's talk?

Ralf developed a parallel matrix reduction algorithm on distributed memory (!) 
and used Sage (LinBox and native implementation) to compare his timings.

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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: why do we not use malb's libsingular wrappings by default?

2008-04-30 Thread Martin Albrecht

On Thursday 01 May 2008, mhampton wrote:
> I'm sure Martin will answer this, but I suspect is an oversight based
> on common usage patterns - for most Groebner basis calculations, the
> overhead of pexpect is insignificant.

Yes, this is one reason. Another reason is that interrupting the calculation 
is much easier over pexpect. Third, note that you are potentially using 
different algorithms: I.groebner_basis() calls the groebner heuristic 
function while libsingular:std calls the standard Buchberger directly. We 
would use the excellent heuristics of Singular since they are implemented as 
Singular script.

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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread Jason Grout

root wrote:

> The "canonical example" which is in-plan to write is based on the
> paper in src/doc/primesp.spad.pamphlet
> 
> I obtained permission from the authors to use this paper in Axiom as
> the basis for a canonical example. It is not yet complete and fully
> integrated into Axiom so I don't talk about it much but it is 
> "in process".


I looked at this briefly; thanks for posting it.  (To everyone) It's my 
understanding that JSage (the Sage journal) will perform some of this 
function (i.e., it will be a place to publish nontrivial algorithms used 
in Sage with explanations, etc.), at least when JSage gets going 
seriously.  Perhaps the combination of Sage and JSage fulfills this 
desire to have clearly documented algorithms.

Of course, code eventually diverges from the papers in which it 
originally appeared, and probably rarely does the code in the original 
paper contain some of the performance-related system-specific tweaks 
that make it run faster, which may be a problem in comparing current 
code with original papers.

As for good documented code in Sage, I think Robert Miller's NICE is a 
great example of documented code with references to the original papers 
(and corrections to the original paper!)

Jason


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread root

>I do believe that computational mathematics needs to become a more
>rigorous subject. In fact, I'd like to see a piece of code written by
>Tim upholding the standards he is advocating, where someone has "taken
>the time", because I would like to compare it to my own code and get
>some ideas.
>
>However, I think that a vast number of mathematical papers are written
>to a vastly lower standard than a lot of code. Much of what is
>written, you really do need a fields medal to understand it and papers
>are absolutely full of errors, omissions, handwaving, unchecked
>assertions, statements which have come from the mouths of other people
>but never formally proved, etc, etc.
>
>Just this morning I read a note in which an important new result was
>mentioned. There was no indication of who the result was due to, what
>year they published it, or any other clues. I eventually tracked down
>another paper which mentioned it. But that paper also did not mention
>the authors of the original result. I eventually established that it
>was one or more of the authors of the very paper I was reading! They
>couldn't even reference their own work properly. Not only that, it
>appears to be an unpublished result, and may have been "proved" using
>a computer. I did however manage to find out which month they
>discovered their result, but this didn't help me recover the proof.
>
>On the up side, I also read a paper which was somewhat comprehensible,
>where all the terms were defined, references were given for omitted
>proofs (and they weren't in obscure papers in Russian) and the paper
>was really doing something interesting which was not written down in a
>textbook somewhere. I have to say though, that kind of paper is about
>as rare as the code you are referring to.

The "canonical example" which is in-plan to write is based on the
paper in src/doc/primesp.spad.pamphlet

I obtained permission from the authors to use this paper in Axiom as
the basis for a canonical example. It is not yet complete and fully
integrated into Axiom so I don't talk about it much but it is 
"in process".

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread Gary Furnish

My point was that information on branch cuts should either A) be
publicly available or B) preferably available as an export option.
Mathematica and Maple both do A.  Perhaps B is the better answer for
open systems.  In any event I stand by my point that this is only an
issue because people have a tendency to ignore branch cuts; it is not
actually a flaw inherent in aggregating many systems, and there are no
technical reasons it couldn't be handled better.

On Wed, Apr 30, 2008 at 6:39 PM, root <[EMAIL PROTECTED]> wrote:
>
>  >>   - It suffers from the "OpenMath" communication issue (e.g. if you
>  >>take an Axiom expression, export it to maple, compute with it,
>  >>and re-import it to Axiom you have violated a lot of type
>  >>assumptions in Axiom, possibly violated branch cut assumptions
>  >>(e.g. acosh), done invalid simplifications, and any number of
>  >>violent mathematical mistakes)
>  >
>  >If merely by exporting the data and re-importing it you have violated
>  >assumptions, then Axiom is broken and needs a better exporting system.
>
>  Well, that's something of the issue, actually.
>
>  Suppose we're looking at an inverse function that uses branch cuts.
>  System A uses "cut 1", say $-\pi < x < \pi$
>  System B uses "cut 2", say $0 < x < 2\pi$
>
>  Suppose you take a result from System A:
>
>   x=A.getResult()
>
>  simplify it with System B
>
>   y=B.simplify()
>
>  and hand it back to System A
>
>   A.compute(y)
>
>  Trigonometric simplification formulas depend on the branch cuts.
>  Thus, the simplification performed in B, while perfectly valid under
>  the branch cut assumptions in System B, may not be valid under the
>  branch cut assumptions in System A.
>
>  You get a final answer (assuming a LONG chain of using a lot of
>  available systems in Sage). Is the answer correct?
>
>  Do all of the subsystems in Sage that use transcendental functions
>  use the same choice of branch cuts in all their routines? Frankly,
>  I'm not sure how to begin to answer the question because (a) most
>  (all?) of the systems do NOT document their branch cut assumptions
>  and (b) I'd likely not be able to follow the logic of so many
>  systems through their simplifier.
>
>  Is this important? Only if you want a correct answer.
>
>
>
>  Tim
>
>
>
>
>
>  >
>

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread Bill Hart

I do believe that computational mathematics needs to become a more
rigorous subject. In fact, I'd like to see a piece of code written by
Tim upholding the standards he is advocating, where someone has "taken
the time", because I would like to compare it to my own code and get
some ideas.

However, I think that a vast number of mathematical papers are written
to a vastly lower standard than a lot of code. Much of what is
written, you really do need a fields medal to understand it and papers
are absolutely full of errors, omissions, handwaving, unchecked
assertions, statements which have come from the mouths of other people
but never formally proved, etc, etc.

Just this morning I read a note in which an important new result was
mentioned. There was no indication of who the result was due to, what
year they published it, or any other clues. I eventually tracked down
another paper which mentioned it. But that paper also did not mention
the authors of the original result. I eventually established that it
was one or more of the authors of the very paper I was reading! They
couldn't even reference their own work properly. Not only that, it
appears to be an unpublished result, and may have been "proved" using
a computer. I did however manage to find out which month they
discovered their result, but this didn't help me recover the proof.

On the up side, I also read a paper which was somewhat comprehensible,
where all the terms were defined, references were given for omitted
proofs (and they weren't in obscure papers in Russian) and the paper
was really doing something interesting which was not written down in a
textbook somewhere. I have to say though, that kind of paper is about
as rare as the code you are referring to.

Bill.

On 30 Apr, 23:37, David Harvey <[EMAIL PROTECTED]> wrote:
> On Apr 30, 2008, at 6:38 PM, root wrote:
>
>
>
> > David,
>
> >>> But we've already had this discussion and it is clear that I'm
> >>> completely out-in-the-weeds, talking-nonsense, and obviously have
> >>> no idea how REAL-open-source-projects are done. So lets just leave
> >>> it where it left off before, which is that I've simply dropped the
> >>> attempt to give the benefit of experience.
>
> >> Hi Tim,
>
> >> I've been vaguely following your posts to this list over the last few
> >> weeks. I don't think you're talking nonsense, but I don't completely
> >> understand what point you are trying to make. You seem to be making
> >> the following argument, correct me if I'm wrong. You claim that the
> >> documentation of the implementations of algorithms in Sage is not
> >> good enough, in the sense that someone looking at the Sage codebase
> >> in a few years won't be able to understand what is going on. You
> >> conclude that Sage will die. The implication is that the way to fix
> >> things is for us to improve the documentation of these
> >> implementations (perhaps via literate programming or whatever), so
> >> that Sage will be more likely to succeed.
>
> >> But isn't the core problem simply one of limited resources? We all
> >> have limited time (fields-medallists and non-fields-medallists
> >> alike), and so there is some tradeoff between getting something to
> >> work as quickly as possible (and hence is useful NOW) and making a
> >> beautiful product which meets higher standard of scholarship (and
> >> hence is more useful LATER). I can't see any way around this
> >> tradeoff. The only thing I can see that will stop a project like Sage
> >> from dying is to keep building a steady inflow of users and
> >> contributors, so that the knowledge you refer to remains as alive as
> >> possible.
>
> >> david
>
> > I've been associated with some open source projects, and in  
> > particular,
> > with Axiom, Magnus, and Doyen. And I've been programming for 35 years.
>
> In the interests of full disclosure, Sage is the first open source  
> project I've been seriously involved with, and I haven't even been  
> alive for 35 years :-)
>
> > Once a week I hear the "I don't have enough time" argument.
>
> > This argument is fine for most of the things I do, e.g. the things
> > I get paid to do because, frankly, almost nothing I've ever done will
> > be worth anything 10 years from now.
>
> > Computational Mathematics is different in this respect. The answer
> > to integrate(sin(x),x) will be the same 30 years from now. However,
> > the expert who wrote the code will not. (Manual Bronstein is dead).
> > Who will maintain this code if it requires a PhD in Infinite Group
> > Theory just to understand WHY it works and a computer science degree
> > to understand what the PROGRAM is doing?
>
> > The real tradeoff question is "Are you doing science?" or just
> > "playing around with ideas". Because, if you're doing science then
> > you're doing it for the community. Which means that there is a
> > standard of scholarship that is expected.
>
> > When I read a proof of a new theorem I expect to see references
> > to prior results, complete proof

[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread root

>>   - It suffers from the "OpenMath" communication issue (e.g. if you
>>take an Axiom expression, export it to maple, compute with it,
>>and re-import it to Axiom you have violated a lot of type
>>assumptions in Axiom, possibly violated branch cut assumptions
>>(e.g. acosh), done invalid simplifications, and any number of
>>violent mathematical mistakes)
>
>If merely by exporting the data and re-importing it you have violated
>assumptions, then Axiom is broken and needs a better exporting system.

Well, that's something of the issue, actually. 

Suppose we're looking at an inverse function that uses branch cuts.
System A uses "cut 1", say $-\pi < x < \pi$
System B uses "cut 2", say $0 < x < 2\pi$

Suppose you take a result from System A:

  x=A.getResult()

simplify it with System B

  y=B.simplify()

and hand it back to System A

  A.compute(y)

Trigonometric simplification formulas depend on the branch cuts.
Thus, the simplification performed in B, while perfectly valid under
the branch cut assumptions in System B, may not be valid under the
branch cut assumptions in System A.

You get a final answer (assuming a LONG chain of using a lot of
available systems in Sage). Is the answer correct?

Do all of the subsystems in Sage that use transcendental functions
use the same choice of branch cuts in all their routines? Frankly,
I'm not sure how to begin to answer the question because (a) most
(all?) of the systems do NOT document their branch cut assumptions
and (b) I'd likely not be able to follow the logic of so many 
systems through their simplifier.

Is this important? Only if you want a correct answer.

Tim





--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Fwd: [Cython] Porting the Docs

2008-04-30 Thread mhampton

Yeah! This has already helped me a lot.  Many thanks to everyone
involved.

-M. Hampton

On Apr 30, 10:48 am, "William Stein" <[EMAIL PROTECTED]> wrote:
> Hi,
>
> Cython now has beautiful-to-behold documentation.  See below.
>
> -- Forwarded message --
> From: Gabriel Gellner <[EMAIL PROTECTED]>
> Date: Wed, Apr 30, 2008 at 8:39 AM
> Subject: Re: [Cython] Porting the Docs
> To: Cython-dev <[EMAIL PROTECTED]>
>
> So I have finished the first rough mockup, which mainly consists of getting
>  the markup correct. There are still some rough edges, mainly with tables, and
>  some of the latex output, but in the spirit of release early release often 
> ;-)
>
>  Check out the html at:
>  http://www.mudskipper.ca/cython-doc
>
>  Get the pdf at:
>  http://www.mudskipper.ca/cython.pdf
>
>  And finally get the source at:
>  http://www.mudskipper.ca/cython_doc.tar.gz
>  or
>  http://www.mudskipper.ca/cython_doc.zip
>
>  Again I would appreciate any comments on if I am screwing up authorship. Down
>  the road I think it would be good to attribute everything to the 'Cython Doc
>  Team' and have a page that lists contributers. To do this we should make the
>  license and authorship on the wiki more explicit. Tell me what you think? I 
> am
>  no lawyer, and certainly don't want to piss anyone off who has put the hard
>  work into documenting either cython or pyrex.
>
>  My plan for the next steps (in order of importance, any comments):
>  - Make a PyGments lexer for cython/pyrex so we get nice color coding.
>  - Fix up the latex style file so that boxes are not messed up when we have
>   code examples.
>  - Put on my writing hat, and do an overhaul of the structure of the docs so
>   that it is faster to navigate. I will be using the python doc structure as a
>   reference.
>  - Get some simple howto's written.
>  - Thinking if there is an easy way to test the cython code in the docs so 
> that
>   I can ensure accuracy.
>
>  Gabriel
>  ___
>  Cython-dev mailing list
>  [EMAIL PROTECTED]
>  http://codespeak.net/mailman/listinfo/cython-dev
>
> --
> William Stein
> Associate Professor of Mathematics
> University of Washingtonhttp://wstein.org
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Jaap Spies

William Stein wrote:
> On Wed, Apr 30, 2008 at 3:19 PM, Jaap Spies <[EMAIL PROTECTED]> wrote:
>>  root wrote:
>>  > I WANT Sage to live. I want it to succeed. I want it to be the
>>  > lingua-franca of the business so that we can all post our results
>>  > "in Sage" at conferences. I want to be able to "drag and drop"
>>  > your publication onto my system and have your code "just work",
>>  > your documentation "just connect". I want to be able to not only
>>  > use what you write, but to understand it so I can use it effectively.
>>  > I want MMA and Maple users to "write for Sage" instead.
>>  >
>>
>>  Yes! You got it.
>>
>>
>>  > My problem is that I don't see the fundamental difference between
>>  > Sage and any other system that I've touched in the past. And I don't
>>  > want this whole generation of mathematicians to "do it all over again"
>>  > without some fundamental gain.
>>
>>  The fundamental difference is Python and William! And 100+ developers
>>  who want Sage to succeed.
>>
>>
>>   I may be wrong that the literate
>>  > documentation is the key. And I admit I'm a knuth-boy fanatic about it.
>>
>>  I once believed in Literate Programming, but I lost faith. It is just
>>  unpractical like a Procrustes bed.
>>
> 
> For those not as familiar with Greek literature as Jaap,
> I found this on the 'net:
> "Procrustes was the ancient champion of enforced conformity. In Greek
> antiquity he was a legendary highwayman who lived in Attica. He had an
> iron bed which he regarded as the standard of length. Because it just
> fit him, he concluded that every one should fit it. He stopped every
> traveler and tied him to the bed. If the person happened to be too
> short, Procrustes stretched him until he attained the correct length;
> if he happened to be too long, his legs were cut off until he met the
> proper requirement. Thus was everyone made identical in size."
> 
> I also found this from Knuth (who introduced LP): "Literate
> programming is a very personal thing. I think it's terrific, but that
> might well be because I'm a very strange person. [...] I don't believe
> in forcing ideas on anybody. If literate programming isn't your style,
> please forget it and do what you like. If nobody likes it but me, let
> it die."
> 
> Fortunately, Knuth himself is not like Procrustes.
> 

Happy us! We can use the good stuff from Knuth!

Jaap


>  -- William
> 
> > 
> 


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread mabshoff



On May 1, 12:51 am, "Gary Furnish" <[EMAIL PROTECTED]> wrote:
> >   - It suffers from the "OpenMath" communication issue (e.g. if you
> >    take an Axiom expression, export it to maple, compute with it,
> >    and re-import it to Axiom you have violated a lot of type
> >    assumptions in Axiom, possibly violated branch cut assumptions
> >    (e.g. acosh), done invalid simplifications, and any number of
> >    violent mathematical mistakes)
>
> If merely by exporting the data and re-importing it you have violated
> assumptions, then Axiom is broken and needs a better exporting system.

Nope, Tim is right on this one. Different systems make different
assumptions on branch cuts, so this is more than a theoretical
problem. But Sage is not really in the business of taking symbolic
expressions and shoveling them around to various systems to do
manipulations. It is certainly doable, but not very practical. There
will be other cases where similar issues will arise or are even now
are already a problem, but if your approach is Sage like, i.e.
combining different pieces of software to do computations, there is
really now way around this. And this generally assumes that each
system in itself is consistent and bug free, but that ought to be
expect. Reality might look quite different.

Cheers,

Michael
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread Gary Furnish

>   - It suffers from the "I can do it better", do-it-yet-again-in-python
>syndrome, where it will be discovered that python is too slow
>so we need to rewrite it in Cython and do obscure, undocumented,
>performance enhancing software hacks.

Unfortunately computers live in the physical world, not the
theoretical world.  Ugly performance enhancing software hacks are
often needed to make theoretical algorithms viable.

>   - It suffers from the "OpenMath" communication issue (e.g. if you
>take an Axiom expression, export it to maple, compute with it,
>and re-import it to Axiom you have violated a lot of type
>assumptions in Axiom, possibly violated branch cut assumptions
>(e.g. acosh), done invalid simplifications, and any number of
>violent mathematical mistakes)

If merely by exporting the data and re-importing it you have violated
assumptions, then Axiom is broken and needs a better exporting system.

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread David Harvey


On Apr 30, 2008, at 7:06 PM, root wrote:

> I WANT Sage to live. I want it to succeed. I want it to be the
> lingua-franca of the business so that we can all post our results
> "in Sage" at conferences. I want to be able to "drag and drop"
> your publication onto my system and have your code "just work",
> your documentation "just connect". I want to be able to not only
> use what you write, but to understand it so I can use it effectively.
> I want MMA and Maple users to "write for Sage" instead.

Awesome.

> My problem is that I don't see the fundamental difference between
> Sage and any other system that I've touched in the past.

Obviously you must see something, or you wouldn't be writing to this  
list :-)

> And I don't
> want this whole generation of mathematicians to "do it all over again"
> without some fundamental gain. I may be wrong that the literate
> documentation is the key. And I admit I'm a knuth-boy fanatic about  
> it.
> My question is, what can you suggest that will make it live when  
> others
> have not?

A vibrant developer community. Lots of naive young people like me,  
who don't listen to doomsayers like you :-)

david


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread root

>But you still haven't told me: where is all this time going to come  
>from? I can't magically make more time appear. I have other things to  
>do. It's a damn shame.



and, for the record, I vote for MaryAnn. :-)

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 3:19 PM, Jaap Spies <[EMAIL PROTECTED]> wrote:
>
>  root wrote:
>  > I WANT Sage to live. I want it to succeed. I want it to be the
>  > lingua-franca of the business so that we can all post our results
>  > "in Sage" at conferences. I want to be able to "drag and drop"
>  > your publication onto my system and have your code "just work",
>  > your documentation "just connect". I want to be able to not only
>  > use what you write, but to understand it so I can use it effectively.
>  > I want MMA and Maple users to "write for Sage" instead.
>  >
>
>  Yes! You got it.
>
>
>  > My problem is that I don't see the fundamental difference between
>  > Sage and any other system that I've touched in the past. And I don't
>  > want this whole generation of mathematicians to "do it all over again"
>  > without some fundamental gain.
>
>  The fundamental difference is Python and William! And 100+ developers
>  who want Sage to succeed.
>
>
>   I may be wrong that the literate
>  > documentation is the key. And I admit I'm a knuth-boy fanatic about it.
>
>  I once believed in Literate Programming, but I lost faith. It is just
>  unpractical like a Procrustes bed.
>

For those not as familiar with Greek literature as Jaap,
I found this on the 'net:
"Procrustes was the ancient champion of enforced conformity. In Greek
antiquity he was a legendary highwayman who lived in Attica. He had an
iron bed which he regarded as the standard of length. Because it just
fit him, he concluded that every one should fit it. He stopped every
traveler and tied him to the bed. If the person happened to be too
short, Procrustes stretched him until he attained the correct length;
if he happened to be too long, his legs were cut off until he met the
proper requirement. Thus was everyone made identical in size."

I also found this from Knuth (who introduced LP): "Literate
programming is a very personal thing. I think it's terrific, but that
might well be because I'm a very strange person. [...] I don't believe
in forcing ideas on anybody. If literate programming isn't your style,
please forget it and do what you like. If nobody likes it but me, let
it die."

Fortunately, Knuth himself is not like Procrustes.

 -- William

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread David Harvey


On Apr 30, 2008, at 6:38 PM, root wrote:

>
> David,
>
>>> But we've already had this discussion and it is clear that I'm
>>> completely out-in-the-weeds, talking-nonsense, and obviously have
>>> no idea how REAL-open-source-projects are done. So lets just leave
>>> it where it left off before, which is that I've simply dropped the
>>> attempt to give the benefit of experience.
>>
>> Hi Tim,
>>
>> I've been vaguely following your posts to this list over the last few
>> weeks. I don't think you're talking nonsense, but I don't completely
>> understand what point you are trying to make. You seem to be making
>> the following argument, correct me if I'm wrong. You claim that the
>> documentation of the implementations of algorithms in Sage is not
>> good enough, in the sense that someone looking at the Sage codebase
>> in a few years won't be able to understand what is going on. You
>> conclude that Sage will die. The implication is that the way to fix
>> things is for us to improve the documentation of these
>> implementations (perhaps via literate programming or whatever), so
>> that Sage will be more likely to succeed.
>>
>> But isn't the core problem simply one of limited resources? We all
>> have limited time (fields-medallists and non-fields-medallists
>> alike), and so there is some tradeoff between getting something to
>> work as quickly as possible (and hence is useful NOW) and making a
>> beautiful product which meets higher standard of scholarship (and
>> hence is more useful LATER). I can't see any way around this
>> tradeoff. The only thing I can see that will stop a project like Sage
>> from dying is to keep building a steady inflow of users and
>> contributors, so that the knowledge you refer to remains as alive as
>> possible.
>>
>> david
>
> I've been associated with some open source projects, and in  
> particular,
> with Axiom, Magnus, and Doyen. And I've been programming for 35 years.

In the interests of full disclosure, Sage is the first open source  
project I've been seriously involved with, and I haven't even been  
alive for 35 years :-)

> Once a week I hear the "I don't have enough time" argument.
>
> This argument is fine for most of the things I do, e.g. the things
> I get paid to do because, frankly, almost nothing I've ever done will
> be worth anything 10 years from now.
>
> Computational Mathematics is different in this respect. The answer
> to integrate(sin(x),x) will be the same 30 years from now. However,
> the expert who wrote the code will not. (Manual Bronstein is dead).
> Who will maintain this code if it requires a PhD in Infinite Group
> Theory just to understand WHY it works and a computer science degree
> to understand what the PROGRAM is doing?
>
> The real tradeoff question is "Are you doing science?" or just
> "playing around with ideas". Because, if you're doing science then
> you're doing it for the community. Which means that there is a
> standard of scholarship that is expected.
>
> When I read a proof of a new theorem I expect to see references
> to prior results, complete proofs of lemmas, complete documentation
> of assumptions, and a full explanation of the whys-and-wherefores.
> It takes about 5-10 pages to reach this standard of publication
> for most mathematics. And THAT TAKES TIME.
>
> So ask yourself the following question:
>   What is the "standard of publication" for COMPUTATIONAL mathematics?
>
> What *I* expect to see is an explanation of the mathematics, possibly
> with proofs (if new). I expect an explanation of how and why the CODE
> implements the mathematics. I expect complexity bounds. I expect an
> explanation of optimizations that are not obvious but are critical.
> This may take 10-100 pages to reach this standard of publication for
> computational mathematics. and THAT TAKES TIME.
>
> If you haven't given me that level of documentation then you haven't
> given me anything but your lab notebook. You've published nothing but
> your scribblings to yourself with no assurance that (a) it is  
> mathematically
> sound, (b) it is correct, and (c) the who/what/where basis for your
> work is anything but your own self-mutterings.
>
> Do we build a science on this?

No, I agree we can't build a science on this.

But you still haven't told me: where is all this time going to come  
from? I can't magically make more time appear. I have other things to  
do. It's a damn shame.

(Oh this reminds me of a wonderful novel by Michael Ende called  
"Momo", about a town that gets invaded by strange evil men in grey  
suits who trick everyone into putting their time in a special "time  
bank", and of course they never get their time back. Momo is a little  
girl who saves the world. Highly recommended.)

> A few centuries ago a mathematician could claim anything by
> handwaving, and "prove it" by solving the questions posed to him.
>
> In the last century the standard of proof has risen in mathematics
> from handwaving, thru simple explanations, and eve

[sage-devel] Re: fast vs viable

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 3:38 PM, root <[EMAIL PROTECTED]> wrote:
 >  Sage is dancing around like it has discovered something new and
>  wonderful.

Yes, I'm certainly pretty excited about the Sage project, especially
the many really interesting people involved in it!

> But I've been in this business now since the late 80s and
>  Sage has done absolutely NOTHING that has not already been done
>  before.

There are numerous specific technical algorithms now implemented
in Sage that are not implemented in any other system.  But that is *not*
the main point of Sage.

>  Maple used a highly popular language (C) as its basis for a
>  user interface,

Maple's language is a special purpose language designed for that
system, which is based on another language.  Sage really does
use a mainstream language.  There is a difference.

>  MMA used Lisp-like notation initially.

Mathematica uses a special purpose language designed for mathematics.
Even if it is inspired by Lisp it is not lisp.   Sage really does use
a mainstream programming language.

> Magnus collected experts and was funded by NSF.
> Axiom was funded by NSF and IBM

I'm really glad that getting funded is not something new for
mathematical software!

>. Axiom used to be "free and open source" when I was at IBM. If you
>  asked I'd send you a tape of the source code.

"Ask and I'll send you a tape" is hugely different than freely available
on the internet and licensed under the GPL.Stallman's GPL itself *is*
a powerful and new idea compared that was created in response
to... we'll we all know the story.

>  Magnus has always been
>  free as Gilbert thought it was important.  William Stein is a new
>  incarnation of Gilbert Baumslag, 20 years later, thinking he's
>  discovered something that nobody ever noticed before.

I honestly don't care whether Sage contains amazing new "stuff"
or not; I do not care about discovering something new in mathematical
software or not; computer algebra is *not* my research area -- my research
is in number theory, and that's where I care about discovering new
things.  I am driven by one single goal related to Sage:

  Create a free viable open source alternative to Maple, Mathematica,
  Magma, and  Matlab, which means a community, distribution system,
  funding model, books, papers, etc.

If something new and interesting comes out of this, so be it.

>  Sage has some deep problems which have yet to surface.
>   - It suffers from the namespace problem that Maple struggles with.

Sage's namespace semantics *are* Python's, and Python has by
far the best namespace semantics I've ever seen in any programming
language.   Hands down.

>   - It suffers from the performance issues of multiple systems being
>called by intermediate parsers from an interpreted core.

Sage has the unique *capability* of doing calculations that involve
multiple systems being called from an interpreted core.

>   - It suffers from the "I can do it better", do-it-yet-again-in-python
>syndrome, where it will be discovered that python is too slow
>so we need to rewrite it in Cython and do obscure, undocumented,
>performance enhancing software hacks.

Real life software that has as one of its goals to be fast often
involves performance enhancing hacks.

>   - It suffers from the "OpenMath" communication issue (e.g. if you
>take an Axiom expression, export it to maple, compute with it,
>and re-import it to Axiom you have violated a lot of type
>assumptions in Axiom, possibly violated branch cut assumptions
>(e.g. acosh), done invalid simplifications, and any number of
>violent mathematical mistakes)

Sage does not in any way use OpenMath.

>   - It collects system that will eventually lose their maintainers
>due to the many reasons that open source software stops being
>maintained. Will Sage simply drop the software you depend upon?

We only include immortal programs in Sage.

>   - It drops "legacy" systems. But mathematicians rarely, if ever,
>upgrade to the latest tools and opsys releases. It is fine to
>say "update your compiler" (twice replied to my bugs) to a
>hacker like me but most people won't do it. The only reason it
>is working now is that all of the code is "new". Wait 5 years
>and you'll find out that most people drop the system because
>it requires them to upgrade their whole working environment.
>   - the list goes on

Are you saying that Sage is doomed because most people
won't upgrade anything on their computers for the next five years?

>  What I'm suggesting is that if they want Sage to be different from
>  the many other systems lying dead on the road (e.g. Magnus) then they
>  need to capture the expertise needed to write, maintain, modify, and
>  extend the algorithms AS THEY ARE WRITTEN.

So Magnus is roadkill on the information superhighway?

>  But the argument is "that takes time". But it takes MUCH more time to
>  reverse engineer a mathematical algorithm (i

[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Jaap Spies

root wrote:
> I WANT Sage to live. I want it to succeed. I want it to be the
> lingua-franca of the business so that we can all post our results
> "in Sage" at conferences. I want to be able to "drag and drop"
> your publication onto my system and have your code "just work",
> your documentation "just connect". I want to be able to not only
> use what you write, but to understand it so I can use it effectively.
> I want MMA and Maple users to "write for Sage" instead.
> 

Yes! You got it.

> My problem is that I don't see the fundamental difference between
> Sage and any other system that I've touched in the past. And I don't
> want this whole generation of mathematicians to "do it all over again"
> without some fundamental gain.

The fundamental difference is Python and William! And 100+ developers
who want Sage to succeed.

  I may be wrong that the literate
> documentation is the key. And I admit I'm a knuth-boy fanatic about it.

I once believed in Literate Programming, but I lost faith. It is just
unpractical like a Procrustes bed.

> My question is, what can you suggest that will make it live when others
> have not?
> 

See what happened since 2005. Sage has momentum, it will survive at least
a few decades.

Jaap



> Tim
> 
> > 
> 


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread root

Michael,

>On the other hand: I couldn't find the python bindings, neither in the
>sf tarball nor the sf svn/cvs repo. Any pointers? I couldn't find any
>reference to python in any file:

I found a copy of it. See 


This will unpack into "gap_front_end" (Magnus can talk to GAP)

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Jason Grout

root wrote:
> Jason, Please send me a diff-Naur patch of your changes. --Tim

I'm posting here for other people who may be trying to compile it. 
These, of course, are quick hacks that get it to compile (equivalent to 
commenting out the offending lines).  If there is a quick test or two 
that you want me to do, let me know.

diff -Naur magnus20060530/back_end/libg++/include/Integer.h 
magnusnew/back_end/libg++/include/Integer.h
--- magnus20060530/back_end/libg++/include/Integer.h2006-04-14 
14:21:19.0 -0500
+++ magnusnew/back_end/libg++/include/Integer.h 2008-04-30 
15:22:39.0 -0500
@@ -129,7 +129,7 @@

  // (constructive binary operations are inlined below)

-#if defined (__GNUG__) && ! defined (__STRICT_ANSI__)
+#if defined (__GNUG__) && ! defined (__STRICT_ANSI__) && 0
friend Integer operator ? (const Integer& x, const Integer& y); // max
  #endif
@@ -689,7 +689,7 @@
return *this;
  }

-#if defined (__GNUG__) && ! defined (__STRICT_ANSI__)
+#if defined (__GNUG__) && ! defined (__STRICT_ANSI__) && 0
  inline Integer operator ? (const Rational& x, const Rational& y); 
// max
  #endif
@@ -231,7 +231,7 @@
  inline const Integer& Rational::denominator() const { return den; }
  inline Rational::operator double() const { return ratio(num, den); }

-#if defined (__GNUG__) && ! defined (__STRICT_ANSI__)
+#if defined (__GNUG__) && ! defined (__STRICT_ANSI__) && 0
  inline Rational operator ’ as non-function
include/Integer.h:134: error: expected ‘;’ before ‘?’ token
include/Integer.h:693: error: expected initializer before ‘?’ token
include/Integer.h:698: error: expected initializer before ‘?’ token
make[3]: *** [src/obj/Intdouble.o] Error 1
make[3]: Leaving directory 
`/home/grout/Desktop/magnus20060530/back_end/libg++'
make[2]: *** [liblibg++] Error 2
make[2]: Leaving directory 
`/home/grout/Desktop/magnus20060530/back_end/SessionManager'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/grout/Desktop/magnus20060530/back_end'
make: *** [all] Error 2


Thanks,

Jason


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread mabshoff

On May 1, 1:06 am, root <[EMAIL PROTECTED]> wrote:

Hi Tim,

> I WANT Sage to live. I want it to succeed. I want it to be the
> lingua-franca of the business so that we can all post our results
> "in Sage" at conferences. I want to be able to "drag and drop"
> your publication onto my system and have your code "just work",
> your documentation "just connect". I want to be able to not only
> use what you write, but to understand it so I can use it effectively.
> I want MMA and Maple users to "write for Sage" instead.
>
> My problem is that I don't see the fundamental difference between
> Sage and any other system that I've touched in the past.

I think in Open Source it is difficult to tell what makes a project
succeed and what makes it fail. If you look way back and consider the
*BSD kernel, the Hurd and the Linux kernel it was unclear which kernel
would "win" in the end. I think it came to a surprise of many people
and onlookers that the seemingly sucky Linux kernel made the race and
not the more established and well proven BSD kernel or the
"revolutionary" Hurd. In my opinion it boiled down to leadership and
Linus made all the difference for the Linux kernel. I think Sage is
what it is today because William made it that way. The big difference
seems to be that contributing to Sage is significantly easier than to
other open source math projects and at some point you get over the
hump and are in a positive feedback cycle. To me Sage clearly has
reached that point. Will it be there forever or even live twenty years
from now? Maybe, mabye not, it all depends on how the Sage community
develops. I think that software has a life cycle and that mathematical
software is no different.

> And I don't
> want this whole generation of mathematicians to "do it all over again"
> without some fundamental gain.

Many components of Sage live independently of it and if the Math
community in general wants to keep writing Open Source software life
will go on. Is it wasteful and wouldn't it be better if only one or
two strong implementations in any given area of mathematics would
exist? Maybe, but I think in the end duplicate development effort is
something we have to live with and competition is good for business.

Other projects that are very much like Sage have been attempted, some
of them on top of proprietary systems which were doomed to fail IMHO,
and others that eventually died. I don't really think Magnus had the
same broad approach as Sage does, but there certainly was the same
design principal, i.e. using components and glue them together
somehow.

> I may be wrong that the literate
> documentation is the key. And I admit I'm a knuth-boy fanatic about it.

You are not giving any secrets away here ;)

> My question is, what can you suggest that will make it live when others
> have not?

What would the alternative be? I don't see anything fundamentally
broken with the current development model of mathematical software. If
you are on the right track Axiom will be there in 30+ years while Sage
might have gone the way of the Dodo.

> Tim

Cheers,

Michael
Cheers,

Michael
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: fast vs viable (offline post)

2008-04-30 Thread mhampton

I think that generally new code in sage has been meeting a pretty high
standard.  I think I am a good test case, since I have never been to a
Sage Days (except for the joint meetings in San Diego, when I was too
busy to interact a whole lot with other developers), and I often try
to figure out how various modules work without talking to their
developers.  Recently, for example, I was looking at Carl Witty's
real_roots code, and I thought he did a great job within the source of
explaining it all.  I really didn't need to contact him to find out
how it worked.

>From my perspective, Sage has been doing a good job of transitioning
from William Stein's amazing initial efforts (which considering the
timeframe had pretty good documentation) to more rigorous and
standardized documentation and testing.  It certainly has room for
improvement but I see no reason not to be optimistic.

I have both pure and applied computational projects, with very
particular demands, and no other software in the world can currently
meet them all.  So for me, Sage certainly can contribute more than
just new algorithms.

Marshall Hampton

On Apr 30, 4:38 pm, root <[EMAIL PROTECTED]> wrote:
> David,
>
>
>
> >> But we've already had this discussion and it is clear that I'm
> >> completely out-in-the-weeds, talking-nonsense, and obviously have
> >> no idea how REAL-open-source-projects are done. So lets just leave
> >> it where it left off before, which is that I've simply dropped the
> >> attempt to give the benefit of experience.
>
> >Hi Tim,
>
> >I've been vaguely following your posts to this list over the last few
> >weeks. I don't think you're talking nonsense, but I don't completely
> >understand what point you are trying to make. You seem to be making
> >the following argument, correct me if I'm wrong. You claim that the
> >documentation of the implementations of algorithms in Sage is not
> >good enough, in the sense that someone looking at the Sage codebase
> >in a few years won't be able to understand what is going on. You
> >conclude that Sage will die. The implication is that the way to fix
> >things is for us to improve the documentation of these
> >implementations (perhaps via literate programming or whatever), so
> >that Sage will be more likely to succeed.
>
> >But isn't the core problem simply one of limited resources? We all
> >have limited time (fields-medallists and non-fields-medallists
> >alike), and so there is some tradeoff between getting something to
> >work as quickly as possible (and hence is useful NOW) and making a
> >beautiful product which meets higher standard of scholarship (and
> >hence is more useful LATER). I can't see any way around this
> >tradeoff. The only thing I can see that will stop a project like Sage
> >from dying is to keep building a steady inflow of users and
> >contributors, so that the knowledge you refer to remains as alive as
> >possible.
>
> >david
>
> I've been associated with some open source projects, and in particular,
> with Axiom, Magnus, and Doyen. And I've been programming for 35 years.
>
> Once a week I hear the "I don't have enough time" argument.
>
> This argument is fine for most of the things I do, e.g. the things
> I get paid to do because, frankly, almost nothing I've ever done will
> be worth anything 10 years from now.
>
> Computational Mathematics is different in this respect. The answer
> to integrate(sin(x),x) will be the same 30 years from now. However,
> the expert who wrote the code will not. (Manual Bronstein is dead).
> Who will maintain this code if it requires a PhD in Infinite Group
> Theory just to understand WHY it works and a computer science degree
> to understand what the PROGRAM is doing?
>
> The real tradeoff question is "Are you doing science?" or just
> "playing around with ideas". Because, if you're doing science then
> you're doing it for the community. Which means that there is a
> standard of scholarship that is expected.
>
> When I read a proof of a new theorem I expect to see references
> to prior results, complete proofs of lemmas, complete documentation
> of assumptions, and a full explanation of the whys-and-wherefores.
> It takes about 5-10 pages to reach this standard of publication
> for most mathematics. And THAT TAKES TIME.
>
> So ask yourself the following question:
>   What is the "standard of publication" for COMPUTATIONAL mathematics?
>
> What *I* expect to see is an explanation of the mathematics, possibly
> with proofs (if new). I expect an explanation of how and why the CODE
> implements the mathematics. I expect complexity bounds. I expect an
> explanation of optimizations that are not obvious but are critical.
> This may take 10-100 pages to reach this standard of publication for
> computational mathematics. and THAT TAKES TIME.
>
> If you haven't given me that level of documentation then you haven't
> given me anything but your lab notebook. You've published nothing but
> your scribblings to yourself with no assurance that (

[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread root

I WANT Sage to live. I want it to succeed. I want it to be the
lingua-franca of the business so that we can all post our results
"in Sage" at conferences. I want to be able to "drag and drop"
your publication onto my system and have your code "just work",
your documentation "just connect". I want to be able to not only
use what you write, but to understand it so I can use it effectively.
I want MMA and Maple users to "write for Sage" instead.

My problem is that I don't see the fundamental difference between
Sage and any other system that I've touched in the past. And I don't
want this whole generation of mathematicians to "do it all over again"
without some fundamental gain. I may be wrong that the literate 
documentation is the key. And I admit I'm a knuth-boy fanatic about it.
My question is, what can you suggest that will make it live when others
have not?

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread root

>On the other hand: I couldn't find the python bindings, neither in the
>sf tarball nor the sf svn/cvs repo. Any pointers? I couldn't find any
>reference to python in any file:

The python bindings were created using SWIG. I'll see if I have a copy
(I no longer work at CCNY). Gilbert probably has them. I've copied him.



> A couple other things I noticed:

Umm, yeah. The makefiles are, shall we say, "extremely elegant".
I didn't write them. I'd be happy to have any patches you suggest
that might fit your requirements. Be aware that the Makefiles are
self-modifying during build.



>while there is some documentation the format is not in something
>that seems easily extractable.

The documentation is designed to be used by the front-end system.
We won't mention that the code and algorithms need documentation :-)

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread root

Jason, Please send me a diff-Naur patch of your changes. --Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] fast vs viable (offline post)

2008-04-30 Thread root

David,

>> But we've already had this discussion and it is clear that I'm
>> completely out-in-the-weeds, talking-nonsense, and obviously have
>> no idea how REAL-open-source-projects are done. So lets just leave
>> it where it left off before, which is that I've simply dropped the
>> attempt to give the benefit of experience.
>
>Hi Tim,
>
>I've been vaguely following your posts to this list over the last few  
>weeks. I don't think you're talking nonsense, but I don't completely  
>understand what point you are trying to make. You seem to be making  
>the following argument, correct me if I'm wrong. You claim that the  
>documentation of the implementations of algorithms in Sage is not  
>good enough, in the sense that someone looking at the Sage codebase  
>in a few years won't be able to understand what is going on. You  
>conclude that Sage will die. The implication is that the way to fix  
>things is for us to improve the documentation of these  
>implementations (perhaps via literate programming or whatever), so  
>that Sage will be more likely to succeed.
>
>But isn't the core problem simply one of limited resources? We all  
>have limited time (fields-medallists and non-fields-medallists  
>alike), and so there is some tradeoff between getting something to  
>work as quickly as possible (and hence is useful NOW) and making a  
>beautiful product which meets higher standard of scholarship (and  
>hence is more useful LATER). I can't see any way around this  
>tradeoff. The only thing I can see that will stop a project like Sage  
>from dying is to keep building a steady inflow of users and  
>contributors, so that the knowledge you refer to remains as alive as  
>possible.
>
>david

I've been associated with some open source projects, and in particular,
with Axiom, Magnus, and Doyen. And I've been programming for 35 years.

Once a week I hear the "I don't have enough time" argument.

This argument is fine for most of the things I do, e.g. the things
I get paid to do because, frankly, almost nothing I've ever done will
be worth anything 10 years from now.

Computational Mathematics is different in this respect. The answer
to integrate(sin(x),x) will be the same 30 years from now. However,
the expert who wrote the code will not. (Manual Bronstein is dead).
Who will maintain this code if it requires a PhD in Infinite Group
Theory just to understand WHY it works and a computer science degree
to understand what the PROGRAM is doing?

The real tradeoff question is "Are you doing science?" or just 
"playing around with ideas". Because, if you're doing science then
you're doing it for the community. Which means that there is a 
standard of scholarship that is expected. 

When I read a proof of a new theorem I expect to see references
to prior results, complete proofs of lemmas, complete documentation
of assumptions, and a full explanation of the whys-and-wherefores.
It takes about 5-10 pages to reach this standard of publication
for most mathematics. And THAT TAKES TIME.

So ask yourself the following question:
  What is the "standard of publication" for COMPUTATIONAL mathematics?

What *I* expect to see is an explanation of the mathematics, possibly
with proofs (if new). I expect an explanation of how and why the CODE
implements the mathematics. I expect complexity bounds. I expect an
explanation of optimizations that are not obvious but are critical.
This may take 10-100 pages to reach this standard of publication for
computational mathematics. and THAT TAKES TIME.

If you haven't given me that level of documentation then you haven't
given me anything but your lab notebook. You've published nothing but
your scribblings to yourself with no assurance that (a) it is mathematically
sound, (b) it is correct, and (c) the who/what/where basis for your
work is anything but your own self-mutterings.

Do we build a science on this?



A few centuries ago a mathematician could claim anything by
handwaving, and "prove it" by solving the questions posed to him.

In the last century the standard of proof has risen in mathematics
from handwaving, thru simple explanations, and eventually onto more
rigourous proofs.

Computational mathematics, the collision of math and computers, 
is still at the handwaving stage. 




Sage is dancing around like it has discovered something new and
wonderful. But I've been in this business now since the late 80s and
Sage has done absolutely NOTHING that has not already been done
before. Maple used a highly popular language (C) as its basis for a
user interface, MMA used Lisp-like notation initially.  Magnus
collected experts and was funded by NSF. Axiom was funded by NSF and
IBM. Axiom used to be "free and open source" when I was at IBM. If you
asked I'd send you a tape of the source code.  Magnus has always been
free as Gilbert thought it was important.  William Stein is a new
incarnation of Gilbert Baumslag, 20 years later, thinking he's
discovered something that nobody ever noticed be

[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Jason Grout

mabshoff wrote:
> Hi Tim,
> 
> I compiled the last snapshot and it compiled in decent time, i.e. 14
> minutes CPU time on sage.math.
> 
>

I just compiled the sourceforge source and had to modify 
backend/glib++/Integer.h and Rational.h.  In each of those files, there 
were two code blocks that defined operators ? that were causing 
errors.  I added "&& 0" to the ifdefs surrounding the code blocks and 
now it magnus seems to compile and run.

This is on Ubuntu 8.04, g++ 4.2.3

Jason



--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: why do we not use malb's libsingular wrappings by default?

2008-04-30 Thread mhampton

I'm sure Martin will answer this, but I suspect is an oversight based
on common usage patterns - for most Groebner basis calculations, the
overhead of pexpect is insignificant.

-Marshall

On Apr 30, 2:09 pm, "Yi Qiang" <[EMAIL PROTECTED]> wrote:
> Hi,
> How come we use the pexpect interface for singular to compute the
> groebner basis as the default? It seems to me we should be using
> malb's excellent libsingular wrapper.
>
> sage: R. = PolynomialRing(QQ,order='degrevlex')
> sage: I=(x^2+3*x*y/2+y^2/2-3*x/2-3*y/2,x*y^2-x,y^3-y)*R
>
> sage: %timeit I.groebner_basis()
> 10 loops, best of 3: 2.05 ms per loop
>
> sage: %timeit I.groebner_basis(algorithm='libsingular:std')
> 1 loops, best of 3: 72.5 µs per loop
>
> Cheers,
> Yi
>
> http://yiqiang.org
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread mabshoff

Hi Tim,

I compiled the last snapshot and it compiled in decent time, i.e. 14
minutes CPU time on sage.math.

On the other hand: I couldn't find the python bindings, neither in the
sf tarball nor the sf svn/cvs repo. Any pointers? I couldn't find any
reference to python in any file:

[EMAIL PROTECTED]:/scratch/mabshoff/magnus20060530$ grep -r "*[Pp]ython*"
*
[EMAIL PROTECTED]:/scratch/mabshoff/magnus20060530

A couple other things I noticed:

 * dependencies are [re]created each time the code is compiled. Since
that isn't exactly cheap why not check the dependency files in? In the
projects where I have worked they are in CVS and the developers know
to recreate them per makefile if changes require the recreation.
 * There are certainly some odd things going on at dependency creation
time, i.e. the "correction" of paths and so on.
 * CC is *overwritten* with g++ when the makefile needs to compile C++
files.
 * while there is some documentation the format is not in something
that seems easily extractable. I.e. I poked around in back_end/groups
and while the header files usually contain a lot of info, i.e. on the
design, the member functions usually do not document the input and
output parameters.

Cheers,

Michael
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] why do we not use malb's libsingular wrappings by default?

2008-04-30 Thread Yi Qiang

Hi,
How come we use the pexpect interface for singular to compute the
groebner basis as the default? It seems to me we should be using
malb's excellent libsingular wrapper.

sage: R. = PolynomialRing(QQ,order='degrevlex')
sage: I=(x^2+3*x*y/2+y^2/2-3*x/2-3*y/2,x*y^2-x,y^3-y)*R

sage: %timeit I.groebner_basis()
10 loops, best of 3: 2.05 ms per loop

sage: %timeit I.groebner_basis(algorithm='libsingular:std')
1 loops, best of 3: 72.5 µs per loop

Cheers,
Yi

http://yiqiang.org

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread David Harvey


On Apr 30, 2008, at 4:50 PM, root wrote:

> But we've already had this discussion and it is clear that I'm
> completely out-in-the-weeds, talking-nonsense, and obviously have
> no idea how REAL-open-source-projects are done. So lets just leave
> it where it left off before, which is that I've simply dropped the
> attempt to give the benefit of experience.

Hi Tim,

I've been vaguely following your posts to this list over the last few  
weeks. I don't think you're talking nonsense, but I don't completely  
understand what point you are trying to make. You seem to be making  
the following argument, correct me if I'm wrong. You claim that the  
documentation of the implementations of algorithms in Sage is not  
good enough, in the sense that someone looking at the Sage codebase  
in a few years won't be able to understand what is going on. You  
conclude that Sage will die. The implication is that the way to fix  
things is for us to improve the documentation of these  
implementations (perhaps via literate programming or whatever), so  
that Sage will be more likely to succeed.

But isn't the core problem simply one of limited resources? We all  
have limited time (fields-medallists and non-fields-medallists  
alike), and so there is some tradeoff between getting something to  
work as quickly as possible (and hence is useful NOW) and making a  
beautiful product which meets higher standard of scholarship (and  
hence is more useful LATER). I can't see any way around this  
tradeoff. The only thing I can see that will stop a project like Sage  
from dying is to keep building a steady inflow of users and  
contributors, so that the knowledge you refer to remains as alive as  
possible.

david


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread root


>Wasn't Magnus Tim Daly's main example of a project in trouble
>development and usage-wise?  From this thread:
>http://groups.google.com/group/sage-devel/browse_thread/thread/c65e235f83cb2cd1/93b5dc531e50bb1c?lnk=gst&q=magnus#93b5dc531e50bb1c
>
>Tim wrote:
>"the only person
>who can properly maintain, modify, and extend the code will no
>longer be available and the code will be frozen in time. My
>Magnus infinite group theory project has this problem.
>New people coming onto the project cannot find the literature
>that corresponds to the actual code because it does not exist.
>Most published results are 5 page conference papers that just
>hint at the non-core, but vitally important, details if they
>mention them at all. This problem has 2 parts, both of which
>stem from the lack of focus on the new discipline of computational
>mathematics. Part 1 is that journals and conferences only want
>short papers, which are adequate for math, not the complete
>implementation. Part 2 is that there is no place to describe the
>actual code-level optimizations that make the implementation
>practical and fast. "

Magnus is a stalled project. It was a free, NSF-funded, top-of-line,
best-of-breed project that brought together Fields-medal level people.
The algorithms in Magnus are world-class and written by experts. They
work, and work well. And they are GPLed, free, and open sourced. Magnus
has a truly innovative, zero-learning-curve, notebook-like front-end.
It runs algorithms in parallel, with user-controlled time proportions.
It has context-sensitive menus and help systems. It has a problem-graph
that organizes the results of experiments and allows you to pursue
mulitiple-independent lines of research on the same "notebook".
Sage is nowhere near the level of sophistication Magnus displays today.
Did I mention that it is free? 

Magnus has been used (thru python) in an embedded demonstration of
cryptographic security using infinite groups to protect user logins.
It has been shown to allow logins on systems all the way down to a
handheld zaurus.  (Infinite groups are MUCH harder to break than other
schemes and Gilbert can show why these are hard (in a cryptographic
sense). Small keys, yet solid locks.)

Historically, Magnus was where Sage is now.



The quote above is in the context of literate programming, or lack
thereof.  Magnus is documented at the same level as other open source
projects (e.g. Sage). The code is all there, freely available, and
written in a widely used, VERY popular language (C++). It can be used
from Python. Yet Magnus and its algorithms now suffer from the same
fate that I predict L-functions in Sage, and Sage itself, will suffer 5
years from now. William will have his system, will have published his
research (the classic 5 page papers), and will have retired to Alaska.
That is,
  >New people coming onto the project cannot find the literature
  >that corresponds to the actual code because it does not exist.

But we've already had this discussion and it is clear that I'm
completely out-in-the-weeds, talking-nonsense, and obviously have
no idea how REAL-open-source-projects are done. So lets just leave
it where it left off before, which is that I've simply dropped the
attempt to give the benefit of experience.

Tim

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 11:13 AM, mabshoff
<[EMAIL PROTECTED]> wrote:
>
>  On Apr 30, 7:43 pm, "David Joyner" <[EMAIL PROTECTED]> wrote:
>  > On Wed, Apr 30, 2008 at 2:35 PM, root <[EMAIL PROTECTED]> wrote:
>
>  Hi,
>
>
>  > >  (disclaimer: I'm the person who set up the Magnus sourceforge site
>  > >  and I worked for Gilbert Baumslag at City College)
>
>  Once I saw Magnus mentioned I figured Tim would be the person to clue
>  us in.
>
>
>  > >  I know that there is an existing Python wrapper around Magnus.
>
>  Yes, and last time I looked at Magnus I also got the impression that
>  from a technical standpoint everything should work well with Sage. One
>  thing I saw that nobody seems to work actively on it at the moment.

Wasn't Magnus Tim Daly's main example of a project in trouble
development and usage-wise?  From this thread:
http://groups.google.com/group/sage-devel/browse_thread/thread/c65e235f83cb2cd1/93b5dc531e50bb1c?lnk=gst&q=magnus#93b5dc531e50bb1c

Tim wrote:
"the only person
who can properly maintain, modify, and extend the code will no
longer be available and the code will be frozen in time. My
Magnus infinite group theory project has this problem.
New people coming onto the project cannot find the literature
that corresponds to the actual code because it does not exist.
Most published results are 5 page conference papers that just
hint at the non-core, but vitally important, details if they
mention them at all. This problem has 2 parts, both of which
stem from the lack of focus on the new discipline of computational
mathematics. Part 1 is that journals and conferences only want
short papers, which are adequate for math, not the complete
implementation. Part 2 is that there is no place to describe the
actual code-level optimizations that make the implementation
practical and fast. "

>  Another thing I noticed was that some of the hooks into other CAS
>  systems seemed incomplete/unfinished. It would be interesting to see
>  how much functionality is in the "core" library and how much more
>  Magnus can do when combined with other systems.
>
>  Compile time wasn't short, but no one from the Sage world [at least
>  not me] has made any attempt to get this down by building only the
>  essential bits.
>
>
>  > Can you email the tarball or give me the url where it is posted?
>  > Also, can you define "around Magnus" more precisely? One one
>  > end of the spectrum, the full functionality of Magnus can be accessed
>  > via Python commands. On the other end, there exists one function which
>  > can be accessed from a Python command.
>  >
>  >
>  >
>  > >  I know that Magnus has a large number of C++ routines for group
>  > >  theory that exist nowhere else.
>  >
>  > >  I know that Magnus can be used without the frontend (we used it
>  > >  as a password mechanism for logging into linux using groups theory).
>  >
>  > I'm wonderirng how much of the backend is accessible. Gilbert gave me the
>  > impression that it would be very difficult to integrate Magnus into SAGE.
>  > (We discussed this issue specifically in person about a month ago.) Of
>  > course, my impression could be mistaken.
>  >
>
>  Well, it would be nice if upstream had an interest to cooperate with
>  Sage. Otherwise I would see little benefit from working on Magnus.
>
>
>  > >  I know that Magnus is designed to run procedures in parallel.
>  > >  (not algorithms since they may not terminate; in general,
>  > >  there are very few algorithms for this kind of work)
>  > >  Using the procedures in parallel enable you to try various
>  > >  approaches until one succeeds and then poison the others.
>  >
>  > >  I know that Magnus is GPL.
>  >
>  > >  I know that there are a large number of people who have collaborated
>  > >  with Gilbert Baumslag over the years. Gilbert is definitely in the
>  > >  superstar category (distinguished prof, 7 books, 150 papers, etc).
>  >
>  > Agreed. So is Myasnikov, IMHO.
>
>  Yeah, as other people already mentioned: Tarski!
>
>  I have heard Myasnikov speak a bunch of times in Dortmund a couple
>  time and I cannot but be very impressed.
>
>  >
>  > >  Tim Daly
>
>  Cheers,
>
>  Michael
>
>
> >
>



-- 
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 [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread mabshoff

On Apr 30, 7:43 pm, "David Joyner" <[EMAIL PROTECTED]> wrote:
> On Wed, Apr 30, 2008 at 2:35 PM, root <[EMAIL PROTECTED]> wrote:

Hi,

> >  (disclaimer: I'm the person who set up the Magnus sourceforge site
> >  and I worked for Gilbert Baumslag at City College)

Once I saw Magnus mentioned I figured Tim would be the person to clue
us in.

> >  I know that there is an existing Python wrapper around Magnus.

Yes, and last time I looked at Magnus I also got the impression that
from a technical standpoint everything should work well with Sage. One
thing I saw that nobody seems to work actively on it at the moment.
Another thing I noticed was that some of the hooks into other CAS
systems seemed incomplete/unfinished. It would be interesting to see
how much functionality is in the "core" library and how much more
Magnus can do when combined with other systems.

Compile time wasn't short, but no one from the Sage world [at least
not me] has made any attempt to get this down by building only the
essential bits.

> Can you email the tarball or give me the url where it is posted?
> Also, can you define "around Magnus" more precisely? One one
> end of the spectrum, the full functionality of Magnus can be accessed
> via Python commands. On the other end, there exists one function which
> can be accessed from a Python command.
>
>
>
> >  I know that Magnus has a large number of C++ routines for group
> >  theory that exist nowhere else.
>
> >  I know that Magnus can be used without the frontend (we used it
> >  as a password mechanism for logging into linux using groups theory).
>
> I'm wonderirng how much of the backend is accessible. Gilbert gave me the
> impression that it would be very difficult to integrate Magnus into SAGE.
> (We discussed this issue specifically in person about a month ago.) Of
> course, my impression could be mistaken.
>

Well, it would be nice if upstream had an interest to cooperate with
Sage. Otherwise I would see little benefit from working on Magnus.

> >  I know that Magnus is designed to run procedures in parallel.
> >  (not algorithms since they may not terminate; in general,
> >  there are very few algorithms for this kind of work)
> >  Using the procedures in parallel enable you to try various
> >  approaches until one succeeds and then poison the others.
>
> >  I know that Magnus is GPL.
>
> >  I know that there are a large number of people who have collaborated
> >  with Gilbert Baumslag over the years. Gilbert is definitely in the
> >  superstar category (distinguished prof, 7 books, 150 papers, etc).
>
> Agreed. So is Myasnikov, IMHO.

Yeah, as other people already mentioned: Tarski!

I have heard Myasnikov speak a bunch of times in Dortmund a couple
time and I cannot but be very impressed.

>
> >  Tim Daly

Cheers,

Michael
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread David Joyner

On Wed, Apr 30, 2008 at 2:35 PM, root <[EMAIL PROTECTED]> wrote:
>
>
>  >>
>  >>  I don't know if that is of any interest but someone around here might 
> care
>  >>  about the fact that Sage was probably the most mentioned (and cited)
>  >>  mathematics software at the "First Conference for Symbolic Computation 
> and
>  >>  Cryptography" (SCC 2008) in Beijing.
>  >>
>  >>  Specifically, these authors/papers mentioned Sage:
>  >>
>  >>  * Tobias Eibach and Gunnar Völkel: Optimising Gröbner Bases on Bivium 
> (used
>  >>  Sage to implement attack)
>  >>  * Burçin Eröcal: SCrypt: Using Symbolic Computation to Bridge the Gap 
> Between
>  >>  Algebra and Cryptography (module for Sage)
>  >>  * Ralf-Philipp Weinmann and Johannes Buchmann: Distributed Memory 
> Computation
>  >>  of Row-Reduced Echelon Forms over Finite Fields (benchmarked against 
> Sage)
>  >>  * Yours truly and Carlos Cid: Algebraic Techniques in Differential
>  >>  Cryptanalysis (used Sage to implement attack)
>  >>
>  >>   (... yes, I know that 3 out of 4 are Sage developers, but still ...)
>  >>
>  >>  Another thing:Two talks dealt with Braid group cryptography, namely:
>  >>
>  >>  * Robert Gilman, Alex D. Miasnikov, Alexei G. Myasnikov and Alexander 
> Ushakov:
>  >>  New Developments in Commutator Key Exchange
>  >>  * Alex D. Myasnikov and Alexander Ushakov: Cryptanalysis of the
>  >>  Anshel-Anshel-Goldfeld-Lemieux Key Agreement Protocol
>  >>
>  >>  The group developed a C++ library CRAG:
>  >>
>  >>  """
>  >>  The Cryptography And Groups (CRAG) Library provides an environment to 
> test
>  >>  cryptographic protocols constructed from non-commutative groups, for 
> example
>  >>  the braid group. The Library is written in C++ and provides an interface 
> and
>  >>  routines for computations. There are implementations of basic algebraic
>  >>  objects like words, maps and subgroups. We plan to continually expand the
>  >>  list of group-theoretic algorithms implemented in the library. In 
> addition
>  >>  the Library will contain classes and routines implementing non-classical
>  >>  heuristic approaches and tools to perform statistical and exploratory
>  >>  analysis of algebraic data. Together with the C++ source code CRAG 
> contains
>  >>  interface to Python scripting language.
>  >>  """
>  >>
>  >>   http://www.acc.stevens.edu/downloads.php
>  >>
>  >>  I don't know much about group theory but still I figured someone might 
> find it
>  >>  interesting and is able to evaluate if it could be a good addition to 
> Sage.
>  >
>  >This is very interesting. I just have some general remarks. Alexi Myasnikov
>  >(a good friend of mine knows him well and that is what he calls him - 
> Alexi, not
>  >Alex. as on the website) is an extremely talented group theorist. I heard 
> that
>  >there was some discussion of him getting a Fields medal years ago when
>  >he announced
>  >his solution of the Tarski problem. That is his level. If he is behind
>  >this library
>  >then I think that it at least has the stamp of authority. BTW, both Alexi 
> and
>  >Gilbert Baumslag were behind MAGNUS, an infinite group theory package. I had
>  >a few (off-list, I think) emails with William Stein and Gilbert
>  >Baumslag, and I met
>  >with Gilbert face-to-face a month or so ago about MAGNUS and SAGE. The
>  >problem is that MAGNUS is designed in a way which makes its GUI front-end
>  >difficult to separate from its group-computational engine at the back-end. 
> As a
>  >bit of background, Gilbert Baumslag is also a superstar in the field
>  >of combinatorial
>  >group theory and has just recently moved from the math dept at CUNY to the 
> CS
>  >dept. This graphic design was probably Gilbert's idea and very much in
>  >line with some
>  >other (computer science) projects he has worked on. Anyway,
>  >MAGNUS->SAGE just didn't
>  >work out. I think the design of CRAG is different and may be easier to 
> integrate
>  >into SAGE. I do see that they have a free group and finitely presented group
>  >(C++) class, which is good. These are also in GAP though. What GAP
>  >does not have is
>  >"Definition of equations over finitely presented group", nor does it
>  >have any of the
>  >crypto stuff.
>  >
>  >So, I vote +1 to include it at least as an optional package. Making it
>  >a standard part of SAGE
>  >should IMHO wait until a solid FreeGroup and FinitelyPresentedGroup
>  >(Python) class
>  >are created for SAGE. If I had more time I would do this myself.
>  >
>  >Thanks again Martin for pointing this out.
>
>  (disclaimer: I'm the person who set up the Magnus sourceforge site
>  and I worked for Gilbert Baumslag at City College)
>
>  I know that there is an existing Python wrapper around Magnus.

Can you email the tarball or give me the url where it is posted?
Also, can you define "around Magnus" more precisely? One one
end of the spectrum, the full functionality of Magnus can be accessed
via Python commands. On the other end, there exists one functi

[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread root

>>
>>  I don't know if that is of any interest but someone around here might care
>>  about the fact that Sage was probably the most mentioned (and cited)
>>  mathematics software at the "First Conference for Symbolic Computation and
>>  Cryptography" (SCC 2008) in Beijing.
>>
>>  Specifically, these authors/papers mentioned Sage:
>>
>>  * Tobias Eibach and Gunnar Völkel: Optimising Gröbner Bases on Bivium (used
>>  Sage to implement attack)
>>  * Burçin Eröcal: SCrypt: Using Symbolic Computation to Bridge the Gap 
>> Between
>>  Algebra and Cryptography (module for Sage)
>>  * Ralf-Philipp Weinmann and Johannes Buchmann: Distributed Memory 
>> Computation
>>  of Row-Reduced Echelon Forms over Finite Fields (benchmarked against Sage)
>>  * Yours truly and Carlos Cid: Algebraic Techniques in Differential
>>  Cryptanalysis (used Sage to implement attack)
>>
>>   (... yes, I know that 3 out of 4 are Sage developers, but still ...)
>>
>>  Another thing:Two talks dealt with Braid group cryptography, namely:
>>
>>  * Robert Gilman, Alex D. Miasnikov, Alexei G. Myasnikov and Alexander 
>> Ushakov:
>>  New Developments in Commutator Key Exchange
>>  * Alex D. Myasnikov and Alexander Ushakov: Cryptanalysis of the
>>  Anshel-Anshel-Goldfeld-Lemieux Key Agreement Protocol
>>
>>  The group developed a C++ library CRAG:
>>
>>  """
>>  The Cryptography And Groups (CRAG) Library provides an environment to test
>>  cryptographic protocols constructed from non-commutative groups, for example
>>  the braid group. The Library is written in C++ and provides an interface and
>>  routines for computations. There are implementations of basic algebraic
>>  objects like words, maps and subgroups. We plan to continually expand the
>>  list of group-theoretic algorithms implemented in the library. In addition
>>  the Library will contain classes and routines implementing non-classical
>>  heuristic approaches and tools to perform statistical and exploratory
>>  analysis of algebraic data. Together with the C++ source code CRAG contains
>>  interface to Python scripting language.
>>  """
>>
>>   http://www.acc.stevens.edu/downloads.php
>>
>>  I don't know much about group theory but still I figured someone might find 
>> it
>>  interesting and is able to evaluate if it could be a good addition to Sage.
>
>This is very interesting. I just have some general remarks. Alexi Myasnikov
>(a good friend of mine knows him well and that is what he calls him - Alexi, 
>not
>Alex. as on the website) is an extremely talented group theorist. I heard that
>there was some discussion of him getting a Fields medal years ago when
>he announced
>his solution of the Tarski problem. That is his level. If he is behind
>this library
>then I think that it at least has the stamp of authority. BTW, both Alexi and
>Gilbert Baumslag were behind MAGNUS, an infinite group theory package. I had
>a few (off-list, I think) emails with William Stein and Gilbert
>Baumslag, and I met
>with Gilbert face-to-face a month or so ago about MAGNUS and SAGE. The
>problem is that MAGNUS is designed in a way which makes its GUI front-end
>difficult to separate from its group-computational engine at the back-end. As a
>bit of background, Gilbert Baumslag is also a superstar in the field
>of combinatorial
>group theory and has just recently moved from the math dept at CUNY to the CS
>dept. This graphic design was probably Gilbert's idea and very much in
>line with some
>other (computer science) projects he has worked on. Anyway,
>MAGNUS->SAGE just didn't
>work out. I think the design of CRAG is different and may be easier to 
>integrate
>into SAGE. I do see that they have a free group and finitely presented group
>(C++) class, which is good. These are also in GAP though. What GAP
>does not have is
>"Definition of equations over finitely presented group", nor does it
>have any of the
>crypto stuff.
>
>So, I vote +1 to include it at least as an optional package. Making it
>a standard part of SAGE
>should IMHO wait until a solid FreeGroup and FinitelyPresentedGroup
>(Python) class
>are created for SAGE. If I had more time I would do this myself.
>
>Thanks again Martin for pointing this out.

(disclaimer: I'm the person who set up the Magnus sourceforge site
and I worked for Gilbert Baumslag at City College)

I know that there is an existing Python wrapper around Magnus.

I know that Magnus has a large number of C++ routines for group
theory that exist nowhere else.

I know that Magnus can be used without the frontend (we used it
as a password mechanism for logging into linux using groups theory).

I know that Magnus is designed to run procedures in parallel.
(not algorithms since they may not terminate; in general, 
there are very few algorithms for this kind of work)
Using the procedures in parallel enable you to try various
approaches until one succeeds and then poison the others.

I know that Magnus is GPL.

I know that there are a large number of people who have collaborated
with

[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Roman Pearce

On Apr 30, 8:09 am, "William Stein" <[EMAIL PROTECTED]> wrote:
> The "open source philosophy" is the entire reason for the
> existence of Sage.

That may be true, but it won't sell.  There have been other open
source systems before Sage (Axiom, Maxima, ...) and very good
specialized systems (Singular, CoCoA).  These systems attracted a lot
of development effort and made some very respected contributions to
the field, however they did not achieve the base of users and
developers that Maple, Mathematica, Magma, and Matlab (yes, count
them) have.  So the first thing the ISSAC audience will ask is "what
makes Sage different?"  I tried to suggest some answers to that
question.

> You seem to be anti-open source in your own work,
> which is what *really* matters to you.  It's my understanding
> that you've written a very interesting library in computer
> algebra and it is closed source.   Correct me if I'm wrong,
> but I have the impression you generally don't see the value
> in *open source* mathematical software (per se), and
> are mainly interested in Sage only for the technically
> interesting successes it has had.

Well that is a fair criticism because I haven't contributed any code.
Setting aside philosophical arguments, I believe it makes technical
sense for the field to adopt a common "infrastructure" that is open
source.  Look at the massive benefits we have all received from GMP.
It has made every system better.  Comparable projects for other low
level operations in computer algebra could have a similar, although
not as wide, of an impact.  Whether you can convince people of this is
another issue entirely.

By the way, don't worry about offending me, I have been known to offer
blunt unsolicited criticisms of others' work :)

> > BTW, asking for contributors is the surest way to get zero
> > contributors.
>
> I'm really glad I didn't listen to you over the last three years.

To an audience of researchers and professionals it will sound
desperate.  There is no shortage of peoples' pet projects in this
field, and everyone knows that software development is a massive time
sink.  They are mathematical algorithm researchers remember.  I think
they will be most interested in technical achievements, and in the
unique qualities of Sage that could help them in their work.

Feel free to ignore my advice, but I am offering it in good faith.
There will be people at ISSAC who write open source math software
(Singular, Pari, Maxima, etc), there will be some more people who use
it, and there will be many more people whose exposure to open source
might be limited to GNU/Linux and GMP.  They are all there to talk
about symbolic algorithms.  That is the audience.
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Fwd: Fwd: [sage-devel] A Sage Enhancement Proposal: Lattice Modules

2008-04-30 Thread John Cremona

I think we also want some version of Denis Simon's indefinite LLL.

As a student of Henri Cohen he may have sworn a lifetime vow of
allegiance to pari;  otherwise this might be something we could use to
lure him into Sage!

John

2008/4/30 William Stein <[EMAIL PROTECTED]>:
>
>  -- Forwarded message --
>  From: Gabriele Nebe <[EMAIL PROTECTED]>
>  Date: Wed, Apr 30, 2008 at 6:18 AM
>  Subject: Re: Fwd: [sage-devel] A Sage Enhancement Proposal: Lattice Modules
>  To: William Stein <[EMAIL PROTECTED]>
>
>
>  Dear William,
>
>   I am in the moment on a conference in Albania and e-mail is not so easy.
>   Nevertheless:
>   if these people want to implement such things, they should just go ahead and
>   do so. I have no idea how to calculate explicitely isometires of
>  indefinite lattices,
>   but in principle we have a program to calculate the genus symbol of
>  the lattice.
>   And for indefinite ones this suffices to decide whether they are
>  isometric or not.
>   For definite lattices of course lattice reduction procedures (LLL) and
>   shortest vector enumeration are other basic tools.
>
>   Best
>
>   Gabi
>
>
>
>  --
>  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 [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Simon King

Dear William,

in line 3, it should be "could", not "ncould".

IMO, you should mention Cython. In fact, i started to use Sage mainly
because Cython made it possible to easily use the C-programs of my
boss. Otherwise i would have had tried to do everything in Singular.

But i guess you will mention Cython in your talk anyway.

Yours
   Simon

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Nathan Dunfield

> So, I vote +1 to include it at least as an optional package. Making it
> a standard part of SAGE
> should IMHO wait until a solid FreeGroup and FinitelyPresentedGroup
> (Python) class are created for SAGE. If I had more time I would do this 
> myself.

Yeah, it would be great if SAGE had support of those.   Some time ago,
I wrote a quick FinitelyPresentedGroup class here:

http://www.dunfield.info/misc/fpgroup.py

but all it can really do is move finitely presented groups back and
forth between GAP and MAGMA...

Nathan


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Fwd: [Cython] Porting the Docs

2008-04-30 Thread William Stein

Hi,

Cython now has beautiful-to-behold documentation.  See below.

-- Forwarded message --
From: Gabriel Gellner <[EMAIL PROTECTED]>
Date: Wed, Apr 30, 2008 at 8:39 AM
Subject: Re: [Cython] Porting the Docs
To: Cython-dev <[EMAIL PROTECTED]>


So I have finished the first rough mockup, which mainly consists of getting
 the markup correct. There are still some rough edges, mainly with tables, and
 some of the latex output, but in the spirit of release early release often ;-)

 Check out the html at:
 http://www.mudskipper.ca/cython-doc

 Get the pdf at:
 http://www.mudskipper.ca/cython.pdf

 And finally get the source at:
 http://www.mudskipper.ca/cython_doc.tar.gz
 or
 http://www.mudskipper.ca/cython_doc.zip

 Again I would appreciate any comments on if I am screwing up authorship. Down
 the road I think it would be good to attribute everything to the 'Cython Doc
 Team' and have a page that lists contributers. To do this we should make the
 license and authorship on the wiki more explicit. Tell me what you think? I am
 no lawyer, and certainly don't want to piss anyone off who has put the hard
 work into documenting either cython or pyrex.

 My plan for the next steps (in order of importance, any comments):
 - Make a PyGments lexer for cython/pyrex so we get nice color coding.
 - Fix up the latex style file so that boxes are not messed up when we have
  code examples.
 - Put on my writing hat, and do an overhaul of the structure of the docs so
  that it is faster to navigate. I will be using the python doc structure as a
  reference.
 - Get some simple howto's written.
 - Thinking if there is an easy way to test the cython code in the docs so that
  I can ensure accuracy.



 Gabriel
 ___
 Cython-dev mailing list
 [EMAIL PROTECTED]
 http://codespeak.net/mailman/listinfo/cython-dev



-- 
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 [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 8:10 AM, Bill Page <[EMAIL PROTECTED]> wrote:
> [...]

Bill,

Thanks for elaborating and clarifying your thoughts.

I've posted a new version of the abstract here:

http://sage.math.washington.edu/home/was/tmp/abstract2.pdf

You guys might dislike it even more.  We'll see :-)

William

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread David Joyner

On Wed, Apr 30, 2008 at 10:48 AM, Martin Albrecht
<[EMAIL PROTECTED]> wrote:
>
>  Hi,
>
>  I don't know if that is of any interest but someone around here might care
>  about the fact that Sage was probably the most mentioned (and cited)
>  mathematics software at the "First Conference for Symbolic Computation and
>  Cryptography" (SCC 2008) in Beijing.
>
>  Specifically, these authors/papers mentioned Sage:
>
>  * Tobias Eibach and Gunnar Völkel: Optimising Gröbner Bases on Bivium (used
>  Sage to implement attack)
>  * Burçin Eröcal: SCrypt: Using Symbolic Computation to Bridge the Gap Between
>  Algebra and Cryptography (module for Sage)
>  * Ralf-Philipp Weinmann and Johannes Buchmann: Distributed Memory Computation
>  of Row-Reduced Echelon Forms over Finite Fields (benchmarked against Sage)
>  * Yours truly and Carlos Cid: Algebraic Techniques in Differential
>  Cryptanalysis (used Sage to implement attack)
>
>   (... yes, I know that 3 out of 4 are Sage developers, but still ...)
>
>  Another thing:Two talks dealt with Braid group cryptography, namely:
>
>  * Robert Gilman, Alex D. Miasnikov, Alexei G. Myasnikov and Alexander 
> Ushakov:
>  New Developments in Commutator Key Exchange
>  * Alex D. Myasnikov and Alexander Ushakov: Cryptanalysis of the
>  Anshel-Anshel-Goldfeld-Lemieux Key Agreement Protocol
>
>  The group developed a C++ library CRAG:
>
>  """
>  The Cryptography And Groups (CRAG) Library provides an environment to test
>  cryptographic protocols constructed from non-commutative groups, for example
>  the braid group. The Library is written in C++ and provides an interface and
>  routines for computations. There are implementations of basic algebraic
>  objects like words, maps and subgroups. We plan to continually expand the
>  list of group-theoretic algorithms implemented in the library. In addition
>  the Library will contain classes and routines implementing non-classical
>  heuristic approaches and tools to perform statistical and exploratory
>  analysis of algebraic data. Together with the C++ source code CRAG contains
>  interface to Python scripting language.
>  """
>
>   http://www.acc.stevens.edu/downloads.php
>
>  I don't know much about group theory but still I figured someone might find 
> it
>  interesting and is able to evaluate if it could be a good addition to Sage.

This is very interesting. I just have some general remarks. Alexi Myasnikov
(a good friend of mine knows him well and that is what he calls him - Alexi, not
Alex. as on the website) is an extremely talented group theorist. I heard that
there was some discussion of him getting a Fields medal years ago when
he announced
his solution of the Tarski problem. That is his level. If he is behind
this library
then I think that it at least has the stamp of authority. BTW, both Alexi and
Gilbert Baumslag were behind MAGNUS, an infinite group theory package. I had
a few (off-list, I think) emails with William Stein and Gilbert
Baumslag, and I met
with Gilbert face-to-face a month or so ago about MAGNUS and SAGE. The
problem is that MAGNUS is designed in a way which makes its GUI front-end
difficult to separate from its group-computational engine at the back-end. As a
bit of background, Gilbert Baumslag is also a superstar in the field
of combinatorial
group theory and has just recently moved from the math dept at CUNY to the CS
dept. This graphic design was probably Gilbert's idea and very much in
line with some
other (computer science) projects he has worked on. Anyway,
MAGNUS->SAGE just didn't
work out. I think the design of CRAG is different and may be easier to integrate
into SAGE. I do see that they have a free group and finitely presented group
(C++) class, which is good. These are also in GAP though. What GAP
does not have is
"Definition of equations over finitely presented group", nor does it
have any of the
crypto stuff.

So, I vote +1 to include it at least as an optional package. Making it
a standard part of SAGE
should IMHO wait until a solid FreeGroup and FinitelyPresentedGroup
(Python) class
are created for SAGE. If I had more time I would do this myself.

Thanks again Martin for pointing this out.



>
>  Cheers,
>  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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Bill Page

On Wed, Apr 30, 2008 at 9:53 AM, William Stein wrote:
>
>  On Wed, Apr 30, 2008 at 12:02 AM, Bill Page wrote:
>  >
>  >  On Wed, Apr 30, 2008 at 1:57 AM, William Stein wrote:
>  >  >
>  >  >  I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm 
> supposed
>  >  >  to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>  >  >
>  >  >http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>  >  >
>
>  >  I really don't think that you will find many people at this meeting
>  >  who are interested in open source alternatives to commercial
>  >  software as such.
>
>  I guess they will just be bored by my talk and fall asleep.
>

I certainly hope not! I think the ISSAC community needs Sage very
badly - they just don't know it yet.

>
>  > Many of the attendees will have and may still be involved in
>  >  developing software for the commercial systems. Most are also
>  > involved in some form of academic research in computer algebra
>  > systems. I don't mean that people wont be interested in hearing
>  > about the advantages of open source, but I believe that it would
>  > not normally be viewed as their primary motivation or preoccupation.
>  > And I think they will probably already have a fairly good idea about
>  > why Sage exists.
>
>  I actually imagine that a lot of them won't have a good idea about
>  why Sage exists.  The main reason Sage exists is because exactly
>  those people failed for a very long time to make the tools that I need
>  for my research in number theory, so I had to take matters into my
>  own hands.   I suspect they won't see things that way.
>

I agree that they probably do not see it that way. On the other hand I
do expect that they see it *exactly* the same way you do: For the most
part the things *they* created exist because *they* had need of such
tools to do the research that *they* wanted to do and it seemed to
them that no one else had created the right tools for the job. (I said
"seemed" because in some cases it might have seemed easier to
re-invent what was needed rather than learning enough about what
someone else had created.) In other words the reason (most of) those
other systems exist is the same as the reason that Sage exists.

The arguments for or against proprietary and/or open source models for
development came later. Even systems like Axiom were essentially "open
source" when they were first created - all you had to do was show some
interest in the work of the developers and ask for their source code.
I think the problem was  mainly that there really was no
infrastructure in place yet (e.g. the web) that would allow the open
source model to work. Unless large government research funding was
available, the argument that the proprietary commercial/non-profit
development model was the best approach was easy to sell - and still
appeals to many people. If by presenting Sage ISSAC you succeed in
convincing some of these people that open source really is a viable
approach today, then I agree that that would be a good thing!

> ...
>  >  Talking about what Sage "is", however does make sense to me.
>  >
>  >  If you are not inclined to speak specifically about how Sage is used
>  >  in your own or other people's research, then
>
>  I certainly will speak about how Sage is used in my research and others
>  during my talk.  The abstract I posted is limited to 2 pages, and hence
>  is a lot shorter than my talk.
>

Yes, of course. I think I was a bit mislead by the style of the
abstract. Do you think quoting testimonials from other people is such
a good idea?

On Wed, Apr 30, 2008 at 10:21 AM, William Stein wrote:
>
>  On Wed, Apr 30, 2008 at 3:26 AM, David Joyner wrote:
> ...
>  >  3. A specific example could be mentioned which smoothly integrates
>  > several systems. As Michael B suggests, a group invariant computation
>  > in a number field mixes GAP (for groups), Pari for the number field (is
>  > this correct?), and Singular (for the polynomial ring invariant theory
>  > computations).
>  >
>
>  I will demo computation and visualization
>  of modular abelian varieties during my talk, and keep the above
>  suggestions in mind.  Computing modular abelian varieties
>  brings together numerous components of Sage, and is exactly
>  the functionality I started Sage for.  It's fairly technical,
>  but not impossibly so (it's just homology groups of modular
>  curves, which are compact Riemann surfaces, etc.)
>

I think it is important emphasis in the abstract that your talk will
include such examples.

Regards,
Bill Page.

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 7:48 AM, Martin Albrecht
<[EMAIL PROTECTED]> wrote:
>
>  Hi,
>
>  I don't know if that is of any interest but someone around here might care
>  about the fact that Sage was probably the most mentioned (and cited)
>  mathematics software at the "First Conference for Symbolic Computation and
>  Cryptography" (SCC 2008) in Beijing.

Amazing!

>
>  Specifically, these authors/papers mentioned Sage:
>
>  * Tobias Eibach and Gunnar Völkel: Optimising Gröbner Bases on Bivium (used
>  Sage to implement attack)
>  * Burçin Eröcal: SCrypt: Using Symbolic Computation to Bridge the Gap Between
>  Algebra and Cryptography (module for Sage)
>  * Ralf-Philipp Weinmann and Johannes Buchmann: Distributed Memory Computation
>  of Row-Reduced Echelon Forms over Finite Fields (benchmarked against Sage)
>  * Yours truly and Carlos Cid: Algebraic Techniques in Differential
>  Cryptanalysis (used Sage to implement attack)
>
>   (... yes, I know that 3 out of 4 are Sage developers, but still ...)

So is 2.   Why isn't 1 a Sage developer?  We want their code :-).

By the way, what does "benchmarked against Sage" mean in RPW's talk?


>  Another thing:Two talks dealt with Braid group cryptography, namely:
>
>  * Robert Gilman, Alex D. Miasnikov, Alexei G. Myasnikov and Alexander 
> Ushakov:
>  New Developments in Commutator Key Exchange
>  * Alex D. Myasnikov and Alexander Ushakov: Cryptanalysis of the
>  Anshel-Anshel-Goldfeld-Lemieux Key Agreement Protocol
>
>  The group developed a C++ library CRAG:
>
>  """
>  The Cryptography And Groups (CRAG) Library provides an environment to test
>  cryptographic protocols constructed from non-commutative groups, for example
>  the braid group. The Library is written in C++ and provides an interface and
>  routines for computations. There are implementations of basic algebraic
>  objects like words, maps and subgroups. We plan to continually expand the
>  list of group-theoretic algorithms implemented in the library. In addition
>  the Library will contain classes and routines implementing non-classical
>  heuristic approaches and tools to perform statistical and exploratory
>  analysis of algebraic data. Together with the C++ source code CRAG contains
>  interface to Python scripting language.
>  """
>
>   http://www.acc.stevens.edu/downloads.php
>
>  I don't know much about group theory but still I figured someone might find 
> it
>  interesting and is able to evaluate if it could be a good addition to Sage.
>

Very interesting --Thanks for pointing this out.

William

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 7:39 AM, Martin Albrecht
<[EMAIL PROTECTED]> wrote:
>
>  > You seem to be anti-open source in your own work,
>  > which is what *really* matters to you.  It's my understanding
>  > that you've written a very interesting library in computer
>  > algebra and it is closed source.   Correct me if I'm wrong,
>  > but I have the impression you generally don't see the value
>  > in *open source* mathematical software (per se), and
>  > are mainly interested in Sage only for the technically
>  > interesting successes it has had.
>
>  Even though I'd prefer the mentioned library to be open source, I'm not sure
>  I'd call the policy anti-open source. Fast arithmetic with multivariate
>  polynomials is IMHO for many (not all!) applications mostly useful in the
>  context of a computer algebra system which involves Gröbner bases, higher
>  level algorithms, heuristics etc. Though I am aware that for some
>  applications Roman's library would kick ass in its current form, for some
>  others it will not in that form. On the other hand Roman did write a -- as
>  far as I've skimmed it -- nice paper on the matter detailing his
>  implementation strategy. I lack the experience/knowledge to judge whether the
>  presented performance improvements would make a huge difference for the
>  computation of e.g. Gröbner bases, but he put information out there for
>  others to try.

Well I think Roman is a very valuable contributor to computer algebra
research, I greatly appreciate his work, and I'm glad he is doing it.
And I am personally not in any sense anti-closed source either in
certain cases, i.e., I strongly support people or organizations releasing
software however they want (e.g., I *really* appreciate VMware, which is
a closed source program).

It's just that the fact he makes his code closed source right
now seems relevant to the advice he is giving in this instance,
and I'm hoping he might elaborate on his perspective.

Roman -- please don't think I'm trying to be hostile.  I would
love for you to write more in response, and I value your time.

>
>
>  > > BTW, asking for contributors is the surest way to get zero
>  > > contributors.
>  >
>  > I'm really glad I didn't listen to you over the last three years.
>
>  Hi, I'm slightly puzzled by that reply since it feels rather hostile. If I
>  understood the e-mail correctly then Roman implied that at *this particular
>  meeting* asking for contributors might be perceived as annoying? Thus he
>  shared his opinion to help us to make the Sage presentation more successful.

You're right, my reply does sound hostile.  Thanks for pointing this
out, since it wasn't my intension.  There are so many times over the last
three years that I've been told something like that, but just decided on
instinct (I guess) to ignore it, and instead simply ask people for help,
and the result has been very good.  I really hope Roman will explain why
he strongly feels that my asking for help at ISSAC will *guarantee* no help,
but not asking for help will result in help?Since I have never been to
ISSAC and he has, I'm at a pretty big disadvantage as far as understanding
the audience, to put it mildly.


 -- william

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Simon King

Dear Martin, dear William,

On Apr 30, 4:39 pm, Martin Albrecht <[EMAIL PROTECTED]>
wrote:

> If I
> understood the e-mail correctly then Roman implied that at *this particular
> meeting* asking for contributors might be perceived as annoying? Thus he
> shared his opinion to help us to make the Sage presentation more successful.

This was my understanding, too.
Say "Please contribute to Sage" - and the people in the audience might
think "Why should i spend my time to make a project work that i even
don't know".
Say "I invite you to use Sage for your work, as in the following
examples" - and the people might think "Ah, it works and could be a
useful thing, so let's try.". They will easily come quite far, at some
point they get stuck, find a way to enhance Sage -- and whoops! They
become contributors.

And for sure this way of attracting new contributors is only possible
since Sage is open source.

Yours
 Simon


--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Slightly OT: SCC 2008 & Braid Groups

2008-04-30 Thread Martin Albrecht

Hi, 

I don't know if that is of any interest but someone around here might care 
about the fact that Sage was probably the most mentioned (and cited) 
mathematics software at the "First Conference for Symbolic Computation and 
Cryptography" (SCC 2008) in Beijing.

Specifically, these authors/papers mentioned Sage:

* Tobias Eibach and Gunnar Völkel: Optimising Gröbner Bases on Bivium (used 
Sage to implement attack)
* Burçin Eröcal: SCrypt: Using Symbolic Computation to Bridge the Gap Between 
Algebra and Cryptography (module for Sage)
* Ralf-Philipp Weinmann and Johannes Buchmann: Distributed Memory Computation 
of Row-Reduced Echelon Forms over Finite Fields (benchmarked against Sage)
* Yours truly and Carlos Cid: Algebraic Techniques in Differential 
Cryptanalysis (used Sage to implement attack)

 (... yes, I know that 3 out of 4 are Sage developers, but still ...)

Another thing:Two talks dealt with Braid group cryptography, namely:

* Robert Gilman, Alex D. Miasnikov, Alexei G. Myasnikov and Alexander Ushakov: 
New Developments in Commutator Key Exchange
* Alex D. Myasnikov and Alexander Ushakov: Cryptanalysis of the 
Anshel-Anshel-Goldfeld-Lemieux Key Agreement Protocol

The group developed a C++ library CRAG:

"""
The Cryptography And Groups (CRAG) Library provides an environment to test 
cryptographic protocols constructed from non-commutative groups, for example 
the braid group. The Library is written in C++ and provides an interface and 
routines for computations. There are implementations of basic algebraic 
objects like words, maps and subgroups. We plan to continually expand the 
list of group-theoretic algorithms implemented in the library. In addition 
the Library will contain classes and routines implementing non-classical 
heuristic approaches and tools to perform statistical and exploratory 
analysis of algebraic data. Together with the C++ source code CRAG contains 
interface to Python scripting language. 
"""

 http://www.acc.stevens.edu/downloads.php

I don't know much about group theory but still I figured someone might find it 
interesting and is able to evaluate if it could be a good addition to Sage.

Cheers,
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Martin Albrecht

> You seem to be anti-open source in your own work,
> which is what *really* matters to you.  It's my understanding
> that you've written a very interesting library in computer
> algebra and it is closed source.   Correct me if I'm wrong,
> but I have the impression you generally don't see the value
> in *open source* mathematical software (per se), and
> are mainly interested in Sage only for the technically
> interesting successes it has had.

Even though I'd prefer the mentioned library to be open source, I'm not sure 
I'd call the policy anti-open source. Fast arithmetic with multivariate 
polynomials is IMHO for many (not all!) applications mostly useful in the 
context of a computer algebra system which involves Gröbner bases, higher 
level algorithms, heuristics etc. Though I am aware that for some 
applications Roman's library would kick ass in its current form, for some 
others it will not in that form. On the other hand Roman did write a -- as 
far as I've skimmed it -- nice paper on the matter detailing his 
implementation strategy. I lack the experience/knowledge to judge whether the 
presented performance improvements would make a huge difference for the 
computation of e.g. Gröbner bases, but he put information out there for 
others to try.

> > BTW, asking for contributors is the surest way to get zero
> > contributors.
>
> I'm really glad I didn't listen to you over the last three years.

Hi, I'm slightly puzzled by that reply since it feels rather hostile. If I 
understood the e-mail correctly then Roman implied that at *this particular 
meeting* asking for contributors might be perceived as annoying? Thus he 
shared his opinion to help us to make the Sage presentation more successful. 

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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 3:26 AM, David Joyner <[EMAIL PROTECTED]> wrote:
>
>  I like it but perhaps I am prejudiced:-) IMHO, SAGE would be dead (or at 
> least
>  a very lonely research project) if it weren't for the fact that it is
>  free and open source.

Sage would certainly not be dead even if I were the only user -- in
fact I was the only person behind Sage for a while.Incidentally,
the *Python* community in Boston, MA was in fact very
interested in Sage from day 1; that made a big big difference
in getting Sage off the ground.

>  But also, design is an important factor.
>
>  Some ideas (I hesitate to call them suggestions since it seems fine as is):
>  1. replace "notable community" by specific growth (as in derivative) numbers.
>  2. replace "interfaces to all exisiting..." by something specific like
>  "well-designed
>  command-line interface to Python, GAP, ..." (You can't say everything
>  in 2 pages but
>  I personally love the tabbed history and completion of the IPython interface
>  and saw it wasn't mentioned.)
>  3. A specific example could be mentioned which smoothly integrates several
>  systems. As Michael B suggests, a group invariant computation in a number
>  field mixes GAP (for groups), Pari for the number field (is this correct?), 
> and
>  Singular (for the polynomial ring invariant theory computations).
>
>

I will demo computation and visualization
of modular abelian varieties during my talk, and keep the above
suggestions in mind.  Computing modular abelian varieties
brings together numerous components of Sage, and is exactly
the functionality I started Sage for.  It's fairly technical,
but not impossibly so (it's just homology groups of modular
curves, which are compact Riemann surfaces, etc.)

>
>  On Wed, Apr 30, 2008 at 1:57 AM, William Stein <[EMAIL PROTECTED]> wrote:
>  >
>  >  Hi,
>  >
>  >  I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm 
> supposed
>  >  to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>  >
>  >http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>  >
>  >  I've been advised by some people on this list to focus on algorithms in 
> Sage
>  >  and purely technical things, but I've totally ignored that advice and 
> instead
>  >  written something very social in which I as honestly as possible lay out 
> exactly
>  >  why Sage exists and try to describe somewhat just what Sage is.
>  >
>  >  I have to submit this in a couple days, but comments are welcome.
>  >
>  >   -- William
>  >
>  >  --
>  >  William Stein
>  >  Associate Professor of Mathematics
>  >  University of Washington
>  >  http://wstein.org
>  >
>  >  >
>  >
>
>
>
> >
>



-- 
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 [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: Symlinks to sage don't work unless ...

2008-04-30 Thread M


Many thanks.

Regards, Max
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 2:34 AM, Roman Pearce <[EMAIL PROTECTED]> wrote:
>
>  On Apr 29, 11:57 pm, "William Stein" <[EMAIL PROTECTED]> wrote:
>  > I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm 
> supposed
>  > to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>  >http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>
>  I think what you wrote is a pretty good introduction to what Sage is,
>  but it is a little long on the open source philosophy (which will turn
>  some people off) and it leaves out interesting details.

The "open source philosophy" is the entire reason for the
existence of Sage.

> The audience
>  will be very interested in why Sage might succeed, when previous open
>  source efforts have failed to attract the large audience of general
>  purpose users and developers.  I suggest the following (some of which
>  you mentioned):
>
>  1) python is an easy and widely used high level language which is
>  particularly well suited for interfacing different programs
>  2) collecting all the existing open source programs has allowed Sage
>  to quickly reach "critical mass", ie: it is very usable right now
>  3) new and interesting things are being brought into Sage (JMol, user
>  interface improvements, etc)
>  4) new mathematical algorithms and libraries are being developed for
>  Sage (FLINT, Linear algebra, rapid development with Cython, etc)
>  5) researchers are using Sage right now (list contributors and areas,
>  and papers if possible)
>  6) Sage is open source
>

Thanks, this is a great list.

>  I think if you start with the technical merits you can easily win over
>  the audience.  These people have heard all kinds of sales pitches, and
>  open source looks like just another crusade.  They are all uniformly
>  interested in computing things, and in software they can use for their
>  work.  Sage has a very strong case on those grounds, please (I'm
>  begging you) stick to it :)

You seem to be anti-open source in your own work,
which is what *really* matters to you.  It's my understanding
that you've written a very interesting library in computer
algebra and it is closed source.   Correct me if I'm wrong,
but I have the impression you generally don't see the value
in *open source* mathematical software (per se), and
are mainly interested in Sage only for the technically
interesting successes it has had.

> BTW, asking for contributors is the surest way to get zero
> contributors.

I'm really glad I didn't listen to you over the last three years.

William

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread William Stein

On Wed, Apr 30, 2008 at 12:02 AM, Bill Page <[EMAIL PROTECTED]> wrote:
>
>  On Wed, Apr 30, 2008 at 1:57 AM, William Stein wrote:
>  >
>  >  Hi,
>  >
>  >  I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm 
> supposed
>  >  to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>  >
>  >http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>  >
>  >  I've been advised by some people on this list to focus on algorithms in 
> Sage
>  >  and purely technical things, but I've totally ignored that advice and 
> instead
>  >  written something very social in which I as honestly as possible lay out 
> exactly
>  >  why Sage exists and try to describe somewhat just what Sage is.
>  >
>  >  I have to submit this in a couple days, but comments are welcome.
>  >
>
>  Hmmm, I have to give it a -1. :-(  I don't like it much. But it's your show. 
> ...

Thanks for your honest feedbck.

>  I really don't think that you will find many people at this meeting
>  who are interested in open source alternatives to commercial software
>  as such.

I guess they will just be bored by my talk and fall asleep.

> Many of the attendees will have and may still be involved in
>  developing software for the commercial systems. Most are also involved
>  in some form of academic research in computer algebra systems. I don't
>  mean that people wont be interested in hearing about the advantages of
>  open source, but I believe that it would not normally be viewed as
>  their primary motivation or preoccupation. And I think they will
>  probably already have a fairly good idea about why Sage exists.

I actually imagine that a lot of them won't have a good idea
about why Sage exists.  The main reason Sage exists is because exactly
those people failed for a very long time to make the tools that I need
for my research in number theory, so I had to take matters into my
own hands.   I suspect they won't see things that way.

>  I think the advice you received from other people on this list to
>  "focus on algorithms and technical things" was probably pretty good
>  for the intended audience. It seems that usually there are three
>  speakers and they are all "technical" in a general sense. For example
>  at ISSAC 2006 http://issac2006.dima.unige.it there were three plenary
>  speakers:
>
>   Christopher Umans Group-Theoretic Algorithms for Matrix 
> Multiplication
>   Hennie Poulisse Computational Communicative Algebra
>   Joachim von zur Gathen  Who was Who in polynomial factorization
>
>  and at ISSAC 2005 http://www.mmrc.iss.ac.cn/issac2005 these five:
>
>   Stephen M. Watt  A Framework for Pen-Based Mathematical Computing
>   Prof. Hai Jin The ChinaGrid and its Impact on e-Science in China
>   Bruno Salvy  D-finiteness: Algorithms and Applications
>   Bruno Buchberger A View on the Future of Symbolic Computation
>   Wen-Tsun Wu  On a Finite Kernel Theorem for Polynomial-Type
>  Optimization
>  Problems and Some of its Applications
>
>  (perhaps two here somewhat less technical)
>
>  and ISSAC 2004 
> http://www.risc.uni-linz.ac.at/about/conferences/issac2004/invitedtalks.html
>
>1.  Numerical Algebraic Geometry and Symbolic Computation  by Jan 
> Verschelde
>2. Triangulations of Polytopes and Algebraic Geometry by Francisco Santos
>3. Sum of Squares of Polynomials and Their Applications by Pablo Parrilo
>
>  -
>  Talking about what Sage "is", however does make sense to me.
>
>  If you are not inclined to speak specifically about how Sage is used
>  in your own or other people's research, then

I certainly will speak about how Sage is used in my research and others
during my talk.  The abstract I posted is limited to 2 pages, and hence
is a lot shorter than my talk.

Also Michael Abshoff will speak for about 10 minutes during my
talk about the organizational structure of the Sage development
process itself (patch review, etc.).

>  why not say something about how Sage actually achieves integration
>  between such a large number of systems? How do you make Maxima results
>  available to Gap and then compute something that you display a fancy
>  3d graphic etc. What is the importance of Python as the interpreter?
>  What about trade-offs for compiled code in Cython or interfaces to
>  external libraries? How important is the web-based notebook interface?
>
>  ... Just some different ideas. I know ideas are cheap, but you did ask. :-)

I did, and I appreciate your thoughts.  I do intend to touch on all the above
points in the talk itself.

 -- William

>  Regards,
>  Bill Page.
>
>  >
>



-- 
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 [EMAIL PROTECTED]
For more optio

[sage-devel] Re: ISSAC abstract

2008-04-30 Thread David Joyner

On Wed, Apr 30, 2008 at 7:46 AM, Simon King <[EMAIL PROTECTED]> wrote:
>
>  Dear Michael,
>
>
>  On Apr 30, 12:15 pm, Michael Brickenstein <[EMAIL PROTECTED]> wrote:
>  > I would be interested in real word use cases, which demonstrate, why
>  > such a system is needed.
>  > E.g., I think Simon king did some cool
>  > things involving at least Singular, GAP, Cython...
>
>  Do you call the computation of cohomology rings of finite p-groups a
>  "real world application"??

I'm not trying to be king of the math-nerd-hill here but 
there is a book "Hadamard Matrices and Their Applications" by Horadam
which shows
how the various constructions of Hadamard codes can be unified using
group cohomology. Of course Hadamard matrices lead to Hadamard codes,
which were used in the Mariner space mission. I call space "real world",
don't you? :-) 

I return you to your regularly scheduled channel.

>  Well, a colleague of mine had "cohomology theory of Lie groups" in his
>  *applied* math exam (Vordiplom). I never understood how he convinced
>  the people that this is legal...
>
>  I think my project makes a good use of Sage:
>  - Output of Gap is used as input for the C-programs written by David
>  Green.
>  - Output of the C-programs is input for methods of Cython classes
>  (these classes are resolutions, cochains, chain maps etc). The classes
>  also include a Cython wrapper for C-MeatAxe.
>  - Finding generators and algebraic relations for the cohomology ring
>  involves Gröbner bases computed with Singular.
>  - At some point, i also use LinBox for Gauss algorithm.
>  - Eventually, the output is a graded-commutative quotient ring in
>  Singular.
>
>  The project works, but definitely it isn't finished yet, there are
>  still many things that ought to be improved.
>
>  I don't know if William should mention a not-yet-finished project, but
>  i do think it is a nice example of a Sage project.
>
>  And, by the way, i do think that the main emphasis of the talk should
>  be "Sage allows for easy and conceptual programming based on a wide
>  range of high quality math software", so
>  +1 to Roman Pearce.
>
>  It is good that Sage is free, but at least for me it matters most that
>  it is both easy to use and very powerful.
>
>  Cheers
>   Simon
>
>
>
>  >
>

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Fwd: Fwd: [sage-devel] A Sage Enhancement Proposal: Lattice Modules

2008-04-30 Thread William Stein

-- Forwarded message --
From: Gabriele Nebe <[EMAIL PROTECTED]>
Date: Wed, Apr 30, 2008 at 6:18 AM
Subject: Re: Fwd: [sage-devel] A Sage Enhancement Proposal: Lattice Modules
To: William Stein <[EMAIL PROTECTED]>


Dear William,

 I am in the moment on a conference in Albania and e-mail is not so easy.
 Nevertheless:
 if these people want to implement such things, they should just go ahead and
 do so. I have no idea how to calculate explicitely isometires of
indefinite lattices,
 but in principle we have a program to calculate the genus symbol of
the lattice.
 And for indefinite ones this suffices to decide whether they are
isometric or not.
 For definite lattices of course lattice reduction procedures (LLL) and
 shortest vector enumeration are other basic tools.

 Best

 Gabi



-- 
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 [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Michael Brickenstein

By the  way, for me it matters most
that Python is a *beautiful* language.
Michael

On 30 Apr., 14:02, Michael Brickenstein <[EMAIL PROTECTED]> wrote:
> Hi Simon!> Do you call the computation of cohomology rings of finite p-groups 
> a
> > "real world application"??
>
> Sorry, I used the wrong terms.
> I meant something like: nothing synthetic, just composing a few
> features,
> but demonstrating, how SAGE can be used to compute an
> actual research problem.
>
> I was asked exactly the same thing on the SINGULAR  meeting, when I
> advertised SAGE, if  SAGE is
> able to tackle the problems, they ( or mathematicians in general) are
> interested in: I mentioned your work as example.
> Michael
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Michael Brickenstein

Hi Simon!
> Do you call the computation of cohomology rings of finite p-groups a
> "real world application"??
Sorry, I used the wrong terms.
I meant something like: nothing synthetic, just composing a few
features,
but demonstrating, how SAGE can be used to compute an
actual research problem.

I was asked exactly the same thing on the SINGULAR  meeting, when I
advertised SAGE, if  SAGE is
able to tackle the problems, they ( or mathematicians in general) are
interested in: I mentioned your work as example.
Michael
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Simon King

Hi,

On Apr 30, 12:26 pm, "David Joyner" <[EMAIL PROTECTED]> wrote:
> 3. A specific example could be mentioned which smoothly integrates several
> systems. As Michael B suggests, a group invariant computation in a number
> field mixes GAP (for groups), Pari for the number field (is this correct?), 
> and
> Singular (for the polynomial ring invariant theory computations).

Yes, that's another good example.

Yours
 Simon

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Simon King

Dear Michael,

On Apr 30, 12:15 pm, Michael Brickenstein <[EMAIL PROTECTED]> wrote:
> I would be interested in real word use cases, which demonstrate, why
> such a system is needed.
> E.g., I think Simon king did some cool
> things involving at least Singular, GAP, Cython...

Do you call the computation of cohomology rings of finite p-groups a
"real world application"??
Well, a colleague of mine had "cohomology theory of Lie groups" in his
*applied* math exam (Vordiplom). I never understood how he convinced
the people that this is legal...

I think my project makes a good use of Sage:
- Output of Gap is used as input for the C-programs written by David
Green.
- Output of the C-programs is input for methods of Cython classes
(these classes are resolutions, cochains, chain maps etc). The classes
also include a Cython wrapper for C-MeatAxe.
- Finding generators and algebraic relations for the cohomology ring
involves Gröbner bases computed with Singular.
- At some point, i also use LinBox for Gauss algorithm.
- Eventually, the output is a graded-commutative quotient ring in
Singular.

The project works, but definitely it isn't finished yet, there are
still many things that ought to be improved.

I don't know if William should mention a not-yet-finished project, but
i do think it is a nice example of a Sage project.

And, by the way, i do think that the main emphasis of the talk should
be "Sage allows for easy and conceptual programming based on a wide
range of high quality math software", so
+1 to Roman Pearce.

It is good that Sage is free, but at least for me it matters most that
it is both easy to use and very powerful.

Cheers
  Simon

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread mhampton

I agree somewhat with others here that you might want to make this a
little more 'technical'.  I would start with your sentence "Sage
itself is..." - describe what it is first, then some of its
capabilities and technical advantages.  As far as open-source and
free, I think the best thing is to highlight the concrete advantages
this brings: easy collaboration with anyone in the world,
possibilities for education and the developing world, verifying
correctness of implementations, and the ease of becoming a developer
(or to put it another way, the ease of getting your own code in).

Your more personal background and reasons for starting it could either
go later in the abstract, or you could just put them in the talk
itself.

Cheers,
Marshall

On Apr 30, 12:57 am, "William Stein" <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm supposed
> to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>
>http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>
> I've been advised by some people on this list to focus on algorithms in Sage
> and purely technical things, but I've totally ignored that advice and instead
> written something very social in which I as honestly as possible lay out 
> exactly
> why Sage exists and try to describe somewhat just what Sage is.
>
> I have to submit this in a couple days, but comments are welcome.
>
>  -- William
>
> --
> William Stein
> Associate Professor of Mathematics
> University of Washingtonhttp://wstein.org
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread David Joyner

I like it but perhaps I am prejudiced:-) IMHO, SAGE would be dead (or at least
a very lonely research project) if it weren't for the fact that it is
free and open source.
But also, design is an important factor.

Some ideas (I hesitate to call them suggestions since it seems fine as is):
1. replace "notable community" by specific growth (as in derivative) numbers.
2. replace "interfaces to all exisiting..." by something specific like
"well-designed
command-line interface to Python, GAP, ..." (You can't say everything
in 2 pages but
I personally love the tabbed history and completion of the IPython interface
and saw it wasn't mentioned.)
3. A specific example could be mentioned which smoothly integrates several
systems. As Michael B suggests, a group invariant computation in a number
field mixes GAP (for groups), Pari for the number field (is this correct?), and
Singular (for the polynomial ring invariant theory computations).

On Wed, Apr 30, 2008 at 1:57 AM, William Stein <[EMAIL PROTECTED]> wrote:
>
>  Hi,
>
>  I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm 
> supposed
>  to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>
>http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>
>  I've been advised by some people on this list to focus on algorithms in Sage
>  and purely technical things, but I've totally ignored that advice and instead
>  written something very social in which I as honestly as possible lay out 
> exactly
>  why Sage exists and try to describe somewhat just what Sage is.
>
>  I have to submit this in a couple days, but comments are welcome.
>
>   -- William
>
>  --
>  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 [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Michael Brickenstein

I would be interested in real word use cases, which demonstrate, why
such a system is needed.
E.g., I think Simon king did some cool
things involving at least Singular, GAP, Cython...

On 30 Apr., 12:00, Roman Pearce <[EMAIL PROTECTED]> wrote:
> BTW, asking for contributors is the surest way to get zero
> contributors.  You should invite people to try Sage (online) and to
> download it so it runs faster.
>
> Also, I thought of another great reason why they would like Sage.
> Many of these people write their own libraries.  Then you have to
> write input and output routines to get data in and out of your
> program.  No sane person enjoys this.  It's a horrible distraction and
> a waste of time.  But if they use Sage they can easily hook in their
> libraries using (easy to learn) Python code.  If possible, show a very
> simple example.  Something like: you type in a univariate polynomial
> into Sage and then you call a C library, and use Python code to
> construct a dense array for C.  If the interface code fits on one
> slide then you are sold.  Just remove all the error checking and make
> it as small as possible.  If possible, return a nice result to Sage.
> For example: use the C code to compute the derivative.  It just shows
> how easy it can be to interface a program with Sage.
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Roman Pearce

BTW, asking for contributors is the surest way to get zero
contributors.  You should invite people to try Sage (online) and to
download it so it runs faster.

Also, I thought of another great reason why they would like Sage.
Many of these people write their own libraries.  Then you have to
write input and output routines to get data in and out of your
program.  No sane person enjoys this.  It's a horrible distraction and
a waste of time.  But if they use Sage they can easily hook in their
libraries using (easy to learn) Python code.  If possible, show a very
simple example.  Something like: you type in a univariate polynomial
into Sage and then you call a C library, and use Python code to
construct a dense array for C.  If the interface code fits on one
slide then you are sold.  Just remove all the error checking and make
it as small as possible.  If possible, return a nice result to Sage.
For example: use the C code to compute the derivative.  It just shows
how easy it can be to interface a program with Sage.
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Roman Pearce

On Apr 29, 11:57 pm, "William Stein" <[EMAIL PROTECTED]> wrote:
> I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm supposed
> to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>    http://sage.math.washington.edu/home/was/tmp/abstract.pdf

I think what you wrote is a pretty good introduction to what Sage is,
but it is a little long on the open source philosophy (which will turn
some people off) and it leaves out interesting details.  The audience
will be very interested in why Sage might succeed, when previous open
source efforts have failed to attract the large audience of general
purpose users and developers.  I suggest the following (some of which
you mentioned):

1) python is an easy and widely used high level language which is
particularly well suited for interfacing different programs
2) collecting all the existing open source programs has allowed Sage
to quickly reach "critical mass", ie: it is very usable right now
3) new and interesting things are being brought into Sage (JMol, user
interface improvements, etc)
4) new mathematical algorithms and libraries are being developed for
Sage (FLINT, Linear algebra, rapid development with Cython, etc)
5) researchers are using Sage right now (list contributors and areas,
and papers if possible)
6) Sage is open source

I think if you start with the technical merits you can easily win over
the audience.  These people have heard all kinds of sales pitches, and
open source looks like just another crusade.  They are all uniformly
interested in computing things, and in software they can use for their
work.  Sage has a very strong case on those grounds, please (I'm
begging you) stick to it :)

Either way, good luck at ISSAC.
--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-devel] Re: ISSAC abstract

2008-04-30 Thread Bill Page

On Wed, Apr 30, 2008 at 1:57 AM, William Stein wrote:
>
>  Hi,
>
>  I'm giving a plenary talk at ISSAC in Linz, Austria this summer.  I'm 
> supposed
>  to write a 2-page "abstract/paper" for the proceedings.  I just wrote 
> something:
>
>http://sage.math.washington.edu/home/was/tmp/abstract.pdf
>
>  I've been advised by some people on this list to focus on algorithms in Sage
>  and purely technical things, but I've totally ignored that advice and instead
>  written something very social in which I as honestly as possible lay out 
> exactly
>  why Sage exists and try to describe somewhat just what Sage is.
>
>  I have to submit this in a couple days, but comments are welcome.
>

Hmmm, I have to give it a -1. :-(  I don't like it much. But it's your show. ...

I really don't think that you will find many people at this meeting
who are interested in open source alternatives to commercial software
as such. Many of the attendees will have and may still be involved in
developing software for the commercial systems. Most are also involved
in some form of academic research in computer algebra systems. I don't
mean that people wont be interested in hearing about the advantages of
open source, but I believe that it would not normally be viewed as
their primary motivation or preoccupation. And I think they will
probably already have a fairly good idea about why Sage exists.

I think the advice you received from other people on this list to
"focus on algorithms and technical things" was probably pretty good
for the intended audience. It seems that usually there are three
speakers and they are all "technical" in a general sense. For example
at ISSAC 2006 http://issac2006.dima.unige.it there were three plenary
speakers:

 Christopher Umans Group-Theoretic Algorithms for Matrix Multiplication
 Hennie Poulisse Computational Communicative Algebra
 Joachim von zur Gathen  Who was Who in polynomial factorization

and at ISSAC 2005 http://www.mmrc.iss.ac.cn/issac2005 these five:

  Stephen M. Watt  A Framework for Pen-Based Mathematical Computing
  Prof. Hai Jin The ChinaGrid and its Impact on e-Science in China
  Bruno Salvy  D-finiteness: Algorithms and Applications
  Bruno Buchberger A View on the Future of Symbolic Computation
  Wen-Tsun Wu  On a Finite Kernel Theorem for Polynomial-Type
Optimization
 Problems and Some of its Applications

(perhaps two here somewhat less technical)

and ISSAC 2004 
http://www.risc.uni-linz.ac.at/about/conferences/issac2004/invitedtalks.html

   1.  Numerical Algebraic Geometry and Symbolic Computation  by Jan Verschelde
   2. Triangulations of Polytopes and Algebraic Geometry by Francisco Santos
   3. Sum of Squares of Polynomials and Their Applications by Pablo Parrilo

-
Talking about what Sage "is", however does make sense to me.

If you are not inclined to speak specifically about how Sage is used
in your own or other people's research, then
why not say something about how Sage actually achieves integration
between such a large number of systems? How do you make Maxima results
available to Gap and then compute something that you display a fancy
3d graphic etc. What is the importance of Python as the interpreter?
What about trade-offs for compiled code in Cython or interfaces to
external libraries? How important is the web-based notebook interface?

... Just some different ideas. I know ideas are cheap, but you did ask. :-)

Regards,
Bill Page.

--~--~-~--~~~---~--~~
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://www.sagemath.org
-~--~~~~--~~--~--~---