[sage-devel] "SageMath will replace Maple"

2017-11-15 Thread William A Stein
One tiny step toward our mission statement...

-- Forwarded message --
From: Jori Mäntysalo
Date: Wed, Nov 15, 2017 at 1:29 AM
Subject: Sage and supercomputer


Might be of interest to know. Taito is the second biggest computer in
Finland, 17704 computing cores in total.

--
Jori Mäntysalo

-- Forwarded message --
Date: Wed, 15 Nov 2017 11:13:51 +0200 (EET)
Subject: [taito-users] SageMath will replace Maple on Taito at December 1, 2017

Dear Taito user,

There will be changes in the available mathematics software on Taito.
The usage of Maple will end at November 30, 2017 and it
will be removed from the CSC's scientific software collection. The open source
software SageMath (http://www.sagemath.org/index.html,
https://research.csc.fi/-/sagemath) will replace Maple.


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

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Fwd: Sage at 2016 MAA Project NExT Networking Lunch

2016-05-14 Thread William A Stein
Is any Sage dev going to the MAA Mathfest?  If so, email Alissa below.

-- Forwarded message --
From: Crans, Alissa <acr...@lmu.edu>
Date: Fri, May 13, 2016 at 9:23 PM
Subject: RE: Sage at 2016 MAA Project NExT Networking Lunch
To: William A Stein <wst...@uw.edu>


Hi William,

I hope you're doing well.

I still haven't been able to find someone coming to MathFest who would
be able to represent Sage to the new MAA Project NExT Fellows.  Can
you think of anyone else I might invite?  I know that Sage is very
popular amongst this group and I would hate for it not to be
represented at our lunch.

Thanks for your time,
alissa
____
From: William A Stein [wst...@uw.edu]
Sent: Friday, April 22, 2016 6:33 PM
To: Crans, Alissa
Cc: bee...@ups.edu; karl.cris...@gordon.edu
Subject: Re: Sage at 2016 MAA Project NExT Networking Lunch

I won't be there either, but thanks!

On Fri, Apr 22, 2016 at 12:14 PM, Crans, Alissa <acr...@lmu.edu> wrote:
> Dear Rob, Karl, and William,
>
> I hope this message finds you well.
>
> I'm writing to invite you to attend the second annual MAA Project NExT 
> Networking Lunch for the 2015-16 and 2016-17 Fellows during MathFest 2016 in 
> Columbus, OH and represent Sage.  The purpose of the lunch is to introduce 
> the new Fellows to the variety of resources in the mathematical community.
>
> The lunch will be held on Wednesday, August 3, 2016 from 12 - 1:30 pm. Lunch 
> will be provided and you will have table space for a sign and computer. 
> Unfortunately we are unable to offer you access to MathFest or funding to 
> attend the lunch if this would require you arriving earlier to MathFest than 
> you were planning to do.
>
> Please let me know if you have any questions. In order to facilitate our 
> planning, please let me know by Wednesday, May 4 whether you will be able to 
> attend. If you are unable to attend, could you suggest someone else that 
> might be available to represent Sage? Thank you very much.   We look forward 
> to having you come introduce the new Fellows to the numerous resources 
> available to them in our community!
>
> Best,
> Alissa Crans
> Associate Director, Project NExT

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Question about Arbitrary Precision Logarithms And Number of Correct Digits

2014-10-03 Thread William A Stein
On Fri, Oct 3, 2014 at 7:34 AM, kcrisman kcris...@gmail.com wrote:
 I ran exactly into this some time ago while sanity-checking some
 high-precision MPFR computations with the results of Wolfram Alpha (which
 also wraps real literals into its own, I presume exact, representation).


 Default precision for reals is 53 bits, if I recall correctly, so the extra
 zeros are assumed.

It's not the *default* precision, but the minimum precision.  There is
no default.   The number of bits of precision is determined by the
number of digits you enter.However, it would be dumb if 1.5 had
way too few bits of precision, so precision is determined by number
digits entered with a minimum of 53 bits.

sage: 1.2908240834908209348208340283482394820384028340823048203480238.prec()
206
sage: 1.5.prec()
53

That we print all the trailing zeros is to be more explicit about the
precision.  Compare:

sage: 1.5
1.50
sage: float(1.5)
1.5

In Python all floats have the same precision, so you get no extra
information by seeing trailing zeros.  In sage you do:

sage: RealField(300)(1.5)
1.5
sage: 1.5
1.50

And no discussion about precision is complete without mentioning
RealIntervalField:

sage: RealIntervalField(300)(1.5)
1.500?

 -- William



 On 3 October 2014 11:42, Volker Braun vbrau...@gmail.com wrote:

 Real literals are wrapped in their own type on the Sage command line,
 they are not hardware-floats (like in plain Python):

 sage: 0.001
 0.00100
 sage: type(_)
 type 'sage.rings.real_mpfr.RealLiteral'


 I am curious, why the extra zeroes in that representation in the second
 line?

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: default ellipse color

2014-10-02 Thread William A Stein
On Wed, Oct 1, 2014 at 10:47 PM, kcrisman kcris...@gmail.com wrote:
 Another 3d-plotting direction is the webgl-enabled JSmol, which is
 actually pretty. It would be easy enough to integrate, though right now the
 upgrade is stuck in he java applet mud ;-)



 Keeping in mind that I'm talking about the non-webgl one, I guess?  But not
 everyone knows how to enable webgl in their browsers, I've found by long
 frustration - I don't know that it's default.
 Or is it now?

WebGL is available on the latest versions of all major browsers (even
mobile), though with some minor issues:

   http://caniuse.com/#feat=webgl

2d Canvas is solidly available on all modern browsers:

   http://caniuse.com/#feat=canvas

Hence at least the 3d in SageMathCloud should work on everything with
no weirdness.

My student Andrew Ohana is now working on making SMC's 3d renderer
into a standalone BSD-licensed project, which can be integrated into
IPython notebook.





 Totes.  But the version currently at #16004 isn't held up by java, but by
 different browsers not wanting to take the data from localhost or something.
 If you can fix this easily, that would be very awesome - I have a branch
 just waiting to try it out again.  The jsmol stuff really works fine
 otherwise, I like it.

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: default ellipse color

2014-10-01 Thread William A Stein
On Wed, Oct 1, 2014 at 8:55 AM, kcrisman kcris...@gmail.com wrote:
  Here is yet another bug.  It seems that in Sage-5.0.beta.x with the
  new notebook code, the default color picker interact control is
  completely broken.  For me, this doesn't work at all:
 
  @interact
  def f(n=Color('red')):
  print n

 Hah, finally one I definitely can't claim responsibility for!


 This apparently just hasn't made the news cycle.  I finally opened an
 upstream ticket at https://github.com/sagemath/sagenb/issues/239

 If it makes you feel better, your idea to go to `colorpicker` as default in
 Trac 9000 was good, because that DOES work.  Apparently never properly kept.
 There isn't even stable documentation on this right now, disgusting...
 anyway, fixing the default is easy.  I don't like color picker as much as
 jpicker, but at least it works in this browser.  And I now accidentally
 committed this change in sagenb, hopefully ppurak or andrey will
 retroactively agrees it works and doesn't break anything.

 - kcrisman

For what it is worth, I use this color picker in SageMathCloud:

http://www.eyecon.ro/bootstrap-colorpicker/

It was the only one I could find last year that worked on mobile,
desktop, and looked reasonably pretty.

It depends on bootstrap, and I had a student hack on it to get it to
work with Bootstrap 3.  Our modified version is available if somebody
wants it...

William


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Proposal: remove SAGE_UPGRADING

2014-09-29 Thread William A Stein
On Mon, Sep 29, 2014 at 3:01 PM, Dima Pasechnik dimp...@gmail.com wrote:
 On 2014-09-29, Volker Braun vbraun.n...@gmail.com wrote:
 I propose to remove the SAGE_UPGRADING variable and make it act like it
 would be always yes (instead of no, which is the current default).
 Right now, we sabotage make to not rebuild dependencies of rebuilt
 packages. So you don't have to wait long for your broken Sage installation.

 The only sane alternative would be to have it default to yes, but I don't
 really think that we really need something with such a narrow use case. You
 can of course always only individual packages (sage -f) and only the sage
 library (sage -b) if you are feeling lucky. But make should really
 produce something that works IMHO.

 +1

 (just got bitten by that, again :-))

+1 -- that's how I had naively hoped it already worked, and I don't
want to get bit by this ever, and I have a fast enough computer



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] sage days 6 video

2014-09-28 Thread William A Stein
Hi,

I finally made the Sage Days 6 [1] (Bristol, UK) videos available:

http://wiki.sagemath.org/days6/videos

Some are amusing, especially the developer interviews that Ondrej
Certik ran around doing...

[1] http://wiki.sagemath.org/days6

 -- William

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Best way to store a database?

2014-09-27 Thread William A Stein
On Saturday, September 27, 2014, Travis Scrimshaw tsc...@ucdavis.edu
wrote:


 It is, but in a totally outdated version. I am not sure whether there is
 a ticket for upgrading it.


We should delete the optional package entirely.  Just encourage people to
pip install it instead. The same goes for every optional package that is in
pypi.



 Quite true. What we've done for FindStat is use easy_install in the Sage
 shell to upgrade it after installing the optional spkg (and deleting the
 old egg information).

 Best,
 Travis

  --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Best way to store a database?

2014-09-27 Thread William A Stein
On Sat, Sep 27, 2014 at 12:22 PM, mmarco mma...@unizar.es wrote:

 How long ?


 Around  five seconds in a very fast SSD disk.



 What kind of Python/Sage object do you want to store at the end ?
 Dictionaries of strings (easy to store in a SQL table) or less standard
 Sage objects ? What takes most processing time, parsing the file or
 creating Sage adequate objects from well stored strings ? Is the data in
 the upstream RDF database organised as a graph and will you use this
 structure in your queries (in which case relational SQL may not be
 appropriate, note that python has libs for dealing with RDF instead of
 parsing it as raw text) ? What kind of queries will the database deal
 with ? Are the kind of queries already stored on the upstream file or
 should you preprocess new columns for better performance ? Will the
 queries involve testing properties on complex Sage objects or looking
 for existence of string and comparing integers ?


 The file contains basically lines of the form:

 knot name / invariant name /invariant value

 Of course the invariant values are stored as strings, but we need to convert
 them to objects like polynomials.

 The main idea i had was to be able to identify a knot. That is, given an
 arbitrary knot by the user, compute the corresponding invariants, and then
 look at the database for possible candidates (that is, knots with the same
 invariants). That means that we would need fast comparisons against the
 objects stored in the database.

Or if the data types are standard (e.g., integers, floats,  etc.),
then you can build
an index.  This is a 1-liner in SQLite, and makes queries super-fast.

William


 Of course it could also be used on the opposite direction: to construct
 knots in sage just by their identifier in the database.




 Also, the answer may depend on whether the upstream database is evolving
 fast and whether you will ensure long-term maintenance of the package.
 Depending on this, an option could be to have a command within Sage that
 fetches, parses/preprocess (if there is a benefit), and store the
 database on user's demand. This can be compatible with offering a
 preprocessed package as well if preprocessing takes more time than
 fetching (like distributing sources vs distributing binaries).


 I think the upstream datbse is essentially stabilized. Maybe at some point
 they could add more knots to the database, but doesn't seem likely.


 Ciao,
 Thierry

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Sage package bash?

2014-09-26 Thread William A Stein
On Fri, Sep 26, 2014 at 7:06 AM, John Cremona john.crem...@gmail.com
javascript:; wrote:
 On 26 September 2014 14:59, Dima Pasechnik dimp...@gmail.com
javascript:; wrote:
 From the noises I hear, in particular on our departamental email,
sysadmins might be tempted to rm -f /bin/bash
 from any place they can get their hands on.

 It might mean that for building/working with Sage one will need a
