Commutative diagrams in notebook

78 views
Skip to first unread message

Bill Hart

unread,
Apr 11, 2009, 6:04:14 PM4/11/09
to sage-devel
Is there a way to latex using amscd for commutative diagrams in the
notebook? This would be an extremely useful feature.

I guess one is limited by the latex features that are available in a
webpage.

Bill.

William Stein

unread,
Apr 11, 2009, 6:50:40 PM4/11/09
to sage-...@googlegroups.com

One option is to at least use %latex mode in a cell, e.g., put %latex
at the top of a cell. Then the rest of the cell is typeset in latex,
and you can do a lot with that. I don't know if the amscd diagram
package is imported by default though. It would be easy to make that
possible though.

William

Bill Hart

unread,
Apr 11, 2009, 7:32:11 PM4/11/09
to sage-devel
It doesn't seem to be imported by default. There's no other diagram
package imported by default is there?

I guess it would be even better to be able to do CD's outside cells,
but would I be correct in thinking that is a limitation of jsMath, not
the notebook?

I'm really impressed by the notebook. It is working very well for me.

I have one small suggestion. I know there is a %hide option to hide
cells. It might be useful to be able to pass a parameter to %hide
which specifies what text is displayed instead of %hide once the cell
is hidden. Actually the evaluate below where the cell would be is also
intrusive. But I don't see a way around that. One needs to be able to
evaluate hidden cells.

One possible solution might be for the evaluate to also be hidden when
you evaluate a hidden cell. Then to reevaluate it, one would have to
unhide the cell at which point the evaluate link would come back. Does
that seem like a sensible solution? Or perhaps one could pass a
parameter to hide for this too:

%hide("Here is some text which will show up.", hide_evaluate=true)

Heh, even cooler would be to be able to pass parameters for font,
style and colour to %hide. But that is probably a little over the top.

