Go to file
2016-02-13 10:55:22 -06:00
doc Added license information. 2015-07-02 13:29:16 -05:00
examples First draft of Chapter 1 as Jupyter notebook. 2016-02-12 21:33:35 -05:00
src Added Emacs mode line. 2016-01-10 18:32:20 -05:00
test Test failure for cs-left-hmeq-hat 2016-02-13 10:32:33 -06:00
.gitignore more cleanup 2015-07-01 23:01:28 +01:00
.travis.yml Added CCL to the list of compilers 2016-02-13 10:49:05 -06:00
COPYING Added license information. 2015-07-02 13:29:16 -05:00
Dockerfile Build Docker image with 'docker build -t image_name .' 2015-11-29 21:31:54 -06:00
exports.lisp Documentation updates. 2015-08-06 07:04:43 -05:00
kenzo-test.asd Formatting updates. 2015-11-26 21:10:33 -06:00
kenzo.asd Added a simple abbreviation resolver. 2015-07-12 13:46:15 -05:00
package.lisp Fixed invalid first character. 2015-11-08 19:11:15 -06:00
README.md Update README.md 2016-02-13 10:55:22 -06:00
run-kenzo-test.lisp Another batch of CL-SPACE-EFHM tests extracted. 2015-07-20 20:13:04 -05:00

Welcome to Kenzo

GPLv3 Logo [Travis Status Quicklisp badge

According to the title of its handbook, Kenzo is a "Symbolic Software for Effective Homology Computation" and its main audience might be students and researchers in algebraic topology. Have a look at the overview to get a sense for what's yours to discover.

It is also a remarkable piece of LISP code, albeit in need of a little touch-up. This repository contains a repackaged version of the Kenzo program by Francis Sergeraert and collaborators. The original version of the program can be found at http://www-fourier.ujf-grenoble.fr/~sergerar/Kenzo/ . This version aims to update its infrastructure by providing the following:

  1. A simple regression test suite based on FiveAM
  2. Support for the great freely available Lisp compilers out there, including CCL, [ECL] (https://common-lisp.net/project/ecl/), SBCL, etc.
  3. Installation via the Quicklisp library manager
  4. Updated documentation and examples runnable from cl-jupyter

This work is well underway, but there are several outstanding issues.

Getting up and running

Here are two simple methods to get going: plain ASDF and Quicklisp.

Plain ASDF

To load Kenzo as provided by this repo, make sure ASDF knowns where to find the source, e.g. by creating a link to this directory at

  ~/.local/share/common-lisp/source/

Then in your Lisp (e.g., in ECL) type

(require :asdf)
(require :kenzo)

Quicklisp

Assuming you have Quicklisp, there isn't really much to say here:

* (ql:quickload :kenzo)
To load "kenzo":
  Install 1 Quicklisp release:
    kenzo
; Fetching #<URL "http://beta.quicklisp.org/archive/kenzo/2015-08-04/kenzo-20150804-git.tgz">
; 1835.57KB
==================================================
1,879,625 bytes in 1.48 seconds (1236.91KB/sec)
; Loading "kenzo"
[package cat].....................................
..................................................
..............................
(:KENZO)
*

Verify that you're good to go by loading and running the Kenzo regression test suite. For example, in an SBCL prompt you should see something like this:

* (ql:quickload :kenzo-test)
To load "kenzo-test":
  Load 1 ASDF system:
    kenzo-test
; Loading "kenzo-test"
.
(:KENZO-TEST)
* (fiveam:run!)

Running test suite KENZO
 Running test F-CMPR ..........
 Running test L-CMPR ..........
 Running test S-CMPR .....
 ...
---done---
 Did 786 checks.
    Pass: 786 (100%)
    Skip: 0 ( 0%)
    Fail: 0 ( 0%)

Similarly, you'd load Kenzo via (ql:quickload :kenzo).