separate install of bash.
 (or we should switch to another shell...)

 I just updated the ubuntu systems I administer and the problem went
 away.  Here is  a diagnistic I found online:

 jec@lmfdb:~$ x='() { :;}; echo VULNERABLE' bash -c :
 bash: warning: x: ignoring function definition attempt
 bash: error importing function definition for `x'

 On a vulnerable system, it outputs VULNERABLE.

1. John: My impression is that certain people are so panicked about this
(perhaps rightfully so, who knows), that they are paranoid
that even though the above worrisome behavior doesn't occur, something
similar will.

2. Dima -- do we specifically use bash features in the build scripts of
Sage?


 John


 Dima


 --
 You received this message because you are subscribed to the Google
Groups sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send
an email to sage-devel+unsubscr...@googlegroups.com javascript:;.
 To post to this group, send email to sage-devel@googlegroups.com
javascript:;.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.

 --
 You received this message because you are subscribed to the Google Groups
sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
email to sage-devel+unsubscr...@googlegroups.com javascript:;.
 To post to this group, send email to sage-devel@googlegroups.com
javascript:;.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



--
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu javascript:;


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Best way to store a database?

2014-09-26 Thread William A Stein
On Fri, Sep 26, 2014 at 8:48 AM, mmarco mma...@unizar.es wrote:
 I am working on an optional package for the knot atlas. The idea is to
 download the database of knots and links and be able to query it.

 I have downloaded a +300MB .rdf file from the knot atlas web page. Juyst
 parsing it takes a bit. Which would be the right format to store that
 information in a way that is fast to access? Or is it better to just use the
 file provided by upstream and parse it every time?

It depends on what you're doing.   If you can use SQLITE [1] then it
is pretty much the optimal solution to the above problem.(I say
can use, since SQLITE is awesome when it is applicable to a problem,
but it might not be since it doesn't use a client/server model.)
Python has excellent SQLITE support.   I usually just use [2]
directly, though there are object relational mappers (I don't
recommend that if you care about performance).

[1] http://www.sqlite.org/

[2] https://docs.python.org/2/library/sqlite3.html

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Best way to store a database?

2014-09-26 Thread William A Stein
On Friday, September 26, 2014, Julien Puydt julien.pu...@laposte.net
wrote:

 Hi,

 Le 26/09/2014 22:18, mmarco a écrit :

 So i take it would require sqlite as a dependency? or is it already
 shipped
 with sage by default?


 It is shipped (quite recent),



To clarify - we have included sqlite with sage since at least 2007.


 and with python bindings (sqlalchemy -- that one a little old).


Just to clarify:  Python itself has built-in bindings to sqlite, which of
course are built as part of sage.   Sqlalchemy is NOT python bindings to
sqlite.  Instead it is an ORM - A Library that maps python objects to
relational database data.I highly recommend NOT using sqlalchemy for
such a specific high performance math research application.  It is aimed
much more at things like web applications...

I do very highly recommend just going to the sqlite website and learning
about it directly.  It's often fastest to create a CSV file (say) and
directly read it in rather than using the python interface.

Sqlite is a fantastic high quality piece of software when it makes sense to
use it.



 Snark on #sagemath

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Why I don't think Sage has failed as a replacement for Maple, Mathematica and other Ma*'s

2014-09-25 Thread William A Stein
On Wed, Sep 24, 2014 at 11:33 PM, Chris Seberino cseber...@gmail.com wrote:
 I read W. Stein's blog on why he thinks Sage is failing since it isn't on
 par with Maple, Mathematica and other Ma*'s *now*.

Just to slightly clarify -- my concern is not that Sage isn't on par
with the Ma's now.  My concern is that at the current rate of
progress, Sage will not be on par with Magma in terms of functionality
10 years from now.   This is a genuine problem, given the mission
statement for the project.  I personally know of numerous people who
can't use Sage for their mathematics work specifically because of
missing functionality.

 I teach high schoolers and college students.  At that level Sage is more
 than adequate as a replacement for all Ma*'s now.

I happily don't dispute this.   Though I think we need way better
documentation, e.g., more items like Gregory Bard's Sage for
Undergraduates [1].

[1] http://www.gregorybard.com/sage_for_undergraduates_color.pdf.zip

 If it encourages anybody..I think the problem is a lot of the core
 developers are light years ahead of the rest of the
 world in their advanced cutting edge math knowledge.

There are certainly numerous core developers who are on the forefront
of mathematical research.


 For us mere mortals, Sage has definitely helped humanity and will continue
 to.  Also, what percent of
 present and future Sage users do you think are in the mere mortals group?
 90%? 99%?

Probably about 99% of Sage users are mathematics undergraduate/high
school students, i.e., exactly the people you're talking about in this
email.  Numerically, they are certainly the vast majority of Sage
users.  (I'm not making this up -- I have hard data.)

 Imagine a few billion poor students in third world countries all having
 access to quality computer algebra
 assisted math instruction thanks to Sage!  We should all wish to make such
 an impact on the world!!!

 Please everyone stop getting down because Sage isn't on top of the hill for
 the advanced 5% of users.
 The world needs and wants Sage.  It elevates the entire human race.

Many thanks for the kind words and encouragement.

That said, numerics aside, I personally very much want Sage to be a
viable alternative to Magma (at least) for research mathematicians.
There may not be an enormous number of research mathematicians in the
world, but supporting them is potentially extremely valuable to
society.



 Sincerely,

 Chris



 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Why I don't think Sage has failed as a replacement for Maple, Mathematica and other Ma*'s

2014-09-25 Thread William A Stein
On Thu, Sep 25, 2014 at 11:26 AM, Jan Groenewald j...@aims.ac.za wrote:
 Hi



 On 25 September 2014 20:01, kcrisman kcris...@gmail.com wrote:

 I read W. Stein's blog on why he thinks Sage is failing since it isn't
 on par with Maple, Mathematica and other Ma*'s *now*.

 I teach high schoolers and college students.  At that level Sage is more
 than adequate as a replacement for all Ma*'s now.


 I am curious as to what parts of Sage you use.  I suspect you are using
 it mostly as a front-end to Maxima,
 In which case -- have you considered using Maxima directly, esp.
 wxmaxima?

 Thanks for any info.



 My hope is that the open-source math ecosystem can have this attitude in
 general - it's not a zero-sum game by any means, at least not at this time.
 And so there are some things that Maxima is not as well suited for as Sage -
 and yes, many people use those things.  Or perhaps some instructor needs an
 interface thing.  Or (and truly this is nontrivial) the underlying
 programming language *does* make a difference, and Python is just ...
 easier.  (For instance, one of my current students learned to program on
 paper, I am told.  She did not use a computer for it until she arrived here
 and now she actually knows how to use Python after three weeks - I was not
 the teacher, btw.)


 And it was quite likely Pascal being learnt on paper.

For what it is worth, my first programming language was C learned on
paper, probably around 1981.  I had no access to a computer, but I
knew how to read, and somehow obtained a book on C, which I read and
simulated.

 -- William


 Regards,
 Jan

 --
   .~.
   /V\ Jan Groenewald
  /( )\www.aims.ac.za
  ^^-^^

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-cloud] Install SciLab components create/enable %julia for worksheets?

2014-09-25 Thread William A Stein
Hi,

I fixed the scilab problem.   Restart your Sage Worksheet Server
(lower left in project settings) to see the fix (and scilab now
working).  Note that output in worksheets looks a little funny, due to
control codes.

The scilab problem was a bug in Sage... or rather something in the
command line options to scilab changed as scilab evolved, and Sage
didn't keep up.

I posted something to the Sage trac about this:

   http://trac.sagemath.org/ticket/17043

I would really appreciate it if somebody could make this into a proper
branch, etc. and make sure it gets into sage.  I put the 2-line patch
in the ticket description. Unfortunately, these days that's
a ton of extra work beyond just posting what needs to be changed, and
I would rather spend time working on SMC itself.

Similar remarks apply about

   http://trac.sagemath.org/ticket/17044

which fixes (changing just a few characters) a longstanding
permissions issue that broke many pexpect interfaces for a system-wide
install, and in particular broke the scilab interface.

 -- William



On Thu, Sep 25, 2014 at 9:55 AM, rickhg12hs rickhg1...@gmail.com wrote:
 Okay, great.  Thanks!  I hope you get the grant.

 I was concerned that bringing up two issues in one post (a bad practice)
 might mean both weren't addressed.

 On Thursday, September 25, 2014 12:07:35 PM UTC-4, Stein William wrote:

 On Thu, Sep 25, 2014 at 3:56 AM, rickhg12hs rickh...@gmail.com wrote:
  Just tried this again in a new worksheet and it still does not work.
 
  Is this an SMC issue?  A documentation issue?

 It's an SMC issue. It's also an I-had-to-write-a-grant-proposal this
 week issue.I finished the grant proposal last night, so back to
 SMC work.

 
 
  On Monday, September 22, 2014 7:36:57 PM UTC-4, rickhg12hs wrote:
 
 
  Could you please tell us which commands you tried?
 
  I tried what appears in the help message:
 
  scilab?
 File:
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py
 Docstring:
Interface to the Scilab interpreter.
 
 
 EXAMPLES:
sage: a = scilab('[ 1, 1, 2; 3, 5, 8; 13, 21, 33 ]')#
optional - scilab sage: b = scilab('[ 1; 3; 13]')
# optional - scilab sage: c = a * b
# optional - scilab sage: print c
# optional - scilab
 
 
   30. 122. 505.
 
 
  a = scilab('[ 1, 1, 2; 3, 5, 8; 13, 21, 33 ]')
 
  Error in lines 1-1
  Traceback (most recent call last):
   File
 
  /projects/b376311d-43f7-4cb0-9b91-47ae46f504f2/.sagemathcloud/sage_server.py,
  line 828, in execute
   exec compile(block+'\n', '', 'single') in namespace, locals
   File , line 1, in module
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/interface.py,
  line 199, in __call__
   return cls(self, x, name=name)
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
  line 1312, in __init__
   self._name = parent._create(value, name=name)
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/interface.py,
  line 389, in _create
   self.set(name, value)
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
  line 309, in set
   out = self.eval(cmd)
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
  line 276, in eval
   s = Expect.eval(self, command,
  **kwds).replace(\x1b[?1l\x1b,).strip()
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
  line 1229, in eval
   for L in code.split('\n') if L != ''])
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
  line 823, in _eval_line
   self._start()
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
  line 263, in _start
   Expect._start(self)
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
  line 450, in _start
   raise RuntimeError(Unable to start %s%self.name())
 
  TypeError: Unable to start scilab
 
  %scilab
 
  b = [ 1, 1, 2; 3, 5, 8; 13, 21, 33 ]
 
  Error in lines 1-1
  Traceback (most recent call last):
   File
 
  /projects/b376311d-43f7-4cb0-9b91-47ae46f504f2/.sagemathcloud/sage_server.py,
  line 828, in execute
   exec compile(block+'\n', '', 'single') in namespace, locals
   File , line 1, in module
   File
 
  /projects/b376311d-43f7-4cb0-9b91-47ae46f504f2/.sagemathcloud/sage_server.py,
  line 863, in execute_with_code_decorators
   print code_decorator.eval(code, locals=self.namespace),
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
  line 276, in eval
   s = Expect.eval(self, command,
  **kwds).replace(\x1b[?1l\x1b,).strip()
   File
 
  /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces

[sage-devel] Re: [sage-cloud] Install SciLab components create/enable %julia for worksheets?

2014-09-25 Thread William A Stein
On Thu, Sep 25, 2014 at 5:28 PM, rickhg12hs rickhg1...@gmail.com wrote:
 Thanks, it seems to be functional now.

 As you pointed out, the output can be pretty whacked and print doesn't
 like it, but the right numbers appear!

Yep.  The output will get fixed too, but that's for a little later...


 On Thursday, September 25, 2014 8:10:35 PM UTC-4, Stein William wrote:

 Hi,

 I fixed the scilab problem.   Restart your Sage Worksheet Server
 (lower left in project settings) to see the fix (and scilab now
 working).  Note that output in worksheets looks a little funny, due to
 control codes.

 The scilab problem was a bug in Sage... or rather something in the
 command line options to scilab changed as scilab evolved, and Sage
 didn't keep up.

 I posted something to the Sage trac about this:

http://trac.sagemath.org/ticket/17043

 I would really appreciate it if somebody could make this into a proper
 branch, etc. and make sure it gets into sage.  I put the 2-line patch
 in the ticket description. Unfortunately, these days that's
 a ton of extra work beyond just posting what needs to be changed, and
 I would rather spend time working on SMC itself.

 Similar remarks apply about

http://trac.sagemath.org/ticket/17044

 which fixes (changing just a few characters) a longstanding
 permissions issue that broke many pexpect interfaces for a system-wide
 install, and in particular broke the scilab interface.

  -- William



 On Thu, Sep 25, 2014 at 9:55 AM, rickhg12hs rickh...@gmail.com wrote:
  Okay, great.  Thanks!  I hope you get the grant.
 
  I was concerned that bringing up two issues in one post (a bad practice)
  might mean both weren't addressed.
 
  On Thursday, September 25, 2014 12:07:35 PM UTC-4, Stein William wrote:
 
  On Thu, Sep 25, 2014 at 3:56 AM, rickhg12hs rickh...@gmail.com wrote:
   Just tried this again in a new worksheet and it still does not work.
  
   Is this an SMC issue?  A documentation issue?
 
  It's an SMC issue. It's also an I-had-to-write-a-grant-proposal this
  week issue.I finished the grant proposal last night, so back to
  SMC work.
 
  
  
   On Monday, September 22, 2014 7:36:57 PM UTC-4, rickhg12hs wrote:
  
  
   Could you please tell us which commands you tried?
  
   I tried what appears in the help message:
  
   scilab?
  File:
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py
  Docstring:
 Interface to the Scilab interpreter.
  
  
  EXAMPLES:
 sage: a = scilab('[ 1, 1, 2; 3, 5, 8; 13, 21, 33 ]')#
 optional - scilab sage: b = scilab('[ 1; 3; 13]')
 # optional - scilab sage: c = a * b
 # optional - scilab sage: print c
 # optional - scilab
  
  
30. 122. 505.
  
  
   a = scilab('[ 1, 1, 2; 3, 5, 8; 13, 21, 33 ]')
  
   Error in lines 1-1
   Traceback (most recent call last):
File
  
  
   /projects/b376311d-43f7-4cb0-9b91-47ae46f504f2/.sagemathcloud/sage_server.py,
   line 828, in execute
exec compile(block+'\n', '', 'single') in namespace, locals
File , line 1, in module
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/interface.py,
   line 199, in __call__
return cls(self, x, name=name)
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
   line 1312, in __init__
self._name = parent._create(value, name=name)
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/interface.py,
   line 389, in _create
self.set(name, value)
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
   line 309, in set
out = self.eval(cmd)
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
   line 276, in eval
s = Expect.eval(self, command,
   **kwds).replace(\x1b[?1l\x1b,).strip()
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
   line 1229, in eval
for L in code.split('\n') if L != ''])
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
   line 823, in _eval_line
self._start()
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/scilab.py,
   line 263, in _start
Expect._start(self)
File
  
  
   /usr/local/sage/sage-6.3.beta6/local/lib/python2.7/site-packages/sage/interfaces/expect.py,
   line 450, in _start
raise RuntimeError(Unable to start %s%self.name())
  
   TypeError: Unable to start scilab
  
   %scilab
  
   b = [ 1, 1, 2; 3, 5, 8; 13, 21, 33 ]
  
   Error in lines 1-1
   Traceback (most recent call last):
File
  
  
   /projects/b376311d-43f7-4cb0-9b91-47ae46f504f2/.sagemathcloud/sage_server.py,
   line 828, in execute
exec compile(block+'\n', '', 'single

Re: [sage-devel] Printing deprecated functions in gray ?

2014-09-24 Thread William A Stein
On Wed, Sep 24, 2014 at 7:54 AM, Nathann Cohen nathann.co...@gmail.com wrote:
 Hello everybody !

 Here I was deprecating stuff, and I wondered: could we make it explicit in
 the tab-completion that some functions are deprecated ?

 In particular, I have to (I am not proud) replace a (now deprecated)
 designs.orthogonal_array with a (note the terminal 's')
 designs.orthogonal_arrays.

 Wouldn't it be cool if typing designs.tab would display the first
 deprecated function in light gray, so as to mean it's disappearing ?

 I was wondering how to prevent users from reading the (long) documentation
 of this function before noticing that it is deprecated when they call it,
 only to see how the new one works.

Maybe you could write at the TOP of the docstring:

   DEPRECATED

Or even make the deprecation decorator prepend that to the docstring
automatically?


 Clearly not critical :-P




 Nathann

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Sage Stack Exchange Site

2014-09-22 Thread William A Stein
On Mon, Sep 22, 2014 at 7:49 AM, Kjetil brinchmann Halvorsen
kjetil1...@gmail.com wrote:
 I have been informed in some communication with SX folks that they do not do
 this, as a matter of policy.  When they first started I guess they may have
 done so a few times, but definitely not now.  So one would have to keep
 ask.sagemath running in read-only mode or something even if this were done
 (or lose the questions and answers forever).
 Or somebody would have to do the transferral manually ...

The most important question -- by far -- is:

  QUESTION: Is that allowed?

If we write a script that copies the thousands of questions from
ask.sagemath to SX, will they see us running it and ban us?Just
because they don't do the important themselves (which would be crazy
to expect them to do), doesn't mean we couldn't easily technically do
it from a database dump.

William

 Kjetil

 On Mon, Sep 22, 2014 at 2:26 PM, kcrisman kcris...@gmail.com wrote:

 the first step of the project would be to transfer all questions
 already asked.


 I have been informed in some communication with SX folks that they do not
 do this, as a matter of policy.  When they first started I guess they may
 have done so a few times, but definitely not now.  So one would have to keep
 ask.sagemath running in read-only mode or something even if this were done
 (or lose the questions and answers forever).

 - kcrisman

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: [GDML] [gdml] ICERM report and comments

2014-09-16 Thread William A Stein
On Tue, Sep 16, 2014 at 8:14 AM, Volker Braun vbraun.n...@gmail.com wrote:
 On Tuesday, September 16, 2014 4:08:27 PM UTC+1, kcrisman wrote:

 For those looking for a laugh, check out http://clochure.org/ .  I have to
 admit, their list of reasons to use it is short, but somehow makes sense
 when they say it.  Not that brackets should replace parentheses everywhere
 (such as in defining mathematical functions...).


 Neat, we take one of the ugliest Objective-C syntax elements because, hey,
 tons of people are already used to the ugly.

Lest somebody here is taking clochure seriously -- from their github
repo: Clochure was an April Fools day project. Don't take it
seriously.



 The only question is: why did it take Apple so long to let Obj-C die? ;-)

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Deprecations for changed behaviour

2014-09-15 Thread William A Stein
On Mon, Sep 15, 2014 at 9:58 AM, Jeroen Demeyer jdeme...@cage.ugent.be wrote:
 Dear sage-devel,

 we all know that deprecations are good when you remove some functionality (a
 function, a keyword...). It's not clear to me if there is any deprecation
 policy for *changing* functionality.

I think it should depend on the documented API.  In this case...


 In this case, I am talking about this functionality:

 sage: x = polygen(GF(7))
 sage: k.a = GF(7, modulus=x-2)
 sage: k.gen()
 1



... the docstring says:

Docstring: Return generator of this finite field as an extension of
its prime field.
Note: If you want a primitive element for this finite field instead,
use multiplicative_generator().

 The first question is: does this need a deprecation? One would argue that
 the current behaviour is a bug, but maybe some code depends on this bug (it
 is hard to imagine how though...).

I don't think it needs a deprecation, since you are not changing the
documented API.
However, if you make this change, I hope you will document it clearly
in the API, since there's probably
some application you have in mind that would depend on this new
behavior.  Then if somebody asks the
same question in five years, and once to change behavior again, then
they *can't* without a deprecation
period, because the behavior you just implemented is officially documented.


 And if we need a deprecation, how to do it? Add a new method newmodulus
 instead of modulus and deprecate modulus:

 sage: k.a = GF(7, modulus=x-2)
 DeprecationWarning: the 'modulus' argument is deprecated, use 'newmodulus'
 instead which is no longer ignored for prime fields
 sage: k.a = GF(7, newmodulus=x-2)
 sage: k.gen()
 2

 This seems silly, but I cannot think of anything better.

 Jeroen.

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Deprecations for changed behaviour

2014-09-15 Thread William A Stein
On Mon, Sep 15, 2014 at 11:11 AM, Jeroen Demeyer jdeme...@cage.ugent.be wrote:
 On 2014-09-15 19:19, William A Stein wrote:

 I think it should depend on the documented API.
 ... the docstring says:

 Docstring: Return generator of this finite field as an extension of
 its prime field.
 Note: If you want a primitive element for this finite field instead,
 use multiplicative_generator().

 I am of course happy that I don't need the deprecation, but I should
 honestly mention that the docstring for *prime fields* says

 sage: k = GF(7)
 sage: k.gen?
 Type:instancemethod
 String form: bound method FiniteField_prime_modn_with_category.gen of
 Finite Field of size 7
 File:
 /usr/local/src/sage-config/local/lib/python2.7/site-packages/sage/rings/finite_rings/finite_field_prime_modn.py
 Definition:  k.gen(self, n=0)
 Docstring:
Return a generator of self over its prime field.

This always returns 1.

Note: If you want a primitive element for this finite field instead,
  use multiplicative_generator().

 Does this change your opinion?

I pasted my docstring in from Sage Version 6.2.rc2, Release Date:
2014-05-04, but with sage-6.3 the This always returns 1. appears.
So this docstring was *just* changed a month ago (by [1]).

 If it said This always returns 1. for a long time, that would be
different.   Since it is so recent, I'm personally willing to be a bit
more flexible...

 -- William

[1] http://trac.sagemath.org/ticket/14990


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [GDML] [gdml] ICERM report and comments

2014-09-13 Thread William A Stein
Does anybody know of any concrete examples of reproducible research
failures involving sage, in the spirit of the article? I.e. actual
(published?) research math code done in sage version X that can't be run
today (in particular either the api of sage changed a lot *or* nobody can
build sage version X).  Sage is nearly 10 years old and I can't think of
any such examples...  But it would be helpful to have some so we can
improve.

I know there are worksheets/snippets of code that don't work in sage 6.3,
but that is different.

 I did have somebody (Peter Sarnak of Princeton) email me specifically
wanting to run code from something I did in 2003, which was lost, but that
was pre-sage.

On Saturday, September 13, 2014, kcrisman kcris...@gmail.com wrote:

 7) The application of software engineering is I feel an important
 thing. I have tried to argue this before, with very little success,
 suggesting William buy books on the topic for serious developers. I
 note that this paper makes the same comments.


 I think that many Sage developers are familiar with these (as has been
 pointed out before), but the highly distributed nature of Sage development
 and the fact that no one person can come close to knowing the entire
 codebase makes applying a lot of these principles very hard.  The
 consensus-driven model Sage uses also makes this challenging - witness the
 discussion about 0-based versus 1-based permutations... Fred Brooks has
 some good comments about the bazaar method of development in The Design
 of Design, though I don't necessarily agree with everything he says there;
 his point about many supposedly bazaar projects starting with (or
 continuing with) a very clear vision and design from one person is spot on,
 and I think that some modules in Sage that have been shepherded largely by
 one or two people for a long time show this.  It would be nice in
 principle, but in practice there are a lot of constraints - mostly time and
 the desire to get actual math in Sage - that make stopping all Sage
 development until everyone has had a proper course in software engineering
 hard.

 - kcrisman

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] sparse linear algebra in sage

2014-09-13 Thread William A Stein
On Sat, Sep 13, 2014 at 11:28 AM, Erik Slivken
 wrote:
 William-

 I am trying to find the eigenvalues of a roughly 1x1 sparse matrix
 with entries from {0,1} (and would like to do this for even larger
 matrices).  I don't know what could be done to increase the speed (right now
 it has been running for roughly half a day).  But it said to email you to
 raise a quota.  Also, if there is special faculty access, this is a project
 with Chris Hoffman from UW and I am sure he would sign on for more computing
 power.

 Thanks for your time.

 Cheers,
 Erik Slivken

 P.S.  How long should it take to find the eigenvalues of a 1x1
 sparse matrix with entries from {0,1}?  What about a 10^6x10^6 sparse matrix
 with entries in from {0,1}?

Never.   Sage doesn't have any easily available sophisticated sparse
linear algebra algorithms, as far as I know.  Linbox (which is in Sage
-- a C++ library), might have something; and Cremona's eclib has some
gems hidden in it.  I wrote some really stupid sparse linear algebra,
which was sufficient for something I did once.   There's several
stages to sparse algorithms, and what is in Sage only implements the
first part -- the endgame, which is to solve a resulting dense
system at a certain point, isn't in sage.  Sebastian Pancratz and I
did implement it once
somewhere... (not sure), but it isn't in sage (and it was not easy),
and now Sebastian works at a bank.

Try typing

set_verbose(2)

to see what is happening, if you're using sage.

You should seriously consider searching the web for current available
software for sparse linear algebra.  Last I checked, unfortunately,
Sage is definitely not an off-the-shelf solution for anything
nontrivial involving sparse matrices, except for maybe efficiently
storing them.

(I've changed the subject and cc'd some people on this email, in case
anybody knows anything about sparse linear algebra and wants to chime
in.)

 William

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: sparse linear algebra in sage

2014-09-13 Thread William A Stein
On Sat, Sep 13, 2014 at 11:52 AM, William A Stein wst...@uw.edu wrote:
 On Sat, Sep 13, 2014 at 11:28 AM, Erik Slivken
  wrote:
 William-

 I am trying to find the eigenvalues of a roughly 1x1 sparse matrix
 with entries from {0,1} (and would like to do this for even larger
 matrices).  I don't know what could be done to increase the speed (right now
 it has been running for roughly half a day).  But it said to email you to
 raise a quota.  Also, if there is special faculty access, this is a project
 with Chris Hoffman from UW and I am sure he would sign on for more computing
 power.

 Thanks for your time.

 Cheers,
 Erik Slivken

 P.S.  How long should it take to find the eigenvalues of a 1x1
 sparse matrix with entries from {0,1}?  What about a 10^6x10^6 sparse matrix
 with entries in from {0,1}?

 Never.   Sage doesn't have any easily available sophisticated sparse
 linear algebra algorithms, as far as I know.  Linbox (which is in Sage
 -- a C++ library), might have something; and Cremona's eclib has some
 gems hidden in it.  I wrote some really stupid sparse linear algebra,
 which was sufficient for something I did once.   There's several
 stages to sparse algorithms, and what is in Sage only implements the
 first part -- the endgame, which is to solve a resulting dense
 system at a certain point, isn't in sage.  Sebastian Pancratz and I
 did implement it once
 somewhere... (not sure), but it isn't in sage (and it was not easy),
 and now Sebastian works at a bank.

 Try typing

 set_verbose(2)

 to see what is happening, if you're using sage.

 You should seriously consider searching the web for current available
 software for sparse linear algebra.  Last I checked, unfortunately,
 Sage is definitely not an off-the-shelf solution for anything
 nontrivial involving sparse matrices, except for maybe efficiently
 storing them.

 (I've changed the subject and cc'd some people on this email, in case
 anybody knows anything about sparse linear algebra and wants to chime
 in.)

He adds Also, I only need the largest eigenvalue, if that makes it easier.


  William

 --
 William Stein
 Professor of Mathematics
 University of Washington
 http://wstein.org
 wst...@uw.edu



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Fwd: [GDML] [gdml] ICERM report and comments

2014-09-11 Thread William A Stein
Hi Sage Devs,

I just received this email which links to a report about global
digital math libraries and also a long and opinionated document by
somebody named Nelson Beebe.  Since Sage is mentioned a few times in
both documents, I thought I would forward them, since maybe some Sage
developers might find something of interest.   The first document
ICERM-2014.pdf seems to aim to be factual and well balanced, whereas I
could barely look at the second document entitled
ICERM-2014-NOTES.pdf without feeling very annoyed...



-- Forwarded message --
From: Nelson H. F. Beebe be...@math.utah.edu
Date: Thu, Sep 11, 2014 at 5:20 PM
Subject: [GDML] [gdml] ICERM report and comments
To: g...@mathunion.org


The ICERM (Institute for Computational and Experimental Research in
Mathematics) workshop led to the production of an 18-page report
published on the Web on 28-Aug-2014.  I read it, and sent a long reply
in e-mail to the authors.  One of them suggested that I write up my
comments in PDF form, and earlier this week, I did so, adding some
polishing and additional information, and numerous Web links.

The two reports are available here:

http://www.math.utah.edu/~beebe/icerm

There is discussion in both of the desirability of global digital math
libraries, the main topic of this mailing list, so I expect that some
of you may be interested in the two reports.

---
- Nelson H. F. BeebeTel: +1 801 581 5254  -
- University of UtahFAX: +1 801 581 4148  -
- Department of Mathematics, 110 LCBInternet e-mail: be...@math.utah.edu  -
- 155 S 1400 E RM 233   be...@acm.org  be...@computer.org -
- Salt Lake City, UT 84112-0090, USAURL: http://www.math.utah.edu/~beebe/ -
---


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Fwd: [sage-cloud] Google Summer of Code Alternative

2014-09-10 Thread William A Stein
 of experience in FOSS
projects, mentoring, and academia and can help out wherever we are
needed. All mentors can contact us at any time.

Do Semester of Code projects have to involve writing code?

Generally, student projects at our partner institutions involve
programming, so projects with this focus will be most popular and
relevant. However, projects involving other areas of software
engineering are acceptable, including system design, quality
evaluation, testing, documentation, translation etc.
Guidelines for submitting project ideas will be provided when the idea
submission period launches.

What technologies are studied by the Semester of Code students?

The students participating in Semester of Code will be studying a
range of technologies across the field of computer science.
These include: Programming languages such as Java, C++, PHP,
Javascript, C#; Web technologies such as HTML and CSS; Database
technologies including MySQL and Postgres; System architectures such
as Service-Oriented Architectures and MVC; Mobile development for iOS
and Android.
Project ideas encompassing any of these areas will be well suited to
our students, but individual students may also have interest and
expertise in other technologies, so don’t feel restricted by these
lists when submitting ideas.

Thanks,
Andrei.

--
You received this message because you are subscribed to the Google
Groups sage-cloud group.
To unsubscribe from this group and stop receiving emails from it, send
an email to sage-cloud+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/sage-cloud/634fa2cc-6a7c-47a4-a6f5-300b648573c4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: [sage-cloud] Google Summer of Code Alternative

2014-09-10 Thread William A Stein
On Wed, Sep 10, 2014 at 11:06 AM, Harald Schilly
harald.schi...@gmail.com wrote:
 I've already asked on the mentor list about this, but I don't remember
 any reactions (but I was on a conference and didn't follow
 everything). IIRC, deadline is this Friday. I can register Sage and
 see what happens …

Woops -- well I'm officially interested in mentoring something in number theory.



 H

 On Wed, Sep 10, 2014 at 6:52 PM, William A Stein wst...@uw.edu wrote:
 I'm forwarding this to the sage-devel list, since sage-cloud isn't
 sage (and sage-cloud isn't FOSS, so can't participate in this
 program), but Sage can.

 --
 You received this message because you are subscribed to the Google Groups 
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Joint Math Meetings Sage Booth

2014-09-10 Thread William A Stein
Hi,

If you're going to the JMM in San Antonio in January, and want to help
out with the Sage booth (e.g., setup, etc.), I can get you an
exhibitor badge, which gives you access to the exhibit hall at extra
times (and normal times).Let me know in the next few days.

I'll be at the booth a lot.

Thanks,

 -- William

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] About typechecking

2014-09-05 Thread William A Stein
On Fri, Sep 5, 2014 at 7:22 AM, Jori Mantysalo jori.mantys...@uta.fi wrote:
 Here is the code for is_isomorphic() on class FinitePoset:

 if hasattr(other,'hasse_diagram'):
 return . . .
 else:
 raise ValueError('The input is not a finite poset.')

 So for example Posets.PentagonPoset().is_isomorphic(Hello everyone!) gives
 the error message as it should.

 But why the code doesn't directly check that `other` is of type FinitePoset?
 In theory there could be some other structure using hasse diagram at back.
 Is there some rationale behind this?

The rational is called duck typing.  Check out [1], duck typing is
a style of typing in which an object's methods and properties
determine the valid semantics, rather than its inheritance from a
particular class or implementation of an explicit interface. [...]
When I see a bird that walks like a duck and swims like a duck and
quacks like a duck, I call that bird a duck.

The idea is that somebody could create a completely new different
class that they want to use the above code on.  Instead of having to
explicitly change their code to derive from  FinitePoset, they just
have to make sure it has a hasse_diagram method, that quacks like a
duck.

I am neither for nor against this approach, and haven't even read the
surrounding code mentioned above.  I just thought it would be useful
to add a link to the rationale.

[1] http://en.wikipedia.org/wiki/Duck_typing


 --
 Jori Mäntysalo

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: [sage-cloud] gap on smc; whitelist gap-system.org

2014-09-03 Thread William A Stein
On Tue, Sep 2, 2014 at 11:27 PM, Samuel Lelièvre
samuel.lelie...@gmail.com wrote:

 William Stein wrote:

 Is there anybody out there whose interested in (greatly) increasing
 the number of optional gap packages in the optional GAP spkg for Sage?

 This thread has a lot of info about this.In particular, this would
 be very beneficial to SageMathCloud...

  -- William


 Ideally, the sagecell server(s) at sagecell.sagemath.org and
 aleph.sagemath.org could also have a fuller GAP, so that it
 would be a place to play with GAP online.

Yes, that's exactly why I'm hoping we improve the Sage gap spkg,
rather than me just using BOB (say) on SageMathCloud.  I want Sage and
all sage-related services to also have a better GAP install.

William


 Samuel


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-cloud] Re: [sage-devel] Re: gap on smc; whitelist gap-system.org

2014-09-03 Thread William A Stein
On Wed, Sep 3, 2014 at 1:44 AM, Dima Pasechnik dimp...@gmail.com wrote:
 On 2014-09-02, William A Stein wst...@uw.edu wrote:
 Hi Sage-devs,

 Is there anybody out there whose interested in (greatly) increasing
 the number of optional gap packages in the optional GAP spkg for Sage?

 Probably it would be better to split the  optional GAP spkg into parts, 
 otherwise
 it will be huge...
 (the current gap_packages*.bz2 is already 27Mb)

Sure, that would be fine.  E.g., we could have
gap_packages-recommended and gap_packages-more or something, i.e.,
name them in a way that divides them into two.  Of course, for SMC
I'll just install both.

 There are also things like missing license info for a number of packages.
 AFAIK GAP devs were not able to fix this.
 I'm not sure whether it's OK to impose on such packages the GAP's
 own license - probably not, as GAP is under GPL, and GPL needs
 contributor's consent.

Yes, the licensing is a big problem, which is why this will only ever
be optional, and not something we distribute with Sage.

Of course, I don't want any packages that have licenses that mean I
can't install them in SMC...

 There also also few packges which provide interfaces to other systems,
 like Singular, and they might be tricky to get right
 within Sage.

 If there are no other volunteers, I can look into this, but I can't
 promise a fast completion, as papers+grants have priority in my
 (publishgrants)||perish case.

Maybe you could provide some scratch directions, without doing everything...?


 Dima

 This thread has a lot of info about this.In particular, this would
 be very beneficial to SageMathCloud...

  -- William

 On Tue, Sep 2, 2014 at 3:22 PM, Alexander Konovalov
alexander.konova...@gmail.com wrote:
 On Monday, September 1, 2014 10:30:30 AM UTC+1, Stein William wrote:

 I'm cc'ing this to sage-devel.  It is about GAPs long, long list of
 packages, most of which we don't include or even package optionally
 for Sage...

 On Fri, Aug 29, 2014 at 3:18 AM, Alexander Konovalov
 alexander...@gmail.com wrote:
  On Friday, August 29, 2014 8:06:33 AM UTC+1, Stein William wrote:
   There are a large number of packages here.
 
  
 
 http://www.gap-system.org/Packages/packages.html
 
  
 
   Which ones should I install?  All of them?  Some of them?
 
  
 
   Can you ask at the meeting?
 
 
 
  Do you know if I could install *all* of them, or do some change
 
  behavior of Gap and interfere with others?  Or, like with Python,
 
  possibly increase startup time.
 
 
  Installing all packages will not increase GAP startup time, since they
  are not loaded (it's not a good idea to load all packages 
  simultaneously).
  It will only increase the disk space used by GAP. OTOH, the user will be
  able to use GAP help system to search across manuals of ALL packages
  installed on the system.
 
  Then, since the same packages will be loaded after default GAP startup,
  the user will have the same experience in both cases.
 
  Furthermore, testing the GAP distribution, we ensure that this
  particular set of packages is fitting together, so I'd not guarantee that
  tearing it apart will not cause any side effects.
 

 Can I use BOB to install all the accepted GAP packages into an
 existing GAP install?   It seems to me that BOB both builds GAP and
 installs all packages into that GAP.  I don't want that -- I instead
 want to use the GAP I built as part of Sage.

 Also, in general, my understanding is that installing a GAP package is
 explained here

http://www.gap-system.org/Manuals/doc/ref/chap76.html#X7B6CD527825945CD

 and basically that says to download the package, extract it, and
 read/guess/etc. what to do next.  In particular, what to do can be
 anything from nothing, to really complicated, and there's no single
 script to just run.  I was expecting that I could just make a list of
 packages and type something like

 gap -i names of packages ...

 and it would install all of them, like every other package system I've
 ever used does (e.g., R, Pypi, Sage's, npm, and many others).  If
 BOB can basically do exactly this, then that's very, very cool and a
 great contribution to GAP.   If you could quickly summarize the
 situation about what BOB can actually do with an existing GAP install,
 it would be greatly appreciated.   (I haven't just tried diving into
 BOB due to lack of time.)

 Thanks,

  -- William


 Thank you for questions. At the moment, BOB performs a new install, so it's
 not suitable to update an existing GAP installation. That is a suggestion
 for the future perhaps, for BOB or for any other package manager for GAP
 that may appear. I was recommending BOB in response to Samuel saying ...
 alternatively, would it be possible to have a separate full GAP install?.
 If you prefer just to add some more packages to the GAP version that is
 built as part of Sage, and do not want all of them for some reasons, then it
 would be great at least to ensure that all packages

[sage-devel] Sage Booth -- Joint Math Meetings in January

2014-09-03 Thread William A Stein
Hi,

In case anybody is curious, there *will* be a Sage booth again at the
Joint Mathematics Meetings in Texas this January, and I'll be at the
booth pretty much the whole time.  Help, etc., will be appreciated.

 -- William

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-release] You don't really think that Sage has failed, do you? (a comment about it)

2014-09-02 Thread William A Stein
On Tuesday, September 2, 2014, Nicolas M. Thiery nicolas.thi...@u-psud.fr
wrote:

 On Fri, Aug 29, 2014 at 10:03:52AM -0700, Bill Hart wrote:
 To my knowledge, the European Union funding agencies did not have a
 significant stake in the origin and development of Sage,

 Indeed, and this is by design :-)

 Well, at least in my little world. My strategy has always been
 bottom-up. First get people to do the actual work. Then, as minimally
 needed, look for funding. For its first ten years, *-Combinat was only
 funded indirectly through research grants that had some computational
 aspects.

 In general, the Sage ecosystem has progressively grown big in Europe
 with little direct funding. Now we have reached a point where it's
 time to change that!



Exactly!!



 Cheers,
 Nicolas
 --
 Nicolas M. Thiéry Isil nthi...@users.sf.net javascript:;
 http://Nicolas.Thiery.name/

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com javascript:;.
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:;.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: SAGE in the cloud and Python 3

2014-09-02 Thread William A Stein
On Tue, Sep 2, 2014 at 8:41 AM,  jean-paul@unice.fr wrote:
 Hi William !
 When will SAGE be Python 3 compatible ? I tried with range and it’s still 
 Python 2…
 Thanks,

As far as I know, we currently have no specific concrete plans for
transition sage from Python 2 to Python 3. I've cc'd the
sage-devel list in case there's something brewing.

You could use command-line Python 3 in a terminal on SMC by creating a
terminal then typing python3.

 -- William

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Fwd: SAGE in the cloud and Python 3

2014-09-02 Thread William A Stein
(This is a sage-devel question, not one for me personally or for
sage-cloud; please join that mailing list.)

For example, Volker remarks There has been some steady progress by
Wilfried Luebbe and André Apitzsch to move towards Python 3.
Meta-tickets:

http://trac.sagemath.org/ticket/16052
http://trac.sagemath.org/ticket/15980




-- Forwarded message --
From:  jean-paul@unice.fr
Date: Tue, Sep 2, 2014 at 9:12 AM
Subject: Re: SAGE in the cloud and Python 3
To: William A Stein wst...@uw.edu


Ok, but I saw that SciPy and Numpy were Py3 compatible now :
  http://www.scipy.org/scipylib/faq.html#do-numpy-and-scipy-support-python-3-x
So, why ? Isn’t Py3 the obvious future of Python ? Most universities
here teach Python 3.
Thanks,

-jpr

Le 2 sept. 2014 à 18:06, William A Stein wst...@uw.edu a écrit :

 On Tue, Sep 2, 2014 at 8:41 AM,  jean-paul@unice.fr wrote:
 Hi William !
 When will SAGE be Python 3 compatible ? I tried with range and it’s still 
 Python 2…
 Thanks,

 As far as I know, we currently have no specific concrete plans for
 transition sage from Python 2 to Python 3. I've cc'd the
 sage-devel list in case there's something brewing.

 You could use command-line Python 3 in a terminal on SMC by creating a
 terminal then typing python3.

 -- William

 --
 William Stein
 Professor of Mathematics
 University of Washington
 http://wstein.org
 wst...@uw.edu




-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: [sage-cloud] gap on smc; whitelist gap-system.org

2014-09-02 Thread William A Stein
Hi Sage-devs,

Is there anybody out there whose interested in (greatly) increasing
the number of optional gap packages in the optional GAP spkg for Sage?

This thread has a lot of info about this.In particular, this would
be very beneficial to SageMathCloud...

 -- William

On Tue, Sep 2, 2014 at 3:22 PM, Alexander Konovalov
alexander.konova...@gmail.com wrote:
 On Monday, September 1, 2014 10:30:30 AM UTC+1, Stein William wrote:

 I'm cc'ing this to sage-devel.  It is about GAPs long, long list of
 packages, most of which we don't include or even package optionally
 for Sage...

 On Fri, Aug 29, 2014 at 3:18 AM, Alexander Konovalov
 alexander...@gmail.com wrote:
  On Friday, August 29, 2014 8:06:33 AM UTC+1, Stein William wrote:
   There are a large number of packages here.
 
  
 
 http://www.gap-system.org/Packages/packages.html
 
  
 
   Which ones should I install?  All of them?  Some of them?
 
  
 
   Can you ask at the meeting?
 
 
 
  Do you know if I could install *all* of them, or do some change
 
  behavior of Gap and interfere with others?  Or, like with Python,
 
  possibly increase startup time.
 
 
  Installing all packages will not increase GAP startup time, since they
  are not loaded (it's not a good idea to load all packages simultaneously).
  It will only increase the disk space used by GAP. OTOH, the user will be
  able to use GAP help system to search across manuals of ALL packages
  installed on the system.
 
  Then, since the same packages will be loaded after default GAP startup,
  the user will have the same experience in both cases.
 
  Furthermore, testing the GAP distribution, we ensure that this
  particular set of packages is fitting together, so I'd not guarantee that
  tearing it apart will not cause any side effects.
 

 Can I use BOB to install all the accepted GAP packages into an
 existing GAP install?   It seems to me that BOB both builds GAP and
 installs all packages into that GAP.  I don't want that -- I instead
 want to use the GAP I built as part of Sage.

 Also, in general, my understanding is that installing a GAP package is
 explained here

http://www.gap-system.org/Manuals/doc/ref/chap76.html#X7B6CD527825945CD

 and basically that says to download the package, extract it, and
 read/guess/etc. what to do next.  In particular, what to do can be
 anything from nothing, to really complicated, and there's no single
 script to just run.  I was expecting that I could just make a list of
 packages and type something like

 gap -i names of packages ...

 and it would install all of them, like every other package system I've
 ever used does (e.g., R, Pypi, Sage's, npm, and many others).  If
 BOB can basically do exactly this, then that's very, very cool and a
 great contribution to GAP.   If you could quickly summarize the
 situation about what BOB can actually do with an existing GAP install,
 it would be greatly appreciated.   (I haven't just tried diving into
 BOB due to lack of time.)

 Thanks,

  -- William


 Thank you for questions. At the moment, BOB performs a new install, so it's
 not suitable to update an existing GAP installation. That is a suggestion
 for the future perhaps, for BOB or for any other package manager for GAP
 that may appear. I was recommending BOB in response to Samuel saying ...
 alternatively, would it be possible to have a separate full GAP install?.
 If you prefer just to add some more packages to the GAP version that is
 built as part of Sage, and do not want all of them for some reasons, then it
 would be great at least to ensure that all packages listed under the
 'PackagesToLoad' user preference in lib/package.gi are included:

   default:= [ autpgrp, alnuth, crisp, ctbllib, factint, fga,
   irredsol, laguna, polenta, polycyclic, resclasses,
   sophus, tomlib ],


 But the actual list will be larger, since these default packages have some
 dependencies, as can be seen from the GAP startup information:

  ┌───┐   GAP, Version 4.7.5 of 24-May-2014 (free software, GPL)
  │  GAP  │   http://www.gap-system.org
  └───┘   Architecture: x86_64-unknown-linux-gnu-gcc-default64
  Libs used:  gmp, readline
  Loading the library and packages ...
  Components: trans 1.0, prim 2.1, small* 1.0, id* 1.0
  Packages:   AClib 1.2, Alnuth 3.0.0, AtlasRep 1.5.0, AutPGrp 1.6,
  Browse 1.8.5, Carat 2.1.4, CRISP 1.3.8, Cryst 4.1.12,
  CrystCat 1.1.6, CTblLib 1.2.2, FactInt 1.5.3, FGA 1.2.0,
  GAPDoc 1.5.1, IO 4.3.1, IRREDSOL 1.2.4, LAGUNA 3.6.4,
  Polenta 1.3.2, Polycyclic 2.11, RadiRoot 2.7, ResClasses 3.3.2,
  Sophus 1.23, SpinSym 1.5, TomLib 1.2.4
  Try '?help' for help. See also  '?copyright' and  '?authors'
 gap


 Ideally, starting GAP from Sage, one should be able to see the same.

 Best regards

 Alexander





 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group

Re: [sage-devel] Re: [sage-cloud] gap on smc; whitelist gap-system.org

2014-09-02 Thread William A Stein
On Tue, Sep 2, 2014 at 3:40 PM, François Bissey
francois.bis...@canterbury.ac.nz wrote:
 That's a point were I think I should chip in some info.

 When sage moved to gap 4.5+ I was in pain making a new ebuild for sage-on-
 gentoo. Initially I was just installing the full gap instead of a trimmed
 version. Installation takes ages. I have now trimmed things a little bit
 but it still take ages - but still an improvement.

 I had to very quickly blacklist xgap, removing it altogether. In gap 4.5.x
 it would automatically load when gap was started in sage and cause sage to
 hang. It took us a little while to pinpoint it.
 https://github.com/cschwan/sage-on-gentoo/issues/189
 in particular
 https://github.com/cschwan/sage-on-gentoo/issues/189#issuecomment-12587392

 Installing the rest had an effect on a couple of doctests if I remember
 correctly but nothing dramatic.

Wow, many thanks for sharing your experience!

 -- William


 Francois

 On Tue, 02 Sep 2014 15:22:21 Alexander Konovalov wrote:
 On Monday, September 1, 2014 10:30:30 AM UTC+1, Stein William wrote:
  I'm cc'ing this to sage-devel.  It is about GAPs long, long list of
  packages, most of which we don't include or even package optionally
  for Sage...
 
  On Fri, Aug 29, 2014 at 3:18 AM, Alexander Konovalov
 
  alexander...@gmail.com javascript: wrote:
   On Friday, August 29, 2014 8:06:33 AM UTC+1, Stein William wrote:
There are a large number of packages here.
   
  http://www.gap-system.org/Packages/packages.html
   
Which ones should I install?  All of them?  Some of them?
   
   
   
Can you ask at the meeting?
  
   Do you know if I could install *all* of them, or do some change
  
   behavior of Gap and interfere with others?  Or, like with Python,
  
   possibly increase startup time.
  
   Installing all packages will not increase GAP startup time, since they
 
  are not loaded (it's not a good idea to load all packages simultaneously).
  It will only increase the disk space used by GAP. OTOH, the user will be
  able to use GAP help system to search across manuals of ALL packages
  installed on the system.
 
   Then, since the same packages will be loaded after default GAP startup,
 
  the user will have the same experience in both cases.
 
   Furthermore, testing the GAP distribution, we ensure that this
 
  particular set of packages is fitting together, so I'd not guarantee that
  tearing it apart will not cause any side effects.
 
 
  Can I use BOB to install all the accepted GAP packages into an
  existing GAP install?   It seems to me that BOB both builds GAP and
  installs all packages into that GAP.  I don't want that -- I instead
  want to use the GAP I built as part of Sage.
 
  Also, in general, my understanding is that installing a GAP package is
  explained here
 
 http://www.gap-system.org/Manuals/doc/ref/chap76.html#X7B6CD527825945CD
 
  and basically that says to download the package, extract it, and
  read/guess/etc. what to do next.  In particular, what to do can be
  anything from nothing, to really complicated, and there's no single
  script to just run.  I was expecting that I could just make a list of
  packages and type something like
 
  gap -i names of packages ...
 
  and it would install all of them, like every other package system I've
  ever used does (e.g., R, Pypi, Sage's, npm, and many others).  If
  BOB can basically do exactly this, then that's very, very cool and a
  great contribution to GAP.   If you could quickly summarize the
  situation about what BOB can actually do with an existing GAP install,
  it would be greatly appreciated.   (I haven't just tried diving into
  BOB due to lack of time.)
 
  Thanks,
 
   -- William

 Thank you for questions. At the moment, BOB performs a new install, so it's
 not suitable to update an existing GAP installation. That is a suggestion
 for the future perhaps, for BOB or for any other package manager for GAP
 that may appear. I was recommending BOB in response to Samuel saying ...
 alternatively, would it be possible to have a separate full GAP install?.
 If you prefer just to add some more packages to the GAP version that is
 built as part of Sage, and do not want all of them for some reasons, then
 it would be great at least to ensure that all packages listed under the
 'PackagesToLoad' user preference in lib/package.gi are included:

   default:= [ autpgrp, alnuth, crisp, ctbllib, factint, fga,
   irredsol, laguna, polenta, polycyclic, resclasses,
   sophus, tomlib ],


 But the actual list will be larger, since these default packages have some
 dependencies, as can be seen from the GAP startup information:
  ┌───┐   GAP, Version 4.7.5 of 24-May-2014 (free software, GPL)
  │  GAP  │   http://www.gap-system.org
  └───┘   Architecture: x86_64-unknown-linux-gnu-gcc-default64
  Libs used:  gmp, readline
  Loading the library and packages ...
  Components: trans 1.0, prim 2.1, small* 1.0, id* 1.0

Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-09-01 Thread William A Stein
 Am Sonntag, 31. August 2014 18:15:44 UTC+2 schrieb Volker Braun:
 Links don't work (home directories on boxen are private now)

I'm happy to change any to be public, on a case-by-case basis.  I was
just having too much trouble with people posting illegal books
publicly, then I get contacted by angry publishers and authors.


On Mon, Sep 1, 2014 at 1:31 AM, Emil Widmann emil.widm...@gmail.com wrote:
 Oh, I see. I got reports from people who couldn't donwload my stuff. I was
 not much interested over the last 2-3 years and from what I can see
 paradigmas have changed. From postings I read Prof. Stein thinks that
 commercialising via the SageCloud is the way to go to.

That's the way *I'm* going to increase easy availability of Sage.  I
really hope other people
like you will continue to work on and support all ways of gaining
access to Sage.

William




 On Sunday, August 31, 2014 2:57:20 PM UTC+1, Emil Widmann wrote:

 It is all old stuff. Links to sources etc are here:
 https://groups.google.com/forum/#!topic/sage-windows/yoAcv8W5Fw0

 Am Sonntag, 31. August 2014 13:40:03 UTC schrieb Volker Braun:

 Maybe yes, maybe no. Which steps did you do to get the output?

 On Sunday, August 31, 2014 2:11:03 PM UTC+1, Emil Widmann wrote:

 wine should work


 On Sunday, August 31, 2014 1:00:46 PM UTC, Volker Braun wrote:

 How do I build it from a script on Linux?


 On Sunday, August 31, 2014 12:50:52 PM UTC+1, Emil Widmann wrote:



 Am Freitag, 29. August 2014 07:36:05 UTC+2 schrieb Jori Mantysalo:

 On Thu, 28 Aug 2014, Emil Widmann wrote:

  However, can we put VirtualBox and Sage to one .exe? What is
  really
  needed
  is to convert http://wiki.sagemath.org/SageAppliance to be just
  1)
  Download this .exe, 2) Doubleclick it, 3) Ready.

  Yes, I wrote an installer which included the VirtualBox installer
  and the
  Sage Appliance inside one exe.

 Then THIS is what we need!

 And of course underlying sage system should start automatically, in
 headless mode etc, if by all means possible. And open browser, so
 icon on
 user's desktop would be shortcut to .bat that just works. And to
 think
 little more, maybe have sage binaries installed to virtual drive
 marked as
 immutable image or (virtual) disk partition mounted as read-only.



 here is the link to the Sage Win installer
 https://www.dropbox.com/s/uq9p60hkttr3ail/Sage-Win-Installer.exe?dl=0

 It will install Virtualbox and Sage.ova with one exe installer. it is
 ca 490 MB size.

 sage version is outdated and it still contains a full VM with X and
 desktop, but you can start notebook and then use the windows browser. 
 Enough
 to test as a protoype.

 best regards
 emil

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-09-01 Thread William A Stein
On Mon, Sep 1, 2014 at 1:38 AM, William A Stein wst...@uw.edu wrote:
 Am Sonntag, 31. August 2014 18:15:44 UTC+2 schrieb Volker Braun:
 Links don't work (home directories on boxen are private now)

 I'm happy to change any to be public, on a case-by-case basis.  I was
 just having too much trouble with people posting illegal books
 publicly, then I get contacted by angry publishers and authors.

This should now work:

 http://sage.math.washington.edu/home/emil/



 On Mon, Sep 1, 2014 at 1:31 AM, Emil Widmann emil.widm...@gmail.com wrote:
 Oh, I see. I got reports from people who couldn't donwload my stuff. I was
 not much interested over the last 2-3 years and from what I can see
 paradigmas have changed. From postings I read Prof. Stein thinks that
 commercialising via the SageCloud is the way to go to.

 That's the way *I'm* going to increase easy availability of Sage.  I
 really hope other people
 like you will continue to work on and support all ways of gaining
 access to Sage.

 William




 On Sunday, August 31, 2014 2:57:20 PM UTC+1, Emil Widmann wrote:

 It is all old stuff. Links to sources etc are here:
 https://groups.google.com/forum/#!topic/sage-windows/yoAcv8W5Fw0

 Am Sonntag, 31. August 2014 13:40:03 UTC schrieb Volker Braun:

 Maybe yes, maybe no. Which steps did you do to get the output?

 On Sunday, August 31, 2014 2:11:03 PM UTC+1, Emil Widmann wrote:

 wine should work


 On Sunday, August 31, 2014 1:00:46 PM UTC, Volker Braun wrote:

 How do I build it from a script on Linux?


 On Sunday, August 31, 2014 12:50:52 PM UTC+1, Emil Widmann wrote:



 Am Freitag, 29. August 2014 07:36:05 UTC+2 schrieb Jori Mantysalo:

 On Thu, 28 Aug 2014, Emil Widmann wrote:

  However, can we put VirtualBox and Sage to one .exe? What is
  really
  needed
  is to convert http://wiki.sagemath.org/SageAppliance to be just
  1)
  Download this .exe, 2) Doubleclick it, 3) Ready.

  Yes, I wrote an installer which included the VirtualBox installer
  and the
  Sage Appliance inside one exe.

 Then THIS is what we need!

 And of course underlying sage system should start automatically, in
 headless mode etc, if by all means possible. And open browser, so
 icon on
 user's desktop would be shortcut to .bat that just works. And to
 think
 little more, maybe have sage binaries installed to virtual drive
 marked as
 immutable image or (virtual) disk partition mounted as read-only.



 here is the link to the Sage Win installer
 https://www.dropbox.com/s/uq9p60hkttr3ail/Sage-Win-Installer.exe?dl=0

 It will install Virtualbox and Sage.ova with one exe installer. it is
 ca 490 MB size.

 sage version is outdated and it still contains a full VM with X and
 desktop, but you can start notebook and then use the windows browser. 
 Enough
 to test as a protoype.

 best regards
 emil

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



 --
 William Stein
 Professor of Mathematics
 University of Washington
 http://wstein.org
 wst...@uw.edu



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-cloud] gap on smc; whitelist gap-system.org

2014-09-01 Thread William A Stein
I'm cc'ing this to sage-devel.  It is about GAPs long, long list of
packages, most of which we don't include or even package optionally
for Sage...

On Fri, Aug 29, 2014 at 3:18 AM, Alexander Konovalov
alexander.konova...@gmail.com wrote:
 On Friday, August 29, 2014 8:06:33 AM UTC+1, Stein William wrote:
  There are a large number of packages here.

 

http://www.gap-system.org/Packages/packages.html

 

  Which ones should I install?  All of them?  Some of them?

 

  Can you ask at the meeting?



 Do you know if I could install *all* of them, or do some change

 behavior of Gap and interfere with others?  Or, like with Python,

 possibly increase startup time.


 Installing all packages will not increase GAP startup time, since they are 
 not loaded (it's not a good idea to load all packages simultaneously). It 
 will only increase the disk space used by GAP. OTOH, the user will be able to 
 use GAP help system to search across manuals of ALL packages installed on the 
 system.

 Then, since the same packages will be loaded after default GAP startup, the 
 user will have the same experience in both cases.

 Furthermore, testing the GAP distribution, we ensure that this particular set 
 of packages is fitting together, so I'd not guarantee that tearing it apart 
 will not cause any side effects.


Can I use BOB to install all the accepted GAP packages into an
existing GAP install?   It seems to me that BOB both builds GAP and
installs all packages into that GAP.  I don't want that -- I instead
want to use the GAP I built as part of Sage.

Also, in general, my understanding is that installing a GAP package is
explained here

   http://www.gap-system.org/Manuals/doc/ref/chap76.html#X7B6CD527825945CD

and basically that says to download the package, extract it, and
read/guess/etc. what to do next.  In particular, what to do can be
anything from nothing, to really complicated, and there's no single
script to just run.  I was expecting that I could just make a list of
packages and type something like

gap -i names of packages ...

and it would install all of them, like every other package system I've
ever used does (e.g., R, Pypi, Sage's, npm, and many others).  If
BOB can basically do exactly this, then that's very, very cool and a
great contribution to GAP.   If you could quickly summarize the
situation about what BOB can actually do with an existing GAP install,
it would be greatly appreciated.   (I haven't just tried diving into
BOB due to lack of time.)

Thanks,

 -- William



 Best regards,
 Alexander

 --
 You received this message because you are subscribed to the Google Groups 
 sage-cloud group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-cloud+unsubscr...@googlegroups.com.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/sage-cloud/f9d3ad3c-4a94-4887-8c47-1f9c2df9bf9f%40googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-09-01 Thread William A Stein
On Mon, Sep 1, 2014 at 3:42 AM, Dr. David Kirkby (Kirkby Microwave
Ltd) drkir...@kirkbymicrowave.co.uk wrote:
 On 28 August 2014 16:55, Vincent Delecroix 20100.delecr...@gmail.com wrote:
 2014-08-28 17:44 UTC+02:00, Jori Mantysalo jori.mantys...@uta.fi:

 I am now thinking for example university class using Sage as a part of
 some course. Teachers don't want to use time for being it-support;
 students do not try installing Sage, if it SEEMS to be complicated.

 Note that for teaching/installation there is an alternative: tell the
 students to come with a USB stick and just clone the sage-debian live
 (http://sagedebianlive.metelu.net/). It is very easy to use and all
 students will have exactly the same system. The procedure to duplicate
 the key is integrated inside the key, so the time to set up 200 keys
 is in theory just log(200)/log(2) * (time of one install), ignoring
 the fact that you could clone several keys at once.

 The key is definitely not set up for development. But it's still
 doable using a local drive (intensive access to the filesystem on a
 USB stick will just burn it quickly).

 It is completely self contained with no it-support needed (except that
 you need computers that are able to boot on USB).

 Vincent

 I can't imagine a single *professional* system admin in a university
 would want students booting computers from USB sticks. I'm not saying
 some random lecturer who takes on a system admin role would mind, but
 from a security point of view, having PCs booting from a USB stick is
 risky. Malicious software could do any sort of nasty. I've reset
 passwords on Windows machines doing that - boot Linux, mount the NTFS
 file system, edit the files.

 If students have their own laptops, then it is less of a risk, but I
 would imagine the lecturer would spend all his/her time trying to help
 a student get his/her laptop to boot from a USB stick. You would need
 to get into the BIOS for that, and many computers are different about
 how that works.

 Of course, the same argument can be made about booting from any form
 of ISO image, such as a DVD.

I'm also personally uncomfortable with the whole USB stick/DVD boot
proposal for making Sage easier to use
for similar reasons.  However, it's important to distinguish between a
modern professionally run computer lab (with full disk encryption,
BIOS passwords, fast network), etc., and a second-hand lab of older
computers in a developing country with crappy or non-existent network,
say.There's huge value in the USB/ISO Live linux approach to
running Sage in *that* context.

Thierry, I'm definitely +1 your efforts, even though I'm not
personally likely to use them.  If we should feature something more
prominently somewhere on the sage website, let me know.

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: [sage-release] You don't really think that Sage has failed, do you? (a comment about it)

2014-08-30 Thread William A Stein
On Sat, Aug 30, 2014 at 10:12 AM, Bill Hart goodwillh...@googlemail.com wrote:


 On Saturday, 30 August 2014 00:35:01 UTC+2, Robert Bradshaw wrote:

 On Fri, Aug 29, 2014 at 5:03 AM, Bill Hart goodwi...@googlemail.com
 wrote:
 
  On Friday, 29 August 2014 13:17:40 UTC+2, Volker Braun wrote:
 
  First of all, it always saddens me when the ugly head of nationalism
  rears
  its head. I thought the time where we only support German science were
  over...

 +1

  You have misunderstood. When applying for German funding, the rules will
  naturally state that the project must benefit the people paying for the
  work, namely German companies and Mutter und Vater taxpayer.
 
  When applying for European funding, the rules will naturally state that
  the
  funding must benefit the people paying for the work, namely the European
  Union members.

 I would say that the beneficiaries are (1) those funded to do the work
 and (2) all users of the work. It's not like the money would go to the
 US or even the project.


 Then the grant would be rejected.



  The idea that European funds should be used primarily to support an
  international project *with no direct benefit to European projects*
  invoked
  in the grant is patently a non-starter. That's just as bad, in my
  opinion,
  as taking public funds to work on a closed source mathematical system!

 You're a big fan of Julia. However, would you argue that European
 funds should not be used to support it because it's not a European
 Project?


 Yes.

Would you argue that American funds should not be used to support
Pari, Singular, GAP, etc., etc., because they are not American
Projects?

 I'd say the criteria would be whether Europeans benefit from
 Julia (and I one could argue from a protectionist economic perspective
 whether Europeans are the ones being paid to do the work, though I'd
 just rather pay the best available person).

 Sadly, if the people judging these grants have this perspective, one
 might have to sell efforts like sage-combinat as a European
 project rather than part of Sage.


 Yes.

Would you argue that American funds should not be used to support
sage-combinat?(In fact, the NSF has directly funded sage-combinat
[1].)

Or do you apply a double standard for European funds versus outside funds?

And most importantly when you say should above, do you mean:

  [ ] you think this is the way it *should* be, or

  [ ] you simply mean that you believe -- via your reading of the EU
grant guidelines -- that this is how it *is* right now.   There's an
enormous difference between these two choices.



[1] Linked NSF grant funding sage-combinat
(http://www.nsf.gov/awardsearch/advancedSearchResult?QueryText=sage-combinatActiveAwards=true#results):

Collaborative Research: SI2-SSE: Sage-Combinat: Developing and Sharing
Open Source Software for Algebraic Combinatorics
Award Number:1147161; Principal Investigator:Gregg Musiker;
Co-Principal Investigator:; Organization:University of Minnesota-Twin
Cities;NSF Organization:ACI Award Date:06/01/2012; Award
Amount:$195,688.00; Relevance:48.77;

Collaborative Research: SI2-SSE: Sage-Combinat: Developing and Sharing
Open Source Software for Algebraic Combinatorics
Award Number:1147802; Principal Investigator:William Stein;
Co-Principal Investigator:; Organization:University of Washington;NSF
Organization:ACI Award Date:06/01/2012; Award Amount:$97,114.00;
Relevance:48.77;

Collaborative Research: SI2-SSE: Sage-Combinat: Developing and Sharing
Open Source Software for Algebraic Combinatorics
Award Number:1147463; Principal Investigator:Daniel Bump; Co-Principal
Investigator:; Organization:Stanford University;NSF Organization:ACI
Award Date:06/01/2012; Award Amount:$143,700.00; Relevance:48.77;

Collaborative Research: SI2-SSE: Sage-Combinat: Developing and Sharing
Open Source Software for Algebraic Combinatorics
Award Number:1147247; Principal Investigator:Anne Schilling;
Co-Principal Investigator:; Organization:University of
California-Davis;NSF Organization:ACI Award Date:06/01/2012; Award
Amount:$216,626.00; Relevance:47.98;





 I, personally, don't see Sage as belonging to Europeans, it belongs to
 Mathematicians.

  One of the biggest things European software projects like Pari, Gap,
  Singular need is contributions. I congratulate Peter Bruin on announcing
  that he is writing a power series module for Sage based on Pari instead of
  on polynomials. However, in a project like that, I hope that when some
  functionality (mathematical or otherwise) is perceived to be missing from
  Pari, that it will be contributed *to the Pari project directly*. And I
  don't mean as a set of Sage build patches or bug reports. I mean as a set 
  of
  Pari contributions, to their code base, in their coding style, instead of
  writing more code in Sage directly!

 I strongly disagree that the best (or only) way to contribute to Sage
 is to contribute to some of its component projects,

 I didn't say it was.

 and writing 

[sage-devel] speed regression testing

2014-08-29 Thread William A Stein
Hi,

What's the situation with speed regression testing in Sage?  A couple
of years ago I think people wrote a regression testing framework
(maybe David Roe or Robert Bradshaw?)

MOTIVATION: I ask because at Sage Days 61 I keep hearing about how our
exact linear algebra in Sage is terrible (with remarks like: 'maybe we
need to look into writing our own fast linear algebra'... a road
actually well traveled in Sage many years ago), how people are having
to use Magma for basic modular symbols computations instead of Sage
due to linear algebra speed, and there is this massive patch
http://trac.sagemath.org/ticket/16803 about fixing the ridiculously
slow dense matrices over ZZ -- which used to be ridiculously fast ?!.

So I started looking into 16803 and looks to me like the function
_multiply_linbox is like 10-20 times slower than it was when we
introduced it as the default for matrix multiplication over ZZ.  (see
the ticket for timings).  I suspect that we're linking linbox
incorrectly, which could easily result in this sort of slowdown, since
linbox uses a floating point BLAS at a certain point.  If we mess up
linbox, then tons of stuff all over sage involving linear algebra
would be slowed down as a result.  E.g., we use linbox for charpoly
computations.

Anyway, there are a ton of people working on Sage, and even very tiny
changes in one part can have speed impacts in far away places... so it
would be good if we were to run a speed regression test on each
version, compare timings, see if anything dropped in a new version,
etc.   Does anybody have any relevant code...?

That said, regarding 16803, switching to building our dense matrix
algebra over ZZ on one single clean modern C library is a great
improvement (thanks FLINT'ers and Marc), and if some regressions
motivated that, I'm not complaining!

William


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: speed regression testing

2014-08-29 Thread William A Stein
On Fri, Aug 29, 2014 at 10:24 AM, Jean-Pierre Flori jpfl...@gmail.com wrote:
 I don't know for sure, but I think linbox does not link to LAPACK
 (anymore?).
 Maybe that make a small difference already.

That's precisely what I'm worried about -- not linking lapack would
perhaps  change linbox from being world class to absolutely terrible.

 I opened a ticket about that some monthes ago.

Thanks!


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Is 1 a prime power?

2014-08-29 Thread William A Stein
On Fri, Aug 29, 2014 at 10:53 AM, John Cremona john.crem...@gmail.com wrote:
 pari:

 ? isprimepower(1)
 %4 = 0

 magma:

 IsPrimePower(1);
^
 Runtime error in 'IsPrimePower': Argument 1 (1) should be = 2

 gap IsPrimePowerInt(1);
 false

 I'll let others try Maple.

That seems like enough of an argument for Sage to return False to me.

 -- William


 John


 On 29 August 2014 09:50, Vincent Delecroix 20100.delecr...@gmail.com
 wrote:

 What is the status of 1 in pari, GAP, Maple, Magma, Mathematica?

 Vincent

 2014-08-29 10:31 UTC+02:00, Jeroen Demeyer jdeme...@cage.ugent.be:
  Personally, I think 1 should not be considered a prime power, but Sage
  thinks otherwise:
 
  sage: 1.is_prime_power()
  True
 
  Of course, one could argue that 1 = p^0 for every prime p...
 
  Should this be changed, any opinions?
 
  --
  You received this message because you are subscribed to the Google
  Groups
  sage-devel group.
  To unsubscribe from this group and stop receiving emails from it, send
  an
  email to sage-devel+unsubscr...@googlegroups.com.
  To post to this group, send email to sage-devel@googlegroups.com.
  Visit this group at http://groups.google.com/group/sage-devel.
  For more options, visit https://groups.google.com/d/optout.
 

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Is 1/2 a prime power?

2014-08-29 Thread William A Stein
On Fri, Aug 29, 2014 at 12:23 PM, John Cremona john.crem...@gmail.com wrote:



 On 29 August 2014 11:21, Vincent Delecroix 20100.delecr...@gmail.com
 wrote:

 I guess Wikipedia is a good source for a definition and it says:

 In mathematics, a prime power is a positive integer power of a single
 prime number.

 So +1 for 1/2 not being a prime power. Though, if we really want to we
 can add a keyword 'non_positive_powers'.

 Vincent

 2014-08-29 12:18 UTC+02:00, Jeroen Demeyer jdeme...@cage.ugent.be:
  Usually, with prime powers people mean integers, but in Sage:
 
  sage: is_prime_power(1/2)
  True
 
  Even though 1/2 = 2^(-1), I would restrict prime powers to strictly
  positive integer powers.


 +1.   I cannot imagine the need for checking negative prime powers.

If you really cannot imagine a need for checking, then maybe
is_prime_power should raise a ValueError (like Magma) on such input,
to avoid confusion...

william


 John


 
  --
  You received this message because you are subscribed to the Google
  Groups
  sage-devel group.
  To unsubscribe from this group and stop receiving emails from it, send
  an
  email to sage-devel+unsubscr...@googlegroups.com.
  To post to this group, send email to sage-devel@googlegroups.com.
  Visit this group at http://groups.google.com/group/sage-devel.
  For more options, visit https://groups.google.com/d/optout.
 

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-release] You don't really think that Sage has failed, do you? (a comment about it)

2014-08-29 Thread William A Stein
On Friday, August 29, 2014, Volker Braun vbraun.n...@gmail.com wrote:

 First of all, it always saddens me when the ugly head of nationalism rears
 its head. I thought the time where we only support German science were
 over...

 What sets Sage apart from GAP/Singular (and, I dare say: Flint) is the
 scale and the diversity of its contributors. Saying that it is a US (or
 European) project is just completely wrong.


Huge +1




 On Friday, August 29, 2014 11:46:14 AM UTC+1, Bill Hart wrote:

 This is all to say nothing of the glaring problems, such as the lack of
 Windows 64 support


 Wait, did you just do a 180 and say that we should drop everything to
 boost the market share of a failing north American software company?  ;-)

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Is 1 a prime power?

2014-08-29 Thread William A Stein
Note:  If we change is_prime_power, we also have to change the
prime_powers function, e.g.,

sage: prime_powers(10)
[1, 2, 3, 4, 5, 7, 8, 9]

I use this prime_powers function a lot in my Riemann Hypothesis book
(co-authored with Mazur).There's a bunch of code like this:

for pn in prime_powers(bound+1):
if pn == 1: continue
do stuff

See -- https://github.com/williamstein/rh/blob/master/rh/code/code.sage

In other words, my code would all be a lot cleaner if

sage: prime_powers(10)
[2, 3, 4, 5, 7, 8, 9]

Stinking deprecation warnings...

On Fri, Aug 29, 2014 at 6:00 PM, Ralf Stephan gtrw...@gmail.com wrote:
 After unanimous discussion the title of the OEIS entry was changed.

 https://oeis.org/A000961

 Regards,

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] reddit'ers at it again discussing sage...

2014-08-28 Thread William A Stein
On Thu, Aug 28, 2014 at 8:57 AM, Travis Scrimshaw tsc...@ucdavis.edu wrote:

 Well, I think you didn't understand me or I don't understand you.
 There is already numpy, scipy and matplotlib in Sage and there is no
 obstruction whatsoever to use it. One has to turn off the preparser,
 otherwise you might see really odd errors.

 I agree (probably needs better documentation). I would change the import
 directive for numpy to turn the preparser off and print a message about the
 preparser upon doing so (including how to turn it back on). Ironically, the
 best way to do this might be to use the preparser.

We should not do that.  It doesn't make any sense, as numpy gets
imported all over in Sage itself.

One could maybe print a temporary warning if somebody explicitly
imports scipy in an interactive sage session, maybe.

What we should do instead is fix things so that numpy/scipy/etc. work
even with the preparser enabled.
Robert Bradshaw actually already did a lot towards that with numpy
already, but there is more left to do.

There's nothing at all fundamentally incompatible about the preparser
and numpy/scipy/cvxopt.  Everything could be sorted out with a few
appropriate hooks, maybe some patches, etc.

 -- William


 Best,
 Travis

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] taskforce: documentation

2014-08-28 Thread William A Stein
On Wed, Aug 27, 2014 at 7:15 PM, Harald Schilly
harald.schi...@gmail.com wrote:
 I've read most of the comments which did roll in in the last few days. One
 repeated topic was about the documentation. I'm curious if there is
 currently anyone working on improving it? I think the reference
 documentation is really good. But I can see a definite lack to make it more
 accessible to new users. Why not starting another branch and collect
 functionalities in a new way?
 I have some vague ideas how this could be done and I think it's actually not
 so complicated - technically. It's harder to get input from different areas
 and from those who already have experience in teaching Sage in order to
 produce something really useful.
 The cornerstones should be, in my eyes, that it is packaged and built along
 Sage, displayed in a modern web-browser, and all examples are doctested.

 -- H

Yes, that would be great.   As some inspiration, there is also Gregory
Bard's new book Sage for Undergraduates:

   http://www.gregorybard.com/SAGE.html

William


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-08-28 Thread William A Stein
On Thu, Aug 28, 2014 at 11:18 AM, Emil Widmann emil.widm...@gmail.com wrote:


 Am Mittwoch, 27. August 2014 21:00:49 UTC+2 schrieb Travis Scrimshaw:



 IMO there are three big issues with the current Sage Windows VM:

 1 - It's slow  because it runs within the VM (which also causes some
 usability issues with multiple webpages by the OS setup); this also has high
 memory usage.
 2 - It's too big (I think it's something like 3+ GB)
 3 - You can't upgrade Sage or really work with different branches as far
 as I remember.

 To have such an easy way to get local versions of Sage running on Windows
 would be a major help for India, Japan, and South Korea -- when I was there
 last year giving some Sage demos, nearly everyone had a Windows laptop.
 (Although now I'd just refer them to SMC, but solid internet connections in
 India can be hit or miss.)

 Best,
 Travis


 Slowness may come due to high memory consumtion on restricted hardware. If
 you have enough memory to run the virtual machine and bridge the output of
 the sage VM to the host browser you have almost no speed penalty.

 Of course in a real world use case with 3-10 year old computers and limited
 bandwith/memory/diskspace big VM's can become problematic.

 If you want to develop in sage then maybe the best way to go is a big image.
 In other cases of just using sage, maybe it is better to use compressed
 images.

 @volker braun
 $ du -sh Sage/
 5.2G Sage/

 When I spoke of 700 MB virtual machine I meant the data in a compressed
 filesystem (e.g. Squashfilesystem with estimated compression rate of 3.5)
 like most live distributions use. I also removed some files (e.g. docs) from
 the full sage distribution to make it smaller. Docs can be stored directly
 in the windows filesystem.

 This would also mean that such a small version is not perfectly suited for
 developement (although it can be done), but well suited for just use like
 teaching.

 I developed and tested on restricted hardware (e.g. old desktop with 1 GB
 memory, 2,2 Ghz dual core Processor).

 I know this topic has been discussed before and it was decided to ship the
 full blown version as the the official sage VM. Still it is my opinion that

I think it might be more accurate to say that Volker, who creates the
VM, decided that he only has time to ship a full blown official Sage
VM.   If somebody, anybody, wants to provide (and regularly update) an
additional VM like you describe, I don't see why we wouldn't ship it.

William

 a small image with an optimized userinterface would be the best use of
 developer hours and skill to improve the sage on windows experience for
 new users and students. With the exception of using the Cloud, of course.

 Cheers
 emil

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] proposal: remove python spkg and use pip instead

2014-08-28 Thread William A Stein
On Thu, Aug 28, 2014 at 11:40 AM, Jean-Pierre Flori jpfl...@gmail.com wrote:


 On Wednesday, August 27, 2014 9:11:47 PM UTC+2, Jeroen Demeyer wrote:

 On 2014-08-27 21:01, Julien Puydt wrote:
  but on a general basis people are quite welcoming of
  sensible contributions.
 Depends on the project. Whenever I think a patch is good for upstream, I
 do submit it upstream. My impression is that, unless upstream knows you
 personally, bug reports (even with patches) are often ignored. I'm not
 blaming those projects, but it makes the goal of having unpatched clean
 upstream sources much less realistic.

 Jeroen.

 I do agree with Jeroen, sometimes upstream is not as welcoming as one might
 hope.
 But as Jeroen I always do submit patches upstream (unless it seems upstream
 vanished...).
 I even struggle to get some reaction from them when it seems they ignored or
 forgot my proposals.
 The best response I got so far was from the R folk:
 https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15643

Wow, that's incredible: Brian Ripley:  Cygwin (and Cygwin64) is not a
supported platform. Please do your own homework!

In case anyone cares, I googled quickly, and evidently Brian Ripley is
a 62-year old Oxford Professor, so you can picture the quote more
accurately...


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] When the notebook tries to be smart

2014-08-28 Thread William A Stein
On Thu, Aug 28, 2014 at 11:57 AM, Nathann Cohen nathann.co...@gmail.com wrote:
 Helll everybody !

 I am having a small problem. There is a function that is meant to
 output a big table, and while it works fine in the console it is a
 mess in the notebook:

 from sage.combinat.designs.latin_squares import MOLS_table
 MOLS_table(50,1)

 This, because the notebook tries to be smart and splits the lines when
 they are too long. What can I do to avoid that ?


Click to the left in the output to toggle whether or not lines are split.

Alternatively, output html in a pre environment...

 Nathann

 P.S. : Oddly, the same table is correctly displayed in the doc with
 the notebook:

 sage.combinat.designs.latin_squares?

 --
 You received this message because you are subscribed to the Google Groups 
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-08-27 Thread William A Stein
On Wed, Aug 27, 2014 at 8:25 AM, Dr. David Kirkby (Kirkby Microwave
Ltd) drkir...@kirkbymicrowave.co.uk wrote:

 On 27 Aug 2014 02:13, Bill Hart goodwillh...@googlemail.com wrote:

 The biggest problem by far is the upstream projects who do not accept
 patches into their repositories to support Windows, and aren't willing to
 make the changes to their codebase to support Windows 64. Nor do they
 continue to maintain the ports once it is done.

 I can't say I have ever looked at it, but if true it is an odd attitude.  I
 found *generally* that upstream projects were happy to take Solaris patches.
 A patch I made for GSL to run on AIX was accepted upstream.

I dug up a relevant thread.  [1] Here's a real example thread
involving a major patch to get pari to build on Windows.  You can see
the response by the core PARI developers, the issues with build
support, etc.

[1]  http://pari.math.u-bordeaux.fr/archives/pari-dev-0912/threads.html#00011

Near the end B. Allombert says: Hello Vasili,
I have applied a variant of you patch:
On mingw you can now Configure PARI with
./Configure --datadir=@
and datadir will be set to win32_GPDATADIR() at run-time.  This option
is used when compiling the daily GP windows binaries starting at svn
12711.

In short, it fully supports your argument that at least one upstream
project (PARI) is willing to take upstream patches to support
windows but you can also read in the thread about the
difficulties.  It starts with remarks about the pari devs not having
windows access.

 I an no fan of Windows,  but with so many programs only working on Windows,
 or tested more on Windows,  I see it as a necessary evil.

 This attitude in the Open Source community to Windows 64 really bugs me.
 It's a decade old technology, and not going anywhere.

 Lots of open source programs run on Windows, and with Windows being more and
 more 64 bit,  they will either have to adapt or

 A port of Sage to Windows 64 is probably not a viable project. It would
 take years of effort by numerous individuals to accomplish. And it would
 bitrot before it was even completed. But the fact that it isn't viable right
 now doesn't mean that upstream projects shouldn't support Windows 64 so that
 if Sage ever wants to do such a port, it would be possible.

 Five projects Sage doesn't have to worry about are:

 * flint
 * gmp/mpir
 * mpfr
 * gmp-ecm
 * GNU Scientific library

 Maxima has a native Windows application,  so that would work too. Maxims
 uses ECL which is very portable.

 Unfortunately, I don't think Maxima has a library interface, do once that is
 added, any attempt to make a more consistent user interface would be
 hampered.

We Sage developers (mainly Nils Bruin) wrote a C-library level
interface to Maxima, for use by Sage.   I don't know if it would be
difficult to port that to Windows.  It uses ECL = embedded common lisp
(where the whole point of *embedded* is that it is easy to embed in
other C programs).


 I understand that Sage uses things like Lisp, Java, Python, Cython, etc.
 So the above doesn't help much with Sage overall. But perhaps it will help
 raise awareness for projects that are using C and assembly only.

 Bill.

 Call it Mini Sage, foobar or something else, it appears to me a
 significant subset of Sage could be built into a native application.


All of Sage could be built... with *sufficient* work.   Everything
could be ported and maintained... with sufficient work.   But
sufficient is really dauntingly huge.  Bill only scratched the surface
by listing technical problems at the C/C++ level - there's also tons
of build system issues as well, longterm maintenance, etc.  It's all
totally do-able, but very expensive.

 Anyway,  it was just an idea I had.

It's a good idea.  I had the same one years ago... and that's when
Sage started.  A problem is that it's too hard today to do something
really useful without significant funding (since it's all ugly dirty
work, and definitely not research math).


 Dave.

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-08-27 Thread William A Stein
On Wed, Aug 27, 2014 at 8:41 AM, Harald Schilly
harald.schi...@gmail.com wrote:


 On Monday, August 25, 2014 10:15:41 AM UTC+2, Dr. David Kirkby (Kirkby
 Microwave Ltd) wrote:

 It seems Sage really could do with a native windows port.


 Just my 2 cents (after not really reading the whole thread)
 What about andLinux, which also has an X server included?
 http://www.andlinux.org/

 ... and since that website looks kind of dead, underneath is coLinux which
 is still active
 http://www.colinux.org/

For a while the sage-for-windows distribution I produced was based on
colinux/andlinux.The main reason I discontinued support was that
every time I watched people install Sage-for-windows via co-linux, I
then saw (or heard reports) of it completely crashing MS Windows...
repeatedly.  Also, getting networking to work properly is a pain...
support is much worse than with VirtualBox or VMware.

William


 -- H

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] How practical/useful would a native windows subset be?

2014-08-27 Thread William A Stein
On Wednesday, August 27, 2014, Dr. David Kirkby (Kirkby Microwave Ltd) 
drkir...@kirkbymicrowave.co.uk wrote:

   The download size of such a subset would be smaller than the full
 version and MUCH smaller that a virtual machine image, as one doesn't need
 to include a complete operating system too.
 
  That's not true.  E.g., Puppy Linux is around 50MB, and is a complete
  useful operating system.  In fact, I used to build the Sage VM
  (targeted at windows) using Puppy Linux years ago.
 
   -- William

 OK, but it still doesn't get around the problem one needs to install
 VirtualBox, and the whole process of installing virtual machines is
 really alien to a lot of Windows users.

 Personally I find installing virtual machines quite easy and useful,
 but it seems to be a barrier for some at least.

 Dave


You are absolutely right about that!   I'm.not arguing for VM's here - just
pointing out that disk space isn't a priori significantly worse because of
that approach.



 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com javascript:;.
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:;.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-08-27 Thread William A Stein
I tried to port Sage to mingw once, back when it was easier (2006),
and failed already at building Python.
There was a huge page with hacks to maybe do it back then, but they
weren't working.
There's a stackoverflow question now about this problem:

   http://stackoverflow.com/questions/15365249/build-python-with-mingw-and-gcc

 Python does not build out of the box with MinGW, let alone for Win64.

and another suggests this fork of Python 3.4 that's meant to build on
mingw:  https://bitbucket.org/puqing/python-mingw

but there are issues entitled Build fails on mingw (msys) down the
right side of the screen...

On Wed, Aug 27, 2014 at 11:05 AM, Jean-Pierre Flori jpfl...@gmail.com wrote:


 On Wednesday, August 27, 2014 11:00:35 AM UTC+2, Jeroen Demeyer wrote:

 On 2014-08-27 10:22, Jean-Pierre Flori wrote:
  Note that cross-compiler running on linux and targetting mingw(64) have
  been available since mingw(64) is.
 Many packages in Sage do not support cross-compiling. For example, the
 Python build toolchain does not really support cross-compiling.

 Sure, but GMP/MPIR/MPFR/FLINT do.
 You can even run testsuites using Wine64 :)

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] reddit'ers at it again discussing sage...

2014-08-27 Thread William A Stein
http://www.reddit.com/r/math/comments/2eo9ku/sage_open_source_mathematics_software_you_dont/

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] proposal: remove python spkg and use pip instead

2014-08-27 Thread William A Stein
On Wed, Aug 27, 2014 at 3:29 PM, Vincent Delecroix
20100.delecr...@gmail.com wrote:
 Hi,

 Now that pip is an optional spkg, I think it would be a good idea to:
  1) add some word about it in the documentation
  2) use it to replace some of the optional and experimental packages
 I would like more comments (especially about 2) to see whether or not
 it is a good idea. If it works, we might even move the pip spkg to
 standard and use it during the build process.

 Running quickly through the list of optional packages, we can remove 4 of 
 them:
  - beautiful soup
  - pyopenssl
  - pyqtx
  - pyzmq
 which just install nicely through pip. Could we keep backward
 compatibility by setting a dependency to pip spkg and replace their
 install script with pip install PACKAGE?

 For those three ones, we need to set extra options but it works as well:
  - gnuplotpy
  - nzmath
  - pyx (need to use PyX==0.12.1, since it is the last one compatible
 with python 2)

 And two packages just fail to install through pip.
  - pybtex
  - sip

 It would greatly simplify the life of package maintainer!

Just a +1 from me to this project.   When I started the whole spkg
business, the state of Python package management was a total
mess/disaster.  Today with pip things are much, much better.

William



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-release] You don't really think that Sage has failed, do you? (a comment about it)

2014-08-27 Thread William A Stein
Thanks for posting this.  That said the big SAGE must choose question
below doesn't actually make any sense given how sage is developed...

On Wednesday, August 27, 2014, kcrisman kcris...@gmail.com wrote:

 Interesting comment on the post on Facebook.  Note the comment about
 payment as well.
 +++
 In my university, we have been using a sagenb server for three years. We
 use it in Calculus/Algebra courses for mathematicians, electrical
 ingenieers, agricultural ingenieers, etc. We really use a few basic
 commands. If Sage has the 1% functionality or less than Magma, Mathematica,
 etc, is not a problem for us. Our main problem is that the manual and
 documentation are a mess, lacking of enough examples (please, why not do
 something like Mathematica?). Anothe problem is the interface, for
 instance, you can not select several cells and make copy/paste (I know this
 is posible with sagemathcloud). Or for instance, it is difficult to avoid
 that pupils share worksheets in a final individual test. With respect to
 functionality we have problems with basic graphics (some of them fixed
 today, to be fair). Still having problems solving basic inequalities.
 Come on guys, SAGE has A LOT of possibilities that make it for
 universities a better choice than Mathematica, Maple, etc. But you should
 take care of interface, manuals and help and basic functionalities. I'm
 sure that many universities would pay if flexible possibilities of payment
 are allowed.
 In my opinión SAGE has to choose:
 1. Focus on development of more and new specialiced functionalities. In
 this case, its users will be a small group of researchers that don't care
 how rough or how time consuming is to make a few instructions to work
 properly. Besides, it will be difficult to obtain financing, thus you can
 compete only in a Little specialized part (magma, mathematica, maple, GAP
 all together is too ambicious).
 2. Focus on basic functionalities on calculus and basic algebra for
 teaching. They need to be improved (the power of Maxima is poor in
 inequalities, integrals, numeric series... it is not enough at all). They
 need also to be user friendly and easy to learn. In this case maybe you can
 obtain money from universities and with that money, maybe you can work on
 quaternion algebras.

  --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] How practical/useful would a native windows subset be?

2014-08-27 Thread William A Stein
On Wednesday, August 27, 2014, Volker Braun vbraun.n...@gmail.com wrote:

 On Wednesday, August 27, 2014 8:00:49 PM UTC+1, Travis Scrimshaw wrote:

 But running the VM surely has a speed penalty because it has to go
 through that big fat layer of the VM?


 Virtual machines are extremely fast on somewhat-recent hardware due to
 hardware support. Using the gui inside the VM is somewhat slow since it has
 to go through the graphics emulation, but if you connect with the OS
 browser its probably difficult to notice any speed difference.

 Of course the VM can't be much smaller than this if you want to be able to
 develop inside it:

 $ du -sh Sage/
 5.2G Sage/


One remark: that gets knocked almost in half if you use a compressed
filesystem (btrfs or ZFS) like I do with SageMathCloud...



  --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-nt] naming convention: primes, prime_range, prime_powers

2014-08-26 Thread William A Stein
On Tue, Aug 26, 2014 at 3:00 PM, Vincent Delecroix
20100.delecr...@gmail.com wrote:
 Hello,

 Right now, we have the following functions
  - primes: an iterator over primes
  - prime_range: a list of primes (in Cython)
  - prime_powers: a list of prime powers
  - prime_power_range: another function that return a list of prime
 powers (in Cython from #16880)

 Given that
  - we can implement iterator in Cyhon
  - most function that end with 's' return lists (elliptic_curves,
 prime_divisors, quadratic_residues, ...)

 What do you think about:
  - move everything in Cython in `fast_arith.pyx`
  - having `primes` and `prime_powers` return lists
  - having `prime_iterator`and `prime_power_iterator` return iterators
 (with deprecation and everything)

1. Are you introducing a totally new convention?  Does Python put
_iterator after function names to emphasize iterators?  Do we do
that anywhere?   In Python 3.x at least, they explicitly try not to
name iterators differently.


2. Changing primes to return a list will break every explicit use of
primes I've ever used, in all my old code.   For example, I might use
it like this (say):

   for p in primes(10^19,10^60):
if something(p):   break

If you change to a list, when I run the code my computer explode.

3. What motivates your suggested changes?I don't see a
sufficiently compelling argument for breaking tons of user code in
subtle ways yet.   Sometimes that is worth doing but in 10 years,
I've heard no complaints before about the naming of the above
functions, so they probably aren't *horrible*.

William



 Best,
 Vincent

 --
 You received this message because you are subscribed to the Google Groups 
 sage-nt group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-nt+unsubscr...@googlegroups.com.
 To post to this group, send an email to sage...@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-nt.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-nt] naming convention: primes, prime_range, prime_powers

2014-08-26 Thread William A Stein
On Tue, Aug 26, 2014 at 3:12 PM, John Cremona john.crem...@gmail.com wrote:
 Sounds like a reasonable plan if you (or someone) can be bothered to
 sort out the chenges which will need to be made in code and doctests!

Even then, personally I don't like it.  See below for a different
suggestion that is less intrusive.

 There will be places where we now have: for p in primes(10^8):
 do_something_with(p)  which will still work when primes() returns a
 list, so will not result in doctest failures, but which should be
 changed.  This will be rather tedious.

 On the plus side, I make the point that all these are functions at the
 top level which will be discovered by beginners for whom

 sage: primes(100)
 generator object primes at 0x7f9335465a50

 will just confuse.  Experts can know about and use the iterator forms
 of the functions.

We could certainly make it do this with little effort:

sage: P = primes(100); P
Prime numbers of less than 100

We could then have

for x in P:
...

be the usual iterator.  One could also do:

sage: P.list()
[...]

to get back a list.   And one could do

sage: len(P)

to get the number of primes, without computing them.  So... my
counterproposal is to make primes return a cython class with a few
methods.  This breaks new code, and will be more new user friendly.


 John

 On 26 August 2014 14:00, Vincent Delecroix 20100.delecr...@gmail.com wrote:
 Hello,

 Right now, we have the following functions
  - primes: an iterator over primes
  - prime_range: a list of primes (in Cython)
  - prime_powers: a list of prime powers
  - prime_power_range: another function that return a list of prime
 powers (in Cython from #16880)

 Given that
  - we can implement iterator in Cyhon
  - most function that end with 's' return lists (elliptic_curves,
 prime_divisors, quadratic_residues, ...)

 What do you think about:
  - move everything in Cython in `fast_arith.pyx`
  - having `primes` and `prime_powers` return lists
  - having `prime_iterator`and `prime_power_iterator` return iterators
 (with deprecation and everything)

 Best,
 Vincent

 --
 You received this message because you are subscribed to the Google Groups 
 sage-nt group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-nt+unsubscr...@googlegroups.com.
 To post to this group, send an email to sage...@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-nt.
 For more options, visit https://groups.google.com/d/optout.

 --
 You received this message because you are subscribed to the Google Groups 
 sage-nt group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-nt+unsubscr...@googlegroups.com.
 To post to this group, send an email to sage...@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-nt.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Student looking to contirbute to Sage

2014-08-26 Thread William A Stein
On Tue, Aug 26, 2014 at 3:34 PM, Nathann Cohen nathann.co...@gmail.com wrote:
 Yo !

 I do not have anything specific in mind.


 It's not a problem. We all write Sage code because Sage can't do what we
 need. Here are the steps you should follow:

 1) Use it
 2) Figure out that your code fails because there is a bug in Sage OR Wonder
 why the feature you need is not implemented
 3) Grumble internally
 4) Grumble aloud
 5) Complain on Sage-devel
 6) Notice that you are the only one who cares
 7) Write the code and submit it

 There is something of Zen in Sage. In order to contribute to Sage, you must
 not want to contribute to Sage. You must use it, confident that it is the
 perfect tool and fits all your needs.

+1


 Then you will notice the ugly truth.

 Welcome here.

 Nathann

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-release] You don't really think that Sage has failed, do you? (a comment about it)

2014-08-26 Thread William A Stein
On Tue, Aug 26, 2014 at 8:51 PM, kcrisman kcris...@gmail.com wrote:
 Two remarks:

 1. It makes no sense for this post to go to the sage-release mailing
 list.  It should go to sage-flame (or maybe sage-devel).  It



 Here is a sage-devel reason.

OK, thread moved to sage-devel.

 2.  I can cite several reasons for the SAGE has failed and all the
 reasons can still be corrected:

 Failed by what measure?  You gave a list of things you don't like
 about Sage. I appreciate your list and the effort you put into it very
 much of course.Your list suggests I should clarify what I mean by
 a viable alternative to Magma, etc.. By that I primarily mean the
 truly deep aspects of Sage relevant to *research mathematicians*,


 Bingo, please clarify.  To me, viable alternative means just that.
 Frankly, why did you include Matlab if you care about research
 mathematicians?

Dima's answered this well.

  Why does viable not include useful for all sorts of
 research problems, not just some?

It does.  I'm just giving some concrete examples that I'm familiar
with.  I welcome people in other areas of mathematics with similar
functional discrepancies to share the differences between what Sage
can do and what Ma* can do.

 (And yes, we can do a lot better there,
 obviously, though so can the competitors.) Why does viable not include for
 all the OTHER things people use Sage for?

Indeed, it does!  I just mean that it must include research
mathematics -- the original poster in this thread was only listing
things that were orthogonal to research math.

 You didn't include in your
 mission statement a viable research replacement for but a viable
 alternative, and that is really a lot different.

 But please don't change the mission statement!

+1 -- you're right.

  Your own personal one can
 still be the research piece, that is cool.  But I think Sage has experienced
 a lot of the success it has precisely because you didn't see a problem with
 sharing with a broader vision than just the research community.  Sage is
 unique because it is Free from Freshman year to Fields Medal.  That is
 pretty darn awesome, and has motivated a lot of the people who have poured a
 lot of hours into it, making it a stable OSS project with lots of users
 around the world.  It may not succeed in precisely the way you want it, but
 I think there are an awful lot of ways it has.

Thanks for the encouragement and kind words.   Still, I really,
*really* want it to succeed in precisely the way I want it to succeed.
This discussion started with people wondering why I'm putting effort
into SageMathCloud, and I'm just trying to justify why I'm taking such
possibly desperate measures at this point, and why I hope the
community will support me on doing so.

William

 --
 You received this message because you are subscribed to the Google Groups
 sage-release group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-release+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-rele...@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-release.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: [sage-nt] naming convention: primes, prime_range, prime_powers

2014-08-26 Thread William A Stein
On Wed, Aug 27, 2014 at 5:01 AM, Travis Scrimshaw tsc...@ucdavis.edu wrote:

 We already have Primes (upper case P) for that... it just need to be
 tuned to accept lower/upper bounds. It is nicer from the user point of
 view (as far as OOP is better than functional programming). A good
 solution for the namespace would be to have only Primes and
 PrimePowers.

 But I really will not use it myself because it has a classcall,
 UniqueRepresentation, category, etc which takes lifetime to
 initialize. My loops are rather small but I have plenty of them... so
 having a nice Primes object would only be painful. I want to keep a
 simple Cython function that returns list or iterator.

 That would only be a problem if you're creating such a parent for almost
 every prime (which I'm pretty sure you're not doing). However if these

When you do primes, it creates a Cython class for every prime, namely
an instance of Integer.  That's not slow.

William

 fractions of a second are really that important, create a base class (in
 cython) for Primes which does the iteration and other functionality you want
 without the Sage infrastructure. +1 for using OOP here.




 Best,
 Travis



 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.

 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-08-25 Thread William A Stein
On Mon, Aug 25, 2014 at 12:44 PM, Jeroen Demeyer jdeme...@cage.ugent.be wrote:
 On 2014-08-25 11:33, Dr. David Kirkby (Kirkby Microwave Ltd) wrote:

 I think people  been working on it for years and despite a lot of time
 and effort spent on it, it has never been completed. I think there are a
 number of reasons it has not been completed,  but lack of effort is not
 one of them.

 I think Sage-on-Cygwin is fay more realistic than a pure native (even
 stripped down) version of Sage. I you care about Windows, concentrate your
 efforts on the Cygwin port.

+1

And we actually did spend *months* of very hard work on such a mini
sage fully native approach to sage on windows, a few years ago (when
it was easier).It was a complete and total waste of time.   Once
you understand the architecture of Sage, you see that even the most
basics parts of Sage are so intertwined that the amount of
dependencies (e.g., PARI, etc.,) that you need, make this approach
incredibly difficult.Really IPython + Sympy (say) *is* this mini
sage, but to get from that to full native windows Sage is at least a
million dollar project

  The download size of such a subset would be smaller than the full version 
  and MUCH smaller that a virtual machine image, as one doesn't need to 
  include a complete operating system too.

That's not true.  E.g., Puppy Linux is around 50MB, and is a complete
useful operating system.  In fact, I used to build the Sage VM
(targeted at windows) using Puppy Linux years ago.

 -- William



 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: How practical/useful would a native windows subset be?

2014-08-25 Thread William A Stein
On Mon, Aug 25, 2014 at 1:27 PM, Dr. David Kirkby (Kirkby Microwave
Ltd) drkir...@kirkbymicrowave.co.uk wrote:

 On 25 Aug 2014 12:19, Julien Puydt julien.pu...@laposte.net wrote:

 I don't understand why people insist on trying to build the windows port
 on windows with cygwin ; it's also possible to cross-build windows ports
 I was mainly thinking of a C++ version with its own parser. If that used Qt
 or wxWidgits it would be multi platform.  It does need to use Python at all
 initially -  if ever.

 I guess there is more than one way to approach it, but if one set out with
 the aim of nothing much more than a decent scientific calculator,  one would
 not need to worry about porting things that are hard.

 I would not think it too hard to generate a parser which is linked to the

 * GMP
 * MPFR
 * GNU scientific library

 which I would expect would compile with Qt or WxWidgets without too many
 changes. If it used Qt, the code could be developed on virtually any
 platform.  Producing executables for many mobile phones, including Android
 and Apple iPhone and iPad, Linux etc.

 By only linking to code and not calling external command-line tools, it
 should be possible to create a uniform interface,  which is one of the
 criticisms of Sage.

This reminds me of Michael Abshoff.  He was supposed to port Sage to
Windows, and was also complaining about how horrible every component
of Sage was, and wanting to remove them.  At one point,  I wondered if
his eventual port would be something like:

int main(void) {
printf(sage: );
/* etc., -- a simple REPL that does nothing */
}

More seriously, what you're describing definitely isn't Sage at all...

 -- William


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-cloud-internal] William Stein says Sage has overall failed

2014-08-21 Thread William A Stein
On Thu, Aug 21, 2014 at 12:16 PM, Harald Schilly
harald.schi...@gmail.com wrote:
 Surprisingly, sometimes Reddit contains actual discussions:

 http://www.reddit.com/r/math/comments/2e3qla/william_stein_says_sage_has_overall_failed/

I just read through it.  It might be one reason that there were over
250 new SageMathCloud accounts in the last 24 hours, but that might
also be partly due to the new semester/quarter.

Thanks to all the knowledgable Sage contributors that answered
questions in that thread.

The title they gave it -- 'William Stein says Sage has overall
failed' -- seems a bit sensational.  I think that if people read
the blog post they will see that I don't mean that the enormous effort
that people like Volker, Jereon, etc., are doing, isn't a fantastic
job.  I'm measuring progress specifically in terms of the original
mission statement.

 -- William


 -- H

 --
 You received this message because you are subscribed to the Google Groups 
 sage-cloud-internal group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-cloud-internal+unsubscr...@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-cloud-internal.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] On scientific computing, Python and Julia

2014-08-21 Thread William A Stein
On Thu, Aug 21, 2014 at 9:45 PM, Bill Hart goodwillh...@googlemail.com wrote:
 Julia can already call Python functions (and I don't mean in some
 theoretical, technical sense, I mean very practically via an interface
 designed explicitly for such). So it's not necessary to move Sage from
 Python to Julia. Other Scientific Python projects haven't done this.

 There are other reasons why this is not necessary, because of other
 technical advances that will become available in the coming few years (they
 are working in labs right now).

 Instead, the Sage project should do two things in my opinion:

 1) Make Julia part of the Sage ecosystem (it's already had a huge investment
 from the scientific and statistical communities, so this is a no-brainer if
 you want to embrace that community)

 2) Invest in the technologies that are making Julia successful (jit,
 dependent typing, metaprogramming, type checking and inference, etc.)

 Whether 2 involves rewriting some functionality in Julia, or simply finding
 ways of adding such functionality to Python is really neither here nor
 there.

 What Sage can't do is just stagnate and ignore progress. If it does, it will
 be brushed aside as if it wasn't even there, as has happened over and over
 again in the history of computer algebra! And it's happening to Sage. A few
 years ago, people at conferences were excitedly demonstrating stuff in Sage.
 This year, they've moved back to Magma.

To fill out this point a little, in my experience (recently, and in
the past), such people choose to use Magma instead of Sage because
Magma is capable of doing X, where X is something important they need
for their work.  In some cases, Magma does X slowly, with frequent
crashes, etc..   But it does X nonetheless; whereas, programming Sage
to do X from scratch would take the right expert about 2 years.   This
illustrates how Sage is failing to be a viable alternative to Magma.
If Magma does X, and Sage doesn't, and people care about X, then Sage
is not a viable alternative.

Unfortunately, I don't think see Sage switching to Julia, or Sage
having better support for (jit, dependent typing, metaprogramming,
type checking and inference, etc.) in itself would be enough of a
reason for people to have the option to choose Sage over  Magma.
Such advantages don't address the **real difficulty** in implementing
a first version of X that works, since implementing X fundamentally
takes reading and understanding papers, working out the right
algorithms, etc. -- it's almost entirely a human expert and design
problem.At least that's my experience watching/making this happen
many times over the last decade.Please keep in mind that much of
your (Bill Hart's) implementation work has been looking at
implementations of various algorithms and coming up with a new
approach that is better in certain ways -- that's certainly very
important and useful, but it is a different problem than doing the
first general implementation of code for computing with some class of
mathematical objects.It's like the difference between building the
first ever car and inventing a better wheel.

Here are two concrete examples of X's where I've seen this exact
situation in the last few months, and for which there is no open
source implementation in any language, despite a demand for one over
the last 10 years:

- (a) quaternion algebras over number fields (topic of Sage Days
61 next week -- https://sites.google.com/site/sagedays61/)

- (b) functional fields, mainly Florian Hess's Riemann-Roch spaces
algorithm; this supports basic algebraic geometry constructions, which
Magma has and Sage doesn't.

There are dozens of other similar examples.   They are hard to get
funded with grants, because in all cases the proposal basically says:
replicate something that's already been done... years ago.  Also,
the type of funding one wants is for a person to work full time on the
problem for 1-2 years.A grant proposal that says We plan to do Y,
and [lots about Y], but we need X [a little about X], has a chance to
get funded (depending on Y).  However, there are many X's (like a and
b above) where I certainly can't make a compelling case for any Y
except make sage a viable alternative.

If we actually had real money to support open source math software
development, I'm certain there could be useful open source
implementations of (a) and (b) above within 2 years.   I can think of
specific people who would love to carry out these core implementation
problems, but instead will be teaching a lot of Calculus instead, and
probably not enjoying it.

Anyway, a lack of funding is a big obstruction to creating a viable
open source free alternative to the Ma's for all.

 -- William

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send 

Re: [sage-devel] Finding SAGE_ROOT?

2014-08-21 Thread William A Stein
On Fri, Aug 22, 2014 at 5:46 AM, Paul Graham paulgrah...@outlook.com wrote:
 In trying to setup development for the Sage Notebook, by following the guide
 at: http://www.sagemath.org/doc/developer/sagenb/index.html , you first need
 to locate the root directory of the Sage installation, SAGE_ROOT . Thats the
 part where im stuck as i dont know where SAGE_ROOT is... Many other places
 make reference to this place, not just the notebook. So kind of a general
 dev issue. Im on ubuntu and have a development directory, just containing
 the sage repository at : ~/sage , and have what is supposed to be a
 non-development working stable installation of sage  that was installed
 using the UBUNTU PPA instructions at
 http://www.sagemath.org/download-linux.html, just:

 sudo apt-add-repository -y ppa:aims/sagemath
 sudo apt-get update
 sudo apt-get install sagemath-upstream-binary

 Im not sure where this installs to, what the default installation directory
 is on ubuntu, or if sage installs somewhere different? If i do:

 user1@computer0:~$ ./sage
 bash: ./sage: Is a directory

 but but if i do:

 user1@computer0:~$ sage
 ┌┐
 │ Sage Version 6.3, Release Date: 2014-08-10 │
 │ Type notebook() for the browser-based notebook interface.│
 │ Type help() for help.│
 └┘
 /usr/lib/sagemath/local/lib/python2.7/site-packages/IPython/utils/path.py:310:
 UserWarning: IPython dir '/home/user1/.sage/ipython-2.1.0' is not a writable
 location, using a temp directory.
using a temp directory.%ipdir)
 sage:

 I dont know what the difference between sage and ./sage is, but maybe
 above info will help someone pinpoint where my SAGE_ROOT is? I tried alot of
 searching but no luck so far.

Try typing SAGE_ROOT at the sage prompt, e.g.,

sage: SAGE_ROOT
'/usr/local/sage/sage-6.2.rc2'

William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] On scientific computing, Python and Julia

2014-08-19 Thread William A Stein
 to solve ahead of it (fortunately they don't include
 parallel programming, a package manager which works, an IPython interface,
 efficient C, C++ or Python interfaces, an extremely modern syntax or
 language features, a well-fleshed-out standard library, scientific
 computing capabilities, high performance, profiling and timing, disassembly
 features, etc.). I'm sure you can sense from Stefan's posts here that the
 Julia developers are no idiots. A language like Julia has the potential to
 be a game changer for computer algebra. Python doesn't. I've been saying
 that for years, and the reasons haven't changed one bit. You can check my
 git repository and see that for years I've been working on toy programming
 languages based on LLVM, with type inference, parameterised type systems, a
 REPL, Jit, all the things Julia is. I never got around to implementing
 serious metaprogramming, but there are blog and even sage-devel posts going
 back years where I've advocated that.

 Computer scientists have a lot more to offer the mathematics community
 than it is currently letting them do. I'm glad for the existence of Sage.
 It's a great community of great people, and a useful tool. It's an
 outstanding accomplishment. But technology is moving at a far faster pace
 than the past. Sage is not keeping up. Not even nearly. It will be
 superceded, and I want to be on record as having said so (again).




 If so, we'll just include whatever supersedes sage in Sage...


 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Sage Mailing lists

2014-08-18 Thread William A Stein
Hi,

I wanted to point somebody to the sage combinatorics mailing list, so
I went to http://sagemath.org, clicked on support -- mailing lists,
and got this page:

   http://sagemath.org/help-groups.html

Only three mailing lists are listed.   What about all the others?   Is
the page accidentally broken?

William

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Sage Mailing lists

2014-08-18 Thread William A Stein
On Mon, Aug 18, 2014 at 5:14 AM, Harald Schilly
harald.schi...@gmail.com wrote:


 On Monday, August 18, 2014 2:12:43 PM UTC+2, wstein wrote:

 What about all the others?


 The combinat development list is here, top right
 http://sagemath.org/development-groups.html

 Is there another one?

I didn't realize there was a separate page full of development groups.
For example, the title of the page
http://sagemath.org/help-groups.html is just:

  Sage Discussion Groups

but it would be clearer if it were Sage Support Groups (see ...
Development Groups) or something like that.  Maybe we should add
links back and forth between the two pages?

 -- William


 -- H

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Sage Mailing lists

2014-08-18 Thread William A Stein
On Mon, Aug 18, 2014 at 5:37 AM, Harald Schilly
harald.schi...@gmail.com wrote:
 On Mon, Aug 18, 2014 at 2:27 PM, William A Stein wst...@uw.edu wrote:
 but it would be clearer if it were Sage Support Groups (see ...
 Development Groups) or something like that.  Maybe we should add
 links back and forth between the two pages?


 well, good idea. there are certainly a few things that need fine
 tuning and some things are indeed broken or outstanding for quite some
 time now.

 but more general, it's right now extremely tedious to do any work on
 the page since it has been moved. as long as some outstanding issues
 aren't solved and it doesn't improve, I'll have to come up with an
 entirely new setup to handle it.

Then clearly moving it was a mistake, or at least how I had the move
made was stupid. We can move it back...

 -- William


 -- h

 --
 You received this message because you are subscribed to the Google Groups 
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] interact.sagemath.org

2014-08-18 Thread William A Stein
Hi,

Andrey Novoseltsev kindly pointed out that interact.sagemath.org is
deluged with spam, e.g.,

http://interact.sagemath.org/node/1194

Can somebody volunteer to deal with this ASAP?   Either clean up the
spam, or move hosting somewhere else (i'll point DNS their way).   I'm
afraid UW is  likely to disconnect sagemath.org from the internet if
we don't.

William



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: SageMathCloud / closed source / GPL / Spirit of Sage??

2014-08-18 Thread William A Stein
http://sagemath.blogspot.com/2014/08/what-is-sagemathcloud-lets-clear-some.html

-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: SageMathCloud / closed source / GPL / Spirit of Sage??

2014-08-17 Thread William A Stein
I agree with Harald that this discussion belongs on the sage-flame mailing list:

  https://groups.google.com/forum/#!forum/sage-flame

On Sun, Aug 17, 2014 at 4:45 PM, Dr. David Kirkby (Kirkby Microwave
Ltd) drkir...@kirkbymicrowave.co.uk wrote:

 I think the whole closed source nature is likely to restrict the takeup of
 Sage for several broad groups of people when they realise that to get high
 performance they are going to need to store sensitive material on a Linux
 server they don't control.

 As a 50 year old engineer I have worked at three institutions who I know
 would not want to put workbooks on a server outside their institution.

 a) Ministry of Defence - no way.
 b) Airbus - no way. They are very strict on security.
 c) Marconi - most unlikely.

 1) Many commercial companies are not going to be so keen to put commercially
 sensitive material on a server they don't control. Interlecural  property is
 valuable company asset.

 Suddenly buying distributed licenses for Mathematica is more attractive from
 a security point of view. At least Wolfram Research can't look at what you
 are doing.

 2) Military users are very unlikely to start working on something on a
 distributed system they can't totally control.

 3) Some academics,  especially those working on mathematics in areas they
 know UW specialise in, would perhaps no want to put worksheets on a server
 they know prying eyes will see. Why let someone else look at what you are
 working on and possibly beat you to publish a paper?

 4) Some individuals are just paranoid and will not use a distributed system
 they don't control.

 No doubt HTTPS will be used to encrypt data in transit.  Maybe worksheets
 are stored in an encrypted format on disk. But at some stage the data going
 to be in plain text.

 Has anyone working on SageMathCloud ever considered that certain users would
 not want data stored in a manner they have no control over?

 Dave.

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Integer matrices using FLINT

2014-08-15 Thread William A Stein
,
 
  and it would probably be a good idea to do a similar thing for
 
  fmpq_mat_t.
 
  In any case, I am new to FLINT so I might not be doing the right
 
  things, if
 
  any expert is willing to review the ticket it would be great!
 
  Best,
 
  Marc.
 

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Integer matrices using FLINT

2014-08-13 Thread William A Stein
On Wednesday, August 13, 2014, Marc Masdeu marc.mas...@gmail.com wrote:



 On Tuesday, August 12, 2014 11:17:55 PM UTC+1, Fredrik Johansson wrote:

 On Tuesday, August 12, 2014 8:06:02 PM UTC+2, wstein wrote:

 Hi -- Another question.  You just deleted this [1] below -- does flint
 really solidly beat it?


 FLINT uses the same formula for 4x4 determinants, so the difference
 should be negligible (just the difference in overhead between the mpz and
 fmpz types).

 I'm afraid that the overhead cannot be avoided in the current
 implementation, one would need repeated calls to fmpz_mat_entry() anyways.
 By the way, the new proposed implementation (purely FLINT) solidly beats
 Magma (I am trying random matrices with entries of having 10^6 decimal
 digits). And for those matrices it takes 0.8s to compute one such
 determinant in my laptop... It takes the same in the Sage current.

 --


Million digit entries is one case that is prob not so important in the
context of quaternion algebras - another case to test would be smaller
entries, 30 digits...


 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel%2bunsubscr...@googlegroups.com');
 .
 To post to this group, send email to sage-devel@googlegroups.com
 javascript:_e(%7B%7D,'cvml','sage-devel@googlegroups.com');.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Integer matrices using FLINT

2014-08-12 Thread William A Stein
On Tue, Aug 12, 2014 at 10:52 AM, Martin Albrecht
martinralbre...@googlemail.com wrote:
 Hi, I like the proposal to move some types over to FLINT. However, you removed
 some options, e.g. calling Pari, LinBox or IML for solving certain problems
 (charpoly, kernel, …). I'd prefer these options to be preserved as it is not
 clear to me a priori that FLINT will in all cases be fastest. Also, having
 choices allows to compare results.

+1.   In my experience, having implemented Matrix_integer_dense in the
first place, most systems that we call are full of bugs.   It's almost
never the case that any of the claimed functions, e.g., charpoly,
kernel, etc. aren't buggy.  It's critical (and disturbing) to run test
code comparing the various systems with various random (and not)
inputs.
Also, there are some systems like linbox that have proof=False
options, which can be faster, but will in fact be very wrong,
especially in corner cases.

I also noticed your patch removes a bunch of verbose output.  Why?
Having the potential for logging when running code is very useful:

- t = verbose('hermite mod %s'%D, caller_name='matrix_integer_dense')
cdef Matrix_integer_dense res =
self._new_uninitialized_matrix(self._nrows, self._ncols)
self._hnf_modn(res, D)
- verbose('finished hnf mod', t, caller_name='matrix_integer_dense')

william


 Cheers,
 Martin

 On Tuesday 12 Aug 2014 10:12:04 Marc Masdeu wrote:
 Hi,

 Recently I noticed that Sage was not using fmpz_mat_t for matrices
 (probably when FLINT was incorporated in Sage it didn't yet have this). I
 have opened a ticket (http://trac.sagemath.org/ticket/16803 --thanks
 pbruin!--) with a patch that reimplements matrix_integer_dense with FLINT,
 and it would probably be a good idea to do a similar thing for fmpq_mat_t.

 In any case, I am new to FLINT so I might not be doing the right things, if
 any expert is willing to review the ticket it would be great!

 Best,

 Marc.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Integer matrices using FLINT

2014-08-12 Thread William A Stein
Hi -- Another question.  You just deleted this [1] below -- does flint
really solidly beat it?


[1]
-##
-# Some people really really really want to make sure their
-# 4x4 determinant is really really really fast.
-##
-
-cdef int four_dim_det(mpz_t r,mpz_t *x) except -1:
- 
- Internal function used in computing determinants of 4x4 matrices.
-
- TESTS::
-
- sage: A = matrix(ZZ,4,[1,0,3,0,4,3,2,1,0,5,0,0,9,1,2,3])
- sage: A.determinant() # indirect doctest
- 25
- 
- cdef mpz_t a,b
-
- sig_on()
- mpz_init(a)
- mpz_init(b)
-
- mpz_mul(a,x[3], x[6] ); mpz_submul(a,x[2], x[7] )
- mpz_mul(b,x[9], x[12]); mpz_submul(b,x[8], x[13])
- mpz_mul(r,a,b)
- mpz_mul(a,x[1], x[7] ); mpz_submul(a,x[3], x[5] )
- mpz_mul(b,x[10],x[12]); mpz_submul(b,x[8], x[14])
- mpz_addmul(r,a,b)
- mpz_mul(a,x[2], x[5] ); mpz_submul(a,x[1], x[6] )
- mpz_mul(b,x[11],x[12]); mpz_submul(b,x[8], x[15])
- mpz_addmul(r,a,b)
- mpz_mul(a,x[3], x[4] ); mpz_submul(a,x[0], x[7] )
- mpz_mul(b,x[10],x[13]); mpz_submul(b,x[9], x[14])
- mpz_addmul(r,a,b)
- mpz_mul(a,x[0], x[6] ); mpz_submul(a,x[2], x[4] )
- mpz_mul(b,x[11],x[13]); mpz_submul(b,x[9], x[15])
- mpz_addmul(r,a,b)
- mpz_mul(a,x[1], x[4] ); mpz_submul(a,x[0], x[5] )
- mpz_mul(b,x[11],x[14]); mpz_submul(b,x[10],x[15])
- mpz_addmul(r,a,b)
-
- mpz_clear(a)
- mpz_clear(b)
- sig_off()
- return 0

On Tue, Aug 12, 2014 at 10:59 AM, William A Stein wst...@uw.edu wrote:
 On Tue, Aug 12, 2014 at 10:52 AM, Martin Albrecht
 martinralbre...@googlemail.com wrote:
 Hi, I like the proposal to move some types over to FLINT. However, you 
 removed
 some options, e.g. calling Pari, LinBox or IML for solving certain problems
 (charpoly, kernel, …). I'd prefer these options to be preserved as it is not
 clear to me a priori that FLINT will in all cases be fastest. Also, having
 choices allows to compare results.

 +1.   In my experience, having implemented Matrix_integer_dense in the
 first place, most systems that we call are full of bugs.   It's almost
 never the case that any of the claimed functions, e.g., charpoly,
 kernel, etc. aren't buggy.  It's critical (and disturbing) to run test
 code comparing the various systems with various random (and not)
 inputs.
 Also, there are some systems like linbox that have proof=False
 options, which can be faster, but will in fact be very wrong,
 especially in corner cases.

 I also noticed your patch removes a bunch of verbose output.  Why?
 Having the potential for logging when running code is very useful:

 - t = verbose('hermite mod %s'%D, caller_name='matrix_integer_dense')
 cdef Matrix_integer_dense res =
 self._new_uninitialized_matrix(self._nrows, self._ncols)
 self._hnf_modn(res, D)
 - verbose('finished hnf mod', t, caller_name='matrix_integer_dense')

 william


 Cheers,
 Martin

 On Tuesday 12 Aug 2014 10:12:04 Marc Masdeu wrote:
 Hi,

 Recently I noticed that Sage was not using fmpz_mat_t for matrices
 (probably when FLINT was incorporated in Sage it didn't yet have this). I
 have opened a ticket (http://trac.sagemath.org/ticket/16803 --thanks
 pbruin!--) with a patch that reimplements matrix_integer_dense with FLINT,
 and it would probably be a good idea to do a similar thing for fmpq_mat_t.

 In any case, I am new to FLINT so I might not be doing the right things, if
 any expert is willing to review the ticket it would be great!

 Best,

 Marc.



 --
 William Stein
 Professor of Mathematics
 University of Washington
 http://wstein.org
 wst...@uw.edu



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] installing optional packages requires running sage -b

2014-08-04 Thread William A Stein
Hi,

I installed Sage-6.3.beta6 on SageMathCloud, then installed a big list
of optional packages, including cryptominisat.I was surprised when
the next day a user reported that CryptoMiniSat didn't work, and when
you attempt to use it, you see

  Run install_package('cryptominisat') to install it.

I tried the above (as the owner of the sage install), and it did not
fix the problem.  What did fix the problem was typing sage -b.
So... it seems like somebody removed doing sage -b after installing
optional packages from the build system (if it was ever there?).
There were several other Cython modules that also weren't built.

Thoughts?  Obviously, doing sage -b after installing standard
packages wouldn't make sense, e.g, because sage -b wouldn't work.

 -- William



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: installing optional packages requires running sage -b

2014-08-04 Thread William A Stein
On Mon, Aug 4, 2014 at 6:17 AM, William A Stein wst...@uw.edu wrote:
 Hi,

 I installed Sage-6.3.beta6 on SageMathCloud, then installed a big list
 of optional packages, including cryptominisat.I was surprised when
 the next day a user reported that CryptoMiniSat didn't work, and when
 you attempt to use it, you see

   Run install_package('cryptominisat') to install it.

 I tried the above (as the owner of the sage install), and it did not
 fix the problem.  What did fix the problem was typing sage -b.
 So... it seems like somebody removed doing sage -b after installing
 optional packages from the build system (if it was ever there?).
 There were several other Cython modules that also weren't built.

Just to clarify -- this is exactly what wasn't built (not several
other modules):

Compiling sage/libs/coxeter3/coxeter.pyx because it changed.
Compiling sage/numerical/backends/coin_backend.pyx because it changed.
Compiling sage/sat/solvers/cryptominisat/cryptominisat.pyx because it changed.
Compiling sage/sat/solvers/cryptominisat/solverconf.pyx because it changed.


 Thoughts?  Obviously, doing sage -b after installing standard
 packages wouldn't make sense, e.g, because sage -b wouldn't work.

  -- William



 --
 William Stein
 Professor of Mathematics
 University of Washington
 http://wstein.org
 wst...@uw.edu



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] installing optional packages requires running sage -b

2014-08-04 Thread William A Stein
On Mon, Aug 4, 2014 at 6:30 AM, Jeroen Demeyer jdeme...@cage.ugent.be wrote:
 On 2014-08-04 15:17, William A Stein wrote:

 Hi,

 I installed Sage-6.3.beta6 on SageMathCloud, then installed a big list
 of optional packages, including cryptominisat.I was surprised when
 the next day a user reported that CryptoMiniSat didn't work, and when
 you attempt to use it, you see

Run install_package('cryptominisat') to install it.

 I tried the above (as the owner of the sage install), and it did not
 fix the problem.  What did fix the problem was typing sage -b.
 So... it seems like somebody removed doing sage -b after installing
 optional packages from the build system (if it was ever there?).

 Running sage -b after installing packages has always been needed, nobody
 removed anything.


Of all optional packages (that work), it is apparently only needed
after 2 or 3 of them: cryptominisat, coin, coxeter.

 I don't consider that a bug, it's consistent with: whenever you change
 something to your Sage setup, run sage -b or even better make.

Just consider what happens to a new confused user... or even the most
longterm user of Sage (me):

1. Install cryptominisat -- if you do
install_package('cryptominisat'), I think that's broken, so at least I
know to do:

sage -i cryptominisat

2. Start sage and try to run it.  That's me doing this -- I never even
considered having to do sage -b, and I've been using Sage for a
while.

sage: try function using package
boom
Run install_package('cryptominisat') to install it.

3. OK, I'll do what Sage *tells me to do*.

sage: install_package('cryptominisat')
boom!
ValueError: Package is already installed. Try
install_package('cryptominisat',force=True)

4. OK, I'll do what Sage tells me to do:

sage: install_package('cryptominisat', force=True)
ValueError: There is no package name starting with 'cryptominisat'.

5. Wow, I'm starting to think Sage is a confused broken mess?  An old
forgetful sage... Oh wait, now I remember there was some bug in
install_package that I reported a few months ago, namely that
install_package, which you're told to use, is broken.  So I do:

sage -f cryptominisat

and and go to 1.  Nothing has been fixed at all.

This is absolutely not how Sage should behave.   The fixes I can think of:

  (1) Run sage -b as part of installing any package that requires it
for the install to finish.  Your argument not to run sage -b isn't
convincing, because the user is explicitly installing a package
anyways, so they are potentially changing things all over Sage.   Or,

  (2) Tell people they have to run sage -b clearly in the package
install message.  This won't work, because after 20 pages of build
output, nobody is likely to read this.  Or,

  (3) Instead of telling the user to reinstall the missing package (in
minisat say), actually give a useful error message, instead of a
totally wrong one.  E.g., check to see if the minisat library is
installed, but the cython module isn't built.   I don't like this
since it is fragile.


So (1) is the best solution I can think of, and solves all cases of
this problem for all packages that have it.

William



 I would not be in favour of automatically running sage -b since you might
 want to install several packages but run sage -b only once, you might want
 to do something else like checking out some git branch (after which you need
 to do sage -b anyway) and it wouldn't work for standard packages as you
 said. I would also advice against doing sage -b while Sage is running, so
 the install_package() Sage command couldn't do it.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] installing optional packages requires running sage -b

2014-08-04 Thread William A Stein
On Mon, Aug 4, 2014 at 8:14 AM, Jeroen Demeyer jdeme...@cage.ugent.be wrote:
 On 2014-08-04 16:35, Burcin Erocal wrote:

 There is one more option:

 (4) include the relevant python/cython code in the package, build
  and install it with the package.

I like (4) the best, but it requires a significant change (compared to
1-3, which are each trivial to implement).

 That's a possibility, although it complicates doctesting: that extra code
 wouldn't get doctested.

Does anybody actually doctest code in the Sage library that uses
optional packages?  I wrote the #optional tags so that this would be
possible, but never really kept up with it.

The install process for the optional package can at least run a test
suite, when the SAGE_CHECK variable is set.  This could run the
corresponding doctests, which might be in the package.

William


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org
wst...@uw.edu

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] installing optional packages requires running sage -b

2014-08-04 Thread William A Stein
On Mon, Aug 4, 2014 at 8:35 AM, Volker Braun vbraun.n...@gmail.com wrote:
 (5) have any dependency handling for optional packages.

Would switching to that package manager that you recently rewrote help here?


 Really, this thread boils down to: the Sage library depends on some optional
 packages. Any kind of hacks around that (like running sage -b by hand in
 scripts) will just lead to race conditions.

I'm going to give up on changing sage for this particular issue, and
just put sage -b in my own script for installing optional packages
to SMC.

Probably somebody should disable the install_package command in Sage,
and remove explicit reference to it in sage source code, if there is
no plan to fix it. There are many places in the sage source code that
tell people to use that command:

~/tmp$ sage -grep install_package
sage/sat/solvers/cryptominisat/__init__.py:raise
ImportError(Failed to import
'sage.sat.solvers.cryptominisat.CryptoMiniSat'. Run
\install_package('cryptominisat')\ to install it.)
sage/misc/package.py:Use the ``install_package`` command to install a new
sage/misc/package.py:install_package(pkg, force=force)
sage/misc/package.py:def install_package(package=None, force=False):
sage/misc/package.py:sage: install_package()
sage/misc/package.py:sage: install_package('chomp')  # not tested
sage/misc/package.py:print(install_package may not work
correctly under Microsoft Windows)
sage/misc/package.py:print(use the force option to install_package().)
sage/misc/package.py:raise ValueError(Package is
already installed. Try
install_package('{}',force=True).format(package))
sage/misc/package.py:return any(p.startswith(package) for p in
install_package())
sage/misc/package.py:Use ``install_package(package_name)`` to install or
sage/misc/package.py:.. seealso:: :func:`install_package`, :func:`upgrade`
sage/misc/package.py:Use ``install_package(package_name)`` to install or
sage/misc/package.py:.. seealso:: :func:`install_package`, :func:`upgrade`
sage/misc/package.py:Use ``install_package(package_name)`` to install or
sage/misc/package.py:.. seealso:: :func:`install_package`, :func:`upgrade`
sage/misc/package.py:.. seealso:: :func:`install_package`,
:func:`optional_packages`
sage/misc/package.py:mesg  = 'To install the package %s type
install_package(%s)\n'%(package_name, package_name)
sage/misc/all.py:from package import install_package,
is_package_installed, standard_packages, optional_packages,
experimental_packages, upgrade
sage/interfaces/r.py:def install_packages(self, package_name):
sage/interfaces/r.py:sage: r.install_packages('aaMI')
 # not tested
sage/rings/polynomial/multi_polynomial_ideal.py:raise
ImportError(GINV is missing, to install use
install_package('ginv').)
sage/rings/polynomial/multi_polynomial_sequence.py:
raise ValueError('algorithm=exhaustive_search requires the optional
library FES. Run install_package(\'fes\') to install it
.')
sage/groups/perm_gps/permgroup_named.py:
``install_package(`database_gap')``.
sage/geometry/triangulation/point_configuration.py:sage:
install_package('TOPCOM') # not tested
sage/geometry/polyhedron/palp_database.py:install it with the
command ``install_package('polytopes_db_4d')``.
sage/graphs/graph_plot_js.py:``install_package('d3js')`` or by
running ``sage -i d3js`` from the command
sage/graphs/graph_plot_js.py:``install_package('d3js')`` or by
running ``sage -i d3js`` from the
sage/server/trac/trac.py:print Try something like
install_package('trac-0.11.5'),
~/tmp$ sage -grep install_package|wc -l
29



 -- William




 On Monday, August 4, 2014 2:58:02 PM UTC+1, wstein wrote:

   (1) Run sage -b as part of installing any package that requires it
 for the install to finish.  Your argument not to run sage -b isn't
 convincing, because the user is explicitly installing a package
 anyways, so they are potentially changing things all over Sage.   Or,

   (2) Tell people they have to run sage -b clearly in the package
 install message.  This won't work, because after 20 pages of build
 output, nobody is likely to read this.  Or,

   (3) Instead of telling the user to reinstall the missing package (in
 minisat say), actually give a useful error message, instead of a
 totally wrong one.  E.g., check to see if the minisat library is
 installed, but the cython module isn't built.   I don't like this
 since it is fragile.

 --
 You received this message because you are subscribed to the Google Groups
 sage-devel group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to sage-devel+unsubscr...@googlegroups.com.
 To post to this group, send email to sage-devel@googlegroups.com.
 Visit this group at http://groups.google.com/group/sage-devel.
 For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University