%hide("Here is some text which will show up.", font=helvetica,
style=bold, size=18, color=#000000, hide_evaluate=true)

Perhaps

%hide(<h1>My heading</h1>, hide_evaluate=true)

Dunno. I didn't think this through really. Someone might have a better
idea.

Bill.

On 11 Apr, 23:50, William Stein <wst...@gmail.com> wrote:

Bill Hart

unread,
Apr 11, 2009, 7:41:35 PM4/11/09
to sage-devel
Ah, silly me. The "evaluate" goes away when another cell is selected.
No need to worry about solving that "problem".

By the way, how do I use the %latex mode in a cell? It looks like it
expects whatever you would have in a latex slide. But

$2+2$

for example does not latex.

Bill.

Bill Hart

unread,
Apr 11, 2009, 7:51:32 PM4/11/09
to sage-devel
Another suggestion. Has anyone thought about having SagePapers TM,
which would be an arxiv of both technical mathematical papers and
expository notes written entirely in Sage worksheets?

This would be really cool, as it would allow the reader of the paper
to play with the Sage/GP/Magma/whatever examples included in the
paper. It would make refereeing computations easy too.

Heh, when collaborating on worksheets is allowed, multi-author papers
would be a breeze. It opens up so many possibilities.

Bill.

Rob Beezer

unread,
Apr 11, 2009, 8:17:57 PM4/11/09
to sage-devel
Hi Bill,

Grab the worksheet at

http://buzzard.ups.edu/sage/sage-group-theory-primer.sws

for an example of an interactive SagePaper (tm). There should even be
an @interact cell that will build a nicely formatted table of the
subgroups of a finite cyclic group, given the order of the group.

Bill Hart

unread,
Apr 11, 2009, 8:58:48 PM4/11/09
to sage-devel
Thanks Rob. It is great to see I am not the only person who has gotten
excited. This idea is soooo good I am having trouble finding a reason
to not Just Do It TM.

I know there is a Sage Journal idea floated (JSage). So some of what I
am thinking is surely motivated by that. Here is what I envision:

* A front end like arxiv.org, but with a distinguished board of
editors who organise reviewers for the papers, i.e. a proper journal
setup, but with an algorithmic/computational bent.

* The archive would provide a list of papers, which when selected
would send the worksheet to one of a list of sage servers set up
around the world. Each server might have different Sage/GP/Magma, etc
binaries installed on it. The paper would specify which binaries it
relies on and the archive mechanism would only list servers which
provide those binaries. So you'd effectively select a paper and a
server and the process of bringing that paper up for you would be
automated. (This would mainly be for papers including benchmarks - for
other papers a minimum or list of binaries supporting the examples in
that paper would be provided).

* Universities would pay for a subscription to the service, which
would pay for the hardware to run all the different CAS binaries which
would be required, and pay for work on the notebook itself,
maintenance of the archive system, storage, etc. A University might
get a free subscription if they provide a server. Individuals might be
able to pay for a lifetime subscription just for themselves, for a
nominal fee, which they could pay for out of grants, etc. Non-
academics not working for companies who could pay for their
subscription could write to the maintainers for a free account. I
would hate to absolutely limit access to ideas/papers, but the
infrastructure required to set this up would need to be paid for
somehow, and since the whole thing has come from the Sage process, I
don't see why the Sage Foundation could not provide jobs for people to
do work on Sage and the notebook as a consequence of such funding.

* There could also be a selection of refereed expositions available,
which would be required to have examples implemented in some supported
CAS within the worksheet.

* Papers could contain live benchmarks, and getting up-to-date
benchmarks would be as simple as running on a server with more recent
binaries (this would be an available option at the archive level).

The only problem I can see is that when parallel processing becomes
the norm, very large computations and benchmarks might be included in
papers. Obviously the execution of those would have to be limited.
Perhaps an option could be provided for a researcher to re-run such
computations on their own Sage server, so they are then responsible
for providing the cycles. I guess it should be possible to just pay
for time on a machine from a grant to run such a computation from a
Sage worksheet. But this would be well down the track.

The reason I like this idea so much is that it makes formal
mathematical papers interactive, which is probably a whole new
paradigm which has been opened up in recent months by the availability
of the Sage Notebook. It's clear a number of people have been thinking
about doing something like this for a while, and I now claim that I am
too excited about such a prospect. This could really make getting
credit for work on algorithms and implementations feasible.

Were there a proper international board of editors, highly respected
in my field, available to organise formal refereeing of my paper
through such a mechanism, I would be highly motivated to develop new
algorithms, implement them, get them accepted into MPIR, FLINT, Sage,
etc, write a paper on the algorithm using the Sage Notebook, including
examples and/or benchmarks, and submit to the SagePapers archive. I'd
then get credit for what I am not currently getting formal academic
credit. And it would be fun too!!

Hell, I'd even be inclined to write purely theoretical papers and
illustrate them with examples using Sage and write the paper in the
Sage Notebook and submit those too. And I see no reason why I wouldn't
write review papers and expositions too, on areas of computational
interest with which I am intimately familiar.

As a first step towards something like this, setting up a website with
a list of surveys/expositions which have been refereed and attached to
a single Sage server, just as proof of principle would be an easy
first step. Essentially the infrastucture for this already exists.
We'd just need a distinguished editorship and some referees and
submissions.

Bill.

Rob Beezer

unread,
Apr 12, 2009, 12:45:24 AM4/12/09
to sage-devel
Hi Bill,

That all sounds great. But first you'll have to find somebody
"distinguished." ;-)

Seriously, I see no real reason there can't be interactive research
articles, interactive textbooks and interactive classroom
demonstrations, all with the power of Sage right at the fingertips of
the researcher/student/teacher. The combination of Sage, the notebook
interface and jsMath opens up so many possibilities. There are still
a few rough edges on all this, but there's nothing insurmountable in
my view.

I wonder if there is anybody who has been tempted to get JSAGE really
rolling?

http://www.sagemath.org/library/jsage/index.html

I think it would be a great vehicle for researchers and contributors
to get formal acknowledgement for significant theoretical or
implementation projects within Sage. To say nothing of serving as a
demonstration of all the ideas you've presented.

