Sage accepted for GSoC 2014

184 views
Skip to first unread message

Harald Schilly

unread,
Feb 24, 2014, 2:05:17 PM2/24/14
to sage-...@googlegroups.com
Sage has been accepted for the Google Summer of Code 2014 programme.

Harald

mmarco

unread,
Feb 24, 2014, 2:06:27 PM2/24/14
to sage-...@googlegroups.com
Good to hear. Do we already know how many students will be assigned?

Harald Schilly

unread,
Feb 24, 2014, 2:13:56 PM2/24/14
to sage-...@googlegroups.com
No. First we need the proposals and we evaluate and rank them. This
means, everyone discusses them, gives them a number from 0 to 10, and
we set their state to "ok" (or however it is called) or invalid.
Then I am, in my role as administrator, tell google melange two
numbers: minimum number of how many projects we really want, and a
maximum number. After that, we'll get green lights projects sorted by
rank and if necessary, there are additional rounds of "deduplication"
and so on.

harald


On Mon, Feb 24, 2014 at 8:06 PM, mmarco <mma...@unizar.es> wrote:
> Good to hear. Do we already know how many students will be assigned?
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "sage-devel" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/sage-devel/XLGtj7Qwn4c/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> sage-devel+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/groups/opt_out.

William Stein

unread,
Feb 24, 2014, 4:48:54 PM2/24/14
to sage-devel
Somebody needs to update this: http://wiki.sagemath.org/GSoC
> 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+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/groups/opt_out.



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

Amit Jamadagni

unread,
Feb 24, 2014, 5:46:42 PM2/24/14
to sage-...@googlegroups.com
Hello, 
        I am a student and I would like to participate in SoC. I have already posted about my interest on working about the implementation of Knot Theory. Is it necessary that the message be forwarded to mentors or any other mailing list other than this one ??  Thanks.

Vincent Delecroix

unread,
Feb 25, 2014, 2:35:39 AM2/25/14
to sage-...@googlegroups.com
Hello Amit,

> I am a student and I would like to participate in SoC. I have
> already posted about my interest on working about the implementation of
> Knot Theory. Is it necessary that the message be forwarded to mentors or
> any other mailing list other than this one ?? Thanks.

There are already plenty of math software for knot theory. One very
active is SnapPy [1] but you can find several lists of softwares on
the web such as [2]. SnapPy is licensed GPLv2+ so it should be
compatible with Sage. SnapPy is already packaged for Sage [3] but the
integration could be smoother (in particular the package might be
available from sagemath.org website).
If you are interested in knot theory, one option is to contact authors
of SnapPy (Marc Culler and Nathan Dunfield from Chicago) and see if
they can mentor you for a Sage related project. You can mention my
name to them and if needed I could also possibly do part of the
mentoring.
In any case do not start from scratch implementing knots in Sage. It
would be a waste of time.

All best,
Vincent Delecroix (from France)

[1] http://www.math.uic.edu/t3m/SnapPy/
[2] http://legacy.earlham.edu/~peters/knotlink.htm#software
[3] http://www.math.uic.edu/t3m/SnapPy/installing.html#sage

Amit Jamadagni