[sage-devel] test message

2014-05-06 Thread William A Stein
Hi,

If this works, then posting from @uw.edu addresses works.  If not,
then we should migrate to another mailing list provider.

William

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Changelogs in SPKG.txt

2010-05-25 Thread William A. Stein




On May 25, 2010, at 12:30 PM, Jason Grout jason-s...@creativetrax.com wrote:

 On 5/25/10 2:01 PM, Robert Bradshaw wrote:
 On May 25, 2010, at 11:50 AM, William Stein wrote:
 
 
 
 Having info about patches is a good idea. I'm definitely not
 convinced SPKG.txt is the right place for it. I would install propose
 something *like* for every patch foo, having a file foo.wtf (or
 something) in patches/ that explains the patch. E.g.,
 
 
 $ cd patches
 $ ls
 foo foo.patch foo.wtf
 
 
 The file foo.wtf would document why foo is done. Doing things like
 this will greatly increase the chances that docs are updated when they
 should be. This is similar to having docstrings in functions, instead
 of some other distant place.
 
 I actually think that this will make it less likely to get looked at and
 appropriately cleaned up when versions are bumped. When I'd go to
 SPKG.txt to update the version information, I would see Version x.y.z,
 with these patches: ... and if there are notes about stuff being fixed
 upstream, I'd take care of it then, rather than having to look at each
 patch/about file individually.
 
 
 +1 to Robert's comments.  Already, I don't ever make or use foo.patch files 
 anymore because they are completely redundant and one more easily-forgotten 
 step to make (they should be totally automated if they are required).  


