kenzo/examples/21_Computing_homotopy_groups.ipynb
2016-03-25 15:17:48 -05:00

77 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:

  1. $H_r(K(\pi,n))=0$ for $0 < r < n$,
  2. $\pi_r(K(\pi,n))=0$ for $r \not= n$,
  3. $\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-class may 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 function z-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 slot efhm of 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, the chml-clss lisp 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 function z-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 by z-whitehead. The slot sintr of the fibration is set by the internal function z-whitehead-sintr which 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 function z2-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 function z2-whitehead makes itself the necessary conversion. The slot sintr of the fibration is set by the internal function z2-whitehead-sintr which 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.

In [1]:
(def s3 (sphere 3))
Out[1]:
[K1 Simplicial-Set]
In [2]:
(homology s3 0 4)
Computing boundary-matrix in dimension 0.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/1 (dimension 3) :
S3 
End of computing.




Homology in dimension 2 :



---done---

;; Clock -> 2016-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 3.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.

Out[2]:
NIL
In [3]:
(def s3-chml-clss (chml-clss s3 3))
Out[3]:
[K12 Cohomology-Class on K1 of degree 3]
In [4]:
(def s3-fibr (z-whitehead s3 s3-chml-clss))
Out[4]:
[K37 Fibration K1 -> K25]
In [5]:
(def s3-total (fibration-total  s3-fibr))
Out[5]:
[K43 Simplicial-Set]
In [6]:
(homology s3-total 0 6)
Computing boundary-matrix in dimension 0.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/1 (dimension 2) :
<TnPr * <<Abar[2 S1]>>> 
End of computing.




Homology in dimension 1 :



---done---

;; Clock -> 2016-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 2.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/1 (dimension 3) :
<TnPr S3 <<Abar>>> 
End of computing.




Homology in dimension 2 :



---done---

;; Clock -> 2016-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 3.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 4.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 5.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.

Out[6]:
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}}$

