Differences between revisions 8 and 9
Revision 8 as of 2022-09-19 05:24:03
Size: 3793
Editor: cnassau
Comment:
Revision 9 as of 2022-09-19 05:36:00
Size: 0
Editor: mkoeppe
Comment: Delete outdated page as discussed in https://github.com/cnassau/yacop-sage/issues/1
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
('''note:''' the following instructions refer to the first preview release of the Yacop package for the Sage days #10 event in 2009 in Seattle. for current information see https://github.com/cnassau/yacop-sage)

----

= 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:

    * Computation of a minimal resolution
    * Graphical user interface (includes creation of postscript charts and SQL-console)
    * Ext of small modules
    * Chain maps (includes computation of P^0 and change of algebra maps)

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

    * Framework for modules is missing
    * Regression test suite needs to be created

== Installation instructions ==

=== Download the following Sage packages & patches ===

    * tcltk8.5.7 from http://nullhomotopie.de/tcltk8.5.7.spkg
    * yacop1.0 from http://nullhomotopie.de/yacop1.0.spkg
    * patch from http://nullhomotopie.de/11803.patch

=== Install TclTk and recompile python ===

This is done via the commands

    * `sage -f -s tcltk8.5.7.spkg`
    * `sage -f -s python-2.5.2.p9`

[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:

{{{
cn@zonk:~/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

    * `sage -f -s yacop1.0.spkg`

Yacop has been succesfully installed if the following works:
{{{
cn@zonk:~/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 ===

   * In sage run `hg_sage.patch("11803.patch")`
   * Fix a strange problem with `quaternion_order` via `touch devel/sage-main/sage/algebras/quaternion_order.py`
   * Re-build sage library with `sage -b`
   * Generate documentation with `sage -docbuild reference html`

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]