Download as pdf or txt
Download as pdf or txt
You are on page 1of 68

An Invitation to Computational

Homotopy 1st Edition Graham Ellis


Visit to download the full and correct content document:
https://ebookmass.com/product/an-invitation-to-computational-homotopy-1st-edition-g
raham-ellis/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

An Invitation to Feminist Ethics 2nd Edition Hilde


Lindemann

https://ebookmass.com/product/an-invitation-to-feminist-
ethics-2nd-edition-hilde-lindemann/

Imaginary Worlds: Invitation to an Argument Wayne Fife

https://ebookmass.com/product/imaginary-worlds-invitation-to-an-
argument-wayne-fife/

An Invitation Jasmine Hill

https://ebookmass.com/product/an-invitation-jasmine-hill/

(eBook PDF) An Invitation to Health 18th Edition by


Dianne Hales

https://ebookmass.com/product/ebook-pdf-an-invitation-to-
health-18th-edition-by-dianne-hales/
An Introduction to Medicinal Chemistry 7th Edition
Graham L. Patrick

https://ebookmass.com/product/an-introduction-to-medicinal-
chemistry-7th-edition-graham-l-patrick/

Discourse Markers: An Enunciative Approach 1st Edition


Graham Ranger

https://ebookmass.com/product/discourse-markers-an-enunciative-
approach-1st-edition-graham-ranger/

Computational Network Science An Algorithmic Approach


1st Edition Hexmoor

https://ebookmass.com/product/computational-network-science-an-
algorithmic-approach-1st-edition-hexmoor/

Essentials of Meteorology: An Invitation to the


Atmosphere 8th Edition, (Ebook PDF)

https://ebookmass.com/product/essentials-of-meteorology-an-
invitation-to-the-atmosphere-8th-edition-ebook-pdf/

(eBook PDF) An Invitation to Health: Taking Charge of


Your Health 19th Edition

https://ebookmass.com/product/ebook-pdf-an-invitation-to-health-
taking-charge-of-your-health-19th-edition/
AN INVITATION TO COMPUTATIONAL HOMOTOPY
An Invitation to
Computational Homotopy

graham ellis

1
3
Great Clarendon Street, Oxford, OX2 6DP,
United Kingdom
Oxford University Press is a department of the University of Oxford.
It furthers the University’s objective of excellence in research, scholarship,
and education by publishing worldwide. Oxford is a registered trade mark of
Oxford University Press in the UK and in certain other countries
© Graham Ellis 2019
The moral rights of the author have been asserted
First Edition published in 2019
Impression: 1
All rights reserved. No part of this publication may be reproduced, stored in
a retrieval system, or transmitted, in any form or by any means, without the
prior permission in writing of Oxford University Press, or as expressly permitted
by law, by licence or under terms agreed with the appropriate reprographics
rights organization. Enquiries concerning reproduction outside the scope of the
above should be sent to the Rights Department, Oxford University Press, at the
address above
You must not circulate this work in any other form
and you must impose this same condition on any acquirer
Published in the United States of America by Oxford University Press
198 Madison Avenue, New York, NY 10016, United States of America
British Library Cataloguing in Publication Data
Data available
Library of Congress Control Number: 2019937515
ISBN 978–0–19–883297–3 (hbk.)
ISBN 978–0–19–883298–0 (pbk.)
DOI: 10.1093/oso/9780198832973.001.0001
Printed and bound by
CPI Group (UK) Ltd, Croydon, CR0 4YY
Links to third party websites are provided by Oxford in good faith and
for information only. Oxford disclaims any responsibility for the materials
contained in any third party website referenced in this work.
To Maren, Eileen, Aled and Jan
Preface

T his book has been written as an introduction to elementary algebraic topology for
students with an interest in computers and computer programming. Its aim is to
illustrate how the basics of the subject can be implemented on a computer. The transition
from basic theory to practical computation raises a range of non-trivial algorithmic issues
and it is hoped that the treatment of these will also appeal to readers already familiar
with basic theory who are interested in developing computational aspects. The book
covers a subset of standard introductory material on fundamental groups, covering spaces,
homology, cohomology and classifying spaces as well as some less standard material on
crossed modules, homotopy 2-types and explicit resolutions for an eclectic selection of
discrete groups. It attempts to cover these topics in a way that hints at potential applica-
tions of topology in areas of computer science and engineering outside the usual territory
of pure mathematics, and also in a way that demonstrates how computers can be used
to perform explicit calculations within the domain of pure algebraic topology itself. The
initial chapters include examples from data mining, biology and digital image analysis,
while the later chapters cover a range of computational examples on the cohomology of
classifying spaces that are likely beyond the reach of a purely paper-and-pen approach to
the subject. The applied examples in the initial chapters use only low-dimensional and
mainly abelian topological tools. Our applications of higher dimensional and less abelian
computational methods are currently confined to pure mathematical calculations. The
approach taken to computational homotopy is very much based on J.H.C. Whitehead’s
theory of combinatorial homotopy [289–291] in which he introduced the fundamental
notions of CW-space, simple homotopy equivalence and crossed module. The book
should serve as a self-contained informal introduction to these topics and their computer
implementation. It is written in a style that tries to lead as quickly as possible to a range
of potentially useful machine computations. It does not aim to provide an encyclopaedic
treatment of any topics in computational topology. Nor does it aspire to reflect the range
of deep theoretical principles that underly and contribute so much to algebraic topology.
Rather, it adheres to the very modest goal of describing how one author, and his co-
workers and students, have strived to make topological computations. It is hoped that
the description will aid others wishing to participate in the growing field of applied and
computational algebraic topology.
The book is intended to be accessible to graduate students who have taken standard
undergraduate modules in algebra (linear algebra, groups, rings and fields) and point-set
viii | Preface

topology. It can be used in various ways. Chapters 1 and 2 can form the basis of a one-
semester introduction to the fundamental group, homology and cohomology of sim-
plicial, cubical and CW-spaces. This introduction could cover computational examples
on fundamental groups of 3-dimensional spaces arising as the complement of knotted
proteins, along with computational investigations of point cloud data using persistent
homology and cohomology cup products. Alternatively, Chapter 3 together with a selec-
tion of material from Chapters 4–6 can form the basis of a one-semester module on group
cohomology for students already familiar with basic algebraic topology. Such a module
could include explicit computations of mod-p cohomology rings for small finite p-groups
and computational investigations of: (i) Stiefel–Whitney classes of real representations
of small finite p-groups, (ii) the low-dimensional integral homology of finite groups such
as the Mathieu simple groups, and (iii) integral cohomology of some Artin groups and
arithmetic groups. When used as the primary basis for a taught module, the book could be
supplemented by any of the more traditional introductions to algebraic topology or group
cohomology as a means of reinforcing theoretical aspects of the subject. Alternatively, the
book and associated software could simply be used as a computational supplement in an
existing taught module in order to provide students with easy access to a broad range of
machine examples.
The book does not have its origins in any particular graduate course. Rather, it has
its origins in some computer routines for elementary cohomology calculations written
over a decade ago by the author. These routines were written for the GAP system for
computational algebra [126] and have evolved, with the help of graduate and postdoctoral
students, into the HAP package for Homological Algebra Programming [100] which is
now distributed with GAP. When a student begins a project in computational algebraic
topology, the precise data types for the input and output of an algorithm need to be
carefully specified, as do the mathematical techniques underlying the algorithms. These
data types and techniques need to be recorded in an easily readable document if new
students are to further develop implementations of former students. That documentation
has evolved into the current book. It is thus hoped that the book will be of use to indepen-
dent researchers interested in using or developing the GAP computational algebra system
for performing a particular cohomological calculation as part of their investigations.
There are many good introductions to elementary algebraic topology. Personal
favourites are William Massey’s introductory text [203] and the more recent and
slightly more comprehensive book by Allen Hatcher [150], both written by significant
contributors to the subject. A third personal favourite, with a more specialized focus
for readers already familiar with the basics, is Kenneth Brown’s introductory text on
the cohomology of groups [39]. But there are many other excellent introductory texts
that could be equally well recommended to beginning graduate students. This poses an
obvious difficulty for any author of a new introduction to aspects of the subject. The
current book aims to tackle the difficulty by minimizing the intersection with other texts
as far as possible, subject to the constraint of remaining reasonably self-contained. It aims
to supplement the literature by describing how techniques from computational algebra
can be used to investigate examples that go beyond a reader’s tolerance for tediously long
paper-and-pen calculation. The book is thus written under the assumption that the reader
Preface | ix

has access to some of the existing introductory literature and the willingness to consult
these texts occasionally should curiosity arise.
Any introduction to algebraic topology has to make choices as to which standard
topics to exclude. In the present book the choices were guided by two principles: (i)
only material closely related to algorithms already implemented in the HAP package
is included; (ii) for efficient implementations of algorithms some notions are given a
more detailed treatment at the expense of reduced treatments of other basic notions.
For example, the first principle has led to the omission of a proper treatment of singular
homology. This principle has also led to the omission of the computationally useful
notion of -complexes. As an example of the second principle we mention that the book
starts with an account of CW-spaces and then treats simplicial complexes in passing as a
particular case.
The chapters of the book fall under two themes:

Chapter Theme Computational Topics

1 basic topology CW-spaces, path components, topological persistence,


simple homotopy, fundamental group, covering spaces

2 cellular chain complexes, homology over fields and


principal ideal domains, homological persistence,
cohomology and cup products

3 homotopical algebra cohomology of groups, homological perturbation

4 relation between group theory and cohomology of groups


5 cohomology of crossed modules, simplicial groups,
homological perturbation

6 free resolutions for a range of groups

The first two chapters offer a short introduction to the fundamental group and cellular
(co)homology, and are motivated by computer applications to dynamical systems, data
mining, digital image analysis, protein analysis and group theory. The choice of material in
these initial chapters has been influenced by recent textbooks on Computational Homology
[173] and Computational Topology [92] and the survey article [53] on Topology and Data.
Chapters 3 and 6 cover material on the cohomology of groups, the former covering more
standard material while the latter is more eclectic. They include techniques for computing
classifying spaces and cohomology of a range of classes of discrete groups such as finite
groups, finitely generated nilpotent groups, Euclidean crystallographic groups, Coxeter
groups, graphs of groups, various hyperbolic groups and arithmetic groups, and certain
Artin groups. Techniques for computing the full modular cohomology ring structure
are given in the case of finite prime-power groups. An implementation of the mod-2
Steenrod algebra is described for finite 2-groups. An implementation of classifying spaces
for proper actions and Bredon homology is described for various infinite groups. The
x | Preface

material in Chapters 3 and 6 has been strongly influenced by Brown’s text on Cohomology
of Groups [39]. Chapter 3 delegates proofs about Steenrod operations to the book by
Mosher and Tangora [218]. Chapter 6 is also influenced by the books by Davis [76]
and Bridson and Haefliger [36] on geometric group theory. Some group theoretic appli-
cations of low-dimensional cohomology and nonabelian tensor products are covered in
Chapter 4. In Chapter 5 we turn to simplicial groups, their cohomology and in particular
the cohomology of homotopy 2-types as represented by crossed modules. That chapter
delegates various proofs to the book by Goerss and Jardine on Simplicial homotopy
theory [132]. The material related to crossed modules in that chapter and elsewhere is
strongly influenced by the book of Brown, Higgins and Sivera on Nonabelian algebraic
topology [43]. Background material on point-set topology, categories and functors, and
finitely presented groups and groupoids is presented in an appendix. The appendix also
contains: a short survey of other software for homology and for group cohomology;
installation instructions for HAP; and a discussion of parallel computation in which basic
functionality for parallel computation within HAP is described. A second appendix,
containing a description of all HAP functions used in the book, is available online [101].
The primary focus of the book is computation and much of the material concerns
algorithms (or at least procedures), their implementation and sample applications of
the implementation. Implementations tend to be ephemeral due to changing software
platforms, whereas algorithms and procedures are as eternal as mathematics. Probably
for this reason many books on computation present precise pseudo-code descriptions
of algorithms, together with results or discussion on their complexity, and downplay
implementations. The HAP software package is an experiment in how far one can push
the project of encoding algebraic topology into touch-of-a-button functions suitable for
non-specialists who simply need to know the answer to a particular calculation and do
not care so much about the method of computation. For instance, a theoretical physi-
cist interested in confirming that the Mathieu group M24 has third integral homology
H3 (BM24 , Z) = Z12 might be satisfied with the output of the function
gap> GroupHomology(MathieuGroup(24),3);
gap> [ 4, 3 ]
without needing details of how this function is implemented (cf. [79, 121, 124]). Such
functions sometimes make calls to procedures for which the easiest proof that the proce-
dure terminates on the given input is to run the procedure and observe that it terminates!
Given the aims of HAP and the difficulty of deciding if some procedures will ever
terminate, the present book downplays precise pseudo-code and omits discussion of com-
plexity. Instead, it uses relatively informal standard mathematical language to describe
most algorithms and procedures, and gives detailed example applications of the current
HAP implementations. The HAP implementations, which are mostly written in the very
readable GAP programming language, are available for viewing in the open source GAP
distribution. Many of the implementations need to make some fairly random choices
during their execution and these choices can significantly affect the run time. For that
reason the book omits sample run times. If the reader is interested in how the current
implementation might perform on a given input then he or she simply has to try it out on
a computer!
Preface | xi

