Skip to content
/ kenzo Public
forked from gheber/kenzo

A repackaged version of the Kenzo program by Francis Sergeraert and collaborators.

Notifications You must be signed in to change notification settings

dimpase/kenzo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to Kenzo

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. 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 SBCL
  3. Installation via the Quicklisp library manager

Items 1 and 2 are well underway. Item 3 is on hold, because there's apparently no license attached to Kenzo. I have made several attempts to contact the author(s), but never gotten a response.

!!! WARNING !!!

This is work in progress. The entire code now compiles fine w/ SBCL, but that's just the first step. There are plenty of examples in publications and scattered throughout the source. Many work (most?), some don't. Let's get to work! ...

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

I'm a big fan and supporter of Quicklisp, and use it for all my local projects. Assuming you've installed Quicklisp in C:\home\quicklisp or /home/joeuser/quicklisp, your local projects directory will be C:\home\quicklisp\local-projects or /home/joeuser/quicklisp/local-projects.

Making Kenzo quickload-able is a piece of cake:

  1. Clone the Kenzo repository into your local projects directory, i.e., C:\home\quicklisp\local-projects\kenzo or /home/joeuser/quicklisp/local-projects/kenzo.
  2. Tell Quicklisp about Kenzo by adding the following two lines to the system-index.txt file in the local projects directory:
  kenzo\kenzo.asd
  kenzo\kenzo-test.asd

Verify that you're good to go by loading and running the Kenzo test suite. For example, in an sbcl prompt (I've tested this with SBCL 1.2.12 on Debian and Windows) 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)
* (in-package :fiveam)

#<PACKAGE "IT.BESE.FIVEAM">
* (run!)

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

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

About

A repackaged version of the Kenzo program by Francis Sergeraert and collaborators.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Common Lisp 100.0%