unread,
Feb 25, 2014, 3:18:13 AM2/25/14
to sage-...@googlegroups.com
Hello Vincent,
           Thanks for the reply. I wanted to work on the implementation as it was mentioned in the ideas page(https://docs.google.com/document/d/15v7lXZR1U4H2pT21d2fyPduYGb74JAFjkXJ6CWYmYfw/pub).  I have introduced myself and posted about the same on the sage-gsoc google group. I wanted to know whether I need to forward the discussion to the possible mentors mentioned on the ideas page or whether it was sufficient just to post on that group. Coming back to the implementation I will look through SnapPy and its integration with Sage and get back in touch with you as soon as possible. Thanks for all the help and guidance.

Amit. 


Volker Braun

unread,
Feb 25, 2014, 5:36:29 AM2/25/14
to sage-...@googlegroups.com
We certainly could to use some of the SnapPy parts, like look at the Tcl/Tk link editor. But thats not going to integrate into the notebook. Also, link plots could look imho better. Apart from the GUI side, we need something that we can interface with more research-y codes written in GAP or Singular which SnapPy can't do.

Amit Jamadagni

unread,
Feb 25, 2014, 5:57:12 AM2/25/14
to sage-...@googlegroups.com
Hello Volker,
               Thanks for the reply. As I have posted in the recent threads, I would like to discuss this project and have created a thread for the same on the sage-gsoc group. I hope you've had a look at it (https://groups.google.com/forum/#!topic/sage-gsoc/tb2O7zEoUx0) , it would be really great if you could comment on it as it would provide me with an idea of the implementation that can be done. Thanks. 


--

mmarco

unread,
Feb 25, 2014, 6:11:58 AM2/25/14
to sage-...@googlegroups.com
I would be happy to mentor a student in a knot theory related project in sage. I had mainly two ideas:

First idea is to write a class for knots/links. This class should be able to translate between the different possible representations of links (Gauss codes, 3d curves, braid closure...) and compute some of their invariants (the usual polynomials, Seifert forms, fundamental groups...). It should also produce pictures of knot diagrams and 3d representations of the knot/link. Some (or most) of this features can be either written from scratch, or just wrap external code (like the mentioned SnapPy).

Another idea, closely related to the previous one, is to write a javascript editor for knots and links, following what knotplot [1] does. This can be part of the same project or a separated one, if someone else writes the backend (although i think that it should be possible to write the editor and a simple backend in a single gsoc project, but that can be discussed). An important part of this editor would be the algorithm for dynamically relaxing the link. In particular, such an algorithm is explained in chapter 7 of Scharein's thesis [1].

kcrisman

unread,
Feb 25, 2014, 8:46:03 AM2/25/14
to sage-...@googlegroups.com


[2] http://legacy.earlham.edu/~peters/knotlink.htm#software


"June 2, 2004. Unfortunately I no longer have time to update Knots on the Web. I know it conntains many dead links and omits many good, new sites. "

And my understanding is that the Knot Atlas http://katlas.math.toronto.edu/wiki/Main_Page and the Mathematica package creating it is the state of the art.  Does SnapPy now really have all that combinatorial stuff?  I think that at the very least a good wrapper allowing for use of *any* robust backend for knots would be a great contribution to Sage.  mmarco seems to have a good sense of what would actually be needed to do this.  It's definitely a significant hole in Sage. - one might even wonder whether the authors of the Mma package would be willing to license their package in such a way that the algorithms for computing various invariants etc. could be used/{P,C}ythonized in Sage, if some people know them http://katlas.math.toronto.edu/wiki/Acknowledgement

Amit Jamadagni

unread,
Feb 25, 2014, 4:38:20 PM2/25/14
to sage-...@googlegroups.com
I have been going through the implementation Knot Atlas, as per my understanding they have stored the knots in a table and have inputted it to get various results, I would like to know whether we will be using tables to input or any other way to input. I have seen through Vogel's algorithm  which takes in the oriented gauss code and ends up giving out the braid word [1] from which we can construct the knot(as it is closed braid) and from the braid word we can calculate the Alexander polynomial from the Burau's representation(which is currently implemented in braid in Sage) (I have heard is not true for strings greater than 5). I have been reading through [2] which mentions how to calculate Seifert matrix from a braid representation which can be again used to represent knots. I have been searching for algorithms which would relate the Seifert matrix and various invariants. It would be really helpful if I could get more reference to the algorithms that could be implemented. I have just started the implementation details mentioned in [3]. 

--

Dima Pasechnik

unread,
Feb 25, 2014, 5:17:56 PM2/25/14
to sage-...@googlegroups.com
On 2014-02-25, mmarco <mma...@unizar.es> wrote:
> I would be happy to mentor a student in a knot theory related project in
> sage. I had mainly two ideas:
>
> First idea is to write a class for knots/links. This class should be able
> to translate between the different possible representations of links (Gauss
> codes, 3d curves, braid closure...) and compute some of their invariants
> (the usual polynomials, Seifert forms, fundamental groups...). It should
> also produce pictures of knot diagrams and 3d representations of the
> knot/link. Some (or most) of this features can be either written from
> scratch, or just wrap external code (like the mentioned SnapPy).

perhaps one can try to incorporate parts of knotscape into Sage.
Well, it's kind of old, but still works:
https://github.com/dimpase/knotscap
(incidentally, a colleague wanted to use knotscape on a modern Linux
system, so I did these small fixes for him)

mmarco

unread,
Feb 26, 2014, 8:29:03 AM2/26/14
to sage-...@googlegroups.com
Nice work of documentation. Here is some further documentation that could be interesting:

About methods to compute alexander polynomials, the classical result is Theorem 3.11 from Birman's book (note that this is basically what you said, since the burau representation is deeply related to the Fox derivatives of the relations given by the action of the braid on the free group):
This is an easy introduction to three different methods to compute Alexander Polynomials:

There is plenty of documentation for other invariants too. 

Note also that there are plenty of external software that can do computations with knots and links. It would also be interesting to study the possibility of wrapping them instead of rewriting the methods. It is true that some of them are old and no longer mantained, but it might be worth taking a look nevertheless.
Some links for this: 

Also it could be possible to use some method based on Skein relations, but i am not sure how good it would work.

mmarco

unread,
Feb 26, 2014, 8:32:24 AM2/26/14
to sage-...@googlegroups.com
Thanks for the link. I have tried to compile it, but got this error message:

/usr/bin/ld: cannot open output file ./bin/knotfind: No such file or directory
collect2: error: ld returned 1 exit status
make: *** [knotfind] Error 1

mmarco

unread,
Feb 26, 2014, 8:38:33 AM2/26/14
to sage-...@googlegroups.com
Of course, i forgot to mention the already mentioned knotscape, snappy and knotplot.

Dima Pasechnik

unread,
Feb 26, 2014, 11:12:42 AM2/26/14
to sage-...@googlegroups.com
On 2014-02-26, mmarco <mma...@unizar.es> wrote:
> Thanks for the link. I have tried to compile it, but got this error message:
>
> /usr/bin/ld: cannot open output file ./bin/knotfind: No such file or
> directory
> collect2: error: ld returned 1 exit status
> make: *** [knotfind] Error 1
>
I see. Make an empty directory bin/ in ./ before
doing "make all".

Then it will work.
On platforms I checked bin/ is created on the fly...
I'll fix this in the repo.

>
> El martes, 25 de febrero de 2014 23:17:56 UTC+1, Dima Pasechnik escribió:
>>

mmarco

unread,
Feb 26, 2014, 2:23:29 PM2/26/14
to sage-...@googlegroups.com
In my case, i needed to also change the knostcape script to point to the actual directory, instead of a directory of /tmp

Dima Pasechnik

unread,
Feb 26, 2014, 4:49:25 PM2/26/14
to sage-...@googlegroups.com
On 2014-02-26, mmarco <mma...@unizar.es> wrote:
> In my case, i needed to also change the knostcape script to point to the
> actual directory, instead of a directory of /tmp

sure.
>

Reply all
Reply to author
Forward
0 new messages