The algebraic topology implemented in HAP predates the invention of the personal
computer. However, it was designed in a modular fashion and this modularity has been
transported directly into the implementation according to the following principle.

A data type should only be included in the implementation if there is a corresponding


standard notion in topology. A function should only be included in the implementation if
there is a corresponding standard construction in topology.

For example, in topology we have the notions of: simplicial space, CW-space, chain
complex and homology. We have functors that: regard a simplicial space X as a CW-
space, assign an integral chain complex C∗ X to a CW-space, assign a Zp -chain complex
C∗ ⊗Z Zp to an integral chain complex C∗ , and assign a vector space Hn (C∗ ⊗Z Zp ) to
a Zp -chain complex. To compute the homology group H2 (S2 , Z3 ) = Z3 in HAP one
could use the following commands which reflect this functoriality.

gap> S2:=SimplicialComplex([[1,2,3],[1,2,4],[1,3,4],[2,3,4]]);
Simplicial complex of dimension 2.
gap> Y:=RegularCWComplex(S2);
Regular CW-complex of dimension 2
gap> C:=ChainComplex(Y);
Chain complex of length 2 in characteristic 0 .
gap> D:=TensorWithIntegersModP(C,3);
Chain complex of length 2 in characteristic 3 .
gap> HomologyVectorSpace(D,2);
( GF(3)ˆ1 )

This design principle is one that can carry over to other potential software implementa-
tions and is quite independent of the particular HAP implementation used throughout
the book. The reader can view HAP simply as an illustration of the principle. There are
two obvious benefits to the design principle. Firstly, the basic definitions and construc-
tions of algebraic topology are known to piece together seamlessly into one powerful and
extensible theory. Software that adopts the same tested component design is assured to
be equally extensible. Secondly, topologists will likely be tempted by such software more
than by an ad hoc collection of computer routines. In support of the latter assertion we
mention that, for instance: a four-line HAP program is used in the recent paper [70] to
help answer a 45-year-old question of R.H. Bing concerning the fixed point property of
spaces; a longer HAP program is used in the recent memoir [163] to help with the stably
rational classification of algebraic tori of dimensions 4 and 5 over a field k.
The reader may wonder why the GAP programming language has been chosen to
illustrate the computer implementation of algebraic topology as opposed to some more
widely used language such as C++. There are essentially two reasons for this choice.
Firstly, GAP contains many efficient implementations of basic algorithms that are
needed in topology (echelon form, Smith normal form, nilpotent quotient algorithm,
Reidemeister–Schreier subgroup presentation, Todd–Coxeter algorithm and double
xii | Preface

coset enumeration, orbit-stabilizer algorithm, Sylow subgroups and other basic group-
theoretic constructions, . . . ) and provides easy access to basic libraries used to illustrate
the algorithms (small groups library, crystallographic groups library, finite simple groups
library, irreducible group representations, . . . ) and it would be futile to reimplement all
of this. Secondly, a main goal of the HAP project is to decide on, and clearly document,
the principal data types and functions that should be implemented in a topology software
system, and to demonstrate that the choices yield a practical system. This goal is largely
independent of programming language, but there are features of GAP that facilitate
the project: it is open-source software; it has a convenient interactive environment; it
allows for low-level algorithms to be implemented in C; it is actively supported by the
international computational algebra community; it has established links with Polymake
and Singular software.
Each computational example in the book is available in the HAP package as a GAP
readable file. Code relating to Example x.y.z can be run using the command

HapExample(“x.y.z”);

so that the example can then be further investigated using the full functionality of GAP.
The examples take anything from a fraction of a second to, in some cases, several hours to
run on a typical laptop computer. Some examples refer to data files and include a reference
[filename]; the relevant data file is available in the HAP package. The majority of the
GAP examples run on the default Windows and Linux versions of GAP. Some of the
examples require GAP packages that run only on Linux. A few examples require external
open source software such a Singular or Polymake which again only run under Linux.
The book treats external software as black boxes which simply do what is said on the box.
Various PhD students and postdocs at Galway have helped, either directly or indirectly,
with the material in this book and thanks are due to all of them. In chronological order, the
PhD students are: Aidan McDermott, Irina Kholodna, James Harris, Seamus Kelly, Maura
Clancy, Fintan Hegarty, Le Van Luyen, Bui Anh Tuan, Daher Freh Al-Baydli, Nisreen Al-
Okbi, Kevin Killeen. Again in chronological order, the postdocs are: Emil Sköldberg,
Gerald Williams, Marc Röder, Paul Smith, Simon King, Mark Dickinson, Alexander
Rahm. The material in the book has also benefited greatly from extended visits to Galway
by Pablo Fernández Ascariz, Cédric Fragnaud, Hamid Mohammadzadeh, Robert Morse,
Ana Romero and Mathieu Dutour Sikirić.
Graham Ellis
National University of Ireland, Galway
December 2018
List of Figures

1.1 Torus endowed with a CW-structure. 4


1.2 Hawaiian earing. 6
1.3 Illustration of Theorem 1.1.1. 8
1.4 Orbit polytope for the symmetric group S4 . 12
1.5 The polytope C(G, v). 14
1.6 The polytopes 3 and I3 . 15
1.7 Polytope boundary is a 2-dimensional CW-subspace of 12 . 15
1.8 Simplicial Klein bottle. 17
1.9 3-dimensional prism. 19
1.10 Pure cubical and permutahedral models of the trefoil knot. 20
1.11 BL for the permutahedral lattice. 21
1.12 Nerves of two spaces. 24
1.13 L-ball and L-sphere for r = 2. 26
1.14 Strange attractor of the Hénon map. 27
1.15 Values of N(A, ) for the Hénon attractor. 27
1.16 A 2-dimensional CW-space. 29
1.17 Application of Algorithm 1.3.1 to the Klein bottle. 32
1.18 Distances between five taxa. 33
1.19 Dendrogram. 35
1.20 A digital image. 35
1.21 A threshold plot. 36
1.22 Barcode for persistent Betti numbers. 37
1.23 Barcode for dendrogram. 37
1.24 Barcode for filtration. 38
1.25 Barcode for filtration. 39
1.26 Pure cubical complexes obtained from an image of a starfish. 40
1.27 0-dimensional barcode for a starfish. 41
1.28 Pure cubical complexes for a starfish. 41
1.29 0-dimensional barcode for a starfish. 41
1.30 Point cloud in R2 . 44
1.31 Simplicial graph produced by the Mapper algorithm. 45
1.32 Data points and corresponding Mapper graph. 46
xviii | List of Figures

1.33 An elementary expansion of Y. 47


1.34 Simplification of a regular CW-space. 50
1.35 Bing’s house. 51
1.36 Proof of Proposition 1.4.4. 53
1.37 Dunce hat. 54
1.38 Contact space of a CW-space. 55
1.39 Backbone of the Thermus Thermophilus protein. 57
1.40 Admissible discrete vector field on the torus. 59
1.41 The spaces T 0 , V 1 and T 1 . 60
1.42 The Quillen complex A2 (S4 ). 63
1.43 Equivalent paths in Y I . 67
1.44 Subcomplex of the simplicial Klein bottle. 73
1.45 Knot diagram for the trefoil knot. 74
1.46 Addition of a trefoil knot and its mirror image. 75
1.47 A knot constructed from a sequence of 163 points. 79
1.48 An example of the Erdõs–Rényi graph G(1000, 1/750). 80
1.49 Plots of β0 (G(5000, p)) and d(π1 Y(60, p)). 80
1.50 Sketch proof of Seifert and van Kampen’s theorem. 82
1.51 Contractible pure cubical space. 83
1.52 A torus as the union of two overlapping cylinders. 86
1.53 Fundamental group generators for the trefoil complement. 87
1.54 The two types of knot crossing. 88
1.55 Planar knot diagram for the trefoil. 88
1.56 A 4-crossing knot diagram. 89
1.57 Knot number 1 on 9 crossings. 94
1.58 Classifying index for prime knots. 95
1.59 Two trefoil knots. 99
1.60 Borromean rings and three unlinked trivial knots. 100
1.61 Homo Sapiens 1xd3 protein backbone. 101
1.62 Second prime knot on five crossings and a related graph. 102
1.63 A Dirichlet-Voronoi region. 110
1.64 A 2-dimensional cubical lattice manifold. 118
1.65 Cayley graph for the group H3 . 120
1.66 Chicken red blood cells. 125
1.67 A 2-fold cover of S1 ∨ S1 . 126
2.1 Images of a collection of letters. 131
2.2 Barycentric subdivision of a cube. 134
2.3 Relator disks. 138
2.4 Star graph of a presentation. 139
2.5 Surface for a 2-dimensional Artin group. 140
2.6 Relators disks and a syzygy. 141
2.7 Spanning tree on a sphere. 142
2.8 Plots of βk (K(100, p)). 153
2.9 Plots of βk (L(50, p)). 154
List of Figures | xix

2.10 A data cloud and its thickenings. 159


2.11 β1∗,∗ barcode for C∗ (Y∗ , Q). 160
2.12 β1∗,∗ barcode for C∗ (K∗ , Q). 161
2.13 A cloud of 3527 points. 161
2.14 β1∗,∗ and β2∗,∗ barcodes. 162
2.15 Cubical complex for the 1v2x protein. 163
2.16 β1∗,∗ barcode of the 1v2x protein. 164
2.17 Data cloud and 1-skeleton of an associated space. 166
2.18 β0 barcode (top) and β1 barcode. 167
2.19 β1 barcode. 168
2.20 Graph fitted to a distance matrix. 169
2.21 Images of the letters “A” and “B”. 169
2.22 Graph fitted to the images of Figure 2.21. 170
2.23 A few 3 × 3 grey-scale patches. 171
2.24 β0 barcode (left) and β1 barcode. 171
2.25 Two Dirichlet–Voronoi fundamental domains. 175
2.26 Piecewise linear knot. 180
2.27 Spaces U ⊂ A ⊂ X. 183
2.28 Cross section of a pure cubical complex. 185
2.29 A van Kampen diagram. 203
2.30 A van Kampen diagram. 207
2.31 Link with three components. 210
2.32 1-skeleton of a term in a filtered simplicial complex. 211
3.1 Edge graph of a fundamental domain. 219
3.2 Discrete vector field on R. 220
3.3 The cubic tree. 239
3.4 Orbit polytope. 243
3.5 Degree 2 persistent radical numbers. 264
3.6 van Kampen diagrams for Lemma 3.6.1. 268
3.7 Degree 5 homology barcodes. 286
3.8 The finite irreducible Coxeter diagrams. 319
3.9 Coxeter polytope for H3 . 319
3.10 Portion of an infinite Coxeter Cayley graph. 320
3.11 Portion of an infinite Coxeter Cayley graph. 321
4.1 Geometric interpretation of equation 4.4. 329
5.1 Schematic depiction of a relative map. 381
5.2 Piecewise linear map from unit square. 381
5.3 A lollipop in W. 384
5.4 S1 × S1 × S1 as a quotient of a cube. 386
6.1 van Kampen diagram for a syzygy. 427
6.2 Star graphs for relators. 429
6.3 Graphs of groups. 432
6.4 Cubic tree. 437
6.5 Tessellations for T(2, 3, 7) and T(2, 3, 5). 442
xx | List of Figures

6.6 Free resolution for Euclidean and hyperbolic cases. 443


6.7 Orbit polytope for A4 . 443
6.8 Hyperbolic quadrilateral. 448
6.9 Tetrahedron in H3 with four ideal vertices. 451
6.10 Dual 2-complex for the tetrahedron in H3 . 453
6.11 Coxeter graph for Ã4 . 456
6.12 Weak order on A3 . 457
6.13 Hasse diagram for the weak order on W = S5 . 460
6.14 Discrete vector field WD = Ã3 . 461
6.15 Polytopes arising as XD,v . 462
6.16 The E7 Coxeter diagram. 465
6.17 Coxeter graph of a seven generator Artin group. 467
6.18 Coxeter graphs. 469
6.19 Polytopes corresponding to Coxeter graphs. 470
6.20 Least common left multiple in an Artin monoid. 474
List of Tables

5.1 Crossed modules of small order. 400


6.1 Homology groups Hn (SL2 (Z[1/m]), Z) 439
6.2 Details on free resolutions for M22 , M23 , M24 . 465
6.3 Low dimensional homology of Mathieu groups. 466
6.4 Boundaries in the Coxeter complex. 471
List of Algorithms