Interesting


 If we added foo.why files (I think 'why' is a nicer extension :), that would 
 just add a layer of complexity onto the updating process.  So +1 to having 
 all of the necessary instructions/metadata for updating an spkg right in the 
 SPKG.txt file.
 
 Jason
 
 -- 
 To post to this group, send an email to sage-devel@googlegroups.com
 To unsubscribe from this group, send an email to 
 sage-devel+unsubscr...@googlegroups.com
 For more options, visit this group at 
 http://groups.google.com/group/sage-devel
 URL: http://www.sagemath.org

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


Re: [sage-devel] Re: Changelogs in SPKG.txt

2010-05-25 Thread William A. Stein




On May 25, 2010, at 12:30 PM, Jason Grout jason-s...@creativetrax.com wrote:

 On 5/25/10 2:01 PM, Robert Bradshaw wrote:
 On May 25, 2010, at 11:50 AM, William Stein wrote:
 
 
 
 Having info about patches is a good idea. I'm definitely not
 convinced SPKG.txt is the right place for it. I would install propose
 something *like* for every patch foo, having a file foo.wtf (or
 something) in patches/ that explains the patch. E.g.,
 
 
 $ cd patches
 $ ls
 foo foo.patch foo.wtf
 
 
 The file foo.wtf would document why foo is done. Doing things like
 this will greatly increase the chances that docs are updated when they
 should be. This is similar to having docstrings in functions, instead
 of some other distant place.
 
 I actually think that this will make it less likely to get looked at and
 appropriately cleaned up when versions are bumped. When I'd go to
 SPKG.txt to update the version information, I would see Version x.y.z,
 with these patches: ... and if there are notes about stuff being fixed
 upstream, I'd take care of it then, rather than having to look at each
 patch/about file individually.
 
 
 +1 to Robert's comments.  Already, I don't ever make or use foo.patch files 
 anymore because they are completely redundant

