From: sergerar@isis.imag.fr (Francis Sergeraert)
Subject: Calculation of higher homotopy groups.
Newsgroups: sci.math.research
Date: Mon, 24 Apr 1995 08:15:43 GMT
I must add to the recent discussion about calculation of homotopy
groups various interesting results recently obtained.
Rolf Scho"n published (Memoirs AMS, #451, 1991) a general solution
of computability problems in (simply connected) algebraic topology.
His solution is a tricky, well organized, systematization of Ed
Brown's work on homotopy groups. Rolf Scho"n himself declares not to
be interested by concrete implementation. It seems extremely hard: you
need know advanced functional programming to implement complicated
inductive systems of chain complexes, simplicial sets and so on. This
essential difficulty led some referees not to hesitate to declare
Scho"n's work incomprehensible, but in fact it is right.
I also published a little later a general solution of the same
problem (Adv. in Math., 1994, vol. 104, pp 1-29). It is much closer to
traditional algebraic topology, certainly the optimal solution from
this point of view, but needs still much more sophisticated functional
programming techniques. The situation with the referees is then quite
amusing. If they have some programming knowledge, they are unable to
understand how it could be possible to actually program so complex
algorithms, even from a theoretical point of view. Considering
standard current programming knowledge, this is normal. A recent
referreing work led by B. Thurston gave such a result. But for the
people not at all aware of actual programming, the proposed solution
is so close to traditional algebraic topology that they think there is
no theorem at all. The main examples of this sort of comments are due
to Jean-Pierre Serre and Peter May.
To overcome both obstacles, I undertook a first actual programming
work based on my ideas. It led to the EAT-program (Effective Algebraic
Topology) available under anonymous ftp at imag.fr:~ftp/pub/EAT. You
can find there a program computing homology groups of iterated loop
spaces. Because of unavoidable complexity (cf. Hovey's posting
above), please be reasonable about what is possible with such a
program. Nevertheless, this program succeeded to compute some so far
unreachable homology groups. Typical example :
H_* (\Omega (\Omega S^3 \cup_2 D^3)) = ?
where D^3 is glued to Omega S^3 by a degree two map S^2 -> \Omega~S^3.
Our program computed these groups up to *=7. Try to do it by
hand. From several points of view our program is quite primitive and
could be significanly improved. A student of mine recently wrote down
the entire organigram allowing one to compute higher homotopy groups
according to this method, of course in the simply connected
case. Please E-mail for preprints.
A third quite interesting solution of the same problem is due to
Smirnov and Justin Smith, around the general operad techniques,
originally due to Peter May. An operad structure installed on a chain
complex is a relatively complicated structure which in some cases
(symmetric group operads) contains a homotopy type. You get then again
a general solution of the computability problem in simply connected
algebraic topology which this time does not need functional
programming, but which is extremely complicated and not yet actually
implemented. See Memoirs AMS #524, 1994, for Smith solution and other
references.
The actual relationship between the three solutions is a major
problem.
==============================================================================
From: sergerar@isis.imag.fr (Francis Sergeraert)
Newsgroups: sci.math.research
Subject: Re: Calculation of higher homotopy groups.
Date: 2 May 1995 08:32:52 GMT
In article <3nii3o$pt0@lyra.csx.cam.ac.uk>, John Baez writes:
|> I'm curious about what programming language you used to write
|> your own program. I was just last week in Bangor, Wales,
|> where some people working with Ronnie Brown are writing programs
|> in Axiom (a language apparently developed, or half-developed,
|> at IBM, and then abandoned) to compute homotopy groups using
|> Brown's crossed complex ideas. They are not trying to handle
|> *general* homotopy types (or general simply-connected ones), but
|> they *are* taking advantage of Axiom's ability to handle abstract
|> data types like simplicial sets, crossed complexes, etc..
In our case we _must_ use Common Lisp which in fact is (or at least
was) the "Assembler Language" under Axiom. Because the final
calculations are frequently rather lengthy (several machine days) the
concrete time computing efficiency is an important question. Using a
general purpose intermediary language like Axiom is catastrophic from
this point of view. The data handled by our programs are extremely
complicated and we must be very careful about their implementation and
handling if a computing time of two days is preferred to two years.
Furthermore Axiom is an old-fashioned (Pascal-like style) language :
I've seen the first demonstration twenty years ago (it was then called
Scratchpad). The ANSI definition of Common Lisp was finished off last
year ; of course Axiom will never have one (?). The assembler-like
style of Common-Lisp programs could frighten the developper but in
fact Common Lisp allows him to easily define his own high-level
language. So that we can directly handle with our program chain
complexes, morphisms between them, simplicial sets, cobar
construction, loop space construction and so on. The implementation
of the so-called homological perturbation lemma (more powerful than
spectral sequences) is so short (25 lines including four type
declaration lines) in our implementation that a recent anonymous (but
easily identifiable) referee did not want to believe it is possible to
compile it; yes it is.
From a programming point of view, the nice challenge is to use CLOS
(Common Lisp Object System), a part of the ANSI definition of Common
Lisp, to implement our programs. It is quite easy to rewrite Axiom in
CLOS (is it done ?), precisely to define Axiom as an intermediary
language betwwen CLOS and the user. Normally the _language_ Axiom
should not exist ; the good solution is to have a package of
CLOS-written Lisp functions implementing Axiom. In this way you could
furthermore use the much more precise and efficient typing mechanism
of Common Lisp, the so elegant and powerful macro-generation process
of Common Lisp, and so on. The language nature of Axiom is a severe
handicap.
==============================================================================
Newsgroup: sci.math.symbolic
From: Francis Sergeraert
Subject: Machine computations of Homotopy Groups.
Date: Tue Dec 29 10:54:10 CST 1998
The Kenzo computer program is now finished. The aim was mainly to
implement our effective versions of the Serre and Eilenberg-Moore
spectral sequences. This allows us to construct the first stages of
the Postnikov and Whitehead towers, and to compute the first homotopy
groups of an *arbitrary* simplicial set with effective homology.
More explanations at:
http://www-fourier.ujf-grenoble.fr/~sergerar/Kenzo
==============================================================================
[See also
Rolf Schon, "Effective Algebraic Topology", in Memoirs of the AMS, 1991 --djr]