1.1.1 Facets of a convex hull 10


1.1.2 Face lattice of a half-space polytope 11
1.2.1 Nerve of a lattice complex 22
1.2.2 CW-structure of a pure cubical complex 28
1.3.1 Path components of a regular CW-complex 31
1.3.2 Path components of a lattice complex 34
1.4.1 Deformation retract of a regular CW-complex 49
1.4.2 Simplification of a regular CW-structure 50
1.4.3 Deformation retract of a lattice complex 56
1.5.1 Discrete vector field on a regular CW-complex 61
1.6.1 Fundamental group of a regular CW-complex 71
1.9.1 Equivariant CW-complex of a crystallographic group 111
1.9.2 Crystallographic group orbits 112
1.9.3 Crystallographic group stabilizers 113
1.10.1 Free presentation for a finite group 120
2.4.1 Semi-echelon matrix 151
2.4.2 Filtered semi-echelon matrix 157
2.8.1 Cup product for 2-complexes 206
3.1.1 Free cubical resolution for Bieberbach groups 221
3.2.1 Free resolution using linear algebra 228
3.2.2 Free resolution using discrete vector fields 230
3.3.1 Simplification of a free resolution 232
3.7.1 Isomorphism test for graded-commutative algebras 281
3.9.1 Completion criterion for mod-2 cohomology ring 291
1 Path Components and the
Fundamental Group

Our aim is to compute homotopy invariants of topological spaces. This chapter begins
with a few basics about homotopy and then introduces the class of topological spaces that
forms the primary focus of our computations. This is the class of CW-spaces introduced
by J.H.C. Whitehead in the 1940s. The first section ends with details on convex hull
computations that are needed to provide our first computer examples of CW-spaces.
Section 2 introduces three more classes of spaces – simplicial spaces, cubical spaces and
permutahedral spaces – that are also convenient for computations. Constructions for
converting these into the primary class of CW-spaces are given. The nerve construction
is introduced as a means of converting cubical and permutahedral spaces into homo-
topy equivalent simplicial spaces. An example is given which hints at the idea of using
cubical spaces as a tool for studying dynamical systems. Further details on this idea are
presented in the book [173]. The most fundamental homotopy invariant of a CW-space
X, its set π0 (X) of path components, is introduced in Section 3. Algorithms are given
for computing π0 (X) for CW-spaces, and also for cubical and permutahedral spaces.
This section includes examples in digital image analysis, which are used to introduce
the topical concept of topological persistence. Persistence occurs again in Chapter 2 in
the context of homology functors, and again in Chapter 3 in the context of spectral
sequences. Section 3 contains a subsection on the Mapper clustering procedure due to
Singh, Mémoli and Carlsson [265]. This clustering procedure has been used in [221]
to identify a particular subgroup of breast cancers. Section 4 addresses the question
of how to represent homotopies on a computer. The answer is again provided in the
work of J.H.C. Whitehead: they can be represented using his combinatorial notion of
simple homotopy. The classical examples of Bing’s House and the Dunce Cap are used to
illustrate that not every contractible CW-space can be reduced to a point by a sequence
of simple homotopy collapses. Simple homotopy collapses apply to CW-spaces, but they
can also be applied directly, in batches, to cubical and permutahedral spaces. Examples
are given to illustrate that an effective method of producing a homotopy equivalent
smaller CW-space from a cubical (or permutahedral) space is to first apply homotopy
collapses directly to the cubical space, then convert the collapsed cubical space to a

An Invitation to Computational Homotopy. Graham Ellis. Oxford University Press (2019). © Graham Ellis 2019.
DOI: 10.1093/oso/9780198832973.001.0001
2 | Path Components and the Fundamental Group

CW-space, and then apply further collapses to the converted CW-space. Up to Section
4 all computations are performed on regular CW-spaces. It is not so clear how best to
represent an arbitrary CW-space X on a computer. There are a number of possibilities
and the option proposed in Section 5, and used throughout the remainder of the book,
is to represent it in terms of a regular CW-space Y together with an explicit homotopy
equivalence Y  X. The explicit homotopy equivalence is recorded using the notion of
discrete vector field, a notion introduced in [118] but also present under a different name
in the PhD work [171]. Section 5 contains a group-theoretic example that uses discrete
vector fields to establish the homotopy type of the Quillen complex of a finite group.
The fundamental group is introduced in Section 6. An algorithm is given for finding a
presentation for the fundamental group π1 (X) of a finite CW-space X. The algorithm is
illustrated on CW-spaces, involving several million cells, that arise from the complements
of protein backbones. The study of protein backbones leads on naturally to the general
study of knot complements, and an example is given that illustrates the computation of a
peripheral system for a knot arising from a protein backbone. It is a result of Waldhausen
that peripheral systems provide complete knot invariants. The algorithms for π0 (X)
and π1 (X) are used to illustrate deep phenomena about random simplicial complexes
which are studied theoretically in [175, 176]. The section ends with a statement and
computer implementation of the Seifert–van Kampen theorem. A subsection contains
details on a version of the Seifert–van Kampen theorem for fundamental groupoids since
there are certain definite advantages to groupoids when working in a computational
setting. A second subsection describes and implements the Wirtinger presentation of the
fundamental group of a knot complement. For the special case of knot complements
this is a more efficient approach to finding a presentation of the fundamental group.
Methods for computing with group presentations (of fundamental groups) are outlined
in Section 7. These are used to show that abelian invariants of the subgroups of the
fundamental group of index ≤ 6 suffice to distinguish between all prime knots on ≤ 11
crossings; the result is extended in [35] to prime knots on ≤ 14 crossings and subgroups
of index ≤ 7. Section 8 introduces the notion of a quandle and explains how it can be used
to compute invariants that distinguish between non-prime knots. Section 9 introduces
covering spaces and equivariant CW-spaces. The examples in this section are derived
from crytallographic groups and representations of finite groups. The final Section 10
introduces the 2-dimensional CW-space associated to a group presentation which is used
extensively in Chapters 3 and 6.

1.1 Regular CW-spaces


In topology two spaces X and Y are considered to be indistinguishable, or homeomorphic,
if there exist continuous functions f : X → Y and f  : Y → X for which f  ◦ f = 1X is
the identity on X and f ◦ f  = 1Y is the identity on Y. Such functions are said to be
homeomorphisms. For example, the open interval X = (−1, 1) and real line Y = R are
indistinguishable thanks to the homeomorphism f (x) = x/(x2 − 1).
Regular CW-spaces | 3

A topological property is a property that holds for a space X only if it holds for all spaces
homeomorphic to X. Connectedness is an example of a topological property. Topological
properties can be used to distinguish between spaces. For instance, suppose that we have
an arbitrary homeomorphism f : X → Y. Then for any x0 ∈ X the function f restricts
to a homeomorphism f : X \ {x0 } → Y \ { f (x0 )}. So X \ {x0 } is connected only if Y \
{ f (x0 )} is connected. This suffices to prove that the real line Y = R is not homeomorphic
to the real plane X = R2 . Topology is the study of topological properties of spaces.
For brevity we use the term map (or sometimes continuous map) as a synonym for
continuous function, and speak of discontinuous maps when referring to functions that are
not continuous.
Much of algebraic topology focuses on homotopical properties of spaces. To define this
term one first defines two maps f , g : X → Y to be homotopic if there is a map H : X ×
[0, 1] → Y, (x, t)  → H(x, t) with H(x, 0) = f (x) and H(x, 1) = g(x) for all x ∈ X. We
say that H is a homotopy and write f  g. This is an equivalence relation on the set of
all maps from X to Y. Two spaces X and Y are said to be homotopy equivalent if there exist
maps f : X → Y and f  : Y → X for which f  ◦ f  1X and f ◦ f   1Y . Such maps f , f 
are said to be homotopy equivalences. Homotopy equivalence is an equivalence relation on
topological spaces. A space is said to be contractible if it is homotopy equivalent to a space
consisting of a single point. Euclidean space X = Rn is homotopy equivalent to the single-
ton space Y = {0} thanks to the maps f (x) = 0, f  (0) = (0, 0, · · · , 0) ∈ Rn , the identity
f f  = 1Y and the homotopy f  f  1X given by the formula H(x, t) = (1 − t)f  f (x) + tx.
It follows by transitivity that the real line R is homotopy equivalent to the plane R2 .
A homotopical property is a property that holds for a space X only if it holds for all
spaces homotopy equivalent to X. Since homeomorphic spaces are homotopy equivalent,
it follows that every homotopical property is a topological property. A homotopy invariant
I(X) is another term for a homotopical property of X. Homotopy theory can be viewed
as a pipeline

data G

topological space X = B(G)

algebra A(X)

homotopy invariant I(X)

Interpretation

that inputs some data G, uses the data to construct a meaningful topological space X, then
uses X to construct some algebraic structure A(X), and uses this algebra to determine a
homotopical property I(X) of the space X. The final task is to interpret the property in
a useful way. Traditional algebraic topology inputs a pure mathematical object G such as
4 | Path Components and the Fundamental Group

a group or ring or topological space. The construction X = B(G) returns a topological


space with nice features that make for easy calculations. Even when the input G is itself a
space it may be necessary to convert it into a nicer space X. The construction A(X) returns
some algebraic structure that typically is not a homotopy invariant of X but from which a
homotopy invariant I(X) can be extracted. The goal is to provide a useful interpretation of
I(X). Chapters 3–6 focus on the case where the input data G is a group or crossed module.
But in the first two chapters we consider examples in which G is: a topological space, a
digital image, a collection of digital images, a dynamical system, a protein backbone, a knot
or link, a point cloud data set, a random graph, a lattice of p-subgroups of a finite group,
and a real representation of a finite group. This range of examples is intended to emphasize
the potential applicability of homotopy theory. The examples are feasible because we use
a computer to help us work our way through the pipeline.
Our aim is to use a computer to calculate homotopy invariants of a range of topological
spaces. The spaces typically contain uncountably many points, and to store them on a
computer we require a finite or countably infinite representation that retains all homotopy
theoretic information. Such a representation was developed by J.H.C. Whitehead in his
1949 papers on combinatorial homotopy [289, 290]. The idea is to represent a space
as a collection of open balls, or cells, of various dimensions. The cells are glued together
along their boundaries. Whitehead formalized the idea into the notion of a CW-space (also
called a membrane complex in his earlier papers), a notion which is fundamental to modern
algebraic topology and one which is a central object of study in this book. To motivate the
precise definition of a CW-space we illustrate it with the torus, the direct product S1 × S1
of two circles, shown in Figure 1.1 (left). Figure 1.1 (right) shows the torus endowed
with a CW-structure involving four 0-dimensional cells, eight 1-dimensional cells and
four 2-dimensional cells.
In the definition of a CW-space we use the following notation for the closed unit n-
dimensional ball

Dn = {x ∈ Rn : ||x|| ≤ 1},

the open unit n-dimensional ball

D̊n = {x ∈ Rn : ||x|| < 1},

Figure 1.1 Torus endowed with a CW-structure.


Regular CW-spaces | 5

and the unit (n − 1)-dimensional sphere

Sn−1 = {x ∈ Rn : ||x|| = 1}

where ||(x1 , . . . , xn )|| = x21 + . . . + x2n . We abbreviate n-dimensional ball to n-ball and
n-dimensional sphere to n-sphere. We also use the term n-disk as a synonym for n-ball. Note
that D̊0 = D0 = R0 = {0}.
Definition 1.1.1. A CW-space is a Hausdorff space X together with a family of subsets
eλ ⊆ X (λ ∈ ) each homeomorphic to an open unit ball of some dimension dim(eλ ).
We refer to the eλ as cells of dimension dim(eλ ) and define the n-skeleton X n to be the
union of those cells of dimension ≤ n. The following axioms must hold.
1. Each x ∈ X lies in precisely one cell eλ . (In other words, the cells partition X.)
2. For each cell eλ of dimension n = dim(eλ ) ≥ 1 there exists a continuous map
φ : Dn → X that restricts to a continuous map φ  : Sn−1 → X n−1 and that sends
D̊n homeomorphically onto eλ . We say that φ is an attaching map or characteristic
map for the cell eλ .
3. The closure eλ of any cell eλ in X is contained in a finite union of cells eμ , μ ∈ .
4. A subset A ⊆ X is closed if and only if A ∩ eλ is closed in X for each λ ∈ .
The letters CW stand for the closure finiteness of Axiom (3) and the weak topology of axiom
(4). We refer to a cell of dimension n as an n-cell. We say that a CW-space is of dimension n if
it has an n-cell and no cell of dimension greater than n. We say that a CW-space is finite if it
contains only finitely many cells. Axioms (3) and (4) automatically hold as consequences
of Axiom (1) in any finite CW-space. One can show that in any CW-space the closure
eλ of an n-cell is equal to φ(Dn ) where φ is the attaching map for the cell. See the
appendix to Allen Hatcher’s book [150] for a detailed account of the point-set topology of
CW-spaces.
A standard example of a topological space that can not be endowed with the structure
of a CW-space is the subspace of the Euclidean plane R2 depicted in Figure 1.2 and known
as the Hawaiian earing. This earing is the union of the circles with centre (1/n, 0) and
radius 1/n for n = 1, 2, 3, . . . . The obvious candidate for a CW-structure, involving one
0-cell and countably many 1-cells, yields a non-compact CW-space whereas the Hawaiian
earing is a closed and bounded subset of the plane and hence compact.
The following property plays an important role in our computer representation of
CW-spaces.
Definition 1.1.2. A CW-space is said to be regular if each attaching map φ : Dn → X
sends the closed ball Dn injectively into X.
The CW-structure on the torus S1 × S1 given in Figure 1.1 (right) is regular. The CW-
structure on the circle S1 involving one 0-cell e0 = {(1, 0)} and one 1-cell e1 = {x ∈ S1 :
x = (1, 0)} is not regular.
6 | Path Components and the Fundamental Group