Rob

Bill Hart

unread,
Apr 12, 2009, 1:59:28 AM4/12/09
to sage-devel
I think JSage has a slightly different focus. Specifically:

* It is tied to the Sage Python library
* It is intended for people who have a complementary publication in a
traditional journal
* The code has to be included in Sage and be maintained there
* The board of editors consists of Sage developers

What I have in mind is different:

* Not tied to implementations in Sage, but implementations accessible
from the Sage Notebook
* It would *be* a traditional journal (except that it is only
available online) - no need for a separate written paper
* The code could be in python, C or assembler, etc., in Sage, in
Macaulay, Gap or Magma, etc. - the only requirement is it is
accessible from the Sage Notebook
* The board of editors would be distinguished mathematicians, not
necessarily Sage developers (eventually there would be lots of people
who are both)
* The code examples, algorithm implementations need not run forever
and a day in the latest Sage - they would be tied to a certain
historical binary, e.g. Gap version x.y.z and Sage version k.l.m

And I would be interested in:

* Teaching expositions
* Survey papers
* Implementations of new algorithms
* Theoretical papers (where some significant portion of it relies on
computations which need verification or where computational examples
are given to illustrate it)

Both JSage and SagePapers could exist. I personally am not interested
in JSage the way it is currently set up. It's an extremely valuable
thing to have, just not any use to me personally.

As for finding distinguished people, perhaps I am naive, but I have a
few names in mind. I guess I am using my definition of distinguished
here. I don't care for having old boys club members numbered 1 through
3 on the board. Editors should be committed to the principles of open
verification, recognising the historical role of computation in modern
mathematics, the use of technology in mathematics dissemination, the
importance of clear exposition and a general disposition towards
valuing mathematics which has broad academic application and appeal.
There *are* distinguished mathematicians who have recognised and stood
for those principles throughout their careers. They tend to win awards
for their exposition and/or research or have a large body of both
computational results and formal papers to their name. I'd name names,
but that would be jumping the gun.

The one advantage an online journal has over a paper journal is there
need not be a page limit on exposition. A clear introduction to the
subject matter of the paper, no matter how technical, could be added.
I see this as one of the distinct advantages of this medium, along
with the fact that computations can be verified by any reader and not
hidden away in a broken implementation on someone's hard drive which
is never verifiable.

Bill.

Rob Beezer

unread,
Apr 12, 2009, 2:24:24 AM4/12/09
to sage-devel
Hi Bill,

Well, I really was just joking around about the "distinguished"
bit. ;-)

You've got some great points. Maintaining version x.y.z of the
necessary software is a very interesting idea, though I'd guess maybe
at some point the lifetime of hardware might end up being a limiting
factor?

I agree 100% with your thoughts about the absence of page limits. No
dead-tree publisher would touch my open-source linear algebra textbook
which now runs to about 850-900 full-size pages, but is also available
as PDFs or web pages. But readers (students) are forever telling me
how much they appreciate having every last detail included if they
feel the need to read/study something that closely.

Where do I submit my teaching expositions? ;-)

Rob

Bill Hart

unread,
Apr 12, 2009, 2:46:00 AM4/12/09
to sage-devel
Hold that thought Rob. I'm not joking around. If you have been a
significant contributor to this sort of thing, you sound like exactly
the sort of person to have contributing to and working on such an
enterprise.

This is so easy to get going it isn't funny. We could simply start
with a website which collects Sage Notebook expositions and surveys in
one place. When there are sufficiently high quality articles, we could
start sending the best articles to be formally refereed, etc. and then
just let the whole thing grow organically from there.

I want to ask around and see what people think of the idea, and maybe
start a separate thread for it, and just see what feedback there is.
If the idea is generally received positively, I think I am just going
to do it. If I do decide to go ahead with it, would you be interested
in being involved?

Is there anyone else reading the thread who thinks they might be
interested? Any reasons why this is a really bad idea?

Bill.

