Yacop/Sage integration

Yacop stands for "Yet Another Cohomology Program". It's a package of routines that allow to compute and investigate Steenrod algebra resolutions. The following functions are currently available:

Not everything has been thoroughly tested, though. Here's a little TO-DO list

Installation instructions

Download the following Sage packages & patches

Install TclTk and recompile python

This is done via the commands

[Python recompilation is only required because Tcl/Tk was not installed on the official sage-build machine at build time. This can probably be fixed in the future.]

[Note that on linux, one needs the xlib library. On Debian Lenny this is provided by the package libx11-dev.]

To check whether Tcl/Tk has been succesfully installed, you should try the following commands in Sage:

[email protected]:~/sgnew/sage-3.4-linux-openSUSE_11.1_x86_64-x86_64-Linux> sage
----------------------------------------------------------------------
| Sage Version 3.4, Release Date: 2009-03-11                         |
| Type notebook() for the GUI, and license() for information.        |
----------------------------------------------------------------------
sage: import Tkinter
sage: rt = Tkinter.Tcl()
sage: rt.eval("info patchlevel")
'8.5.7'

Install Yacop

This is done with

Yacop has been succesfully installed if the following works:

[email protected]:~/sgnew/sage-3.4-linux-openSUSE_11.1_x86_64-x86_64-Linux> sage
----------------------------------------------------------------------
| Sage Version 3.4, Release Date: 2009-03-11                         |
| Type notebook() for the GUI, and license() for information.        |
----------------------------------------------------------------------
sage: import Tkinter
sage: Tkinter.Tcl().eval("package require yacop::sage")
'1.0'

Apply the Sage patch

Now point your browser at the file devel/sage/doc/output/html/en/reference/algebras.html from your installation to see the documentation.

Here's a little session that shows Yacop in action:

sage: C = SteenrodAlgebraGroundFieldResolution(SteenrodAlgebra(2),filename=":memory:")
sage: time C.extend(s=30,n=50)
CPU times: user 10.92 s, sys: 0.18 s, total: 11.10 s
Wall time: 11.16 s
sage: C.generators(n=45)
{g(4,45), g(9,45), g(16,45), g(3,45), g(7,45), g(12,45), g(17,45), g(6,45), g(15,45), g(5,45), g(5,45,1)}

And finally, here's a little screenshot of the graphical user interface: http://nullhomotopie.de/yacopgui.png

For comments, questions and everything else contact me: [email protected]

Yacop (last edited 2009-05-17 00:11:29 by BenjaminAntieau)