Figure 1.2 Hawaiian earing.

For n ≥ 1 we define the boundary of an n-dimensional cell en to be ∂enλ = enλ \ enλ , where
the closure enλ equals the image of the attaching map φ : Dn → X for en . If X is regular
then, from just a knowledge of which (n − 1)-cells lie in the boundary of each n-cell
en , n ≥ 1, one can construct a homeomorphism φ : Sn−1 → en \ en and extend it to a
homeomorphism φ : Dn → en . The space X can be reconstructed, up to homeomor-
phism, in this way. (The 1-skeleton X 1 is just a graph and is easily reconstructed up to
homeomorphism from a knowledge of the boundary 0-cells of each 1-cell; the skeleta
X 1 , X 2 , …can be reconstructed recursively.) It is therefore quite practical to store on a
computer the topological information contained in a finite regular CW-space X.
In this book we are interested in topological spaces, combinatorial representations
of these spaces, and computer data types for storing the combinatorial representations.
It is often convenient to blur any distinction between the three entities. However, we
sometimes need to keep a clear distinction. In the latter case we use the term space when
referring to a topological space, and the term complex when referring to a combinatorial
model or data type of some topological space that can be implemented on a computer.
In the former case we use the terms space and complex somewhat interchangeably. We use
letters such as X, Y to denote both spaces and complexes; when there is a need, we write
|X|, |Y| to denote spaces modelled by combinatorial objects or data types X, Y. In keeping
with this convention we introduce the following terminology.
Definition 1.1.3. A regular CW-complex X consists of a sequence of sets n , n ≥ 0,
arising as the indexing sets for the n-dimensional cells of some CW-space |X|, together
with a sequence of binary valued functions
ιn : n × n−1 → {0, 1} , n ≥ 1
defined by ιn (λ, λ ) = 1 if en−1 
λ is contained in the boundary of eλ , and ιn (λ, λ ) = 0
n

otherwise. We say that |X| is a geometric realization of X and define Size(X) =


Regular CW-spaces | 7

n≥0 |n |. If any n is infinite, or if infinitely many n are non-empty, then
Size(X) = ∞.
The HAP package [100] uses the following representation of finite regular CW-
complexes. Redundant information is incorporated into the representation in order to
improve the speed of certain algorithms.
Data type 1.1.1. A regular CW-complex can be represented as a component object X
with the following components:
• X!.boundaries[n+1][k] is a list of integers [t, a1 , . . . , at ] recording that the ai th cell
of dimension n − 1 lies in the boundary of the kth cell of dimension n.
• X!.coboundaries[n][k] is a list of integers [t, a1 , ..., at ] recording that the kth cell
of dimension n lies in the boundary of the ai th cell of dimension n + 1.
• X!.nrCells(n) is a function returning the number of cells in dimension n.
• X!.properties is a list of properties of the complex, each property stored as a pair
such as [“dimension”, 4].
The associated boolean valued function IsHAPRegularCWComplex(X) returns
true when X is of this data type.
Interesting examples of regular CW-spaces can be generated from convex hull compu-
tations. With these examples in mind, we recall some basic terminology and machinery
from convex polytope theory.
A subset X ⊆ Rn is convex if, for any pair of points x, y ∈ X, the line segment joining x
to y lies entirely in X. The convex hull of a finite set of points S = {v1 , v2 , . . . vp } in Rn ,
 
Conv(S) = { ti vi ∈ Rn : ti ≥ 0 , ti = 1}, (1.1)
1≤i≤p 1≤i≤p

is the ‘smallest’ convex subset of Rn containing all points of S. In other words, any convex
set that contains S also contains Conv(S). For any non-zero vector w ∈ Rn and any real
number c the half space

H(w, c) = {x ∈ Rn : x, w ≥ c}

is a convex set, where x, w denotes the standard Euclidean inner product. The term
convex polytope is a synonym for the convex hull of a finite set of points. A rigorous proof
of the following result can be found, for instance, in Chapter 1 of [299].
Theorem 1.1.1. (Fundamental Theorem of Convex Polytopes) For any finite set S ⊂ Rn
there is a finite collection of half spaces H(w1 , c1 ), H(w2 , c2 ), …, H(wF , cF ) such that

Conv(S) = H(wi , ci ).
1≤i≤F
8 | Path Components and the Fundamental Group

3x1 – 2x2 ≥ 1
5

3
–x1 + 2x2 ≥ 1

1
–x1 ≥ – 3

1 2 3 4

Figure 1.3 Illustration of Theorem 1.1.1.

To illustrate the statement of Theorem 1.1.1 consider the set of four points
S = {v1 = (1, 1), v2 = (2, 2), v3 = (3, 2), v4 = (3, 4)} in R2 and the three half
spaces H1 = H((−1, 2), 1), H2 = H((−1, 0), −3), H3 = H((3, −2), 1). The equality
Conv(S) = H1 ∩ H2 ∩ H3 is pictured in Figure 1.3 as a shaded area that is clearly both a
convex hull and an intersection of half spaces.
We can use this example to outline a proof of Theorem 1.1.1. In order to derive
from S the half spaces whose intersection equals the convex hull P = Conv(S), first
observe from 1.1 that P is a projection onto the first two coordinates of the subspace
K ⊂ R6 consisting of those vectors (x1 , x2 , t1 , t2 , t3 .t4 ) satisfying the following ten
inequalities.

⎛ ⎞ ⎞

−1 0 1 2 3 3 0
⎜ 1 0 −1 −2 −3 −3⎟ ⎜ ⎟
⎜ ⎟⎛ ⎞ ⎜ 0⎟
⎜ 0 −1 4⎟ ⎜ 0⎟
⎜ 1 2 2 ⎟ x1 ⎜ ⎟
⎜ 0 1 −1 −2 −2 −4 ⎟ ⎜ x2 ⎟ ⎜ 0⎟
⎜ ⎟⎜ ⎟ ⎜ ⎟
⎜ 0 0 1 1 1 1 ⎟ ⎜ t1 ⎟ ⎜ 1⎟
⎜ ⎟⎜ ⎟≥⎜ ⎟
⎜ 0 0 −1 −1 −1 −1 ⎟ ⎜ t2 ⎟ ⎜−1⎟ (1.2)
⎜ ⎟⎜ ⎟ ⎜ ⎟
⎜ 0 0 1 0 0 0 ⎟ ⎝ t3 ⎠ ⎜ 0⎟
⎜ ⎟ ⎜ ⎟
⎜ 0 0 0 1 0 0 ⎟ t4 ⎜ 0⎟
⎜ ⎟ ⎜ ⎟
⎝ 0 0 0 0 1 0⎠ ⎝ 0⎠
0 0 0 0 0 1 0
Regular CW-spaces | 9

We need to explain how the variables t1 , t2 , t3 , t4 can be “eliminated” from these ten
inequalities to yield a description of P ⊂ R2 as the subset of those pairs (x1 , x2 ) ∈ R2
satisfying the half space inequalities
⎛ ⎞ ⎛ ⎞
−1 2 1
⎝−1 x
0⎠ 1 ≥ ⎝−3⎠. (1.3)
x2
3 −2 1

Let us begin with the elimination of t4 . Note that, of the ten inequalities (1.2), four are of
the form

t4 ≥ L(x1 , x2 , t1 , t2 , t3 )

where L is a linear expression. Three are of the form

t4 ≤ U(x1 , x2 , t1 , t2 , t3 )

where U is a linear expression. The remaining three inequalities don’t involve t4 . The
projection π: R6 → R5 onto the first five coordinates thus sends K to the subspace
π(K) ⊂ R5 consisting of those vectors (x1 , x2 , t1 , t2 , t3 ) satisfying the three inequalities
t1 ≥ 0, t2 ≥ 0, t3 ≥ 0 and 4 × 3 = 12 inequalities of the form

L(x1 , x2 , t1 , t2 , t3 ) ≤ U(x1 , x2 , t1 , t2 , t3 ).

The same elimination technique can then be applied to eliminate t3 from the 15 inequal-
ities defining π(K) ⊂ R5 to obtain a set of inequalities defining the image of K under
the projection π 2 : R6 → R4 onto the first four coordinates. This elimination procedure
(due to Fourier and rediscovered by Motzkin) can in turn be used to eliminate t2 and then
t1 to yield a highly redundant set of inequalities

x1
A ≥b (1.4)
x2

describing P ⊂ R2 as an intersection of half spaces.


There are several methods for reducing the redundant system (1.4) to the minimal
system (1.3). For example, to test if a given inequality E is implied by a system Ax ≥ b
we can add the negation of E to the system: the resulting system not E and Ax ≥ b has
no solution if and only if E is implied by Ax ≥ b. Fourier–Motzkin elimination can be
used to test if a system of inequalities A x ≥ b has any solution: eliminate all but the first
variable and the resulting single variable inequality has a solution if and only if A x ≥ b
has a solution.
The above discussion of Theorem 1.1.1 is summarized in the naive and computation-
ally expensive Algorithm 1.1.1.
10 | Path Components and the Fundamental Group

Algorithm 1.1.1 Facets of a convex hull.


Input: A set S consisting of k ≥ 1 points in Rn .
Output: An m × n matrix A and m × 1 vector b such that the inequalities Ax ≥ b
describe a minimal set of half spaces whose intersection is Conv(S).
1: procedure
2: Convert the set S to a system A x ≥ b of 2n + 2 + k inequalities defining a
subspace K ⊂ Rn+k that projects onto Conv(S) ⊂ Rn .
3: Use Fourier–Motzkin elimination to obtain a (typically highly redundant) set of
inequalities Ax ≥ b that determine Conv(S).
4: For each inequality in the system Ax ≥ b use Fourier–Motzkin elimination to test
if it is implied by the other inequalities in the system. If it is implied then remove it
from the system and update A, b accordingly.
5: Return A and b.
6: end procedure

Algorithm 1.1.1 would suffice for computing a minimal half space description of the
convex hull of a small number of points in low-dimensional Euclidean space. There are
many possible refinements to, and variants of, this basic algorithm. The Polymake
software [127] for convex polyhedra incorporates a range of convex hull algorithms, each
optimized for specific situations, and these are used in HAP.
For an n-dimensional convex polytope P = Conv(S) ⊂ Rn described as an intersec-
tion of a minimal collection of half spaces H1 = {x ∈ Rn : x, w1  ≥ c1 }, . . . , Hm = {x ∈
Rn : x, wm  ≥ cm } one defines the facets of P to be the closed subspaces

Fin−1 = P ∩ −Hi

for 1 ≤ i ≤ m and −Hi = {x ∈ Rn : x, wi  ≤ ci }. Each k-dimensional subspace of P


arising as the intersection of a collection of facets is deemed to be a k-dimensional face or
k-face of P. The polytope P is deemed to be the unique n-dimensional face of P and there
are no faces of dimension > n. Any k-dimensional face Fk is homeomorphic to the closed
disk Dk . A 0-dimensional face is called a vertex and a 1-dimensional face is called an edge
of P. A k-face Fk can be represented by the set

ν(F k ) = {i : F k ⊆ Fin−1 , 1 ≤ i ≤ m}

of those integers i for which F k is a subspace of the facet Fin−1 . For the n-dimensional face
we have ν(P) = ∅.
The following Proposition summarizes some useful elementary properties of convex
polytopes. A proof of the proposition can be extracted from standard texts on convex
polytopes such as [299].
Proposition 1.1.2. Let P = Conv(S) be a polytope arising as the convex hull of a finite set
of points S ⊂ Rn .
Regular CW-spaces | 11

