90 KiB
Computing homotopy groups¶
Mathematical aspects¶
The method used here to compute the homotopy groups is known as the Whitehead tower. We recall some mathematical points:
1) The Hurewicz theorem.¶
Theorem. Let X be a 1-connected space such that all its homology groups $H_r(X)$ are null for $0<r<n$, then $\pi_n(X)\simeq H_n(X)$.
2) The properties of the classifying spaces.¶
Let $X$ such that $\pi_r(X)=0$ for $0<r<n$. From now on, we shall denote $\pi_n(X)$ simply by $\pi$. Let us consider the universal coefficients exact sequence: $$ 0 \longrightarrow Ext(H_{n-1}(X), \pi) \longrightarrow H^n(X,\pi) \longrightarrow Hom(H_n(X),\pi) \longrightarrow 0.$$ Here $H_{n-1}(X)=0$, so that a canonical isomorphism is given: $$H^n(X,\pi) \buildrel {\simeq} \over \longrightarrow Hom(H_n(X),\pi),$$ but $H_n(X) \simeq \pi$ and this gives us a canonical element $h \in H^n(X, \pi)$ which is the fundamental $n$-th cohomology class in this context. A cocycle $\chi$ representing $h$ is constructed as follows. In the chain complex $$ \cdots \rightarrow C_{n+1} \buildrel {d_{n+1}} \over \longrightarrow C_n \buildrel {d_n} \over \longrightarrow C_{n-1} \longrightarrow \cdots,$$ the kernel $Z_n$ of $d_n$ is a summand of $C_n(X)$: $$ C_n = Z_n \oplus S$$ and such a decomposition induces a projection $p:C_n(X) \longrightarrow Z_n$. Finally, we have also the canonical projection $p':Z_n \longrightarrow H_n=\pi$. Then, $\chi$ can be defined by $\chi = p' \circ p$ and $\chi$ is a cocycle. If another $p$ is chosen, another $\chi$ is obtained but the cohomology class is the same.
Let us fix now a choice for the cocycle $\chi: C_n(X) \longrightarrow \pi$. This cocycle induces in turn a simplicial map: $$ \varphi_\chi: C_n(X) \longrightarrow K(\pi,n), $$ where $K(\pi,n)$ is the classifying group $K(\pi_n(X),n)$ of the group $\pi_n(X)=\pi$. If $\chi'$ is another choice for the cocycle then $\varphi_{\chi'}$ is homotopic to $\varphi_\chi$. We recall that the space $K(\pi,n)$ has the following properties:
- $H_r(K(\pi,n))=0$ for $0 < r < n$,
- $\pi_r(K(\pi,n))=0$ for $r \not= n$,
- $\pi_n(K(\pi,n))=H_n(K(\pi,n)= \pi$.
On the other hand, a canonical fibration of base space $K(\pi, n)$ and fibre space $K(\pi, n-1)$ is deduced from a canonical twisting operator $$\tau: K(\pi, n) \longrightarrow K(\pi, n-1)$$
$$ \begin{gathered} K(\pi, n-1)\cr \downarrow \cr K(\pi, n) \times_\tau K(\pi, n-1) \cr \downarrow \cr K(\pi,n) \end{gathered} $$
So, if a simplicial map $\varphi_\chi: X \longrightarrow K(\pi,n)$ is given, it is then possible to construct a fibration of base space $X$ and fibre space $K(\pi, n-1)$, the twisting operator being then defined by: $\tau_\chi = \tau \circ \varphi_\chi $, according to the diagram: $$\begin{aligned} K(\pi, n-1)\qquad &\qquad \buildrel {=} \over \longrightarrow & K(\pi, n-1)\qquad \cr \downarrow\qquad\qquad & & \downarrow\qquad\qquad \cr X'=X \times_{\tau_\chi} K(\pi, n-1) & \qquad \buildrel {\psi_\chi} \over \longrightarrow & K(\pi,n) \times_\tau K(\pi, n-1) \cr \downarrow\qquad\qquad & & \downarrow\qquad\qquad \cr X \qquad\qquad & \qquad\buildrel \varphi_\chi \over \longrightarrow & K(\pi,n)\qquad\quad \end{aligned}$$
3) The Serre exact sequence of the homotopy groups of fibrations.¶
Let us consider the fibration $$F \quad \hookrightarrow\quad T=X \otimes_\tau F \hskip 1.2em \longrightarrow \hskip -1.2em \longrightarrow \quad X,$$ The Serre exact sequence establishes a connection between the homotopy groups of the 3 spaces, in any dimension: $$\cdots \longrightarrow \pi_{n+1}(F) \longrightarrow \pi_{n+1}(T) \longrightarrow \pi_{n+1}(X) \longrightarrow \pi_n(F) \longrightarrow$$ $$\longrightarrow \pi_n(T) \longrightarrow \pi_n(X) \longrightarrow \pi_{n-1}(F) \longrightarrow \cdots $$ In our special case, where the fibration is: $$K(\pi, n-1) \quad \hookrightarrow\quad X' \hskip 1.2em \longrightarrow \hskip -1.2em\longrightarrow \quad X,$$ the Serre sequence may be written: $$\cdots \longrightarrow \pi_{n+1}(K(\pi, n-1)) \longrightarrow \pi_{n+1}(X') \longrightarrow \pi_{n+1}(X) \longrightarrow $$ $$\longrightarrow \pi_n(K(\pi, n-1))\longrightarrow\pi_n(X')\longrightarrow \pi_n(X)\longrightarrow \pi_{n-1}(K(\pi, n-1)) \longrightarrow 0.$$ But we know that $\pi_i(K(\pi,n))=0$ for $i \not= n$ and that $\pi_n(K(\pi, n))=\pi,$ so the exact sequence may be re-written: $$0 \rightarrow \pi_{n+1}(X') \rightarrow \pi_{n+1}(X) \rightarrow 0 \rightarrow \pi_n(X') \rightarrow \pi_n(X) \rightarrow \pi \rightarrow 0.$$ The subsequence: $$0 \longrightarrow \pi_n(X') \longrightarrow \pi_n(X)\longrightarrow \pi \longrightarrow 0.$$ is exact; furthermore, the cocycle $\chi$ is such that the connection morphism $\partial: \pi_n(X) \rightarrow \pi$ is the identity; so that we deduce that $\pi_n (X')=0$.
On the other hand, from the exactness of the subsequence $$0 \longrightarrow \pi_{n+1}(X') \longrightarrow \pi_{n+1}(X) \longrightarrow 0$$ we deduce that $\pi_{n+1}(X') \simeq \pi_{n+1}(X)$ and more generally $\pi_r(X') \simeq \pi_r(X)$ for $r \not= n.$ In particular, $\pi_r(X')=0$ for $r \leq n+1$ and the Hurewicz theorem gives again: $$H_{n+1}(X') \simeq \pi_{n+1}(X') \simeq \pi_{n+1}(X).$$ So, if we know how to compute $H_{n+1}(X')$ then we have obtained $\pi_{n+1}(X).$
4) The Whitehead tower¶
Let us denote for a reason which will be clear in a moment the space $X'$ by $X^{(n+1)}$. Due to the properties of $X^{(n+1)}$, we may iterate the process, namely, build the following fibrations, where $\pi_{n+1}(X^{(n+1)})$ is denoted simply by $\pi'$:
$$\begin{aligned} K(\pi', n)\qquad\quad &\qquad\buildrel {=} \over \longrightarrow & K(\pi', n)\qquad\quad \cr \downarrow\qquad\qquad & & \downarrow\qquad\qquad \cr X^{(n+2)}=X^{(n+1)} \times_{\tau_\chi} K(\pi', n) &\qquad\buildrel {\psi_\chi} \over \longrightarrow & K(\pi',n+1) \times_\tau K(\pi', n) \cr \downarrow \qquad\qquad & & \downarrow\qquad\qquad \cr X^{(n+1)}\qquad\quad & \qquad\buildrel \varphi_\chi \over \longrightarrow & K(\pi',n+1)\qquad \end{aligned}$$
where $X^{(n+2)}= X^{(n+1)} \times_{\tau_\chi} K(\pi', n)$ has the property $$H_{n+2}(X^{(n+2)}) \simeq \pi_{n+2}(X^{(n+2)}) \simeq \pi_{n+2}(X^{(n+1)}) \simeq \pi_{n+2}(X). $$ This construction is known as the Whitehead tower.
The functions for computing homotopy groups¶
An important remark¶
In this version of Kenzo, only the case where the first non-null homology group (in non-null dimension) is $\mathbb{Z}$ or $\mathbb{Z}/{2 \mathbb{Z}}$ can be processed; however if this homology group is a direct sum of several copies of $\mathbb{Z}$ or $\mathbb{Z}/{2 \mathbb{Z}}$, then the corresponding stage of the Whitehead tower may also be constructed step by step.
chml-clss chcm first [Function]
Return a "fundamental" cohomology class, more precisely a cocycle $\chi$ defining it. The first argument chcm must be a chain complex $C_*$ with effective homology; in particular, an effective chain complex $EC_*$ is a by-product of the machine object $C_*$. The second argument "first" is an integer $n$, namely the first non-null dimension from which the chain complex chcm has a non-null homology group, which {\bf must be isomorphic to $\mathbb{Z}$} or $\mathbb{Z}/{2 \mathbb{Z}}$. The reader may be amazed that this argument "first" must be provided, since it is a consequence of the given $C_*$. But in fact, the same function
chml-classmay also be used in different contexts, for example, the Postnikov tower; in such a case, the argument first is not redundant. The returned cocycle $\chi$ is in any case a chain complex morphism $\chi: EC_* \longrightarrow \mathbb{Z}$, where $\mathbb{Z}$ is the unit chain complex created by the functionz-chcm. The degree of the morphism is $-n$. It is important to note that the chain complex involved in the source of the morphism is the effective chain complex of the homotopy equivalence value of the slotefhmof the object chcm. See the section The general method for computing homology in the Homology chapter. Finally, if $H_n(C_*)=\mathbb{Z}/{2 \mathbb{Z}}$, the actual cohomology class hoped by the user is the composition $p \circ \chi$, where $p$ is the canonical projection $\mathbb{Z}\longrightarrow\mathbb{Z}/{2\mathbb{Z}}$. But nevertheless, thechml-clsslisp function returns $\chi$ and not $p \circ \chi$.
z-whitehead smst chml-clss [Function]
Return a fibration over the simplicial set smst (the first argument), canonically associated to the "cohomology class" chml-clss (the second argument). The simplicial set $X$, i.e. smst, is reduced; its homotopy groups $\pi_r(X)$ are null for $0 \leq r \leq n-1$. The first non null homotopy group $\pi_n(X)$ is assumed to be $\mathbb{Z}$, i.e. $\pi_n(X)= H_n(X)= \mathbb{Z}$. The previous function
chml-clss, in this situation, returns a cocycle $\chi$, which may be used as the second argument chml-clss of the functionz-whitehead. The integer $n$ is determined by the absolute value of the degree of the cohomology class chcm-clss. As explained in the previous section, a canonical fibration is induced by $\chi$ and it is this fibration which is returned byz-whitehead. The slotsintrof the fibration is set by the internal functionz-whitehead-sintrwhich builds in an efficient way the lisp function implementing the twisting operator $\tau \circ \varphi_\chi$.
z2-whitehead smst chcm-clss [Function]
Return a fibration over the simplicial set smst (the first argument), canonically associated to the "cohomology class" chml-clss (the second argument). The simplicial set $X$, i.e. smst, is reduced; its homotopy groups $\pi_r(X)$ are null for $0 \leq r \leq n-1$. The first non null homotopy group $\pi_n(X)$ is assumed to be $\mathbb{Z}/2\mathbb{Z}$, i.e. $\pi_n(X)= H_n(X)= \mathbb{Z}/2\mathbb{Z}$. The previous function
chml-clss, in this situation, returns a "cocycle" $\chi$, which may be used as the second argument chml-clss of the functionz2-whitehead. The integer $n$ is determined by the absolute value of the degree of the cohomology class chcm-clss. In this $\mathbb{Z}/2\mathbb{Z}$ case, $\chi$ is even not a cocycle. The actual cocycle is obtained by the composition $p \circ \chi$, $p$ being the canonical projection $\mathbb{Z} \longrightarrow \mathbb{Z}/{2 \mathbb{Z}}$. But the user is not concerned by these technicalities, because the functionz2-whiteheadmakes itself the necessary conversion. The slotsintrof the fibration is set by the internal functionz2-whitehead-sintrwhich builds in an efficient way the lisp function implementing the twisting operator $\tau \circ \varphi_\chi$.
Examples¶
Let us retrieve some known facts about $S^3$, in particular $\pi_4(S^3) \simeq \mathbb{Z}/{2 \mathbb{Z}}$. We follow the theoritical method exposed above, namely build the fibration $$K(\mathbb{Z},2) \quad \hookrightarrow\quad S^3 \times_{\tau_\chi} K(\mathbb{Z},2) \hskip 1.2em \longrightarrow \hskip -1.2em \longrightarrow\quad S^3,$$ and get the homology group in dimension 4 of the total space.
(def s3 (sphere 3))
[K1 Simplicial-Set]
(homology s3 0 4)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 0) : * End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 3) : S3 End of computing. Homology in dimension 2 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 3) : S3 End of computing. Computing boundary-matrix in dimension 4. Rank of the source-module : 0. Homology in dimension 3 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s.
NIL
(def s3-chml-clss (chml-clss s3 3))
[K12 Cohomology-Class on K1 of degree 3]
(def s3-fibr (z-whitehead s3 s3-chml-clss))
[K37 Fibration K1 -> K25]
(def s3-total (fibration-total s3-fibr))
[K43 Simplicial-Set]
(homology s3-total 0 6)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 0) : <TnPr * <<Abar>>> End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Computing boundary-matrix in dimension 2. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 2) : <TnPr * <<Abar[2 S1]>>> End of computing. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 2. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 2) : <TnPr * <<Abar[2 S1]>>> End of computing. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 3) : <TnPr S3 <<Abar>>> End of computing. Homology in dimension 2 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 3) : <TnPr S3 <<Abar>>> End of computing. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 4) : <TnPr * <<Abar[2 S1][2 S1]>>> End of computing. Homology in dimension 3 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 4) : <TnPr * <<Abar[2 S1][2 S1]>>> End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 5) : <TnPr S3 <<Abar[2 S1]>>> End of computing. Homology in dimension 4 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 5) : <TnPr S3 <<Abar[2 S1]>>> End of computing. Computing boundary-matrix in dimension 6. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 6) : <TnPr * <<Abar[2 S1][2 S1][2 S1]>>> End of computing. Homology in dimension 5 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s.
NIL
Let us show a similar example with the space $Moore(2,4)$. As $H_4 \simeq \mathbb{Z}/{2 \mathbb{Z}}$, the function for building the fibration is z2-whitehead. We verify that $\pi_5(Moore(2,4))\simeq \mathbb{Z}/{2 \mathbb{Z}}$
(cat-init)
---done---
NIL
(def m24 (moore 2 4))
[K1 Simplicial-Set]
(show-structure m24 6)
Dimension = 0:
Vertices : (*)
Dimension = 1:
Dimension = 2:
Dimension = 3:
Dimension = 4:
Simplex : M4
Faces : (<AbSm 2-1-0 *> <AbSm 2-1-0 *> <AbSm 2-1-0 *> <AbSm 2-1-0 *> <AbSm 2-1-0 *>)
Dimension = 5:
Simplex : N5
Faces : (<AbSm - M4> <AbSm 3-2-1-0 *> <AbSm - M4> <AbSm 3-2-1-0 *> <AbSm 3-2-1-0 *> <AbSm 3-2-1-0 *>)
Dimension = 6:
NIL
(homology m24 0 5)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 0) : * End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Computing boundary-matrix in dimension 3. Rank of the source-module : 0. Homology in dimension 2 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 3. Rank of the source-module : 0. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 4) : M4 End of computing. Homology in dimension 3 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 4) : M4 End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 5) : N5 End of computing. Homology in dimension 4 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s.
NIL
(def m24-chml-clss (chml-clss m24 4))
[K12 Cohomology-Class on K1 of degree 4]
(def m24-fibr (z2-whitehead m24 m24-chml-clss))
[K49 Fibration K1 -> K37]
(def m24-total (fibration-total m24-fibr))
[K55 Simplicial-Set]
(homology m24-total 0 6)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 0) : <TnPr * <<Abar>>> End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 3) : <TnPr * <<Abar[3 <<Abar[2 1]>>]>>> End of computing. Homology in dimension 2 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 3) : <TnPr * <<Abar[3 <<Abar[2 1]>>]>>> End of computing. Computing boundary-matrix in dimension 4. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/2 (dimension 4) : <TnPr * <<Abar[4 <<Abar[3 2]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 2/2 (dimension 4) : <TnPr M4 <<Abar>>> End of computing. Homology in dimension 3 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 4. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/2 (dimension 4) : <TnPr * <<Abar[4 <<Abar[3 2]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 2/2 (dimension 4) : <TnPr M4 <<Abar>>> End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 3. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/3 (dimension 5) : <TnPr * <<Abar[5 <<Abar[4 3]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 2/3 (dimension 5) : <TnPr * <<Abar[5 <<Abar[2 1][2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 3/3 (dimension 5) : <TnPr N5 <<Abar>>> End of computing. Homology in dimension 4 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 5. Rank of the source-module : 3. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/3 (dimension 5) : <TnPr * <<Abar[5 <<Abar[4 3]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 2/3 (dimension 5) : <TnPr * <<Abar[5 <<Abar[2 1][2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 3/3 (dimension 5) : <TnPr N5 <<Abar>>> End of computing. Computing boundary-matrix in dimension 6. Rank of the source-module : 4. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/4 (dimension 6) : <TnPr * <<Abar[6 <<Abar[5 4]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 2/4 (dimension 6) : <TnPr * <<Abar[6 <<Abar[2 1][3 2]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 3/4 (dimension 6) : <TnPr * <<Abar[6 <<Abar[3 2][2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 4/4 (dimension 6) : <TnPr * <<Abar[3 <<Abar[2 1]>>][3 <<Abar[2 1]>>]>>> End of computing. Homology in dimension 5 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s.
NIL
We may even verify that, up to 9, the homotopy groups of the classifying group $K(\mathbb{Z},5)$, for instance, are null except $\pi_5$. This is a far-fetched method to verify this well known result, but it proves that the software is coherent.
(def k5 (k-z 5))
[K410 Abelian-Simplicial-Group]
(def k5-chml-clss (chml-clss k5 5))
[K935 Cohomology-Class on K920 of degree 5]
(def k5-fibr (z-whitehead k5 k5-chml-clss))
[K938 Fibration K410 -> K398]
(def k5-total (fibration-total k5-fibr))
[K939 Kan-Simplicial-Set]
(homology k5-total 0 10)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 0) : <TnPr <<Abar>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 2. Rank of the source-module : 0. Computing boundary-matrix in dimension 3. Rank of the source-module : 0. Homology in dimension 2 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 3. Rank of the source-module : 0. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 4) : <TnPr <<Abar>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. Homology in dimension 3 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 4) : <TnPr <<Abar>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 5) : <TnPr <<Abar[5 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Homology in dimension 4 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 5) : <TnPr <<Abar[5 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 6. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 6) : <TnPr <<Abar>> <<Abar[6 <<Abar[5 <<Abar[2 S1][2 S1]>>]>>]>>> End of computing. Homology in dimension 5 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 6. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/1 (dimension 6) : <TnPr <<Abar>> <<Abar[6 <<Abar[5 <<Abar[2 S1][2 S1]>>]>>]>>> End of computing. Computing boundary-matrix in dimension 7. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/2 (dimension 7) : <TnPr <<Abar>> <<Abar[7 <<Abar[3 <<Abar[2 S1]>>][3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 2/2 (dimension 7) : <TnPr <<Abar[7 <<Abar[6 <<Abar[5 <<Abar[2 S1][2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Homology in dimension 6 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 4s. Computing boundary-matrix in dimension 7. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 4s. Computing the boundary of the generator 1/2 (dimension 7) : <TnPr <<Abar>> <<Abar[7 <<Abar[3 <<Abar[2 S1]>>][3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 2/2 (dimension 7) : <TnPr <<Abar[7 <<Abar[6 <<Abar[5 <<Abar[2 S1][2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 8. Rank of the source-module : 3. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 1/3 (dimension 8) : <TnPr <<Abar>> <<Abar[8 <<Abar[7 <<Abar[2 S1][2 S1][2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 2/3 (dimension 8) : <TnPr <<Abar>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>][4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 3/3 (dimension 8) : <TnPr <<Abar[8 <<Abar[7 <<Abar[3 <<Abar[2 S1]>>][3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Homology in dimension 7 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 5s. Computing boundary-matrix in dimension 8. Rank of the source-module : 3. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 1/3 (dimension 8) : <TnPr <<Abar>> <<Abar[8 <<Abar[7 <<Abar[2 S1][2 S1][2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 2/3 (dimension 8) : <TnPr <<Abar>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>][4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 3/3 (dimension 8) : <TnPr <<Abar[8 <<Abar[7 <<Abar[3 <<Abar[2 S1]>>][3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 9. Rank of the source-module : 5. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 1/5 (dimension 9) : <TnPr <<Abar>> <<Abar[9 <<Abar[3 <<Abar[2 S1]>>][5 <<Abar[2 S1][2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 2/5 (dimension 9) : <TnPr <<Abar>> <<Abar[9 <<Abar[5 <<Abar[2 S1][2 S1]>>][3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 3/5 (dimension 9) : <TnPr <<Abar[5 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 4/5 (dimension 9) : <TnPr <<Abar[9 <<Abar[8 <<Abar[7 <<Abar[2 S1][2 S1][2 S1]>>]>>]>>]>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 5/5 (dimension 9) : <TnPr <<Abar[9 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>][4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Homology in dimension 8 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 5s. Computing boundary-matrix in dimension 9. Rank of the source-module : 5. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 1/5 (dimension 9) : <TnPr <<Abar>> <<Abar[9 <<Abar[3 <<Abar[2 S1]>>][5 <<Abar[2 S1][2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 2/5 (dimension 9) : <TnPr <<Abar>> <<Abar[9 <<Abar[5 <<Abar[2 S1][2 S1]>>][3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 3/5 (dimension 9) : <TnPr <<Abar[5 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 4/5 (dimension 9) : <TnPr <<Abar[9 <<Abar[8 <<Abar[7 <<Abar[2 S1][2 S1][2 S1]>>]>>]>>]>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 5/5 (dimension 9) : <TnPr <<Abar[9 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>][4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 10. Rank of the source-module : 7. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 1/7 (dimension 10) : <TnPr <<Abar>> <<Abar[10 <<Abar[9 <<Abar[2 S1][2 S1][2 S1][2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 2/7 (dimension 10) : <TnPr <<Abar>> <<Abar[10 <<Abar[3 <<Abar[2 S1]>>][3 <<Abar[2 S1]>>][3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 3/7 (dimension 10) : <TnPr <<Abar>> <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>][6 <<Abar[5 <<Abar[2 S1][2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 4/7 (dimension 10) : <TnPr <<Abar>> <<Abar[6 <<Abar[5 <<Abar[2 S1][2 S1]>>]>>][4 <<Abar[3 <<Abar[2 S1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 5s. Computing the boundary of the generator 5/7 (dimension 10) : <TnPr <<Abar[10 <<Abar[9 <<Abar[3 <<Abar[2 S1]>>][5 <<Abar[2 S1][2 S1]>>]>>]>>]>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 6/7 (dimension 10) : <TnPr <<Abar[10 <<Abar[9 <<Abar[5 <<Abar[2 S1][2 S1]>>][3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 7/7 (dimension 10) : <TnPr <<Abar[5 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>][5 <<Abar[4 <<Abar[3 <<Abar[2 S1]>>]>>]>>]>> <<Abar>>> End of computing. Homology in dimension 9 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 6s.
NIL
Let us show now the iteration of the process, to get for instance $\pi_5(S^3)$ and $\pi_6(S^3)$:
(cat-init)
---done---
NIL
(def s3 (sphere 3))
[K1 Simplicial-Set]
(def s3-chml-clss (chml-clss s3 3))
[K12 Cohomology-Class on K1 of degree 3]
(def s3-fibration (z-whitehead s3 s3-chml-clss))
[K37 Fibration K1 -> K25]
(def s3-4 (fibration-total s3-fibration))
[K43 Simplicial-Set]
(homology s3-4 4)
Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 1/1 (dimension 4) : <TnPr * <<Abar[2 S1][2 S1]>>> End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 1/1 (dimension 5) : <TnPr S3 <<Abar[2 S1]>>> End of computing. Homology in dimension 4 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 6s.
NIL
(def s3-4-chml-clss (chml-clss s3-4 4))
[K253 Cohomology-Class on K238 of degree 4]
(def s3-4-fibration (z2-whitehead s3-4 s3-4-chml-clss))
[K292 Fibration K43 -> K278]
(def s3-5 (fibration-total s3-4-fibration))
[K298 Simplicial-Set]
(homology s3-5 5)
Computing boundary-matrix in dimension 5. Rank of the source-module : 4. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 1/4 (dimension 5) : <TnPr <TnPr * <<Abar>>> <<Abar[5 <<Abar[4 3]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 2/4 (dimension 5) : <TnPr <TnPr * <<Abar>>> <<Abar[5 <<Abar[2 1][2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 3/4 (dimension 5) : <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar[3 <<Abar[2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 4/4 (dimension 5) : <TnPr <TnPr S3 <<Abar[2 S1]>>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 6. Rank of the source-module : 7. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 1/7 (dimension 6) : <TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[5 4]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 2/7 (dimension 6) : <TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[2 1][3 2]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 3/7 (dimension 6) : <TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[3 2][2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 4/7 (dimension 6) : <TnPr <TnPr * <<Abar>>> <<Abar[3 <<Abar[2 1]>>][3 <<Abar[2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 5/7 (dimension 6) : <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar[4 <<Abar[3 2]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 6/7 (dimension 6) : <TnPr <TnPr S3 <<Abar>>> <<Abar[3 <<Abar[2 1]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 7/7 (dimension 6) : <TnPr <TnPr * <<Abar[2 S1][2 S1][2 S1]>>> <<Abar>>> End of computing. Homology in dimension 5 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 6s.
NIL
(def s3-5-chml-clss (chml-clss s3-5 5))
[K609 Cohomology-Class on K594 of degree 5]
(def s3-5-fibration (z2-whitehead s3-5 s3-5-chml-clss))
[K624 Fibration K298 -> K610]
(def s3-6 (fibration-total s3-5-fibration))
[K630 Simplicial-Set]
(homology s3-6 6)
Computing boundary-matrix in dimension 6. Rank of the source-module : 10. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 1/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar>>> <<Abar[6 <<Abar[5 <<Abar[4 3]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 2/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar>>> <<Abar[6 <<Abar[5 <<Abar[2 1][2 1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 3/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar>>> <<Abar[4 <<Abar[3 <<Abar[2 1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 4/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[5 4]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 5/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[2 1][3 2]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 6/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[3 2][2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 7/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[3 <<Abar[2 1]>>][3 <<Abar[2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 8/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar[4 <<Abar[3 2]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 9/10 (dimension 6) : <TnPr <TnPr <TnPr S3 <<Abar>>> <<Abar[3 <<Abar[2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 10/10 (dimension 6) : <TnPr <TnPr <TnPr * <<Abar[2 S1][2 S1][2 S1]>>> <<Abar>>> <<Abar>>> End of computing. Computing boundary-matrix in dimension 7. Rank of the source-module : 19. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 1/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar>>> <<Abar[7 <<Abar[6 <<Abar[5 4]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 2/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar>>> <<Abar[7 <<Abar[6 <<Abar[2 1][3 2]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 3/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar>>> <<Abar[7 <<Abar[6 <<Abar[3 2][2 1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 4/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar>>> <<Abar[7 <<Abar[3 <<Abar[2 1]>>][3 <<Abar[2 1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 5/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar>>> <<Abar[5 <<Abar[4 <<Abar[3 2]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 6/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[3 <<Abar[2 1]>>]>>> <<Abar[4 <<Abar[3 <<Abar[2 1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 6s. Computing the boundary of the generator 7/19 (dimension 7) : <TnPr <TnPr <TnPr S3 <<Abar>>> <<Abar>>> <<Abar[4 <<Abar[3 <<Abar[2 1]>>]>>]>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 8/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[7 <<Abar[6 5]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 9/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[7 <<Abar[2 1][4 3]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 10/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[7 <<Abar[3 2][3 2]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 11/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[7 <<Abar[4 3][2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 12/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[7 <<Abar[2 1][2 1][2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 13/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[3 <<Abar[2 1]>>][4 <<Abar[3 2]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 14/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar>>> <<Abar[4 <<Abar[3 2]>>][3 <<Abar[2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 15/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar[5 <<Abar[4 3]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 16/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar[2 S1]>>> <<Abar[5 <<Abar[2 1][2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 17/19 (dimension 7) : <TnPr <TnPr <TnPr S3 <<Abar>>> <<Abar[4 <<Abar[3 2]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 18/19 (dimension 7) : <TnPr <TnPr <TnPr * <<Abar[2 S1][2 S1]>>> <<Abar[3 <<Abar[2 1]>>]>>> <<Abar>>> End of computing. ;; Clock -> 2016-04-03, 23h 19m 7s. Computing the boundary of the generator 19/19 (dimension 7) : <TnPr <TnPr <TnPr S3 <<Abar[2 S1][2 S1]>>> <<Abar>>> <<Abar>>> End of computing. Homology in dimension 6 : Component Z/12Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s.
NIL
An interesting example is given by the real projective space $P^\infty\mathbb{R}/P^1\mathbb{R}$ which may be built in Kenzo by the function r-proj-space. We list its first homotopy groups.
(cat-init)
---done---
NIL
(def x (r-proj-space 2))
[K1 Simplicial-Set]
(homology x 0 10)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 0) : 0 End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 1. Rank of the source-module : 0. Computing boundary-matrix in dimension 2. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 2) : 2 End of computing. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 2. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 2) : 2 End of computing. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 3) : 3 End of computing. Homology in dimension 2 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 3. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 3) : 3 End of computing. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 4) : 4 End of computing. Homology in dimension 3 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 4. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 4) : 4 End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 5) : 5 End of computing. Homology in dimension 4 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 5. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 5) : 5 End of computing. Computing boundary-matrix in dimension 6. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 6) : 6 End of computing. Homology in dimension 5 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 6. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 6) : 6 End of computing. Computing boundary-matrix in dimension 7. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 7) : 7 End of computing. Homology in dimension 6 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 7. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 7) : 7 End of computing. Computing boundary-matrix in dimension 8. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 8) : 8 End of computing. Homology in dimension 7 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 8. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 8) : 8 End of computing. Computing boundary-matrix in dimension 9. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 9) : 9 End of computing. Homology in dimension 8 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 9. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 9) : 9 End of computing. Computing boundary-matrix in dimension 10. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 10) : 10 End of computing. Homology in dimension 9 : Component Z/2Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s.
NIL
Using the machinery described in this chapter, we find that the total space of the fibration has the same homology groups as $S^3$. It has been effectively proved that this space is homotopic to $S^3$.
(def ch (chml-clss x 2))
[K12 Cohomology-Class on K1 of degree 2]
(def f2 (z-whitehead x ch))
[K25 Fibration K1 -> K13]
(def x3 (fibration-total f2))
[K31 Simplicial-Set]
(homology x3 0 10)
Computing boundary-matrix in dimension 0. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 0) : <TnPr 0 *> End of computing. Computing boundary-matrix in dimension 1. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 1) : <TnPr 0 S1> End of computing. Homology in dimension 0 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 1. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 1) : <TnPr 0 S1> End of computing. Computing boundary-matrix in dimension 2. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 2) : <TnPr 2 *> End of computing. Homology in dimension 1 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 2. Rank of the source-module : 1. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/1 (dimension 2) : <TnPr 2 *> End of computing. Computing boundary-matrix in dimension 3. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 3) : <TnPr 2 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 3) : <TnPr 3 *> End of computing. Homology in dimension 2 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 3. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 3) : <TnPr 2 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 3) : <TnPr 3 *> End of computing. Computing boundary-matrix in dimension 4. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 4) : <TnPr 3 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 4) : <TnPr 4 *> End of computing. Homology in dimension 3 : Component Z ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 4. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 4) : <TnPr 3 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 4) : <TnPr 4 *> End of computing. Computing boundary-matrix in dimension 5. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 5) : <TnPr 4 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 5) : <TnPr 5 *> End of computing. Homology in dimension 4 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 5. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 5) : <TnPr 4 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 5) : <TnPr 5 *> End of computing. Computing boundary-matrix in dimension 6. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 6) : <TnPr 5 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 6) : <TnPr 6 *> End of computing. Homology in dimension 5 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 6. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 6) : <TnPr 5 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 6) : <TnPr 6 *> End of computing. Computing boundary-matrix in dimension 7. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 7) : <TnPr 6 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 7) : <TnPr 7 *> End of computing. Homology in dimension 6 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 7. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 7) : <TnPr 6 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 7) : <TnPr 7 *> End of computing. Computing boundary-matrix in dimension 8. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 8) : <TnPr 7 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 8) : <TnPr 8 *> End of computing. Homology in dimension 7 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 11s. Computing boundary-matrix in dimension 8. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 8) : <TnPr 7 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 8) : <TnPr 8 *> End of computing. Computing boundary-matrix in dimension 9. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 1/2 (dimension 9) : <TnPr 8 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 11s. Computing the boundary of the generator 2/2 (dimension 9) : <TnPr 9 *> End of computing. Homology in dimension 8 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 12s. Computing boundary-matrix in dimension 9. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 12s. Computing the boundary of the generator 1/2 (dimension 9) : <TnPr 8 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 12s. Computing the boundary of the generator 2/2 (dimension 9) : <TnPr 9 *> End of computing. Computing boundary-matrix in dimension 10. Rank of the source-module : 2. ;; Clock -> 2016-04-03, 23h 19m 12s. Computing the boundary of the generator 1/2 (dimension 10) : <TnPr 9 S1> End of computing. ;; Clock -> 2016-04-03, 23h 19m 17s. Computing the boundary of the generator 2/2 (dimension 10) : <TnPr 10 *> End of computing. Homology in dimension 9 : ---done--- ;; Clock -> 2016-04-03, 23h 19m 22s.
NIL
Lisp files concerned in this chapter¶
whitehead.lisp, smith.lisp.