In [7]:
(cat-init)
---done---
Out[7]:
NIL
In [8]:
(def m24 (moore 2 4))
Out[8]:
[K1 Simplicial-Set]
In [9]:
(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:
Out[9]:
NIL
In [10]:
(homology m24 0 5)
Computing boundary-matrix in dimension 0.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/1 (dimension 4) :
M4 
End of computing.




Homology in dimension 3 :



---done---

;; Clock -> 2016-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 4.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/1 (dimension 5) :
N5 
End of computing.




Homology in dimension 4 :


Component Z/2Z


---done---

;; Clock -> 2016-03-25, 20h 16m 21s.

Out[10]:
NIL
In [11]:
(def m24-chml-clss (chml-clss m24 4))
Out[11]:
[K12 Cohomology-Class on K1 of degree 4]
In [12]:
(def m24-fibr (z2-whitehead m24 m24-chml-clss))
Out[12]:
[K49 Fibration K1 -> K37]
In [13]:
(def m24-total (fibration-total m24-fibr))
Out[13]:
[K55 Simplicial-Set]
In [14]:
(homology m24-total 0 6)
Computing boundary-matrix in dimension 0.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 3.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/2 (dimension 4) :
<TnPr * <<Abar[4 <<Abar[3 2]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 2/2 (dimension 4) :
<TnPr M4 <<Abar>>> 
End of computing.




Homology in dimension 3 :



---done---

;; Clock -> 2016-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 4.
Rank of the source-module : 2.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/2 (dimension 4) :
<TnPr * <<Abar[4 <<Abar[3 2]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/3 (dimension 5) :
<TnPr * <<Abar[5 <<Abar[4 3]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 2/3 (dimension 5) :
<TnPr * <<Abar[5 <<Abar[2 1][2 1]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 3/3 (dimension 5) :
<TnPr N5 <<Abar>>> 
End of computing.




Homology in dimension 4 :



---done---

;; Clock -> 2016-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 5.
Rank of the source-module : 3.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/3 (dimension 5) :
<TnPr * <<Abar[5 <<Abar[4 3]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 2/3 (dimension 5) :
<TnPr * <<Abar[5 <<Abar[2 1][2 1]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
Computing the boundary of the generator 1/4 (dimension 6) :
<TnPr * <<Abar[6 <<Abar[5 4]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 2/4 (dimension 6) :
<TnPr * <<Abar[6 <<Abar[2 1][3 2]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
Computing the boundary of the generator 3/4 (dimension 6) :
<TnPr * <<Abar[6 <<Abar[3 2][2 1]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.

Out[14]:
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.

In [15]:
(def k5 (k-z 5))
Out[15]:
[K410 Abelian-Simplicial-Group]
In [16]:
(def k5-chml-clss (chml-clss k5 5))
Out[16]:
[K935 Cohomology-Class on K920 of degree 5]
In [17]:
(def k5-fibr (z-whitehead k5 k5-chml-clss))
Out[17]:
[K938 Fibration K410 -> K398]
In [18]:
(def k5-total (fibration-total k5-fibr))
Out[18]:
[K939 Kan-Simplicial-Set]
In [19]:
(homology k5-total 0 10)
Computing boundary-matrix in dimension 0.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.


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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 4.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 5.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 6.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 7.
Rank of the source-module : 2.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.


Computing boundary-matrix in dimension 8.
Rank of the source-module : 3.


;; Clock -> 2016-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 21s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.


Computing boundary-matrix in dimension 9.
Rank of the source-module : 5.


;; Clock -> 2016-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 22s.
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-03-25, 20h 16m 23s.
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-03-25, 20h 16m 23s.
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-03-25, 20h 16m 23s.

Out[19]:
NIL

Let us show now the iteration of the process, to get for instance $\pi_5(S^3)$ and $\pi_6(S^3)$:

In [20]:
(cat-init)
---done---
Out[20]:
NIL
In [21]:
(def s3 (sphere 3))
Out[21]:
[K1 Simplicial-Set]
In [22]:
(def s3-chml-clss (chml-clss s3 3))
Out[22]:
[K12 Cohomology-Class on K1 of degree 3]
In [23]:
(def s3-fibration (z-whitehead s3 s3-chml-clss))
Out[23]:
[K37 Fibration K1 -> K25]
In [24]:
(def s3-4 (fibration-total s3-fibration))
Out[24]:
[K43 Simplicial-Set]
In [25]:
(homology s3-4 4)
Computing boundary-matrix in dimension 4.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 23s.
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-03-25, 20h 16m 23s.
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-03-25, 20h 16m 23s.

Out[25]:
NIL
In [26]:
(def s3-4-chml-clss (chml-clss s3-4 4))
Out[26]:
[K253 Cohomology-Class on K238 of degree 4]
In [27]:
(def s3-4-fibration (z2-whitehead s3-4 s3-4-chml-clss))
Out[27]:
[K292 Fibration K43 -> K278]
In [28]:
(def s3-5 (fibration-total s3-4-fibration))
Out[28]:
[K298 Simplicial-Set]
In [29]:
(homology s3-5 5)
Computing boundary-matrix in dimension 5.
Rank of the source-module : 4.


;; Clock -> 2016-03-25, 20h 16m 24s.
Computing the boundary of the generator 1/4 (dimension 5) :
<TnPr <TnPr * <<Abar>>> <<Abar[5 <<Abar[4 3]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
Computing the boundary of the generator 1/7 (dimension 6) :
<TnPr <TnPr * <<Abar>>> <<Abar[6 <<Abar[5 4]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
Computing the boundary of the generator 6/7 (dimension 6) :
<TnPr <TnPr S3 <<Abar>>> <<Abar[3 <<Abar[2 1]>>]>>> 
End of computing.


;; Clock -> 2016-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.

Out[29]:
NIL
In [30]:
(def s3-5-chml-clss (chml-clss s3-5 5))
Out[30]:
[K609 Cohomology-Class on K594 of degree 5]
In [31]:
(def s3-5-fibration (z2-whitehead s3-5 s3-5-chml-clss))
Out[31]:
[K624 Fibration K298 -> K610]
In [32]:
(def s3-6 (fibration-total s3-5-fibration))
Out[32]:
[K630 Simplicial-Set]
In [33]:
(homology s3-6 6)
Computing boundary-matrix in dimension 6.
Rank of the source-module : 10.


;; Clock -> 2016-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 24s.
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-03-25, 20h 16m 25s.
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-03-25, 20h 16m 29s.

Out[33]:
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.

In [34]:
(cat-init)
---done---
Out[34]:
NIL
In [35]:
(def x (r-proj-space 2))
Out[35]:
[K1 Simplicial-Set]
In [36]:
(homology x 0 10)
Computing boundary-matrix in dimension 0.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 29s.
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 : 1.


;; Clock -> 2016-03-25, 20h 16m 29s.
Computing the boundary of the generator 1/1 (dimension 1) :
1 
End of computing.




Homology in dimension 0 :


Component Z


---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 1.
Rank of the source-module : 1.


;; Clock -> 2016-03-25, 20h 16m 29s.
Computing the boundary of the generator 1/1 (dimension 1) :
1 
End of computing.


Computing boundary-matrix in dimension 2.
Rank of the source-module : 0.




Homology in dimension 1 :


Component Z


---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


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-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 3.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 4.
Rank of the source-module : 0.




Homology in dimension 3 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 4.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 5.
Rank of the source-module : 0.




Homology in dimension 4 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 5.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 6.
Rank of the source-module : 0.




Homology in dimension 5 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 6.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 7.
Rank of the source-module : 0.




Homology in dimension 6 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 7.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 8.
Rank of the source-module : 0.




Homology in dimension 7 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 8.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 9.
Rank of the source-module : 0.




Homology in dimension 8 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.


Computing boundary-matrix in dimension 9.
Rank of the source-module : 0.


Computing boundary-matrix in dimension 10.
Rank of the source-module : 0.




Homology in dimension 9 :



---done---

;; Clock -> 2016-03-25, 20h 16m 29s.

Out[36]:
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$.

In [37]:
(def ch (chml-clss x 2))
SIMPLE-ERROR: 
In CHML-CLSS, the cohomology-ring 
is null.
Out[37]:
NIL
In [38]:
(def f2 (z-whitehead x ch))
TYPE-ERROR: 
  #<TYPE-ERROR expected-type: MORPHISM datum: NIL>
Out[38]:
NIL
In [39]:
(def x3 (fibration-total f2))
TYPE-ERROR: 
  #<TYPE-ERROR expected-type: (SATISFIES CAT::FIBRATION-P) datum: NIL>
Out[39]:
NIL
In [40]:
(homology x3 0 10)
SIMPLE-ERROR: 
There is no applicable method for the generic function #<STANDARD-GENERIC-FUNCTION CAT:HOMOLOGY (1)>when called with arguments (NIL 0 10).
Out[40]:
NIL

Lisp files concerned in this chapter

whitehead.lisp, smith.lisp.