Interesting.  If I remember correctly, you and I had a long discussion about 
those patch files, in which I was totally against them, and you argued for 
them.   I think they are there now mostly because of you.  I'm still against 
them and consider them a waste of time, just like the log in SPKG.txt.   I am 
glad we now agree.



 and one more easily-forgotten step to make (they should be totally automated 
 if they are required).  If we added foo.why files (I think 'why' is a nicer 
 extension :), that would just add a layer of complexity onto the updating 
 process.  So +1 to having all of the necessary instructions/metadata for 
 updating an spkg right in the SPKG.txt file.

There is a layer of complexity with either approach.   One puts the 
instructions next to the file being patched, and one puts them in a separate 
file.   It's just like putting docs in docstrings versus the Sage Constructions 
Guide. 



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

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


Re: [sage-devel] Re: icc

2010-05-23 Thread William A. Stein

On May 23, 2010, at 1:12 PM, leif wrote:

 On 23 Mai, 21:40, Dr. David Kirkby david.kir...@onetel.net wrote:
 'lcalc' had a particularly annoying attempt to cover up warnings from the
 assembler, as it actually caused the build to break on Solaris, as the 
 option to
 cover up the warnings was passed directly to the Sun assembler, but it did 
 not
 accept the option.
 
 They seem to think gcc (the compiler driver) will be smart enough to
 know all options passed to any component of the tool chain, even if
 passed verbatim ;-)
 
 IMHO, the quality of the coding in Sage leaves a lot to be desired in places.
 
 One of my current favorites is a snippet from sage-build:
 
   cd $SAGE_ROOT/devel/sage/sage
   echo *** TOUCHING ALL CYTHON (.pyx) FILES ***
   touch */*.pyx */*/*.pyx */*/*/*.pyx */*/*/*/*.pyx */*/*/*/*/*.pyx */
 */*/*/*/*.pyx  */*/*/*/*/*/*.pyx 2 /dev/null
 
 Reminds me of M$-DOS, where the shell did not expand wildcards. (If
 you have fun, count the asterisks...)
 
 -Leif

Instead of keeping this as a favorite, implement a better version, and post a 
patch.

 -- William

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

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


Re: [sage-devel] Re: icc

2010-05-23 Thread William A. Stein

On May 23, 2010, at 1:12 PM, leif wrote:

 On 23 Mai, 21:40, Dr. David Kirkby david.kir...@onetel.net wrote:
 'lcalc' had a particularly annoying attempt to cover up warnings from the
 assembler, as it actually caused the build to break on Solaris, as the 
 option to
 cover up the warnings was passed directly to the Sun assembler, but it did 
 not
 accept the option.
 
 They seem to think gcc (the compiler driver) will be smart enough to
 know all options passed to any component of the tool chain, even if
 passed verbatim ;-)
 
 IMHO, the quality of the coding in Sage leaves a lot to be desired in places.
 
 One of my current favorites is a snippet from sage-build:
 
   cd $SAGE_ROOT/devel/sage/sage
   echo *** TOUCHING ALL CYTHON (.pyx) FILES ***
   touch */*.pyx */*/*.pyx */*/*/*.pyx */*/*/*/*.pyx */*/*/*/*/*.pyx */
 */*/*/*/*.pyx  */*/*/*/*/*/*.pyx 2 /dev/null
 
 Reminds me of M$-DOS, where the shell did not expand wildcards. (If
 you have fun, count the asterisks...)
 
 -Leif
 
 -- 
 To post to this group, send an email to sage-devel@googlegroups.com
 To unsubscribe from this group, send an email to 
 sage-devel+unsubscr...@googlegroups.com
 For more options, visit this group at 
 http://groups.google.com/group/sage-devel
 URL: http://www.sagemath.org

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


Re: [sage-devel] Do 'sympow' and 'palp' build 64-bit on OS X ?

2010-05-23 Thread William A. Stein

On May 23, 2010, at 6:10 PM, Dr. David Kirkby wrote:

 Trying to build Sage on OpenSolaris in 64-bit mode I discovered two packages 
 which look to me that they don't try to build 64-bit. They don't use the 
 SAGE64 variable at all and nothing else there suggests that the -m64 flag 
 ever gets added.
 
 This makes me think that they will not build properly as 64-bit on OS X 
 either, unless 64-bit is the default for the particular release of OS X.

64-bit is the default for OS X 10.6.  We only bother building 64-bit Sage on OS 
X 10.6. 

William 


 
 Comments?
 
 Dave
 
 -- 
 To post to this group, send an email to sage-devel@googlegroups.com
 To unsubscribe from this group, send an email to 
 sage-devel+unsubscr...@googlegroups.com
 For more options, visit this group at 
 http://groups.google.com/group/sage-devel
 URL: http://www.sagemath.org

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


Re: [sage-devel] Re: How can I get and modify Notebook source?

2010-05-11 Thread William A. Stein




On May 11, 2010, at 10:56 AM, kcrisman kcris...@gmail.com wrote:

 
 
 On May 11, 11:22 am, Jason Grout jason-s...@creativetrax.com wrote:
 On 05/11/2010 01:45 AM, Tim Joseph Dumol wrote:
 
 
 
 
 
 On Tue, May 11, 2010 at 5:47 AM, Jason Grout
 jason-s...@creativetrax.com mailto:jason-s...@creativetrax.com wrote:
 
 On 05/10/2010 01:27 PM, Tim Joseph Dumol wrote:
 
 Hi,
 
 The latest sagenb package is included in Sage 4.4.1
 (sagenb-0.8.p0.spkg). Then, extract and install it, then develop
 as usual.
 
 $ tar -xvf sagenb-0.8.p0.splg
 $ cd sagenb-0.8.p0/src/sagenb/
 $ sage -python setup.py install  sage -python setup.py develop
 
 `setup.py develop` allows you to develop on the package without
 needing
 to reinstall the package or rebuild Sage.
 
 What is the possibility of just copying the repository to the
 site-packages/sagenb directory?  Then someone could just go into
 that directory ($SAGE_ROOT/local/lib/python2.6/site-packages/...)
 and start making changes, check the log, etc.
 
 It's rather non-standard to do work directly in site-packages/*. I'd be
 much more comfortable with copying the repository to something like
 $SAGE_ROOT/devel/sagenb/ or something like that, and running `$sage
 -python setup.py install  sage -python setup.py develop` on package
 install. It would be trivial to create an hg_sagenb class wrapper once
 that's done. I'd love to hear other people's opinion on this.
 
 +1 to making a directory in devel that contains the notebook code so
 that the development process is much more standardized (e.g., go to a
 directory in devel and work with normal mercurial commands).
 
 
 Yes, this is exactly the kind of thing I had in mind.  Things that are
 really just for Sage should be part of the standard Sage devel
 process.  (Now we just need an hg_pynac to make it complete...)
 Thanks for considering it!
 
 - kcrisman


The notebook is *not* just for sage.   

There is a pynac hg repo in the pynac spkg.

Anyway, best is a more supported way to automate the 3 lines Tim posted above, 
e.g.,

   sage -i --devel pkg_name

would install and setup the given package in a way for doing development.


 


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

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


Re: [sage-devel] converting complex to float

2010-05-04 Thread William A. Stein




On May 4, 2010, at 8:21 AM, Jason Grout jason-s...@creativetrax.com wrote:

 Right now, we have the following behavior:
 
 sage: float(CC(1.0))
 1.0
 
 
 sage: float(CDF(1.0))
 ---
 TypeError Traceback (most recent call last)
 
 /home/jason/ipython console in module()
 
 /home/jason/sage/local/lib/python2.6/site-packages/sage/rings/complex_double.so
  in sage.rings.complex_double.ComplexDoubleElement.__float__ 
 (sage/rings/complex_double.c:6532)()
 
 TypeError: can't convert complex to float; use abs(z)
 
 
 sage: float(complex(1.0))
 ---
 TypeError Traceback (most recent call last)
 
 /home/jason/ipython console in module()
 
 TypeError: can't convert complex to float
 
 
 Does anyone object to me changing float(CDF(1.0)) to behave like 
 float(CC(1.0)) (i.e., a float conversion will succeed if the imaginary part 
 is 0).  Note that this will make CDF and the python complex type have 
 different behaviors.

I think I wrote the original code for this, and I am ok with the change you 
suggest, since our policy on explicit coercions is to make them work when they 
make (some) mathematical sense.

 
 Also note that this will partially match the numpy complex type (which 
 apparently just returns the real part of the number on conversion to float):
 
 sage: float(numpy.complex128(1.0))
 1.0
 sage: float(numpy.complex128(1.0+2j))
 1.0

That is truly evil.   

William

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

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


Re: [sage-devel] Re: converting complex to float

2010-05-04 Thread William A. Stein




On May 4, 2010, at 9:06 AM, Jason Grout jason-s...@creativetrax.com wrote:

 On 05/04/2010 10:30 AM, William A. Stein wrote:
 
 I think I wrote the original code for this, and I am ok with the change
 you suggest, since our policy on explicit coercions is to make them work
 when they make (some) mathematical sense.
 
 
 A related question is that conversion from CC or CDF to long, int, ZZ, or QQ 
 also fails, though doing something like ZZ(RR(CC(1))) works.
 
 Should conversion to an integer or rational try to work if the imaginary part 
 is zero?

Yes.   And note that the implementation of QQ(RR(...   is pretty nontrivial.

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

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


[sage-devel] Re: back ticks versus $ signs

2009-09-03 Thread William A. Stein


On Sep 3, 2009, at 12:28 PM, Ondrej Certik wrote:


 On Thu, Sep 3, 2009 at 12:09 PM, William Steinwst...@gmail.com  
 wrote:

 Hi,

 I've been spending the last few days going between writing a lot of
 code with very math heavy Sphinx docstrings containing many  
 backticks,
 and writing LaTeX documents (papers/notes/etc.) using $ signs for  
 math
 mode.  It is driving me totally crazy!  I constantly accidentally put
 $'s in my Spinx docstrings and now I'm starting to put back ticks `  
 in
 my LaTeX documents.

 Is anybody else annoyed by this?   I am very tempted to change Sage  
 so
 that $ signs can be used as a synonym for backquotes in  
 docstrings.  I
 would leave backticks, but make it so $'s just get converted to
 backticks, plus maybe some marker to leave $'s as $'s (e.g., whatever
 one would currently do to enter a backtick in Sphinx).

 I am also writing lots of formulas using rest, e.g.:

 http://certik.github.com/mhd-hermes/sphinx-doc/physics.html

 and it bugs me that I have to type

 :math:`\eta`

 instead of just $\eta$. So how about submitting a patch to sphinx  
 fixing it?

 Ondrej


That's a good idea.  It would certainly be better than having to  
change Sage -- it would keep things pure, but allow $'s, and even  
benefit you.  Great idea.   It's hard to argue with that.

  -- William

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



[sage-devel] Re: symbolic variable treated as sqrt(-1) when it shouldn't be

2009-09-03 Thread William A. Stein


On Sep 3, 2009, at 12:49 PM, kcrisman wrote:




 On Sep 3, 2:28 pm, William Stein wst...@gmail.com wrote:
 Hi Sage-Devel,

 What do you think of this:

 sage: var('x, i')
 sage: solve(x^2 + i == 0, x)
 [x == -sqrt(-I), x == sqrt(-I)]

 Basically, I make a purely symbolic variable which I happen to call
 i, and it gets treated somewhere (presumably in Maxima) as if it
 were sqrt(-1).

 Here is another instance of this:

 sage: var('i')
 i
 sage: a = i^2
 sage: a
 i^2
 sage: a.simplify_full()
 -1

 So Ginac treats things fine, but our use of Maxima messes it up.

 This came up for me just now when doing some symbolic calculation  
 with
 a quaternion algebra where the generators are called i,j,k, and  
 this
 i has nothing to do with sqrt(-1).

 Thoughts?

 William


 I see your point.  I guess to me it's another instance of the should
 x be predefined question - on the whole, it's better to make this
 available.


I think my email must have not been clear.  I think it's an instance  
of a *HUGE BUG* in Sage.  No more, no less.It's a bug, because  
irregardless of anything being predefined, it makes no sense that  
simplifying via *maxima* would just happen to decide that the formal  
variable i is sqrt(-1), even though it isn't with Ginac.

William 


  It is also annoying when doing [f(i) for i in indexset],
 but unless we can come up with another way to represent this, it will
 be hard to do things with complexes very easily.  Luckily for me, I
 don't usually need that, but others may very often.  Does this happen
 with 'e' as well, or is that defined as a constant rather than a
 variable?  It seems like both are symbolic.expression.Expression.

 What do the other major systems do with this - do they insist on sqrt
 (-1) or CC(i) or something like that?  If everyone expects this coming
 in, it is an argument for it - not decisive, but a significant
 argument.

 - kcrisman
 


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



[sage-devel] Re: Organizing Sage worksheets: tags or categories?

2009-09-03 Thread William A. Stein


On Sep 3, 2009, at 2:17 PM, Brian Granger wrote:

 Hi,

 Is there any way of organizing worksheets on a Sage notebook  
 server?  If you have many worksheets, it can be difficult to find them
 and it would be nice to be able to organize them using tags,  
 categories or folders.  One example of this would be if wanted to  
 write a chapter based book
 using the notebooks.  Then all the chapters could be a worksheet and  
 all the worksheets could go into a single folder/tag.

No, there is no way to organize worksheets.   I'll implement something  
next month.  What should my highest priority be?

In practice, what I do is put something helpful in the title (a sort  
of tag), then use the text search in the upper right to locate all  
worksheets with that in them.

William

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



[sage-devel] Re: Embedded SVG editor in the notebook?

2009-09-03 Thread William A. Stein


On Sep 3, 2009, at 10:17 PM, Pat LeSmithe wrote:


 I noticed SVG-edit, a Scalable Vector Graphics (SVG) editor that works
 entirely in capable browsers [1]:

 http://code.google.com/p/svg-edit/

 Stable and beta demos:

 http://svg-edit.googlecode.com/svn/tags/stable/editor/svg-editor.html
 http://svg-edit.googlecode.com/svn/trunk/editor/svg-editor.html

 Compared to Inkscape, it's quite light, but this may be an advantage.
 It does appear to be actively developed.  Are there other or better
 examples?

That is absolutely amazing!!  Wow.


 Not impossible uses in Sage:

 * Draw diagrams.
 * Annotate images.
 * Manipulate graphs.
 * Put cells anywhere.
 * Add audio and video.

Yes indeed.  This would be very nice, since one could say draw a plot,  
then edit it to fine tune things and add extra annotation.

Also, it would just be very nice having an easy scratchpad anywhere in  
an worksheet.

Very cool.

William


 Can jsMath render expressions as SVG groups?  I think this depends
 partly on font support.

 By the way, how about syntax highlighting for equations?  jsMath can
 easily do color:

 http://www.math.union.edu/~dpvc/jsMath/examples/extensions.html

 Would this be useful for teaching?  I'm not sure about how to add  
 color
 attributes to symbolic variables.


 [1] IE supports Vector Markup Language (VML) instead of SVG.  The  
 svgweb
 project aims to set up Flash as a non-native SVG renderer:

 http://code.google.com/p/svgweb/


 


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



  1   2   >