Bill Hart

unread,
Apr 12, 2009, 3:00:03 AM4/12/09
to sage-devel


On 12 Apr, 07:24, Rob Beezer <goo...@beezer.cotse.net> wrote:

<SNIP>

>  Maintaining version x.y.z of the
> necessary software is a very interesting idea, though I'd guess maybe
> at some point the lifetime of hardware might end up being a limiting
> factor?

If you think about computer games, there is now a project which
emulates nearly all old computer systems and virtually any old game
can be made to run on it regardless of what games machine it was
written for!! People realise the importance of preserving the past. In
20 years time we'll be emulating the computers of today on our
hardware. So it may be easy to run old versions of Sage.

I say let the future take care of itself in that regard. All we need
to think about is preserving the data. Sage is so perfect for this
sort of thing, as it already includes old versions of major open
source mathematical systems. One version of Sage automatically gives
you version x.y.z of a whole lot of systems.

Bill.


William Stein

unread,
Apr 12, 2009, 3:45:36 AM4/12/09
to sage-...@googlegroups.com
On Sat, Apr 11, 2009 at 11:46 PM, Bill Hart <goodwi...@googlemail.com> wrote:
>
> Hold that thought Rob. I'm not joking around. If you have been a
> significant contributor to this sort of thing, you sound like exactly
> the sort of person to have contributing to and working on such an
> enterprise.
>
> This is so easy to get going it isn't funny. We could simply start
> with a website which collects Sage Notebook expositions and surveys in
> one place. When there are sufficiently high quality articles, we could
> start sending the best articles to be formally refereed, etc. and then
> just let the whole thing grow organically from there.
>
> I want to ask around and see what people think of the idea, and maybe
> start a separate thread for it, and just see what feedback there is.
> If the idea is generally received positively, I think I am just going
> to do it. If I do decide to go ahead with it, would you be interested
> in being involved?
>
> Is there anyone else reading the thread who thinks they might be
> interested? Any reasons why this is a really bad idea?
>

I'm on board, and I'm fine with using jsage.org which I own (but don't
use yet) for this.

-- William

William Stein

unread,
Apr 12, 2009, 4:26:21 AM4/12/09
to sage-...@googlegroups.com

I don't think anybody is really interested in jsage the way it is
currently set up. It hasn't gone anywhere. I like your idea since
it seems more viable.

William

Bill Hart

unread,
Apr 12, 2009, 4:37:36 AM4/12/09
to sage-devel
Excellent! I had hoped you would like it. It would probably be
pointless if you weren't on board.

Bill.

On 12 Apr, 09:26, William Stein <wst...@gmail.com> wrote:

Rob Beezer

unread,
Apr 12, 2009, 11:48:56 AM4/12/09
to sage-devel
Hi Bill,

> If I do decide to go ahead with it, would you be interested
> in being involved?

Definitely. Especially if it grows organically.

> nearly all old computer systems and virtually any old game
> can be made to run on it regardless of what games machine it was
> written for!!

Yes, I'd had this thought as well. And you are right about Sage being
a place where many different packages all work in coordination, so
"saving" major releases of Sage would be a great way to save (in a
usable fashion) a variety of tools. Sage as a living historical math
software archive? Another argument for wrapping it all up into one
big tarball without relying on external dependencies.

I won't have good internet access for a few days, so don't interpret
silence as disinterest.

Rob

gerhard

unread,
Apr 13, 2009, 6:55:09 AM4/13/09
to sage-devel
just to get back to the original question:
did 'inserting a usepackage{}' command ever get resolved?
It would be nice to be able to do this from the worksheet,
rather than modifying sage code.

I also wonder if packages like tikz could be made to work?

-gerhard

William Stein

unread,
Apr 13, 2009, 9:51:15 AM4/13/09
to sage-...@googlegroups.com
On Mon, Apr 13, 2009 at 3:55 AM, gerhard <ge0...@yahoo.de> wrote:
>
> just to get back to the original question:
> did 'inserting a usepackage{}' command ever get resolved?