(i) P has the structure of a regular CW-space in which the interiors of the k-faces are the
k-dimensional cells of the CW-space.
(ii) The vertices of P form a subset of S. A point in S is a vertex if and only if it lies in some
facet of P.
(iii) For any two distinct faces F1 , F2 of dimensions at least k there is a face F of dimension
at least k + 1 such that ν(F) = ν(F1 ) ∩ ν(F2 ).
(iv) For each face F k+1 of dimension k + 1 there exists a pair of k-faces F1k , F2k such that
ν(F k+1 ) = ν(F1k ) ∩ ν(F2k ).
Algorithm 1.1.2 describes one procedure for accessing the regular CW-structure of con-
vex polytopes. The algorithm is based on Proposition 1.1.2. A refinement of the algorithm
is described in [120] and implemented in Polymake.

Algorithm 1.1.2 Face lattice of a half-space polytope.


Input: A finite set S ⊂ Rn and an m × n matrix A and m × 1 vector b such that the
inequalities Ax ≥ b describe a minimal set of half spaces with bounded intersec-
tion equal to the polytope P = Conv(S) of dimension dim(P) = d say.
Output: A regular CW-complex X whose geometric realization is the CW-structure
on P described in Proposition 1.1.2(i).
1: procedure
2: For each column vector w ∈ S compute the set ν(w) = {i : Ai w = bi , 1 ≤ i ≤ m}
where Ai denotes the ith row of A and bi denotes the ith entry in b.
3: Compute P0 = {ν(w) : w ∈ S, |ν(w)| ≥ d}. Each set ν(w) ∈ P0 corresponds to
a vertex of P; the integers in ν(w) record those facets of P containing this vertex.
4: for 1 ≤ k ≤ d do
5: Compute the set

Pk = {σ = σ1 ∩ σ2 : σ1 , σ2 ∈ Pk−1 , σ1 = σ2 }

6: Compute the subset Pk ⊆ Pk consisting of those sets in Pk that are maximal in Pk
with respect to set inclusion.
7: end for
8: The k-faces Fk of P correspond to the elements ν(F k ) in Pk in such a way that an
inclusion of faces F k−1 ⊂ Fk corresponds to a containment of finite sets ν(F k ) ⊂
ν(F k−1 ). Record the finite sets Pk and the containments ν(F k ) ⊂ ν(Fk−1 ) as a
regular CW-complex X.
9: Return X.
10: end procedure

Examples of polytopal CW-spaces can be generated from real matrix representations, i.e.
homomorphisms ρ : G → GLn (R), of finite groups G. For any column vector v ∈ Rn
one can consider the set S(ρ, v) = {ρ(g)v : g ∈ G} ⊂ Rn and the convex hull P(ρ, v) =
Conv(S(ρ, v)). We refer to such a convex polytope as an orbit polytope and denote it by
P(G) or P(G, v) when the representation ρ is clear from the context.
12 | Path Components and the Fundamental Group

Example 1.1.1. Consider the symmetric group S4 of degree 4 represented as the group
of all 4 × 4 permutation matrices and the column vector v = (−2, −1, 1, 2)t ∈ R4 . The
set S(ρ, v) then consists of all 24 permutations of the coordinates of v. Each permutation
of v lies in the 3-dimensional hyperplane consisting of those vectors in R4 whose coor-
dinates sum to zero. The 3-dimensional polytope P(S4 , v) is visualized in Figure 1.4. The
following GAP session generates P(S4 , v) as a 3-dimensional regular CW-complex and
then lists the number of cells in each dimension.

GAP session 1.1.1


gap> points:=Orbit(SymmetricGroup(4),[-2,-1,1,2],Permuted);;
gap> Y:=RegularCWPolytope(points);
Regular CW-complex of dimension 3

gap> NumbersOfCells:=List([0..3],Y!.nrCells);
[ 24, 36, 14, 1 ]

The polytope P(S4 , v) has 24 vertices, 36 edges and 14 facets. One can show that the
combinatorial structure of P(S4 , v), i.e. the number of k-faces and their incidence relations,
is the same for all vectors v = (x1 , x2 , x3 , x4 ) with distinct coordinates xi = xj , 1 ≤ i <
j ≤ 4. The GAP session requires the HAP package to be loaded, and makes a call to
Polymake software. In keeping with all subsequent examples, it can be reproduced using
the following command.

GAP session
gap> HapExample("1.1.1");

Figure 1.4 Orbit polytope for the symmetric group S4 , known as the 3-dimensional permuta-
hedron.
Regular CW-spaces | 13

The determination of the cell structure of the convex hull of a given set S of points in
Rn is known to be a computationally expensive problem in general. For orbit polytopes
there are some observations that help with the computation. The following is one such
observation.
Lemma 1.1.3. For any matrix representation ρ : G → GLn (R) of a finite group G, and any
vector v ∈ Rn , the vertices of the orbit polytope P(ρ, v) are precisely the (not necessarily
distinct) vectors ρ( g)v, g ∈ G.
Proof. Proposition 1.1.2 asserts that the vertices of the convex hull Conv(S) of any finite
set of points S ⊂ Rn lie in S. For S = {ρ(g)v : g ∈ G} the polytope P(ρ, v) = Conv(S)
is invariant under the action of the matrix ρ(g) for each g ∈ G, and this action
restricts to a permutation of vertices. Thus if ρ(g)v were to lie in the interior
of the polytope, then so too would ρ(g  )v for every g  ∈ G, and the polytope
would be the empty set. It follows that ρ(g)v is a vertex of the polytope for
each g ∈ G. 

A second observation is more simply stated under the assumption that ρ is an orthogonal
representation of G (i.e. each matrix ρ(g) is orthogonal) and that the stabilizer of v is
a proper subgroup of G. Let wv = (1/|S|) wi ∈S wi be the average of the vectors in the
orbit S = {ρ(g)v : g ∈ G}. Then v = wv and we can define the hyperplane (wv ) = {x ∈
Rn : x − wv , wv − v = 0} which contains the point wv and which is perpendicular to the
vector wv − v. The cone

Cone(S) = { ti wi ∈ Rn : ti ≥ 0} (1.5)
wi ∈S

intersects the plane (wv ) in a convex polytope

C(G, v) = Cone(S) ∩ (w) (1.6)

and the following lemma can be verified. The lemma is illustrated in Figure 1.5 for the
permutation action of symmetric group S4 on R4 and vector v = (1, 2, 3, 4)t ∈ R4 .
Lemma 1.1.4. Let ρ : G → GLn (R) be an orthogonal matrix representation of a non-
trivial finite group G and let the stabilizer of v ∈ Rn be a proper subgroup of G. Then the
k-dimensional faces of C(G, v) correspond to those (k + 1)-dimensional faces of P(G, v)
containing the vertex v.
Lemma 1.1.4 can be used in conjunction with Algorithm 1.1.1 and the equalities
P(G, v) = P(G, ρ(g)v), g ∈ G, to compute P(G, v) as a regular CW-complex for some
quite large groups G. This approach is used in Chapter 3 to obtain cohomological
information for various finite groups.
14 | Path Components and the Fundamental Group

Figure 1.5 The polytope C(G, v) shown in dark grey for G = S4 and v = (1, 2, 3, 4)t .

1.2 Simplicial, Cubical and Permutahedral Complexes


The following three convex polytopes play a central role in topology.
Definition 1.2.1. The standard n-simplex
n
= Conv{e1 , . . . , en+1 ∈ Rn+1 }
is the convex hull of the n + 1 standard basis vectors of Rn+1 . The standard n-cube
In = Conv{λ1 e1 + . . . + λn en ∈ Rn : λi ∈ {0, 1}}
is the convex hull of the 2n linear 0/1-combinations of the standard basis vectors of
Rn . The standard n-permutahedron
∇ n = Conv{σ (1)e1 + . . . + σ (n + 1)en+1 ∈ Rn : σ ∈ Sn+1 }
is the convex hull of the (n + 1)! permutations of the vector (1, . . . , n + 1) ∈ Rn+1 .
For n = 0 each of these polytopes is a single point. For n = 1 each is a single edge. For
n = 2 they are the regular triangle 2 , square I2 and hexagon ∇ 2 . For n = 3 they are the
regular tetrahedron 3 and cube I3 shown in Figure 1.6 and permutahedron ∇ 3 shown
in Figure 1.4.
Much of algebraic topology can be viewed as the study of certain subspaces of n .
Definition 1.2.2. A subspace X of a CW-space Y is said to be a CW-subspace if X is a CW-
space whose cells are cells of Y. A CW-subspace of n is called a finite simplicial space.

Example 1.2.1. An example of a 2-dimensional simplicial space is shown in Figure 1.7.


The space is a CW-subspace of 12 and is constructed as the surface of the convex hull of
the orbit of v = (1, 2, 3, 4) ∈ R4 under the permutation action of the alternating group A4 .
Simplicial, Cubical and Permutahedral Complexes | 15

Figure 1.6 The polytopes 3 and I3 .

Figure 1.7 Polytope boundary is a 2-dimensional CW-subspace of 12 .

This convex hull is a 3-dimensional polytope. The visualization in Figure 1.7 was obtained
from the following GAP session.

GAP session 1.2.1


gap> OrbitPolytope(AlternatingGroup(4),[1,2,3,4],["visual"]);

Definition 1.2.3. A simplicial complex K is a collection of finite subsets of some set V


satisfying:
(i) if σ ∈ K and τ ⊂ σ then τ ∈ K;
(ii) {v} ∈ K for each v ∈ V.
The sets σ ∈ K are called simplices and the elements v ∈ V are called vertices. The set
σ is called a k-simplex if |σ | = k + 1. A 1-simplex is called an edge. The complex K is
16 | Path Components and the Fundamental Group

said to be finite if the vertex set V is finite. The complex K is said to be of dimension n
if some simplex contains n + 1 vertices and no simplex contains more.
A finite simplicial space X gives rise to a simplicial complex K whose vertex set V is the
set of 0-cells of X, and whose simplices are those subsets σ ⊆ V whose convex hull is the
closure of some cell of X. Conversely, we can construct a finite simplicial space |K| from