No. Somebody should at least create a trac ticket.

> It would be nice to be able to do this from the worksheet,
> rather than modifying sage code.

Yep.

>
> I also wonder if packages like tikz could be made to work?

Certainly if the above feature were added.

>
> -gerhard
> >
>



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

Jason Grout

unread,
Apr 13, 2009, 10:29:09 AM4/13/09
to sage-...@googlegroups.com
Bill Hart wrote:
> Hold that thought Rob. I'm not joking around. If you have been a
> significant contributor to this sort of thing, you sound like exactly
> the sort of person to have contributing to and working on such an
> enterprise.
>
> This is so easy to get going it isn't funny. We could simply start
> with a website which collects Sage Notebook expositions and surveys in
> one place. When there are sufficiently high quality articles, we could
> start sending the best articles to be formally refereed, etc. and then
> just let the whole thing grow organically from there.
>
> I want to ask around and see what people think of the idea, and maybe
> start a separate thread for it, and just see what feedback there is.
> If the idea is generally received positively, I think I am just going
> to do it. If I do decide to go ahead with it, would you be interested
> in being involved?


I will be starting a tenure-track position at a private liberal arts
college this fall that takes the "broad view" of research. They told me
that the main criteria for judging research is peer-review. I think
having a journal like this (when it grows to the peer-reviewed stage)
will help me greatly in being able to spend time on Sage (i.e., there is
no question of academic credit for it). So as another person in your
situation (i.e., wanting to get academic credit for Sage work), I
wholeheartedly applaud this!

I'm undoubtedly too junior to count as one of your "distinguished
mathematician" editors, but at least count me on board as a referee!

Somewhere else, someone mentioned paid subscriptions. I would really,
really encourage the articles to be open-access (i.e., no subscription
charges for any electronic material). We could produce a paper version
for money, sort of like the Electronic Journal of Linear Algebra, which
is a respected linear algebra journal, or the Electronic Journal of
Combinatorics, if we needed to raise money, but my guess is that it
wouldn't raise very much anyway.

Jason


--
Jason Grout

William Stein

unread,
Apr 13, 2009, 11:01:21 AM4/13/09
to sage-...@googlegroups.com

+1 -- I have to add that I will not be involved personally unless the
articles are open access -- no subscription charges at all for any
electronic material. There are very very few journals like this, but
any journal I'm involved with will be. I've already had several
journals request that I serve on their editorial board and turned them
down because they were not open access.

-- William

Dan Drake

unread,
Apr 15, 2009, 2:31:01 AM4/15/09
to sage-...@googlegroups.com
On Sat, 11 Apr 2009 at 11:46PM -0700, Bill Hart wrote:
> Is there anyone else reading the thread who thinks they might be
> interested? Any reasons why this is a really bad idea?

I'm a bit late to this party, but I wanted to say that I'm definitely
interested in this idea. It reminds me of a Sage-specific version of the
old Journal of Online Mathematics (http://joma.org), which got folded
into the MAA's general online stuff.

Dan

--
--- Dan Drake <dr...@kaist.edu>
----- KAIST Department of Mathematical Sciences
------- http://mathsci.kaist.ac.kr/~drake

signature.asc

mabshoff

unread,
Apr 15, 2009, 2:56:09 AM4/15/09
to sage-devel


On Apr 13, 6:51 am, William Stein <wst...@gmail.com> wrote:
> On Mon, Apr 13, 2009 at 3:55 AM, gerhard <ge01...@yahoo.de> wrote:
>
> > just to get back to the original question:
> > did 'inserting a usepackage{}' command ever get resolved?
>
> No.  Somebody should at least create a trac ticket.

I don't think anybody did, so here it is: http://trac.sagemath.org/sage_trac/ticket/5791

Cheers,

Michael

John H Palmieri

unread,
Apr 24, 2009, 4:51:02 PM4/24/09
to sage-devel
I have a patch for this now; please try it out.

John
Reply all
Reply to author
Forward
0 new messages