=
any finite simplicial complex K by first choosing a bijection φ : V → {e1 , ..., e|V| } between
the vertex set of K and the standard basis vectors of R|V| , and then taking |K| to be the
union of the convex hulls Conv(φ(σ )) for each σ ∈ K. The simplicial space |K| is said to
be a geometric realization of K.
The HAP package uses the following data type for finite simplicial complexes.
Data type 1.2.1. A finite simplicial complex can be represented as a component object
K with the following components:
• K!.vertices is a list whose elements are distinct and represent the vertices of the
simplicial complex. It must be possible to test u < v for any two elements u, v in the
list where < is some fixed total order.
• K!.simplices(k,i) is a function which returns the list of vertices in the ith k-simplex.
The order of the vertices in the returned list is important and is chosen to be in
increasing order.
• K!.nrSimplices(k) is a function which returns the number of k-dimensional sim-
plices.
• K!.enumeratedSimplex(x) is a function which inputs a list x of vertices, in
increasing order, representing a k-simplex and returns the position of this simplex
in the list of all k-simplices.
• K!.properties is a list of pairs such as [“dimension", 2].
The operation IsHapSimplicialComplex(K) returns true when K is of this data
type.

Example 1.2.2. The following GAP session constructs the simplicial complex K
depicted in Figure 1.8 (right) and then converts it to the data type of a regular
CW-complex. The complex involves nine vertices with 1-simplices and 2-simplices
represented by lines and shaded triangles in the figure.

GAP session 1.2.2


gap> 2simplices:=
[[1,2,5], [2,5,8], [2,3,8], [3,8,9], [1,3,9], [1,4,9],
[4,5,8], [4,6,8], [6,8,9], [6,7,9], [4,7,9], [4,5,7],
[1,4,6], [1,2,6], [2,6,7], [2,3,7], [3,5,7], [1,3,5]];;

gap> K:=SimplicialComplex(2simplices);
Simplicial complex of dimension 2.
Simplicial, Cubical and Permutahedral Complexes | 17

2 3
1 1

5 4
8 9

4 5
6 7

1 1
2 3

Figure 1.8 Simplicial Klein bottle.

gap> Y:=RegularCWComplex(K);
Regular CW-complex of dimension 2

It can be shown that any simplicial space homeomorphic to the Klein bottle must have
at least eight vertices. So while the simplicial representation of the Klein bottle in this
example is not minimal, it is close to minimal. 

The following ubiquitous example of a simplicial complex arises from an arbitrary collec-
tion U = {Uλ }λ∈ of sets Uλ .
Definition 1.2.4. The nerve of the collection U = {Uλ }λ∈ is the simplicial complex
with vertex set V = U and with simplex set

Nerve(U ) = {σ ⊆ U : σ is finite and U = ∅}.
U∈σ

The nerve construction derives its importance from the following theorem which is
usually attributed to Karol Borsuk [30] and Jean Leray [190], a proof of which can be
found for example in Chapter 4 of [150].
Theorem 1.2.1. Let U = {Uλ }λ∈ be a collection of open subsets of a compact (or just para-
 
compact) Hausdorff space X such that X = λ∈ Uλ and such that λ∈σ Uλ is empty
or contractible for each finite subset σ ⊆ U . Then the geometric realization |Nerve(U )| is
homotopy equivalent to X.
The need for the openness hypothesis in Theorem 1.2.1 is illustrated by the cover U =
{U1 = [0, 1), U2 = {0}} of the circle S1 = [0, 1]/{0 ∼ 1}. The intersection U1 ∩ U2 is
18 | Path Components and the Fundamental Group

contractible. The geometric realization of the nerve Nerve(U ) = {{U1 }, {U2 }, {U1 , U2 }} is
homeomorphic to the unit interval [0, 1] and thus not homotopy equivalent to the circle.
The need for the contractibility hypothesis in Theorem 1.2.1 is illustrated by the
open cover U = {U1 = [0, 1/4) ∪ (3/4, 1], U2 = (1/3, 2/3)} of the circle S1 = [0, 1]/
{0 ∼ 1}. The geometric realization of the nerve is again homeomorphic to [0, 1].
The convex polytopes In and ∇ n can be used to define cubical and permutahe-
dral analogues of the notion of simplicial complex. We focus on computing with spe-
cial cases of these analogues and introduce the special cases as instances of ‘lattice
complexes’.
Let L ⊆ Rn be an additive subgroup of Euclidean space generated by some choice of n
linearly independent vectors VL = {v1 , · · · , vn }. Then L is a free abelian group and acts on
Rn as a group of translations, where v ∈ L acts via the translation Rn → Rn , x  → x + v.
Such a group L is called a lattice. Each non-zero element of L acts fixed-point freely, and a
fundamental domain for the action is the Dirichlet–Voronoi region

DL = {x ∈ Rn : ||x|| ≤ ||x − v|| for all v ∈ L}. (1.7)

Here we use the term fundamental domain to mean a closed region whose images under
the action cover Rn , the interiors of any two distinct images having empty intersection.
Lemma 1.2.2. If VL is the standard basis of Rn then the convex polytope DL is a translate of
the standard n-cube In .
Proof. The standard n-cube In of 1.2.1 is centred at z = (1/2, . . . , 1/2) ∈ Rn . Its translate
In0 = {x − z : x ∈ In } is an intersection of the 2n half spaces defined by the inequalities
||x|| ≤ ||x − ei || and ||x|| ≤ ||x + ei ||. Hence DL ⊆ In0 . Since In0 is clearly a fundamen-
tal domain for the action of the free abelian group L generated by the standard basis
vectors e1 , . . . , en ∈ Rn , we have DL = In0 

Lemma 1.2.3. If we identify Rn with the hyperplane

Rn = {(x1 , . . . , xn+1 ) ∈ Rn+1 : x1 + · · · + xn+1 = 0}


and take VL ⊂ Rn+1 to be the set of n vectors
VL = {(−n, 1, 1, . . . , 1, 1), (1, −n, 1, . . . , 1, 1), . . . , (1, 1, 1, . . . , −n, 1)}

then the convex polytope DL is a translate of the standard n-permutahedron ∇ n .


Proof. The standard permutahedron of 1.2.1 has its centre at z = (n+2) 2 (1, 1, . . . , 1)
∈ Rn+1 . Its translate ∇0n = {x − z : x ∈ ∇ n } is centred at the origin. By Lemma 1.1.3
the vertices of ∇0n are the (n + 1)! permutations of the vector v = (1, 2, . . . , n + 1) − z.
Let G denote the symmetric group of degree n + 1 generated by the set D =
{(1, 2), . . . , (n, n + 1)} of consecutive transpositions. Let Gk denote the subgroup
of G generated by the subset Dk = D \ {(k, k + 1)} of consecutive transpositions.
Let vGk denote the orbit of v under the permutation action of Gk and let Nk =
(1/|vGk |) w∈vGk w denote the average of all vectors in this orbit. One can check
Simplicial, Cubical and Permutahedral Complexes | 19

Figure 1.9 3-dimensional prism.

that Nk is of the form Nk = (x1 , . . . , xn+1 ) with x1 = . . . = xk and xk+1 = . . . = xn+1


for 1 ≤ k ≤ n, and that w − Nk , Nk  = 0 for all w ∈ vGk . Moreover,
w − Nk , Nk  ≤ 0 (1.8)

for all w ∈ vG , and the set {w − Nk : w ∈ vGk } spans a space of dimension n − 1. (For
any specific low value of n one could verify these claims simply by using GAP and
Polymake.) Consequently the inequality 1.8 describes a half space  corresponding to
a facet of ∇0n . The orbit NkG of Nk under the action of G contains n+1
k distinct vectors,
each corresponding to a distinct facet of ∇0n . We have thus found

n
n+1
= 2n+1 − 2
k
k=1

facets of ∇0n . Now v lies in n of these facets. By symmetry, each vertex of ∇0n lies in n of
these facets. It follows that the 2n+1 − 2 inequalities
< w − N, N > ≤ 0 , N ∈ NkG
form a complete and irredundant half space description of ∇0n (due to Rado [236]).
For each N ∈ NkG the vector 2N lies in the lattice L generated by VL . Hence DL ⊆
∇0 . The proof is completed by verifying that ∇0n is a fundamental domain for the
n

action of L. 

Other choices of VL can lead to other combinatorial structures on the Dirichlet–Voronoi


region DL such as the 3-dimensional hexagonal prism of Figure 1.9.
Definition 1.2.5. Any finite subset  ⊂ L of a lattice L ⊂ Rn determines a finite union
of polytopes 
X= DL + γ
γ ∈

where DL + γ = {x + γ : x ∈ DL }. We call such a union X a lattice space or L-space.


We refer to the polytopes DL + γ as facets of X. When DL = In0 we say that X is a pure
cubical space and that any CW-subspace of X is a cubical space. When DL = ∇0n we say
20 | Path Components and the Fundamental Group

Figure 1.10 Pure cubical and permutahedral models of the trefoil knot.

that X is a pure permutahedral space and that any CW-subspace of X is a permutahedral


space.
Examples of a 3-dimensional pure cubical space and 3-dimensional pure permutahedral
space are illustrated in Figure 1.10. Both examples model the trefoil knot.
Definition 1.2.6. Given a lattice L ⊂ Rn with preferred basis VL = {v1 , . . . , vn } we define
the L-ball BL to be the finite set of integer vectors
BL = {(λ1 , . . . , λn ) ∈ Zn : DL ∩ (DL + λ1 v1 + · · · + λn vn ) = ∅}.
The following Lemma 1.2.4 reformulates the observation that, in the tessellation of Rn by
unit n-cubes, two cubes intersect non-trivially if and only if their centres have coordinates
that differ by at most 1 in any position.
Lemma 1.2.4. If VL is the standard basis of Rn then the L-ball consists of the 3n integer vectors

BL = {(λ1 , . . . , λn ) : λi ∈ {−1, 0, 1}}.


The following Lemma 1.2.5 reformulates the observation that, in the permutahedral
tessellation of Rn , two distinct permutahedra intersect non-trivially if and only if their
intersection is an (n − 1)-dimensional facet of both permutahedra. The proof of Lemma
1.2.3 establishes that a given permutahedron has precisely 2n+1 − 2 facets; the direction
vectors from the centre of a permutahedron to the centres of its facets are given by the
2n+1 − 2 non-zero vectors in the set BL defined below. This set BL also contains the zero
vector.
Lemma 1.2.5. Let vi ∈ Rn+1 be the vector with i-th coordinate equal to −n and all other
coordinates equal to 1. If VL = {v1 , . . . vn } then the L-ball BL consists of the 2n − 1 integer
vectors
BL = {(λ1 , . . . , λn ) ∈ Zn : λ1 v1 + · · · + λn vn ∈ BL }
Simplicial, Cubical and Permutahedral Complexes | 21

v1 + v2 + 0v3
0v1 + v2 + 0v3

v1 + 0v2 + 0v3
0v1 + 0v2 + 0v3

0v1 + v2 + v3

v1 + 0v2 + v3
0v1 + 0v2 + v3

Figure 1.11 BL for VL = {v1 , v2 } where v1 = (−2, 1, 1), v2 = (1, −2, 1), v3 = (1, 1, −2).

where

n+1
BL = {μ1 v1 + . . . + μn+1 vn+1 : μi ∈ {0, 1}, μi ≤ n}.
i=1

Example 1.2.3. For VL = {v1 = (−2, 1, 1), v2 = (1, −2, 1)} and v3 = (1, 1, −2) the
vectors in BL are pictured in Figure 1.11. In this case
BL = {0v1 + 0v2 , v1 + 0v2 , −v1 + 0v2 , 0v1 + v2 , 0v1 − v2 , v1 − v2 , −v1 + v2 }
and so
BL = {(0, 0), (1, 0), (−1, 0), (0, 1), (0, −1), (1, −1), (−1, 1)}.


The following Definition 1.2.7 encodes the combinatorial ingredients of lattice spaces
needed for basic homotopy theoretic algorithms.
Definition 1.2.7. A lattice complex or L-complex consists of a finite set of integer vectors
BL ⊂ Zn and a finite n-dimensional array A = (aλ1 ...λn ) of binary valued entries
aλ1 ...λn ∈ {0, 1}. The indices lie in a range 1 ≤ λj ≤ dj and we call  = {(λ1 , . . . , λn ) :
1 ≤ λj ≤ dj } ⊂ Zn the index range.
We use the term pure permutahedral complex for a lattice complex with BL as in
Lemma 1.2.5. We use the term pure cubical complex for a lattice complex with BL as
in Lemma 1.2.4.
Definition 1.2.8. Let L ⊂ Rn be a lattice with preferred basis VL = {v1 , . . . , vn }. Let DL
be the corresponding Dirichlet–Voronoi region, and let BL be the L-ball of Definition
1.2.6. To any L-complex X = ( BL , A = (aλ ) ) with index range  ⊂ Zn we associate
the pure lattice space
22 | Path Components and the Fundamental Group

|X| = DL + (λ1 v1 + . . . + λn vn ).
λ = (λ1 , . . . , λn ) ∈ 
with aλ = 1

We say that |X| is the geometric realization of X with respect to the basis VL .
The HAP package uses the following data type for lattice complexes.
Data type 1.2.2. A lattice complex is represented as a component object M with the
following components.
• M!.binaryArray is an array with binary entries aλ1 ···λn ∈ {0, 1} for λj ∈ {1, . . . , dj }.
• M!.ball is the list of vectors in the L-ball BL .
• M!.properties is a list of pairs such as [“dimension", n] and [“arraySize",
[d1 , . . . , dn ]].
The associated function IsHAPLatticeComplex(M) returns the boolean true when
M is of this data type.
For the special case of cubical and permutahedral lattice complexes the component
M!.ball is omitted from data type 1.2.2 in HAP and replaced by associated functions
IsHAPPureCubicalComplex(M) and IsHAPPurePermutahedralComplex(M)
that return true
 when M is of these data types.
Let X = γ ∈ DL + γ be an arbitrary lattice space. To ease notation we write Dγ =
DL + γ . By the nerve of the lattice space we mean the simplicial complex

Nerve(X) = Nerve(D)

arising as the nerve of the covering D = {Dγ }γ ∈ . Theorem 1.2.1 yields the following.
Proposition 1.2.6. A lattice space X ⊂ RnL is homotopy equivalent to the geometric realiza-
tion |Nerve(X)| of its nerve.
Proof. For each convex polytope Dγ in X we can construct a small open convex neigh-
bourhood Dγ ⊂ Uγ such that the convex sets Uγ form an open cover of X. Then
Nerve(X) can be viewed as the nerve of the cover U = {Uγ }γ ∈ . Theorem 1.2.1
implies that |Nerve(X)| = |Nerve(U )| is homotopy equivalent to X. 

Proposition 1.2.6 motivates the following Algorithm 1.2.1.

Algorithm 1.2.1 Nerve of a lattice complex.


Input: A lattice complex ( BL , A = (aλ1 ...λn ) ).
Output: A simplicial complex K whose geometric realization is homotopy equivalent
to the geometric realization of the lattice complex.
1: procedure
Simplicial, Cubical and Permutahedral Complexes | 23

2: Construct the vertex set V = {(λ1 , . . . , λn ) ∈ Zn : aλ1 ...λn = 1}.


3: for k = 1, . . . , N = |BL | do
4: Construct the set of k-tuples of integer vectors

Bk = {(v1 , . . . , vk ) : 0 = vi ∈ BL , vi < vj , vi − vj ∈ BL for 1 ≤ i < j ≤ N}

with respect to some fixed choice of total order < on BL .


5: end for
6: Initialize K = {{v} : v ∈ V}.
7: for v ∈ V do
8: for k = 1, . . . , N do
9: for (v1 , . . . , vk ) ∈ Bk do
10: if av+vj = 1 for all 1 ≤ j ≤ k then
11: Add the k-simplex σ = {v, v + v1 , . . . , v + vk } to K.
12: end if
13: end for
14: end for
15: end for
16: Return the simplicial complex K with vertex set V.
17: end procedure

Example 1.2.4. The following GAP session constructs the pure permutahedral com-
plex associated to the pure permutahedral space M in Figure 1.10 (right) and then applies
Algorithm 1.2.1 to obtain the nerve of M. The nerve is a 1-dimensional simplicial complex
illustrated in Figure 1.12 (right). The session includes commands for producing the
permutahedral illustrations in Figures 1.10 and 1.12.

GAP session 1.2.4


gap> M:=PurePermutahedralKnot(3,1);
Pure permutahedral complex of dimension 3.

gap> K:=Nerve(M);
Simplicial complex of dimension 1.

gap> Display(M); #See Figure 1.10


gap> Display(Graph(K)); #See Figure 1.12

The following continuation of the GAP session constructs the nerve of the pure cubical
space M in Figure 1.10 (left) and its illustration in Figure 1.12 (left). This nerve is 2-
dimensional, and is homotopy equivalent to the nerve of the permutahedral space M.
24 | Path Components and the Fundamental Group

Figure 1.12 Nerves of the cubical space (left) and permutahedral space (right) of Figure 1.10.

GAP session 1.2.4


gap> M1:=PureCubicalKnot(3,1);;
gap> K1:=Nerve(M1);
Simplicial complex of dimension 2.

gap> Display(Graph(K1));

In the permutahedral tessellation of Rn by translates of the standard permutahedron, each


vertex belongs to the boundary of precisely n + 1 facets (a facet being an n-dimensional
permutahedron). Consequently the nerve Nerve(X) of a pure permutahedral space X ⊂
Rn has dimension at most n. In contrast, the nerve of a pure cubical space X ⊂ Rn has
dimension at most 2n . Figures 1.10 and 1.12 illustrate how information is lost in passing
from a lattice space to its nerve: the lattice space is embedded in Rn ; the corresponding
lattice complex contains information on this embedding whereas the nerve retains no
information on the embedding.
Certain topological operations on lattice spaces admit easily computed analogues
in the setting of lattice complexes. The required relationship between a combinato-
rial operation O(X1 , . . . , Xk ) on lattice complexes and the corresponding topological
operation O(|X1 |, . . . , |Xk |) is that they should commute with geometric realization:
|O(X1 , . . . , Xn )| = O(|X1 |, . . . , |Xn |). Definition 1.2.9 lists a few such basic topological
operations with combinatorial analogues given in 1.2.10.
Definition 1.2.9. Let L ⊂ Rn be a lattice and let X and Y be two L-spaces. Their L-
union is just their set-theoretic union X ∪ Y. Their L-intersection is the closure X̊ ∩Y̊
of the intersection of their interiors. The L-difference X − Y̊ consists of those points
Another random document with
no related content on Scribd:
draft further groups only by sheer force. I refused to do so. But at
that time I managed, due to Minister Speer’s understanding, to
arrange not to have the workers taken to their work, but that the work
be brought to the workers. Big orders arrived in the Netherlands, and
the industries charged with filling these orders were declared
“blocked” industries. Among them was the Organization Todt.
Dutchmen who were needed in the Netherlands were exempted.
Over a million certificates of exemption were issued by the Dutch
authorities. It was clear that that was Dutch sabotage, but I did not
want to take steps against it. No woman was ever forced to work
outside the Netherlands, nor were young people under 18. Reich
Minister Lammers has confirmed here that at the beginning of 1944
he transmitted the Führer order to me demanding that 250,000
workers be brought to the Reich. He also confirmed that I refused it.
At that time Gauleiter Sauckel came to me and discussed this matter
with me. I must state that he understood my arguments surprisingly
quickly, and did not insist on carrying out the forced recruitment. By
“forced recruitment,” I mean blocking off whole districts and seizing
the men.
In the course of 1944 labor recruitment ceased almost
completely. Instead of 250,000 I believe 12,000 were sent to the
Reich. But something entirely different took place in the fall of 1944.
From experience gathered in France and Belgium, the High
Command of the Army decided that able-bodied Dutchmen were to
be drawn from Holland—that is, the western Netherlands. That was
because the Netherlands Government in England had set up an
illegal army. I had the organizational charter in my hands. There was
a complete General Staff and a complete War Ministry. We estimated
that there were about 50,000 illegal troops. If an appeal was made
and one more able-bodied Dutchman joined, the illegal forces would
have been more numerous than the German troops in Holland.
Moreover, they had received very good equipment from England.
Full shiploads of the most modern tommy guns were confiscated by
us, but I am convinced that the larger part of the weapons was not
confiscated.
The High Command of the Army, through the military
commanders, ordered the removal of the able-bodied Dutchmen.
The measure was entirely carried out by the Armed Forces. A
general who was sent for that very purpose was entrusted with the
task, with an operational staff of his own. This measure was carried
out by the local commandants. My local authorities were informed of
the action to be taken, sometimes at the last moment and sometimes
not at all. Of course I knew about the measure. In view of these
reasons I could not take the responsibility of protesting against it. I
only intervened when it was necessary to protect civilian interests,
and prevent the workers in the vital industries from being removed
also. I entrusted this to the Plenipotentiary General for the Total War
Effort, whom Dr. Goebbels had sent to the Netherlands in the
meantime. His task was to issue exemption certificates. He issued
50,000 of them.
THE PRESIDENT: Do you mean Himmler?
SEYSS-INQUART: Goebbels, the Delegate for Total War Effort.
I admit that this measure led to conditions which were
unbearable for the Dutch. I am certain that, as for feeding, temporary
lodging, and transportation, the population in the bombed German
territories did not live under any better conditions. But one could not
demand this from the Dutch. Many Dutch people told me, at that
time, that they would be willing to agree to this labor commitment—
by no means in order to aid the German cause, but only in order to
avoid these severe conditions—if they would be drafted in orderly
proceedings. I then did that. The Plenipotentiary General for the
Total War Effort issued the proclamation which has been submitted
to the Court. The people were called to the labor offices, recorded on
lists, sent home again to get clothes, and ordered to report to the
railroad stations. Not the Police but labor officials took them to the
Reich to be put to work under normal conditions. The Dutch report,
in its objectivity, recognizes this fact. It speaks of the better
transportation facilities for those mobilized for labor. I am responsible
for this labor mobilization for the reasons which I have given.
DR. STEINBAUER: Mr. President, may I remark in this
connection that my Exhibit Seyss-Inquart-78, Document 1726-PS,
Exhibit USA-195, Page 200, excerpt from the Netherlands
Government report, confirms the statement of my client fully. I should
like to read it briefly because it is important. Page 2:
“...workers who refused—relatively few—were prosecuted
by the Security Service.”
Then, Page 3:
“...apart from that, the measure was not very successful.
Certain German authorities seem to have opposed its
execution, because many former members of the armed
forces received exemption; others went underground....
“The result was that in the last month of 1943, and in the
greater part of 1944, relatively few persons were
deported....”
And then, Page 6:
“...until the end of 1944, the method of transportation for
deportees was bearable....
“Anyone who reported for the manpower mobilization in
January 1945, enjoyed improved transportation facilities—
that is, almost the whole journey by rail, although only in
freight cars....”
SEYSS-INQUART: Even for our own use we had no other cars
at that time.
I should like to refer to the fact that I also drafted Dutch workers
in order to carry out the construction work entrusted to me by the
Führer on the resistance lines east of the Ijssel. I used part of the
transports which came from Rotterdam, et cetera, for this purpose,
and thus I prevented these people from being sent to the Reich. I
had no influence on the treatment in the Reich; I only forbade further
transports into the Gau Essen, because it was reported to me that in
the Rees Camp the treatment was very poor, and that some Dutch
people had died.
DR. STEINBAUER: Now I come to the next count of the
Indictment—that is, to the Jewish question. The Netherlands
Government report, Exhibit USA-195, sums up all ordinances
submitted by the Prosecution. I should like to submit this Document
1726-PS to my client, so that it may remind him of the laws. The
Court already has it.
[Turning to the defendant.] What did you, as Reich
Commissioner, do about the Jewish question?
SEYSS-INQUART: When I took over the functions of the Reich
Commissioner, I of course realized that I had to take a definite
attitude, and would have to take some steps with regard to the Jews
in the Netherlands. Amsterdam, in western Europe, is perhaps one
of the best known and one of the oldest seats of Jewish communities
in western Europe. Moreover, in the Netherlands there were a great
many German Jewish emigrants.
I will say quite openly that since the first World War and the
postwar period, I was an anti-Semite and went to Holland as such. I
need not go into detail about that here. I have said all that in my
speeches, and would refer you to them. I had the impression, which
will be confirmed everywhere, that the Jews, of course, had to be
against National Socialist Germany. There was no discussion of the
question of guilt as far as I was concerned. As head of an occupied
territory I had only to deal with the facts. I had to realize that,
particularly from the Jewish circles, I had to reckon with resistance,
defeatism, and so on.
I told Generaloberst Von Brauchitsch, Commander-in-Chief of
the Army, that in the Netherlands I would remove Jews from leading
posts in the economy, the press, and the administration. The
measures taken by me from May 1940 to March 1941 were limited to
that. The Jewish officials were dismissed, but were given pensions.
The Jewish firms were registered, and the heads of the firms were
dismissed. In the spring of 1941 Heydrich came to me in the
Netherlands. He told me that we would have to expect that the
greatest resistance would come from Jewish circles. He told me that
the Jews would at least have to be treated like other enemy aliens.
The English, for instance, in the Netherlands, were interned and their
property confiscated. In view of the large number of Jews—about
140,000—this was not so simple. I admit frankly that I did not object
to this argument of Heydrich’s. I also felt that this was necessary in a
war which I absolutely considered a life and death struggle for the
German people. For that reason, in March 1941 I ordered that the
Jews in the Netherlands be registered. And then things went on step
by step.
I will not say that the final results—as far as the Netherlands are
concerned—were intended thus from the beginning; but we decided
on this method. The regulations cited here, if they appeared in the
Dutch Legal Gazette, were mostly signed by me personally. At least,
they were published with my express assent. Individual measures
mentioned here, however, were not by me. For example, in February
1,000 Jews were supposed to have been arrested and sent to
Buchenwald and Mauthausen. That much I know. In the Amsterdam
ghetto...
THE PRESIDENT: February of what year?
SEYSS-INQUART: February 1941. In the Amsterdam ghetto, a
National Socialist was killed by Jews. Reichsführer Himmler
thereupon ordered 400 young Jews sent to Mauthausen. I was not in
the Netherlands at that time. That was, by the way, the reason for
the general strike in Amsterdam in March 1941. After my return to
the Netherlands, I protested against this measure, and to my
knowledge such a mass transfer to Mauthausen did not occur again.
Synagogues were also burned. Apparently someone ambitiously
tried to imitate the 8 November 1938. I immediately intervened.
Further incidents did not occur. On the other hand, the Police wanted
to tear down the old temple in Amsterdam. General Secretary Van
Damm called this to my attention, and I prevented it.
I indicated earlier that the motive for the measures is to be found
in the consideration to treat Jews like enemy aliens. Later, with other
measures, the original intention was certainly abandoned; they
became the same as those taken against the Jews in the Reich.
Perhaps, in one case or another, this was even exceeded, for I know
that, for example, in the Netherlands there was a drive to get the
Jews sterilized.
Our goal was to keep the Jews in the Netherlands—namely, in
two districts of Amsterdam and then in the Westerborg Camp and in
the Vught Camp. We had also prepared to create the necessary
opportunities for work. I instructed the General Secretary for
Education to withdraw as much money from the Dutch budget for the
education of the Jews as they should have according to their
proportion of the population. It is certain that with this measure of
concentrating the Jews in two districts and two camps, harshness
occurred which was perhaps unavoidable, and which might even in
some cases be considered as excessive.
Finally, the Security Police demanded the introduction of the so-
called Jewish Star. A not inconsiderable number of Jews were not in
the confined areas, and the Security Police demanded that they be
marked in order that it might be ascertained whether the Jews
adhered to the other restrictions. In the eyes of Germans, this star
was certainly considered a stigma. The Dutch did not consider it as
such. There was many a Dutchman who, out of protest, wore such a
star himself.
About 1942, I believe, Heydrich came along with further
demands—this time that the Jews be evacuated. He explained this
by saying that Holland would sooner or later be a theater of war, in
which one could not allow such a hostile population to remain. He
pointed out that he was responsible for the police security of the
Reich, and that he could not bear this responsibility if the Jews
remained in Holland. I believe that we in the Netherlands opposed
this evacuation project for 3 or 4 months while attempting to find
other ways out.
Finally, Heydrich had a Führer decree sent to me, according to
which he had unlimited powers to carry out all measures in the
occupied territories as well. I inquired of Bormann what this meant,
and this order was confirmed, whereupon the evacuation of the Jews
was begun. At that time I tried to ascertain the fate of the Jews, and
it is rather difficult for me to speak about it now because it sounds
like mockery. I was told that the Jews were to be sent to Auschwitz. I
had people sent from the Netherlands to Auschwitz. They came back
with the report that that was a camp for 80,000 people with sufficient
space. The people were comparatively well off there. For example,
they had an orchestra of 100 men. A witness here, confirming that
this orchestra played when victims arrived at Auschwitz, made me
think of that report.
THE PRESIDENT: Dr. Steinbauer, you probably won’t finish
today.
DR. STEINBAUER: No.
THE PRESIDENT: How long do you think you are likely to be?
DR. STEINBAUER: I hope to be finished, at the latest, by noon
tomorrow, but perhaps it will take only an hour. I still have questions
on plundering, economic measures, and destruction. Then I will be
finished.
THE PRESIDENT: We will adjourn now.
[The Tribunal adjourned until 11 June 1946 at 1000 hours.]

TRANSCRIBER NOTES

Punctuation and spelling have been maintained except where


obvious printer errors have occurred such as missing periods or
commas for periods. English and American spellings occur
throughout the document; however, American spellings are the rule,
hence, “Defense” versus “Defence”. Unlike Blue Series volumes I
and II, this volume includes French, German, Polish and Russian
names and terms with diacriticals: hence Führer, Göring, etc.
throughout.
Although some sentences may appear to have incorrect
spellings or verb tenses, the original text has been maintained as it
represents what the tribunal read into the record and reflects the
actual translations between the German, English, French, and
Russian documents presented in the trial.
An attempt has been made to produce this eBook in a format as
close as possible to the original document presentation and layout.
[The end of Trial of the Major War Criminals Before the International
Military Tribunal Vol. 15, by Various.]
*** END OF THE PROJECT GUTENBERG EBOOK TRIAL OF THE
MAJOR WAR CRIMINALS BEFORE THE INTERNATIONAL
MILITARY TRIBUNAL, NUREMBURG, 14 NOVEMBER 1945-1
OCTOBER 1946, VOLUME 15 ***

Updated editions will replace the previous one—the old editions will
be renamed.

Creating the works from print editions not protected by U.S.


copyright law means that no one owns a United States copyright in
these works, so the Foundation (and you!) can copy and distribute it
in the United States without permission and without paying copyright
royalties. Special rules, set forth in the General Terms of Use part of
this license, apply to copying and distributing Project Gutenberg™
electronic works to protect the PROJECT GUTENBERG™ concept
and trademark. Project Gutenberg is a registered trademark, and
may not be used if you charge for an eBook, except by following the
terms of the trademark license, including paying royalties for use of
the Project Gutenberg trademark. If you do not charge anything for
copies of this eBook, complying with the trademark license is very
easy. You may use this eBook for nearly any purpose such as
creation of derivative works, reports, performances and research.
Project Gutenberg eBooks may be modified and printed and given
away—you may do practically ANYTHING in the United States with
eBooks not protected by U.S. copyright law. Redistribution is subject
to the trademark license, especially commercial redistribution.

START: FULL LICENSE


THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the free


distribution of electronic works, by using or distributing this work (or
any other work associated in any way with the phrase “Project
Gutenberg”), you agree to comply with all the terms of the Full
Project Gutenberg™ License available with this file or online at
www.gutenberg.org/license.

Section 1. General Terms of Use and


Redistributing Project Gutenberg™
electronic works
1.A. By reading or using any part of this Project Gutenberg™
electronic work, you indicate that you have read, understand, agree
to and accept all the terms of this license and intellectual property
(trademark/copyright) agreement. If you do not agree to abide by all
the terms of this agreement, you must cease using and return or
destroy all copies of Project Gutenberg™ electronic works in your
possession. If you paid a fee for obtaining a copy of or access to a
Project Gutenberg™ electronic work and you do not agree to be
bound by the terms of this agreement, you may obtain a refund from
the person or entity to whom you paid the fee as set forth in
paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only be


used on or associated in any way with an electronic work by people
who agree to be bound by the terms of this agreement. There are a
few things that you can do with most Project Gutenberg™ electronic
works even without complying with the full terms of this agreement.
See paragraph 1.C below. There are a lot of things you can do with
Project Gutenberg™ electronic works if you follow the terms of this
agreement and help preserve free future access to Project
Gutenberg™ electronic works. See paragraph 1.E below.
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright law in
the United States and you are located in the United States, we do
not claim a right to prevent you from copying, distributing,
performing, displaying or creating derivative works based on the
work as long as all references to Project Gutenberg are removed. Of
course, we hope that you will support the Project Gutenberg™
mission of promoting free access to electronic works by freely
sharing Project Gutenberg™ works in compliance with the terms of
this agreement for keeping the Project Gutenberg™ name
associated with the work. You can easily comply with the terms of
this agreement by keeping this work in the same format with its
attached full Project Gutenberg™ License when you share it without
charge with others.

1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the terms
of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other


immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project Gutenberg™
work (any work on which the phrase “Project Gutenberg” appears, or
with which the phrase “Project Gutenberg” is associated) is
accessed, displayed, performed, viewed, copied or distributed:
This eBook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this eBook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived


from texts not protected by U.S. copyright law (does not contain a
notice indicating that it is posted with permission of the copyright
holder), the work can be copied and distributed to anyone in the
United States without paying any fees or charges. If you are
redistributing or providing access to a work with the phrase “Project
Gutenberg” associated with or appearing on the work, you must
comply either with the requirements of paragraphs 1.E.1 through
1.E.7 or obtain permission for the use of the work and the Project
Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted


with the permission of the copyright holder, your use and distribution
must comply with both paragraphs 1.E.1 through 1.E.7 and any
additional terms imposed by the copyright holder. Additional terms
will be linked to the Project Gutenberg™ License for all works posted
with the permission of the copyright holder found at the beginning of
this work.

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files containing a
part of this work or any other work associated with Project
Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this


electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1 with
active links or immediate access to the full terms of the Project
Gutenberg™ License.
1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or expense
to the user, provide a copy, a means of exporting a copy, or a means
of obtaining a copy upon request, of the work in its original “Plain
Vanilla ASCII” or other form. Any alternate format must include the
full Project Gutenberg™ License as specified in paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™ works
unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing


access to or distributing Project Gutenberg™ electronic works
provided that:

• You pay a royalty fee of 20% of the gross profits you derive from
the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”

• You provide a full refund of any money paid by a user who


notifies you in writing (or by e-mail) within 30 days of receipt that
s/he does not agree to the terms of the full Project Gutenberg™
License. You must require such a user to return or destroy all
copies of the works possessed in a physical medium and
discontinue all use of and all access to other copies of Project
Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of


any money paid for a work or a replacement copy, if a defect in
the electronic work is discovered and reported to you within 90
days of receipt of the work.

• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™


electronic work or group of works on different terms than are set
forth in this agreement, you must obtain permission in writing from
the Project Gutenberg Literary Archive Foundation, the manager of
the Project Gutenberg™ trademark. Contact the Foundation as set
forth in Section 3 below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend


considerable effort to identify, do copyright research on, transcribe
and proofread works not protected by U.S. copyright law in creating
the Project Gutenberg™ collection. Despite these efforts, Project
Gutenberg™ electronic works, and the medium on which they may
be stored, may contain “Defects,” such as, but not limited to,
incomplete, inaccurate or corrupt data, transcription errors, a
copyright or other intellectual property infringement, a defective or
damaged disk or other medium, a computer virus, or computer
codes that damage or cannot be read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except


for the “Right of Replacement or Refund” described in paragraph
1.F.3, the Project Gutenberg Literary Archive Foundation, the owner
of the Project Gutenberg™ trademark, and any other party
distributing a Project Gutenberg™ electronic work under this
agreement, disclaim all liability to you for damages, costs and
expenses, including legal fees. YOU AGREE THAT YOU HAVE NO
REMEDIES FOR NEGLIGENCE, STRICT LIABILITY, BREACH OF
WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE
PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE
FOUNDATION, THE TRADEMARK OWNER, AND ANY
DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE
TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL,
PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you


discover a defect in this electronic work within 90 days of receiving it,
you can receive a refund of the money (if any) you paid for it by
sending a written explanation to the person you received the work
from. If you received the work on a physical medium, you must
return the medium with your written explanation. The person or entity
that provided you with the defective work may elect to provide a
replacement copy in lieu of a refund. If you received the work
electronically, the person or entity providing it to you may choose to
give you a second opportunity to receive the work electronically in
lieu of a refund. If the second copy is also defective, you may
demand a refund in writing without further opportunities to fix the
problem.

1.F.4. Except for the limited right of replacement or refund set forth in
paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied


warranties or the exclusion or limitation of certain types of damages.
If any disclaimer or limitation set forth in this agreement violates the
law of the state applicable to this agreement, the agreement shall be
interpreted to make the maximum disclaimer or limitation permitted
by the applicable state law. The invalidity or unenforceability of any
provision of this agreement shall not void the remaining provisions.
1.F.6. INDEMNITY - You agree to indemnify and hold the
Foundation, the trademark owner, any agent or employee of the
Foundation, anyone providing copies of Project Gutenberg™
electronic works in accordance with this agreement, and any
volunteers associated with the production, promotion and distribution
of Project Gutenberg™ electronic works, harmless from all liability,
costs and expenses, including legal fees, that arise directly or
indirectly from any of the following which you do or cause to occur:
(a) distribution of this or any Project Gutenberg™ work, (b)
alteration, modification, or additions or deletions to any Project
Gutenberg™ work, and (c) any Defect you cause.

Section 2. Information about the Mission of


Project Gutenberg™
Project Gutenberg™ is synonymous with the free distribution of
electronic works in formats readable by the widest variety of
computers including obsolete, old, middle-aged and new computers.
It exists because of the efforts of hundreds of volunteers and
donations from people in all walks of life.

Volunteers and financial support to provide volunteers with the


assistance they need are critical to reaching Project Gutenberg™’s
goals and ensuring that the Project Gutenberg™ collection will
remain freely available for generations to come. In 2001, the Project
Gutenberg Literary Archive Foundation was created to provide a
secure and permanent future for Project Gutenberg™ and future
generations. To learn more about the Project Gutenberg Literary
Archive Foundation and how your efforts and donations can help,
see Sections 3 and 4 and the Foundation information page at
www.gutenberg.org.

Section 3. Information about the Project


Gutenberg Literary Archive Foundation
The Project Gutenberg Literary Archive Foundation is a non-profit
501(c)(3) educational corporation organized under the laws of the
state of Mississippi and granted tax exempt status by the Internal
Revenue Service. The Foundation’s EIN or federal tax identification
number is 64-6221541. Contributions to the Project Gutenberg
Literary Archive Foundation are tax deductible to the full extent
permitted by U.S. federal laws and your state’s laws.

The Foundation’s business office is located at 809 North 1500 West,


Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up
to date contact information can be found at the Foundation’s website
and official page at www.gutenberg.org/contact

Section 4. Information about Donations to


the Project Gutenberg Literary Archive
Foundation
Project Gutenberg™ depends upon and cannot survive without
widespread public support and donations to carry out its mission of
increasing the number of public domain and licensed works that can
be freely distributed in machine-readable form accessible by the
widest array of equipment including outdated equipment. Many small
donations ($1 to $5,000) are particularly important to maintaining tax
exempt status with the IRS.

The Foundation is committed to complying with the laws regulating


charities and charitable donations in all 50 states of the United
States. Compliance requirements are not uniform and it takes a
considerable effort, much paperwork and many fees to meet and
keep up with these requirements. We do not solicit donations in
locations where we have not received written confirmation of
compliance. To SEND DONATIONS or determine the status of
compliance for any particular state visit www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states where


we have not met the solicitation requirements, we know of no
prohibition against accepting unsolicited donations from donors in
such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot make


any statements concerning tax treatment of donations received from
outside the United States. U.S. laws alone swamp our small staff.

Please check the Project Gutenberg web pages for current donation
methods and addresses. Donations are accepted in a number of
other ways including checks, online payments and credit card
donations. To donate, please visit: www.gutenberg.org/donate.

Section 5. General Information About Project


Gutenberg™ electronic works
Professor Michael S. Hart was the originator of the Project
Gutenberg™ concept of a library of electronic works that could be
freely shared with anyone. For forty years, he produced and
distributed Project Gutenberg™ eBooks with only a loose network of
volunteer support.

Project Gutenberg™ eBooks are often created from several printed


editions, all of which are confirmed as not protected by copyright in
the U.S. unless a copyright notice is included. Thus, we do not
necessarily keep eBooks in compliance with any particular paper
edition.

Most people start at our website which has the main PG search
facility: www.gutenberg.org.

This website includes information about Project Gutenberg™,


including how to make donations to the Project Gutenberg Literary
Archive Foundation, how to help produce our new eBooks, and how
to subscribe to our email newsletter to hear about new eBooks.

You might also like