aboutsummaryrefslogtreecommitdiffstats
path: root/buch/chapters/95-homologie
diff options
context:
space:
mode:
authorAyexor <9105454+Ayexor@users.noreply.github.com>2021-08-27 18:09:54 +0200
committerGitHub <noreply@github.com>2021-08-27 18:09:54 +0200
commit2b2c5daa139aec08d091b658ad6191d6e57024ef (patch)
tree2c8f3fc7017394746d8e4f92a358e2a11015e072 /buch/chapters/95-homologie
parentAnpassungen nach Mail (diff)
parentnew image: tetraeder (diff)
downloadSeminarMatrizen-2b2c5daa139aec08d091b658ad6191d6e57024ef.tar.gz
SeminarMatrizen-2b2c5daa139aec08d091b658ad6191d6e57024ef.zip
Merge branch 'master' into master
Diffstat (limited to 'buch/chapters/95-homologie')
-rw-r--r--buch/chapters/95-homologie/Makefile.inc5
-rw-r--r--buch/chapters/95-homologie/basiswahl.tex817
-rw-r--r--buch/chapters/95-homologie/chapter.tex16
-rw-r--r--buch/chapters/95-homologie/eulerchar.tex139
-rw-r--r--buch/chapters/95-homologie/fixpunkte.tex136
-rw-r--r--buch/chapters/95-homologie/homologie.tex35
-rw-r--r--buch/chapters/95-homologie/homologieketten.tex286
-rw-r--r--buch/chapters/95-homologie/hx.m129
-rw-r--r--buch/chapters/95-homologie/images/Makefile38
-rw-r--r--buch/chapters/95-homologie/images/approx.m77
-rw-r--r--buch/chapters/95-homologie/images/approximation.pdfbin0 -> 32134 bytes
-rw-r--r--buch/chapters/95-homologie/images/approximation.tex69
-rw-r--r--buch/chapters/95-homologie/images/complexbasis.pdfbin0 -> 27033 bytes
-rw-r--r--buch/chapters/95-homologie/images/complexbasis.tex158
-rw-r--r--buch/chapters/95-homologie/images/gausshomobasis.pdfbin0 -> 24156 bytes
-rw-r--r--buch/chapters/95-homologie/images/gausshomobasis.tex109
-rw-r--r--buch/chapters/95-homologie/images/gausshomoex.pdfbin0 -> 15128 bytes
-rw-r--r--buch/chapters/95-homologie/images/gausshomoex.tex120
-rw-r--r--buch/chapters/95-homologie/images/homoboundaries.pdfbin0 -> 17362 bytes
-rw-r--r--buch/chapters/95-homologie/images/homoboundaries.tex115
-rw-r--r--buch/chapters/95-homologie/images/homoclasses.pdfbin0 -> 11791 bytes
-rw-r--r--buch/chapters/95-homologie/images/homoclasses.tex109
-rw-r--r--buch/chapters/95-homologie/images/homocycles.pdfbin0 -> 17039 bytes
-rw-r--r--buch/chapters/95-homologie/images/homocycles.tex170
-rw-r--r--buch/chapters/95-homologie/images/polyeder.pdfbin0 -> 3270 bytes
-rw-r--r--buch/chapters/95-homologie/images/polyeder.tex109
-rw-r--r--buch/chapters/95-homologie/images/tetraeder.jpgbin0 -> 68762 bytes
-rw-r--r--buch/chapters/95-homologie/images/tetraeder.pdfbin0 -> 84492 bytes
-rw-r--r--buch/chapters/95-homologie/images/tetraeder.pov116
-rw-r--r--buch/chapters/95-homologie/images/tetraeder.tex97
-rw-r--r--buch/chapters/95-homologie/induzierteabb.tex204
-rw-r--r--buch/chapters/95-homologie/komplex.tex106
-rw-r--r--buch/chapters/95-homologie/mayervietoris.tex28
-rw-r--r--buch/chapters/95-homologie/simplex.tex131
34 files changed, 3258 insertions, 61 deletions
diff --git a/buch/chapters/95-homologie/Makefile.inc b/buch/chapters/95-homologie/Makefile.inc
index 7e6f1e7..3b2b50c 100644
--- a/buch/chapters/95-homologie/Makefile.inc
+++ b/buch/chapters/95-homologie/Makefile.inc
@@ -8,8 +8,11 @@ CHAPTERFILES = $(CHAPTERFILES) \
chapters/95-homologie/simplex.tex \
chapters/95-homologie/komplex.tex \
chapters/95-homologie/homologie.tex \
- chapters/95-homologie/mayervietoris.tex \
+ chapters/95-homologie/homologieketten.tex \
+ chapters/95-homologie/basiswahl.tex \
chapters/95-homologie/fixpunkte.tex \
+ chapters/95-homologie/eulerchar.tex \
+ chapters/95-homologie/induzierteabb.tex \
chapters/95-homologie/chapter.tex
diff --git a/buch/chapters/95-homologie/basiswahl.tex b/buch/chapters/95-homologie/basiswahl.tex
new file mode 100644
index 0000000..aacfa9f
--- /dev/null
+++ b/buch/chapters/95-homologie/basiswahl.tex
@@ -0,0 +1,817 @@
+\subsection{Basiswahl
+\label{buch:subsection:basiswahl}}
+Die Definition der Homologiegruppen $H_k(C)$ als Quotient von
+Vektorräumen ist ziemlich abstrakt.
+Sie besteht aus Klassen von Zyklen, die sich höchstens um einen
+Rand unterscheiden.
+Indem wir eine geeignete Basis wählen, können wir konkrete Zyklen
+identifizieren, die eine Basis für den Vektorraum $H_k(C)$ bilden.
+Dies soll im Folgenden schrittweise durchgeführt werden.
+
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/gausshomoex.pdf}
+\caption{Beispiel für die Berechnung von Basisvektoren und Homologieklassen
+mit Hilfe des Gauss-Algorithmus
+\label{buch:homologie:fig:gausshomoex}}
+\end{figure}
+
+\subsubsection{Basis von $Z_k(C)$}
+Um eine Basis für $H_k(C)$ zu konstruieren, ist es zunächst nötig,
+eine Basis der Zyklen $Z_k(C)$ zu bestimmen.
+Ausgehend von einer beliebigen Basis der $C_k$ und einer
+zugehörigen Darstellung des Randoperators $\partial_k$ als
+Matrix, kann eine Basis von Zyklen mit Hilfe des Gauss-Algorithmus
+gefunden werden.
+Wir bezeichnen die Menge dieser Zyklen mit
+\[
+\mathcal{Z}_k
+=
+\{
+z_1^{(k)},
+z_2^{(k)},
+\dots,
+z_l^{(k)}
+\}.
+\]
+$\mathcal{Z}_k$ erzeugt den $l$-dimensionalen Vektorraum $Z_k(C)$.
+
+\begin{beispiel}
+\label{buch:homologie:beispiel:gausshomo}
+In Abbildung~\ref{buch:homologie:fig:gausshomoex} ist ein Polyeder
+dargestellt, dessen Homologiegruppe $H_1$ berechnet werden soll.
+Um eine Basis für die Zyklen zu berechnen, wird zunächst die Matrix
+des Randoperators $\partial_1$ aufgestellt.
+Sie ist
+\[
+\setcounter{MaxMatrixCols}{27}
+\partial_1
+=
+\footnotesize
+\setlength\arraycolsep{2pt}
+\begin{pmatrix*}[r]
+%1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
+-1& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 1
+ 1&-1& 0& 0& 0&-1& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 2
+ 0& 1&-1& 0& 0& 0& 0&-1& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 3
+ 0& 0& 1&-1& 0& 0& 0& 0& 0&-1& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 4
+ 0& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 5
+ 0& 0& 0& 0& 1& 1& 0& 0& 0& 0& 0& 0&-1& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 6
+ 0& 0& 0& 0& 0& 0&-1& 1& 0& 0& 0& 0& 1& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 7
+ 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 0& 0&-1& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 8
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 1& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0\\ % 9
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 0&-1& 0& 1& 0& 0& 0& 0& 0& 0\\ %10
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1&-1& 0&-1& 1& 0& 0& 0& 0\\ %11
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 1& 0& 0& 0&-1& 0& 0& 0\\ %12
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 0& 0&-1& 1& 0\\ %13
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1& 1& 0&-1\\ %14
+ 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&-1& 1\\ %15
+\end{pmatrix*}
+\]
+Die reduzierte Zeilenstufenform von $\partial_1$ ist
+(Pivotpositionen in {\color{red}rot}, frei wählbare Variablen
+in {\color{darkgreen}grün})
+\begin{center}
+%\tiny
+\scriptsize
+%\footnotesize
+\setlength\tabcolsep{3pt}
+\begin{tabular}{|>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|}
+\hline
+ & 1& 2& 3& 4& 5&{\color{darkgreen}6}& 7&{\color{darkgreen}8}& 9&{\color{darkgreen}10}&11&{\color{darkgreen}12}&{\color{darkgreen}13}&{\color{darkgreen}14}&15&{\color{darkgreen}16}&17&{\color{darkgreen}18}&19&{\color{darkgreen}20}&21&{\color{darkgreen}22}&23&{\color{darkgreen}24}&{\color{darkgreen}25}&26&{\color{darkgreen}27}\\
+\hline
+ 1&\phantom{-}{\color{red}1}& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 1& 0& 0&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\
+ 2& 0&\phantom{-}{\color{red}1}& 0& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\
+ 3& 0& 0&\phantom{-}{\color{red}1}& 0& 0& 0& 0& 0& 0&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0\\
+ 4& 0& 0& 0&\phantom{-}{\color{red}1}& 0& 0& 0& 0& 0& 0& 0&-1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\
+ 5& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0& 0& 0& 0& 0& 0& 1& 0& 0&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\
+ 6& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0& 0& 0& 0&-1& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\
+ 7& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0&-1& 0& 0& 0& 1& 0& 0& 0\\
+ 8& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0&-1& 0& 0& 0& 1& 0& 0& 0& 0& 0& 0& 0& 0& 0\\
+ 9& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0& 0& 0& 1& 0& 0& 0&-1& 0& 0& 0\\
+10& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0&-1& 0& 0& 0& 1& 0& 0& 0\\
+11& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0&-1& 0& 1& 1& 0&-1\\
+12& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1& 0& 0& 1& 0&-1\\
+13& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1&-1& 0& 1\\
+14& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0&\phantom{-}{\color{red}1}&-1\\
+15& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0& 0\\
+\hline
+\end{tabular}.
+\end{center}
+Daraus kann man die Zyklen wie folgt ablesen, indem man jeweils
+genau eine frei wählbare Variable auf $1$ setzt:
+\begin{align*}
+z_1
+&=
+\tiny
+\begin{pmatrix*}[r]
+\phantom{-}
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_2
+&=
+\tiny
+\begin{pmatrix*}[r]
+\phantom{-}
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_3
+&=
+\tiny
+\begin{pmatrix*}[r]
+\phantom{-}
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_4 % variable 12 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+\phantom{-}
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_5 % variable 13 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+-1\\
+ 0\\
+ 0\\
+ 0\\
+-1\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_6 % variable 14 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+ 0\\
+ 0\\
+-1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+-1\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_7 % variable 16 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+-1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},\\
+z_8 % variable 18 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+-1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_9 % variable 20 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+-1\\
+-1\\
+ 0\\
+ 0\\
+-1\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+-1\\
+ 0\\
+ 1\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0
+\end{pmatrix*},
+&z_{10} % variable 22 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+\phantom{-}
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\ %5
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\ %10
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\ %15
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\ %20
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 0\\ %25
+ 0\\
+ 0
+\end{pmatrix*},
+&z_{11} % variable 24 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+ 1\\
+ 1\\
+ 0\\
+ 0\\
+ 1\\ %5
+ 0\\
+ 0\\
+ 0\\
+-1\\
+ 0\\ %10
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\ %15
+ 0\\
+-1\\
+ 0\\
+-1\\
+ 0\\ %20
+ 0\\
+ 0\\
+ 1\\
+ 1\\
+ 0\\ %25
+ 0\\
+ 0
+\end{pmatrix*},
+&z_{12} % variable 25 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\ %10
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\ %15
+ 0\\
+ 0\\
+ 0\\
+-1\\
+ 0\\ %20
+-1\\
+ 0\\
+ 1\\
+ 0\\
+ 1\\ %25
+ 0\\
+ 0
+\end{pmatrix*},
+&z_{13} % variable 27 = 1
+&=
+\tiny
+\begin{pmatrix*}[r]
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 0\\
+ 1\\
+ 0\\ %20
+ 1\\
+ 0\\
+-1\\
+ 0\\
+ 0\\ %25
+ 1\\
+ 1
+\end{pmatrix*}
+\end{align*}
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/homocycles.pdf}
+\caption{Zyklen des Randoperators $\partial_1$ im Beispiel von
+Seite~\pageref{buch:homologie:beispiel:gausshomo}.
+\label{buch:homologie:fig:homocycles}}
+\end{figure}%
+Die Zyklen sind in Abbildung~\ref{buch:homologie:fig:homocycles} {\color{red}rot} dargestellt.
+\end{beispiel}
+
+\subsubsection{Basis für $B_k(C)$}
+Da $B_k(C)\subset Z_k(C)$ gilt, lässt sich für jedes $c_{k+1}\in C_{k+1}$
+der Rand $\partial_{k+1}c_{k+1}$ als Linearkombination der im
+vorangegangenen Schritt gefundenen Basiszyklen finden.
+Wir können also aus der Standardbasis $e^{(k+1)}_i\in C_{k+1}$ eine Menge
+von Vektoren $\partial_{k+1}e^{(k+1)}_i$ gewinnen, die mit Sicherheit
+ganz $B_k(C)$ aufspannen.
+Es ist aber davon auszugehen, dass diese Vektoren nicht linear unabhängig
+sind.
+Es ist also nötig, eine Teilmenge
+\[
+\mathcal{B}_k
+=
+\{
+\partial_{k+1}e^{(k+1)}_{i_1},
+\partial_{k+1}e^{(k+1)}_{i_2},
+\dots,
+\partial_{k+1}e^{(k+1)}_{i_m}
+\}
+\]
+von Vektoren auszuwählen, die linear
+unabhängig sind.
+Diese bilden eine Basis von $B_k(C)$.
+
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/homoboundaries.pdf}
+\caption{Die Ränder $\partial_2e_i^{(2)}$ für das Beispiel von
+Seite~\pageref{buch:homologie:beispiel:gausshomo}.
+Die grauen Dreiecke bilden die Standardbasis $e_i^{(2)}$ von $C_2$,
+die blauen Dreiecke sind die Ränder $\partial_2e_i^{(2)}$ dieser
+Dreiecke.
+\label{buch:homologie:fig:homoboundaries}}
+\end{figure}
+
+Aus den Abbildungen~\ref{buch:homologie:fig:homocycles} und
+\ref{buch:homologie:fig:homoboundaries} kann man auch ablesen,
+wie die Ränder $\partial_2e_i^{(2)}$ aus den Zyklen von $\mathcal{Z}_1$
+linear kombiniert werden können.
+Man erhält so die Beziehungen
+\begin{equation}
+\setcounter{MaxMatrixCols}{29}
+\setlength\arraycolsep{1pt}
+\begin{array}{lcrcrcrcrcrcrcrcrcrcrcrcrcr}
+\partial_2e_1^{(2)} &=&z_1& & & & & & & & & & & & & & & & & & & & & & & & \\
+\partial_2e_2^{(2)} &=& & &z_2& & & & & & & & & & & & & & & & & & & & & & \\
+\partial_2e_3^{(2)} &=& & & & &z_3& & & & & & & & & & & & & & & & & & & & \\
+\partial_2e_4^{(2)} &=& & & & & & &z_4& & & & & & & & & & & & & & & & & & \\
+\partial_2e_5^{(2)} &=& & & & & & & & &z_5& & &+&z_7& & & & & & & & & & & & \\
+\partial_2e_6^{(2)} &=& & & & & & & & & & &z_6& & &+&z_8& & & & & & & & & & \\
+\partial_2e_7^{(2)} &=& & & & & & & & & & & & & & & & & & &z_{10}& & & & & & \\
+\partial_2e_8^{(2)} &=& & & & & & & & & & & & & & & & & & & & &z_{11}& & & & \\
+\partial_2e_9^{(2)} &=& &\phantom{+}& &\phantom{+} & &\phantom{+} & &\phantom{+} & &\phantom{+} & &\phantom{+} & &\phantom{+} & &\phantom{+} & &\phantom{+} & &\phantom{+} & & &z_{12}&+&z_{13}
+\end{array}
+\end{equation}
+Dies reicht jedoch nicht, um herauszufinden, welche der blauen Dreiecke
+linear unabhängig sind.
+Im vorliegenden Fall ist dies einfach: jedes blaue Dreieck besteht aus
+Kanten, die in keinem anderen blauen Dreieck vorkommen, daher müssen
+sie alle linear unabhängig sein.
+
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/gausshomobasis.pdf}
+\caption{Bestimmung einer Basis für die Homologiegruppe $H_k(C)$ mit
+Hilfe der Vorwärtsreduktion des Gaussalgorithmus.
+Die schwarzen Nullzeilen zeigen an, welche Zeilenvektoren zusammen mit
+den darüberliegenden Vektoren nicht linear unabhängig sind und damit nicht
+in Frage kommen für die besuchte Basis.
+Übrig bleiben die {\color{red}rot} und {\color{darkgreen}grün} hervorgehobenen
+Vektoren.
+\label{buch:homologie:fig:gausshomobasis}}
+\end{figure}
+
+Diese Auswahl lässt sich sehr leicht mit Hilfe der folgenden
+Variante des Gauss-Algorithmus realisieren.
+Dazu werden die $n_{k+1}$ Zeilen Gauss-Tableau zunächst mit den Vektoren
+$\partial_{k+1}{e_i^{(k+1)}}^t$ gefüllt.
+Führt man in diesem Tableau die Vorwärtsreduktion durch, wobei man
+entstehende Nullzeilen einfach überspringt, bleiben nur noch Zeilen
+übrig, die linear unabhängig sind.
+Diese Zeilen entsprechen den linear unabhängigen Vektoren von $\mathcal{B}_k$,
+die Zeilennummern sind $i_1,i_2,\dots,i_m$.
+Dieses Vorgehen ist schematisch im oberen Teil der
+Abbildung~\ref{buch:homologie:fig:gausshomobasis} dargestellt.
+
+\subsubsection{Basis für die Homologiegruppe $H_k(C)$}
+Um eine Basis von $H_k(C)$ zu konstruieren, müssen wir jetzt eine
+Basis von Zyklen finden, die sich nicht nur um einen Rand unterscheiden,
+die also zu verschiedenen Homologie-Klassen in $H_k(C)$ gehören.
+Gesucht sind jetzt also Vektoren $\mathcal{Z}'_k$ derart, dass
+die Vektoren von $\mathcal{Z}'_k\cup\mathcal{B}_k$ immer noch $Z_k(C)$
+aufspannen, aber zusätzlich linear unabhängig sind.
+
+Dazu kann man wie folgt vorgehen.
+\begin{enumerate}
+\item
+Man beginnt mit $\mathcal{D}_0=\emptyset$ und setzt $j=0$.
+\item
+Dann testet man der Reihe nach alle noch nicht getesteten Vektoren
+von $z_i^{(k)}\in\mathcal{Z}_k$ daraufhin, ob sie von den Vektoren
+$\mathcal{B}_k\cup \mathcal{D}_j$ linear unabhängig sind.
+Wenn ja, bildet man $\mathcal{D}_{j+1} = \mathcal{D}\cup\{z^{(k)}_i\}$ und
+setzt $j=1$.
+Andernfalls ignoriert man $z^{(k)}_i$.
+\item
+Schritt 2 wird wiederholt, bis man alle Vektoren von $\mathcal{Z}_k$
+getestet hat.
+Die gesuchte Basis setzt sich zusammen aus $\mathcal{B}_k$ und
+$\mathcal{D}_l$,
+also
+$
+\mathcal{Z}_k'
+=
+\mathcal{B}_k
+\cup
+\mathcal{D}_l.
+$
+\end{enumerate}
+
+Dieser Algorithmus kann ebenfalls mit der oben angesprochenen Variante
+des Gauss-Algorithmus durchgeführt werden.
+Dazu werden die Zeilen $n_k+1$ bis $n_k+1+|\mathcal{Z}_k|$ mit den
+Vektoren $z_i^t$.
+Dann führt man die Vorwärtsreduktion im ganzen Tableau durch, wobei
+man wieder die Nullzeilen stehen lässt.
+Nullzeilen zeigen wieder Vektoren an, die sich linear durch die darüber
+liegenden Vektoren ausdrücken lassen.
+Die auszuwählenden Vektoren sind daher genau diejenigen, die für
+$\mathcal{Z}_k'$ ausgewählt werden müssen.
+
+Um den Algorithmus durchzuführen, bilden wir daher das Gauss-Tableau
+in Abbildung~\ref{buch:homologie:beispiel:gausstableau},
+bestehend aus den Vektoren $\partial_2e_i^{(2)}$ in den ersten 9
+Zeilen und den Zyklen $z_1,\dots,z_{13}$ in den folgenden 13 Zeilen.
+Das reduzierte Tableau nach der Vorwärtsreduktion ist in
+Abbildung~\ref{buch:homologie:beispiel:gausstableaureduziert}
+dargestellt, amn erkennt, dass die Zyklen $z_1$ bis $z_4$, $z_7$ und $z_8$,
+$z_9$ und $z_{10}$ sowie $z_{13}$ weggelassen werden müssen.
+Es bleiben die folgenden Zyklen:
+\begin{center}
+\begin{tabular}{>{$}l<{$}l}
+\text{Zyklus}&Eigenschaft\\
+\hline
+z_5 &Zyklus umschliesst das kleine weisse Dreieck links unten\\
+z_6 &Zyklus umschliesst das kleine weisse Dreieck rechts unten\\
+z_9 &Zyklus umschliesst das grosse weisse Dreieck\\
+z_{12}&Zyklus umschliesst das kleine weisse Dreicke oben\\
+\hline
+\end{tabular}
+\end{center}
+Die Zyklen, die nach der Reduktion übrig bleiben, sind in
+Abbildung~\ref{buch:homologie:beispiel:homoclasses} zusammengestellt.
+Jede solche Klasse entspricht genau einem der ``Löcher'', der weissen
+Dreiecke.
+Die Homologie kann man also als eine exakte Version der Idee eines
+Vektorraums erzeugt von den ``Löchern'' eines Polygons verstehen.
+
+\begin{figure}
+\centering
+\setlength\tabcolsep{1pt}
+\begin{tabular}{|>{$}c<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|}
+\hline
+&\scriptstyle 1&\scriptstyle 2&\scriptstyle 3&\scriptstyle 4 &\scriptstyle 5
+&\scriptstyle 6 &\scriptstyle 7 &\scriptstyle 8 &\scriptstyle 9 &\scriptstyle 10
+&\scriptstyle 11 &\scriptstyle 12 &\scriptstyle 13 &\scriptstyle 14 &\scriptstyle 15
+&\scriptstyle 16 &\scriptstyle 17 &\scriptstyle 18 &\scriptstyle 19 &\scriptstyle 20
+&\scriptstyle 21 &\scriptstyle 22 &\scriptstyle 23 &\scriptstyle 24 &\scriptstyle 25
+&\scriptstyle 26 &\scriptstyle 27
+\\
+% 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
+\hline
+\scriptstyle\partial_2e_1^{(2)}& 1& & & & 1&\phantom{-}1& & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_2^{(2)}& & 1& & & & & 1&\phantom{-}1& & & & & & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_3^{(2)}& & & 1& & & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_4^{(2)}& & & &\phantom{-}1& & & & & & & 1&\phantom{-}1& & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_5^{(2)}& & & & & & & & & & & & & 1& & 1&\phantom{-}1& & & & & & & & & & & \\
+\scriptstyle\partial_2e_6^{(2)}& & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & & & & & & & \\
+\scriptstyle\partial_2e_7^{(2)}& & & & & & & & & & & & & & & & & & & 1& &\phantom{-}1& 1& & & & & \\
+\scriptstyle\partial_2e_8^{(2)}& & & & & & & & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & \\
+\scriptstyle\partial_2e_9^{(2)}& & & & & & & & & & & & & & & & & & & & & & & & &\phantom{-}1&\phantom{-}1&\phantom{-}1\\
+\hline
+% 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
+\scriptstyle z_{ 1}& 1& & & & 1& 1& & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 2}& & 1& & & & & 1& 1& & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 3}& & & 1& & & & & & 1& 1& & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 4}& & & & 1& & & & & & & 1& 1& & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 5}&-1& & & &-1& & 1& & & & & & 1& & & & & & & & & & & & & & \\
+\scriptstyle z_{ 6}& & &-1& & & & & &-1& & 1& & & 1& & & & & & & & & & & & & \\
+\scriptstyle z_{ 7}& 1& & & & 1& &-1& & & & & & & & 1& 1& & & & & & & & & & & \\
+\scriptstyle z_{ 8}& & & 1& & & & & & 1& &-1& & & & & & 1& 1& & & & & & & & & \\
+\scriptstyle z_{ 9}&-1&-1& & & 1& & & & 1& & & & & &-1& & 1& 1& 1& & & & & & & & \\
+\scriptstyle z_{10}& & & & & & & & & & & & & & & & & & 1& & 1& 1& & & & & & \\
+\scriptstyle z_{11}& 1& 1& & & 1& & & &-1& & & & & & 1& &-1& &-1& & & & 1& 1& & & \\
+\scriptstyle z_{12}& & & & & & & & & & & & & & & & & & &-1& &-1& & 1& & 1& & \\
+\scriptstyle z_{13}& & & & & & & & & & & & & & & & & & & 1& & 1& &-1& & & 1& 1\\
+\hline
+\end{tabular}
+\caption{Gauss-Tableau für die Bestimmung einer Basis von
+$H_1$ für das Beispiel.
+Die ersten neuen Zeilen bestehen aus den Bildern der
+Basisvektoren von $C_2$.
+Im vorliegenden Fall kann man sofort sehen, dass alle diese
+Zeilen linear unabhängig sind.
+Die folgenden Zeilen sind die Zyklen in $\mathbb{Z}_2$, sie
+sind ebenfalls linear unabhängig.
+Mit Hilfe der Vorwärtsreduktion müssen jetzt diejenigen
+Zeilen elminiert werden, die bereits aus anderen Zyklen
+mit Hilfe von Rändern der Zeilen 1--9 kombiniert werden können.
+\label{buch:homologie:beispiel:gausstableau}}
+\end{figure}
+
+\begin{figure}
+\centering
+\setlength\tabcolsep{1pt}
+\begin{tabular}{|>{$}c<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}>{$}r<{$}|}
+\hline
+&\scriptstyle 1&\scriptstyle 2&\scriptstyle 3&\scriptstyle 4 &\scriptstyle 5
+&\scriptstyle 6 &\scriptstyle 7 &\scriptstyle 8 &\scriptstyle 9 &\scriptstyle 10
+&\scriptstyle 11 &\scriptstyle 12 &\scriptstyle 13 &\scriptstyle 14 &\scriptstyle 15
+&\scriptstyle 16 &\scriptstyle 17 &\scriptstyle 18 &\scriptstyle 19 &\scriptstyle 20
+&\scriptstyle 21 &\scriptstyle 22 &\scriptstyle 23 &\scriptstyle 24 &\scriptstyle 25
+&\scriptstyle 26 &\scriptstyle 27
+\\
+% 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
+\hline
+\scriptstyle\partial_2e_1^{(2)}&\phantom{-}1& & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_2^{(2)}& &\phantom{-}1& & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_3^{(2)}& & &\phantom{-}1& & & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_4^{(2)}& & & &\phantom{-}1& & & & & & &\phantom{-}1&\phantom{-}1& & & & & & & & & & & & & & & \\
+\scriptstyle\partial_2e_5^{(2)}& & & & & & & & & & & & & 1& & 1&\phantom{-}1& & & & & & & & & & & \\
+\scriptstyle\partial_2e_6^{(2)}& & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & & & & & & & \\
+\scriptstyle\partial_2e_7^{(2)}& & & & & & & & & & & & & & & & & & & 1& &\phantom{-}1& 1& & & & & \\
+\scriptstyle\partial_2e_8^{(2)}& & & & & & & & & & & & & & & & & & & &\phantom{-}1& & & 1&\phantom{-}1& & & \\
+\scriptstyle\partial_2e_9^{(2)}& & & & & & & & & & & & & & & & & & & & & & & & &\phantom{-}1&\phantom{-}1&\phantom{-}1\\
+\hline
+% 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
+\scriptstyle z_{ 1}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 2}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 3}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 4}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 5}'& & & & & & 1& 1& & & & & & & &-1&-1& & & & & & & & & & & \\
+\scriptstyle z_{ 6}'& & & & & & & & & & 1& 1& & & & & &-1&-1& & & & & & & & & \\
+\scriptstyle z_{ 7}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 8}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{ 9}'& & & & & & & & 1& 1& & & & & & & 1& 1& & & &-1&-1&-1&-1& & & \\
+\scriptstyle z_{10}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{11}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\scriptstyle z_{12}'& & & & & & & & & & & & & & & & & & & & & & 1& 1& & &-1&-1\\
+\scriptstyle z_{13}'& & & & & & & & & & & & & & & & & & & & & & & & & & & \\
+\hline
+\end{tabular}
+\caption{Nach Durchführung der Vorwärtsreduktion kann man die Zyklen
+ablesen, die nicht für eine Basis von $H_1$ gebraucht werden.
+Die resultierenden Zyklen sind in Abbildung~\ref{buch:homologie:beispiel:homoclasses}
+dargestellt.
+\label{buch:homologie:beispiel:gausstableaureduziert}}
+\end{figure}
+
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/homoclasses.pdf}
+\caption{Repräsentanten für die reduzierten Klassen aus dem
+Tableau von
+Abbildung~\ref{buch:homologie:beispiel:gausstableaureduziert},
+sie bilden eine Basis der Homologie-Gruppe $H_1$.
+Jeder dieser Repräsentanten umschliesst genau ein ``Loch'',
+also genau ein weisses Dreieck.
+\label{buch:homologie:beispiel:homoclasses}}
+\end{figure}
+
+\subsubsection{Basis von $H_k(C)$}
+Die im vorangegangenen Abschnitt konstruierte Basis kann jetzt auch
+dazu verwendet werden, eine Basis von $H_k(C)$ zu finden.
+Die Vektoren in $\mathcal{B}_k$ bilden eine Basis von $B_k(C)$
+und die Vektoren in $\mathcal{Z}_k'$ sind davon unabhängig.
+Die Klassen der Vektoren von $\mathcal{Z}_k'$ in $H_k(C)$ sind
+daher ebenfalls linear unabhängig und bilden damit eine Basis
+von $H_k(C)$.
+Die von obigem Algorithmus ausgewählten Zyklen bilden also automatisch
+eine Basis von Zyklen, die nicht Rand irgend einer Kette in $C_{k+1}$
+sein können.
diff --git a/buch/chapters/95-homologie/chapter.tex b/buch/chapters/95-homologie/chapter.tex
index eaa56c4..e25188c 100644
--- a/buch/chapters/95-homologie/chapter.tex
+++ b/buch/chapters/95-homologie/chapter.tex
@@ -3,9 +3,9 @@
%
% (c) 2021 Prof Dr Andreas Müller, Hochschule Rapperswil
%
-\chapter{Homologie
+\chapter{Kettenkomplexe und Homologie
\label{buch:chapter:homologie}}
-\lhead{Homologie}
+\lhead{Kettenkomplexe und Homologie}
\rhead{}
Mit der Inzidenzmatrix war es möglich, einen Graphen zu beschreiben
und verschiedene interessante Eigenschaften desselben zu berechnen.
@@ -35,10 +35,20 @@ Der sogenannte Randoperator ordnet jedem Dreieck, Tetraeder oder allgemein
jedem Simplex seinen Rand zu.
Damit wird es möglich, das Dreieck vom Rand des Dreiecks zu unterschieden.
+Die Verallgemeinerung dieser Idee liefert eine algebraische Konstruktion
+zu jedem topologischen Raum, die sogenannten Homologie-Gruppen.
+Sie formalisieren ein mögliches Konzept der Dimension und der
+Idee von ``Löchern'' in einem topologischen Raum.
+Sie können dabei helfen, die topologische Struktur verschiedener
+Räume zu unterscheiden.
+Das Ziel dieses Kapitels ist nicht, die Homologietheorie
+vollständig zu entwickeln, sondern zu zeigen, wie man Matrizen
+verwenden kann, um konkrete Rechnungen durchzuführen.
+
\input{chapters/95-homologie/simplex.tex}
\input{chapters/95-homologie/komplex.tex}
\input{chapters/95-homologie/homologie.tex}
-\input{chapters/95-homologie/mayervietoris.tex}
+%\input{chapters/95-homologie/mayervietoris.tex}
\input{chapters/95-homologie/fixpunkte.tex}
diff --git a/buch/chapters/95-homologie/eulerchar.tex b/buch/chapters/95-homologie/eulerchar.tex
new file mode 100644
index 0000000..03e389b
--- /dev/null
+++ b/buch/chapters/95-homologie/eulerchar.tex
@@ -0,0 +1,139 @@
+\subsection{Euler-Charakteristik}
+Die Homologiegruppen fassen die Idee, die ``Löcher'' in
+Dimension $k$ eines Polyeders zu zählen, algebraisch exakt.
+Dazu ist aber die algebraische Struktur von $H_k(C)$ gar
+nicht nötig, nur schon die Dimension des Vektorraumes $H_k(C)$
+liefert bereits die verlange Information.
+
+Dies ist auch der Ansatz, den der eulersche Polyedersatz verfolgt.
+Euler hat für dreidimensionale Polyeder eine Invariante gefunden,
+die unabhängig ist von der Triangulation.
+
+\begin{definition}
+\label{buch:homologie:def:eulerchar0}
+Ist $E$ die Anzahl der Ecken, $K$ die Anzahl der Kanten und $F$
+die Anzahl der Flächen eines dreidimensionalen Polyeders $P$, dann
+heisst
+\[
+\chi(P) = E-K+F
+\]
+die {\em Euler-Charakteristik} des Polyeders $P$.
+\end{definition}
+
+Der Eulersche Polyedersatz, den wir nicht gesondert beweisen
+wollen, besagt, dass $\chi(P)$ unabhängig ist von der
+Triangulation.
+Alle regelmässigen Polyeder sind verschiedene Triangulationen
+einer Kugel, sie haben alle den gleichen Wert $2$
+der Euler-Charakteristik.
+
+Ändert man die Triangulation, dann wird die Dimension der
+Vektorräume $B_k(C)$ und $Z_k(C)$ grösser werden.
+Kann man eine Grösse analog zu $\chi(P)$ finden, die sich nicht ändert?
+
+\begin{definition}
+\label{buch:homologie:def:eulerchar}
+Sei $C$ ein Kettenkomplex, dann heisst
+\[
+\chi(C) = \sum_{k=0}^n (-1)^k\dim H_k(C)
+\]
+die Euler-Charakteristik von $C$.
+\end{definition}
+
+Die Summe in Definition~\ref{buch:homologie:def:eulerchar} erstreckt
+sich bis zum Index $n$, der Dimension des Simplexes höchster Dimension
+in einem Polyeder.
+Für $k>n$ ist $H_k(C)=0$, es ändert sich also nichts, wenn wir
+die Summe bis $\infty$ erstrecken, da die zusätzlichen Terme alle
+$0$ sind.
+Wir werden dies im folgenden zur Vereinfachung der Notation tun.
+
+Die Definition verlangt, dass man erst die Homologiegruppen
+berechnen muss, bevor man die Euler-Charakteristik bestimmen
+kann.
+Dies ist aber in vielen Fällen gar nicht nötig, da dies nur
+eine Frage der Dimensionen ist, die man direkt aus den
+$C_k$ ablesen kann, wie wir nun zeigen wollen.
+
+Die Dimension der Homologiegruppen ist
+\begin{equation}
+\dim H_k(C)
+=
+\dim \bigl(Z_k(C) / B_k(C)\bigr)
+=
+\dim Z_k(C) - \dim B_k(C).
+\label{buch:homologie:eqn:dimHk}
+\end{equation}
+Die Bestimmung der Dimensionen der Zyklen und Ränder erfordert
+aber immer noch, dass wir dafür Basen bestimmen müssen, es ist
+also noch nichts eingespart.
+Die Zyklen bilden den Kern von $\partial$, also
+\[
+\dim Z_k(C) = \dim\ker \partial_k.
+\]
+Die Ränder $B_k(C)$ sind die Bilder von $\partial_{k+1}$, also
+\[
+\dim B_k(C)
+=
+\dim C_{k+1} - \ker\partial_{k+1}
+=
+\dim C_{k+1} - \dim Z_{k+1}(C).
+\]
+Daraus kann man jetzt eine Formel für die Euler-Charakteristik
+gewinnen.
+Sie ist
+\begin{align*}
+\chi(C)
+&=
+\sum_{k=0}^\infty (-1)^k \dim H_k(C)
+\\
+&=
+\sum_{k=0}^\infty (-1)^k \bigl(\dim Z_k(C) - \dim B_k(C)\bigr)
+\\
+&=
+\sum_{k=0}^\infty (-1)^k \dim Z_k(C)
+-
+\sum_{k=0}^\infty (-1)^k \bigl(\dim C_{k+1} - \dim_{k+1}(C)\bigr)
+\\
+&=
+-\sum_{k=0}^\infty (-1)^k \dim C_{k+1}
++
+\sum_{k=0}^\infty (-1)^k \dim Z_k(C)
++
+\sum_{k=0}^\infty (-1)^k \dim Z_{k+1}(C).
+\intertext{Indem wir in der letzten Summe den Summationsindex $k$ durch
+$k-1$ ersetzen, können wir bis auf den ersten Term die Summen
+der $\dim Z_k(C)$ zum Verschwinden bringen:}
+&=
+-\sum_{k=0}^\infty (-1)^k \dim C_{k+1}
++
+\sum_{k=0}^\infty (-1)^k \dim Z_k(C)
+-
+\sum_{k=1}^\infty (-1)^k \dim Z_k(C)
+\\
+&=
+\sum_{k=1}^\infty (-1)^k \dim C_{k}
++
+\dim \underbrace{Z_0(C)}_{\displaystyle =C_0}.
+\intertext{In der letzten Umformung haben wir auch in der ersten
+Summe den Summationsindex $k$ durch $k-1$ ersetzt.
+Damit beginnt die Summation bei $k=1$.
+Der fehlende Term ist genau der Term, der von den Summen der
+$\dim Z_k(C)$ übrig bleibt.
+Damit erhalten wir}
+&=
+\sum_{k=0}^\infty (-1)^k \dim C_{k}.
+\end{align*}
+
+\begin{satz}
+Für die Euler-Charakteristik eines endlichdimensionalen Kettenkomplexes $C$ gilt
+\[
+\chi(C)
+=
+\sum_{k=0}^\infty (-1)^k \dim H_k(C)
+=
+\sum_{k=0}^\infty (-1)^k \dim C_k.
+\]
+\end{satz}
+Im nächsten Abschnitt wird gezeigt, dass die Euler-Charakteristik
+als Spezialfall der Lefshetz-Zahl verstanden werden kann.
diff --git a/buch/chapters/95-homologie/fixpunkte.tex b/buch/chapters/95-homologie/fixpunkte.tex
index 1ed51ef..b3b184e 100644
--- a/buch/chapters/95-homologie/fixpunkte.tex
+++ b/buch/chapters/95-homologie/fixpunkte.tex
@@ -11,15 +11,127 @@ selbst gehört die zugehörige lineare Abbildung $f_*\colon H_*(X)\to H_*(X)$
der Homologiegruppen.
Diese linearen Abbildungen sind im Allgemeinen viel einfacher zu
analysieren.
-Zum Beispiel soll in Abschnitt~\ref{buch:subsection:lefshetz}
-die Lefshetz-Spurformel abgeleitet werden, die eine Aussagen darüber
-ermöglicht, ob eine Abbildung einen Fixpunkt haben kann.
-In Abschnitt~\ref{buch:subsection:brower} wird gezeigt wie man damit
-den Browerschen Fixpunktsatz beweisen kann, der besagt, dass jede
-Abbildung eines Einheitsballs in sich selbst immer einen Fixpunkt hat.
-
-\subsection{Lefshetz-Spurformel
-\label{buch:subsection:lefshetz}}
-
-\subsection{Brower-Fixpunktsatz
-\label{buch:subsection:brower}}
+%Zum Beispiel soll in Abschnitt~\ref{buch:subsection:lefshetz}
+%die Lefshetz-Spurformel abgeleitet werden, die eine Aussagen darüber
+%ermöglicht, ob eine Abbildung einen Fixpunkt haben kann.
+%In Abschnitt~\ref{buch:subsection:brower} wird gezeigt wie man damit
+%den Browerschen Fixpunktsatz beweisen kann, der besagt, dass jede
+%Abbildung eines Einheitsballs in sich selbst immer einen Fixpunkt hat.
+
+%\subsection{Brower-Fixpunktsatz
+%\label{buch:subsection:brower}}
+%
+%\begin{satz}[Brower]
+%\end{satz}
+
+%\subsection{Lefshetz-Fixpunktsatz
+%\label{buch:subsection:lefshetz}}
+Eine Selbstabbildung $f_*\colon C_*\to C_*$ von Kettenkomplexen führt auf
+eine Selbstabbiludng der Homologiegruppen $H(f)\colon H(C)\to H(C)$.
+Da sowohl $H_k$ wie auch $C_k$ endlichdimensionale Vektorräume sind,
+ist die Spur von $H_k(f)$ wohldefiniert.
+
+\begin{definition}
+Die {\em Lefshetz-Zahl} einer Abbildung $f$ von Kettenkomplexen ist
+\begin{equation}
+\lambda(f)
+=
+\sum_{k=0}^\infty
+(-1)^k \operatorname{Spur}f_k
+=
+\sum_{k=0}^\infty
+(-1)^k \operatorname{Spur}(H_k(f)).
+\label{buch:homologie:lefschetz-zahl}
+\end{equation}
+\end{definition}
+
+Die zweite Darstellung der Lefshetz-Zahl auf der rechten Seite ist
+meistens viel leichter zu berechnen als die erste.
+Die einzelnen Vektorräume eines Kettenkomplexes können haben typischerweise
+eine hohe Dimension, so hoch wie die Anzahl der Simplizes der Triangulation.
+Die Homologiegruppen dagegen haben typischerweise sehr viel kleinere
+Dimension, die Matrizen $H_k(f)$ sind also relativ klein.
+Es ist aber nicht klar, dass beide Berechnungsmethoden für die
+Lefshetz-Zahl auf das gleiche Resultat führen müssen.
+
+\begin{figure}
+\centering
+\includegraphics[width=\textwidth]{chapters/95-homologie/images/approximation.pdf}
+\caption{Stückweise lineare Approximation einer Abbildung derart,
+dass die Bildpunkt von Knoten auf Gitterpunkte fallen.
+Die Abbildung wird damit zu einer Abbildung von Polyedern und
+die induzierte Abbildung der Kettenkomplexe lässt sich direkt berechnen.
+Wenn die Auflösung des Gitters klein genug ist, hat die Approximation
+einer Abbildung ohne Fixpunkte immer noch keine Fixpunkte.
+\label{buch:homologie:fig:simplapprox}}
+\end{figure}%
+
+\begin{proof}[Beweis]
+Im Abschnitt~\ref{buch:subsection:induzierte-abbildung} wurde gezeigt,
+dass die Basis des Komplexes immer so gewählt werden kann, dass für
+die Spuren der Teilmatrizen von $f_k$ die
+Formel~\eqref{buch:homologie:eqn:spur} gilt.
+Damit kann jetzt die alternierenierden Summe der Spuren von $f_k$ ermittelt
+werden:
+\begin{align*}
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_k)
+&=
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k,B})
++
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k,Z})
++
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k-1,B})
+\\
+&=
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k,B})
++
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k,Z})
+-
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k,B})
+\\
+&=
+\sum_{k=0}^\infty (-1)^k\operatorname{Spur}(f_{k,Z}).
+\intertext{Die Abbildung $H_k(f)$ hat $f_{k,Z}$ als Matrix, also ist
+die letzte Form gleichbedeutend mit}
+&=
+\sum_{k=0} (-1)^k\operatorname{Spur} H_k(f).
+\end{align*}
+Damit ist die Formel
+\eqref{buch:homologie:lefschetz-zahl}
+bewiesen.
+\end{proof}
+
+Die Lefshetz-Zahl ist eine Invariante einer topologischen Abbildung,
+die Aussagen über Fixpunkte zu machen erlaubt.
+
+\begin{satz}
+Ist $f\colon X\to X$ eine Selbstabbildung eines kompakten Polyeders und
+ist $\lambda(f) \ne 0$, dann hat $f$ einen Fixpunkt.
+\end{satz}
+
+Im Folgenden soll nur ein heuristisches Argument gegeben werden, warum
+ein solcher Satz wahr sein könnte.
+
+
+Wenn eine Abbildung keinen Fixpunkt hat, dann ist $f(x) \ne x$ für alle
+Punkte von $X$.
+Da $X$ kompakt ist, gibt es einen minimalen Abstand $d$ zwischen $f(x)$ und $x$.
+Wenn man also für $X$ eine Triangulation wählt, die wesentlich feiner ist
+als dieser minimale Abstand, dann wird kein Simplex der Triangulation auf
+Punkte im selben Simplex oder in einem Nachbarsimplex abgebildet wird.
+Indem man nötigenfalls die Triangulation nochmals verfeinert, kann man auch
+genügend Platz schaffen, dass man die Abbildung $f$ etwas modifizieren kann,
+so dass auch die deformierte Abbildung immer noch diese Eigenschaft hat.
+Die Abbildung~\ref{buch:homologie:fig:simplapprox} illustriert, wie eine
+Abbildung durch eine andere approximiert werden kann, die die Triangulation
+im Bildraum respektiert.
+
+Die zugehörige Abbildung des Kettenkomplexes der Triangulation hat damit
+die Eigenschaft, dass kein Basisvektor auf sich selbst abgebildet wird.
+Die Matrix der Abbildung hat daher keine Nullen auf der Diagonalen, und
+damit ist auch die Spur dieser Abbildung Null: $\operatorname{Spur}(H_k(f))=0$
+für alle $k$.
+Erst recht ist die Lefshetz-Zahl $\lambda(f)=0$.
+Wenn also die Lefshetz-Zahl verschieden ist von Null, dann muss $f$
+notwendigerweise einen Fixpunkt haben.
+
diff --git a/buch/chapters/95-homologie/homologie.tex b/buch/chapters/95-homologie/homologie.tex
index 2b80a17..747c00f 100644
--- a/buch/chapters/95-homologie/homologie.tex
+++ b/buch/chapters/95-homologie/homologie.tex
@@ -6,13 +6,36 @@
\section{Homologie
\label{buch:section:homologie}}
\rhead{Homologie}
+Die Idee der Trangulation ermöglicht, komplizierte geometrische
+Objekte mit einem einfachen ``Gerüst'' auszustatten und so zu
+analysieren.
+Projiziert man ein mit einer Kugel konzentrisches Tetraeder auf die
+Kugel, entsteht eine Triangulation der Kugeloberfläche.
+Statt eine Kugel zu studieren, kann man also auch ein Tetraeder untersuchen.
-\subsection{Homologie eines Kettenkomplexes
-\label{buch:subsection:homologie-eines-kettenkomplexes}}
+Das Gerüst kann natürlich nicht mehr alle Eigenschaften des ursprünglichen
+Objektes wiedergeben.
+Im Beispiel der Kugel geht die Information darüber, dass es sich um eine
+glatte Mannigfaltigkeit handelt, verloren.
+Was aber bleibt, sind Eigenschaften des Zusammenhangs.
+Wenn sich zwei Punkte mit Wegen verbinden lassen, dann gibt es auch eine
+Triangulation mit eindimensionalen Simplices, die diese Punkte als Ecken
+enthalten, die sich in der Triangulation mit einer Folge von Kanten
+verbinden lassen.
+Algebraisch bedeutet dies, dass die beiden Punkte der Rand eines
+Weges sind.
+Fragen der Verbindbarkeit von Punkten mit Wegen lassen sich also
+dadurch studieren, dass man das geometrische Objekt auf einen Graphen
+reduziert.
-\subsection{Induzierte Abbildung
-\label{buch:subsection:induzierte-abbildung}}
+In diesem Abschnitt soll gezeigt werden, wie diese Idee auf höhere
+Dimensionen ausgedehnt werden.
+Es soll möglich werden, kompliziertere Fragen des Zusammenhangs, zum
+Beispiel das Vorhandensein von Löchern mit algebraischen Mitteln
+zu analysieren.
-\subsection{Homologie eines simplizialen Komplexes
-\label{buch:subsection:simplizialekomplexe}}
+\input{chapters/95-homologie/homologieketten.tex}
+\input{chapters/95-homologie/basiswahl.tex}
+\input{chapters/95-homologie/eulerchar.tex}
+\input{chapters/95-homologie/induzierteabb.tex}
diff --git a/buch/chapters/95-homologie/homologieketten.tex b/buch/chapters/95-homologie/homologieketten.tex
new file mode 100644
index 0000000..1b40147
--- /dev/null
+++ b/buch/chapters/95-homologie/homologieketten.tex
@@ -0,0 +1,286 @@
+%
+% homologieketten.tex
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\subsection{Homologie eines Kettenkomplexes
+\label{buch:subsection:homologie-eines-kettenkomplexes}}
+Wegzusammenhang lässt sich untersuchen, indem man in der Triangulation
+nach Linearkombinationen von Kanten sucht, die als Rand die beiden Punkte
+haben.
+Zwei Punkte sind also nicht verbindbar und liegen damit in verschiedenen
+Komponenten, wenn die beiden Punkte nicht Rand irgend einer
+Linearkombination von Kanten sind.
+Komponenten können also identifiziert werden, indem man unter allen
+Linearkombinationen von Punkten, also $C_0$ all diejenigen ignoriert,
+die Rand einer Linearkombinationv on Kanten sind, also $\partial_1C_1$.
+Der Quotientenraum $H_0=C_0/\partial_1C_1$ enthält also für jede Komponente
+eine Dimension.
+
+Eine Dimension höher könnten wir danach fragen, ob sich ein geschlossener
+Weg zusammenziehen lässt.
+In der Triangulation zeichnet sich ein geschlossener Weg dadurch aus,
+dass jedes Ende einer Kante auch Anfang einer Folgekante ist, dass also
+der Rand der Linearkombination von Kanten 0 ist.
+Algebraisch bedeutet dies, dass wir uns für diejenigen Linearkombinationen
+$z\in C_1$ interessieren, die keinen Rand haben, für die also $\partial_1z=0$
+gilt.
+
+\begin{definition}
+Die Elemente von
+\[
+Z_k
+=
+Z_k^C
+=
+\{z\in C_k\;|\; \partial_k z = 0\}
+=
+\ker \partial_k
+\]
+heissen die {\em ($k$-dimensionalen) Zyklen} von $C_*$.
+\end{definition}
+
+In einem Dreieck ist der Rand ein geschlossener Weg, der sich zusammenziehen
+lässt, indem man ihn durch die Dreiecksfläche deformiert.
+Entfernt man aber die Dreiecksfläche, ist diese Deformation nicht mehr
+möglich.
+Einen zusammenziehbaren Weg kann man sich also als den Rand eines Dreiecks
+einer vorstellen.
+``Löcher'' sind durch geschlossene Wege erkennbar, die nicht Rand eines
+Dreiecks sein können.
+Wir müssen also ``Ränder'' ignorieren.
+
+\begin{definition}
+Die Elemente von
+\[
+B_k
+=
+B_k^C
+=
+\{\partial_{k+1}z\;|\; C_{k+1}\}
+=
+\operatorname{im} \partial_{k+1}
+\]
+heissen die {\em ($k$-dimensionalen) Ränder} von $C_*$.
+\end{definition}
+
+Algebraisch ausgedrückt interessieren uns also nur Zyklen, die selbst
+keine Ränder sind.
+Der Quotientenraum $Z_1/B_1$ ignoriert unter den Zyklen diejenigen, die
+Ränder sind, drückt also algebraisch die Idee des eindimensionalen
+Zusammenhangs aus.
+Wir definieren daher
+
+\begin{definition}
+Die $k$-dimensionale Homologiegruppe des Kettenkomplexes $C_*$ ist
+\[
+H_k(C) = Z_k/B_k = \ker \partial_k / \operatorname{im} \partial_{k+1}.
+\]
+Wenn nur von einem Kettenkomplex die Rede ist, kann auch $H_k(C)=H_k$
+abgekürzt werden.
+\end{definition}
+
+% XXX Visualisierung Zyklen/Ränder, Klassen von Zyklen, die sich um einen
+% XXX Rand unterscheiden
+
+Die folgenden zwei ausführlichen Beispiele sollen zeigen, wie die
+Homologiegruppe $H_2$ die Anwesenheit eines Hohlraumes detektieren kann,
+der entsteht, wenn man aus einem Tetraeder das innere entfernt.
+
+\begin{beispiel}
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/tetraeder.pdf}
+\caption{Triangulation eines Tetraeders, die Orientierung von Kanten
+und Seitenflächen ist immer so gewählt, dass die Nummern der Ecken
+aufsteigend sind.
+\label{buch:homologie:tetraeder:fig}}
+\end{figure}
+Ein Tetraeder ist ein zweidmensionales Simplex, wir untersuchen seinen
+Kettenkomplex und bestimmen die zugehörigen Homologiegruppen.
+Zunächst müssen wir die einzelnen Mengen $C_k$ beschreiben und verwenden
+dazu die Bezeichnungen gemäss Abbildung~\ref{buch:homologie:tetraeder:fig}.
+$C_0$ ist der vierdimensionale Raum aufgespannt von den vier Ecken
+$0$, $1$, $2$ und $3$ des Tetraeders.
+$C_1$ ist der sechsdimensionale Vektorraum der Kanten
+\[
+k_0 = [0,1],\quad
+k_1 = [0,2],\quad
+k_2 = [0,3],\quad
+k_3 = [1,2],\quad
+k_4 = [1,3],\quad
+k_5 = [2,3]
+\]
+Der Randoperator $\partial_1$ hat die Matrix
+\[
+\partial_1
+=
+\begin{pmatrix*}[r]
+-1&-1&-1& 0& 0& 0\\
+ 1& 0& 0&-1&-1& 0\\
+ 0& 1& 0& 1& 0&-1\\
+ 0& 0& 1& 0& 1& 1
+\end{pmatrix*}.
+\]
+
+Wir erwarten natürlich, dass sich zwei beliebige Ecken verbinden lassen,
+dass es also nur eine Komponente gibt und dass damit $H_1=\Bbbk$ ist.
+Dazu beachten wir, dass das Bild von $\partial_1$ genau aus den Vektoren
+besteht, deren Komponentensumme $0$ ist.
+Das Bild $B_0$ von $\partial_1$ ist daher die Lösungsmenge der einen
+Gleichung
+\(
+x_0+x_1+x_2+x_3=0.
+\)
+Der Quotientenraum $H_0=Z_0/B_0 = C_0/\operatorname{im}\partial_1$
+ist daher wie erwartet eindimensional.
+
+Wir bestimmen jetzt die Homologiegruppe $H_1$.
+Da sich im Tetraeder jeder geschlossene Weg zusammenziehen lässt,
+erwarten wir $H_1=0$.
+
+Die Menge der Zyklen $Z_1$ wird bestimmt, indem man die Lösungsmenge
+des Gleichungssystems $\partial_1z=0$ bestimmt.
+Der Gauss-Algorithmus für die Matrix $\partial_1$ liefert das
+Schlusstableau
+\[
+\begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|}
+\hline
+k_0&k_1&k_2&k_3&k_4&k_5\\
+\hline
+ 1& 0& 0& -1& -1& 0\\
+ 0& 1& 0& 1& 0& -1\\
+ 0& 0& 1& 0& 1& 1\\
+ 0& 0& 0& 0& 0& 0\\
+\hline
+\end{tabular}
+\]
+Daraus lassen sich drei linear unabhängig eindimensionale Zyklen ablesen,
+die zu den Lösungsvektoren
+\[
+z_1
+=
+\begin{pmatrix*}[r]
+1\\
+-1\\
+0\\
+1\\
+0\\
+0
+\end{pmatrix*},
+\qquad
+z_2
+=
+\begin{pmatrix*}[r]
+1\\
+0\\
+-1\\
+0\\
+1\\
+0
+\end{pmatrix*},
+\qquad
+z_3
+=
+\begin{pmatrix*}[r]
+0\\
+1\\
+-1\\
+0\\
+0\\
+1
+\end{pmatrix*}
+\]
+gehören.
+
+$C_2$ hat die vier Seitenflächen
+\[
+f_0=[0,1,2],\quad
+f_1=[0,1,3],\quad
+f_2=[0,2,3],\quad
+f_3=[1,2,3]
+\]
+als Basis.
+Der zweidimensionale Randoperator ist die $6\times 4$-Matrix
+\[
+\partial_2
+=
+\begin{pmatrix*}[r]
+ 1& 1& 0& 0\\
+-1& 0& 1& 0\\
+ 0&-1&-1& 0\\
+ 1& 0& 0& 1\\
+ 0& 1& 0&-1\\
+ 0& 0& 1& 1
+\end{pmatrix*}.
+\]
+Man kann leicht nachrechnen, dass $\partial_1\partial_2=0$ ist, wie es
+für einen Kettenkomplex sein muss.
+
+Um nachzurechnen, dass die Homologiegruppe $H_1=0$ ist, müssen wir jetzt
+nachprüfen, ob jeder Zyklus in $Z_1$ auch Bild der Randabbildung $\partial_2$
+ist.
+Die ersten drei Spalten von $\partial_2$ sind genau die drei Zyklen
+$z_1$, $z_2$ und $z_3$.
+Insbesondere lassen sich alle Zyklen als Ränder darstellen, die
+Homologiegruppe $H_1=0$ verschwindet.
+
+Die Zyklen in $C_2$ sind die Lösungen von $\partial_2z=0$.
+Der Gauss-Algorithmus für $\partial_2$ liefert das -Tableau
+\[
+\begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|}
+\hline
+f_0&f_1&f_2&f_3\\
+\hline
+1&0&0& 1\\
+0&1&0&-1\\
+0&0&1& 1\\
+0&0&0& 0\\
+0&0&0& 0\\
+0&0&0& 0\\
+\hline
+\end{tabular}
+\]
+Daraus liest man ab, dass es genau einen Zyklus nämlich
+\[
+z
+=
+\begin{pmatrix}
+-1\\1\\-1\\1
+\end{pmatrix}
+\]
+$Z_2$ besteht also aus Vielfachen des Vektors $z$.
+
+Da es nur ein zweidimensionales Simplex gibt, ist $C_3$ eindimensional.
+Die Randabbildung $\partial_3$ hat die Matrix
+\[
+\partial_3
+=
+\begin{pmatrix}
+1\\
+-1\\
+1\\
+-1
+\end{pmatrix}.
+\]
+Die Zyklen $Z_2$ und die Ränder $B_2$ bilden also dieselbe Menge, auch
+die Homologie-Gruppe $H_2$ ist $0$.
+
+Da es keine vierdimensionalen Simplizes gibt, ist $B_3=0$.
+Die Zyklen $Z_3$ bestehen aus den Lösungen von $\partial_3w=0$, da
+aber $\partial_3$ injektiv ist, ist $Z_3=0$.
+Daher ist auch $H_3=0$.
+\end{beispiel}
+
+\begin{beispiel}
+Für dieses Beispiel entfernen wir das Innere des Tetraeders, es entsteht
+ein Hohlraum.
+Am Kettenkomplex der Triangulation ändert sich nur, dass $C_3$ jetzt
+nur noch den $0$-Vektor enthält.
+Das Bild $B_2=\operatorname{im}\partial_3$ wird damit auch $0$-dimensional,
+während es im vorigen Beispiel eindimensional war.
+Die einzige Änderung ist also in der Homologiegruppe
+$H_2 = Z_2/B_2 = Z_2 / \{0\} \simeq \Bbbk$.
+Die Homologiegruppe $H_2$ hat jetzt Dimension $1$ und zeigt damit den
+Hohlraum an.
+\end{beispiel}
diff --git a/buch/chapters/95-homologie/hx.m b/buch/chapters/95-homologie/hx.m
new file mode 100644
index 0000000..0003e76
--- /dev/null
+++ b/buch/chapters/95-homologie/hx.m
@@ -0,0 +1,129 @@
+split_long_rows(0)
+
+d = [
+#1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
+-1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 1
+ 1,-1, 0, 0, 0,-1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 2
+ 0, 1,-1, 0, 0, 0, 0,-1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 3
+ 0, 0, 1,-1, 0, 0, 0, 0, 0,-1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 4
+ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 5
+ 0, 0, 0, 0,-1, 1, 0, 0, 0, 0, 0, 0,-1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 6
+ 0, 0, 0, 0, 0, 0,-1, 1, 0, 0, 0, 0, 1, 0, 0,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 7
+ 0, 0, 0, 0, 0, 0, 0, 0,-1, 1, 0, 0, 0,-1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 8
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,-1, 1, 0, 1, 0, 0, 0,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 9
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,-1, 1, 0, 0,-1, 0, 1, 0, 0, 0, 0, 0, 0; # 10
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,-1, 0,-1, 1, 0, 0, 0, 0; # 11
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,-1, 1, 0, 1, 0, 0, 0,-1, 0, 0, 0; # 12
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,-1, 1, 0, 0,-1, 1, 0; # 13
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,-1, 1, 1, 0,-1; # 14
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,-1, 1 # 15
+]
+
+rref(d)
+
+B = [
+#1 2 3 4 5 6 7 8 9101112131415161718192021222324252627
+ 1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
+ 0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
+ 0,0,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
+ 0,0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
+ 0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0;
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0;
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0;
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0;
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1
+]';
+
+d*B
+
+Z = [
+#1 2 3 4 5 6 7 8 9 10 11 12 13
+ 1, 0, 0, 0,-1, 0, 1, 0,-1, 0, 1, 0, 0; # 1
+ 0, 1, 0, 0, 0, 0, 0, 0,-1, 0, 1, 0, 0; # 2
+ 0, 0, 1, 0, 0,-1, 0, 1, 0, 0, 0, 0, 0; # 3
+ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 4
+ 1, 0, 0, 0,-1, 0, 1, 0,-1, 0, 1, 0, 0; # 5
+ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 6
+ 0, 1, 0, 0, 1, 0,-1, 0, 0, 0, 0, 0, 0; # 7
+ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 8
+ 0, 0, 1, 0, 0,-1, 0, 1, 1, 0,-1, 0, 0; # 9
+ 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 10
+ 0, 0, 0, 1, 0, 1, 0,-1, 0, 0, 0, 0, 0; # 11
+ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0; # 12
+ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0; # 13
+ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0; # 14
+ 0, 0, 0, 0, 0, 0, 1, 0,-1, 0, 1, 0, 0; # 15
+ 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0; # 16
+ 0, 0, 0, 0, 0, 0, 0, 1, 1, 0,-1, 0, 0; # 17
+ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0; # 18
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,-1,-1, 1; # 19
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0; # 20
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,-1, 1; # 21
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0; # 22
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,-1; # 23
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0; # 24
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0; # 25
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1; # 26
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 # 27
+]
+
+d * Z
+
+T = zeros(22, 9);
+T(1:9,1:27) = B';
+T(10:22,1:27) = Z';
+
+T
+
+for i = (2:22)
+ T(i,:) = T(i,:) - T(i,1) * T(1,:);
+end
+for i = (3:22)
+ T(i,:) = T(i,:) - T(i,2) * T(2,:);
+end
+for i = (4:22)
+ T(i,:) = T(i,:) - T(i,3) * T(3,:);
+end
+for i = (5:22)
+ T(i,:) = T(i,:) - T(i,4) * T(4,:);
+end
+
+T
+
+for i = (15:22)
+ T(i,:) = T(i,:) - T(i,6) * T(14,:);
+end
+T
+for i = (19:22)
+ T(i,:) = T(i,:) - T(i,8) * T(18,:);
+end
+T
+for i = (16:22)
+ T(i,:) = T(i,:) - T(i,10) * T(15,:);
+end
+T
+for i = (6:22)
+ T(i,:) = T(i,:) - T(i,13) * T(5,:);
+end
+T
+for i = (7:22)
+ T(i,:) = T(i,:) - T(i,14) * T(6,:);
+end
+T
+for i = (8:22)
+ T(i,:) = T(i,:) - T(i,19) * T(7,:);
+end
+T
+for i = (9:22)
+ T(i,:) = T(i,:) - T(i,20) * T(8,:);
+end
+T
+for i = (22:22)
+ T(i,:) = T(i,:) - T(i,22) * T(21,:);
+end
+T
+for i = (10:22)
+ T(i,:) = T(i,:) - T(i,25) * T(9,:);
+end
+#
+T
diff --git a/buch/chapters/95-homologie/images/Makefile b/buch/chapters/95-homologie/images/Makefile
index 82f1285..0a3979e 100644
--- a/buch/chapters/95-homologie/images/Makefile
+++ b/buch/chapters/95-homologie/images/Makefile
@@ -3,8 +3,44 @@
#
# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
#
-all: dreieck.pdf
+all: complexbasis.pdf homocycles.pdf homoboundaries.pdf homoclasses.pdf \
+ gausshomoex.pdf gausshomobasis.pdf dreieck.pdf polyeder.pdf \
+ approximation.pdf tetraeder.pdf
dreieck.pdf: dreieck.tex
pdflatex dreieck.tex
+polyeder.pdf: polyeder.tex
+ pdflatex polyeder.tex
+
+gausshomobasis.pdf: gausshomobasis.tex
+ pdflatex gausshomobasis.tex
+
+gausshomoex.pdf: gausshomoex.tex
+ pdflatex gausshomoex.tex
+
+homocycles.pdf: homocycles.tex
+ pdflatex homocycles.tex
+
+homoboundaries.pdf: homoboundaries.tex
+ pdflatex homoboundaries.tex
+
+homoclasses.pdf: homoclasses.tex
+ pdflatex homoclasses.tex
+
+complexbasis.pdf: complexbasis.tex
+ pdflatex complexbasis.tex
+
+approximation.pdf: approximation.tex approx.tex
+ pdflatex approximation.tex
+
+approx.tex: approx.m
+ octave approx.m
+
+tetraeder.png: tetraeder.pov
+ povray +A0.1 -W1920 -H1080 -O$@ $<
+tetraeder.jpg: tetraeder.png Makefile
+ convert -extract 1080x1080+520 tetraeder.png tetraeder.jpg
+tetraeder.pdf: tetraeder.tex tetraeder.jpg
+ pdflatex tetraeder.tex
+
diff --git a/buch/chapters/95-homologie/images/approx.m b/buch/chapters/95-homologie/images/approx.m
new file mode 100644
index 0000000..0db41c2
--- /dev/null
+++ b/buch/chapters/95-homologie/images/approx.m
@@ -0,0 +1,77 @@
+#
+# approx.m
+#
+# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+#
+x = zeros(7,7);
+y = zeros(7,7);
+
+s = 1.05;
+
+for i = (1:7)
+ winkel = (i-1) * 8.333333 + 20;
+ for j = (1:7)
+ radius = (j-1) * 0.5 + 3;
+ x(i,j) = 1.05 * radius * cosd(winkel);
+ y(i,j) = 1.05 * radius * sind(winkel);
+ endfor
+endfor
+
+X = x;
+Y = y;
+for i = (1:7)
+ for j = (1:7)
+ X(i,j) = round(2 * x(i,j)) / 2;
+ Y(i,j) = round(2 * y(i,j)) / 2;
+ endfor
+endfor
+
+fn = fopen("approx.tex", "w");
+
+
+for i = (1:6)
+ for j = (1:6)
+ winkel = (i-1+0.6666) * 8.33333 + 20;
+ radius = (j-1+0.3333) * 0.5 + 3;
+ fprintf(fn, "\\definecolor{mycolor}{rgb}{%.2f,%.2f,%.2f};\n",
+ (winkel - 20) / 50, 0.8, (radius-3)/3);
+ fprintf(fn, "\\fill[color=mycolor] (%.3f,%.3f) -- (%.3f,%.3f) -- (%.3f,%.3f) -- cycle;\n",
+ X(i,j), Y(i,j),
+ X(i+1,j+1), Y(i+1,j+1),
+ X(i+1,j), Y(i+1,j));
+ winkel = (i-1+0.3333) * 8.33333 + 20;
+ radius = (j-1+0.6666) * 0.5 + 3;
+ fprintf(fn, "\\definecolor{mycolor}{rgb}{%.2f,%.2f,%.2f};\n",
+ (winkel - 20) / 50, 0.8, (radius-3)/3);
+ fprintf(fn, "\\fill[color=mycolor] (%.3f,%.3f) -- (%.3f,%.3f) -- (%.3f,%.3f) -- cycle;\n",
+ X(i,j), Y(i,j),
+ X(i,j+1), Y(i,j+1),
+ X(i+1,j+1), Y(i+1,j+1));
+ endfor
+endfor
+
+linewidth = 0.4;
+
+fprintf(fn, "\\gitter\n");
+
+for i = (1:7)
+ for j = (1:6)
+ fprintf(fn, "\\draw[color=darkred,line width=%.1fpt] (%.3f,%.3f) -- (%.3f,%.3f);\n", linewidth,
+ X(i,j), Y(i,j), X(i,j+1), Y(i,j+1));
+ endfor
+endfor
+for i = (1:6)
+ for j = (1:7)
+ fprintf(fn, "\\draw[color=darkred,line width=%.1fpt] (%.3f,%.3f) -- (%.3f,%.3f);\n", linewidth,
+ X(i,j), Y(i,j), X(i+1,j), Y(i+1,j));
+ endfor
+endfor
+for i = (1:6)
+ for j = (1:6)
+ fprintf(fn, "\\draw[color=darkred,line width=%.1fpt] (%.3f,%.3f) -- (%.3f,%.3f);\n", linewidth,
+ X(i,j), Y(i,j), X(i+1,j+1), Y(i+1,j+1));
+ endfor
+endfor
+
+fclose(fn)
+
diff --git a/buch/chapters/95-homologie/images/approximation.pdf b/buch/chapters/95-homologie/images/approximation.pdf
new file mode 100644
index 0000000..8bdd2e7
--- /dev/null
+++ b/buch/chapters/95-homologie/images/approximation.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/approximation.tex b/buch/chapters/95-homologie/images/approximation.tex
new file mode 100644
index 0000000..042f0e2
--- /dev/null
+++ b/buch/chapters/95-homologie/images/approximation.tex
@@ -0,0 +1,69 @@
+%
+% approximation.tex -- Approximation einer Abbildung durch eine simpliziale
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1.3}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\definecolor{darkred}{rgb}{0.8,0,0}
+\definecolor{darkred}{rgb}{0,0,0}
+
+\def\gitter{
+ \foreach \x in {1,1.5,...,6}{
+ \draw[color=gray] (\x,1) -- (\x,6);
+ \draw[color=gray] (1,\x) -- (6,\x);
+ }
+}
+
+\def\s{1.05}
+
+\def\colorsector{
+ \foreach \r in {3,3.2,...,5.8}{
+ \foreach \a in {20,...,69}{
+ \pgfmathparse{(\a-20)/50}
+ \xdef\rot{\pgfmathresult}
+ \pgfmathparse{(\r-3)/3}
+ \xdef\blau{\pgfmathresult}
+ \definecolor{mycolor}{rgb}{\rot,0.8,\blau}
+ \fill[color=mycolor]
+ (\a:{\s*\r}) -- (\a:{\s*(\r+0.2)}) -- ({\a+1}:{\s*(\r+0.2)}) -- ({\a+1}:{\s*\r}) -- cycle;
+ }
+ }
+}
+
+\begin{scope}[xshift=0cm]
+\colorsector
+\gitter
+\foreach \r in {3,3.5,...,6.0}{
+ \draw[color=black,line width=0.4pt] (20:{\s*\r}) arc (20:70:{\s*\r});
+}
+\foreach \a in {20,28.3333,...,70}{
+ \draw[color=black,line width=0.4pt] (\a:{\s*3}) -- (\a:{\s*6});
+}
+\begin{scope}
+\clip (20:{\s*3}) -- (20:{\s*6}) arc (20:70:{\s*6}) -- (70:{\s*3});
+\foreach \a in {-5,...,5}{
+ \draw[color=black,line width=0.4pt]
+ plot[domain={20+8.33333*\a}:{70+8.3333*\a},samples=100]
+ (\x:{\s*(3+3*(\x-(20+8.3333*\a))/50)});
+}
+\end{scope}
+
+\end{scope}
+
+\begin{scope}[xshift=5.5cm]
+\input{approx.tex}
+\end{scope}
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/complexbasis.pdf b/buch/chapters/95-homologie/images/complexbasis.pdf
new file mode 100644
index 0000000..9ff6709
--- /dev/null
+++ b/buch/chapters/95-homologie/images/complexbasis.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/complexbasis.tex b/buch/chapters/95-homologie/images/complexbasis.tex
new file mode 100644
index 0000000..bab89d2
--- /dev/null
+++ b/buch/chapters/95-homologie/images/complexbasis.tex
@@ -0,0 +1,158 @@
+%
+% complexbasis.tex -- template for standalon tikz images
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\usetikzlibrary{decorations.pathreplacing}
+\begin{document}
+\def\skala{1}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\definecolor{darkgreen}{rgb}{0,0.6,0}
+
+\def\s{0.5}
+\def\h{0.02}
+
+\def\rechteck#1#2#3{
+ \fill[color=#3!20,rounded corners=2pt]
+ ({-\s+\h},{(2*(#1)-1)*\s+\h})
+ rectangle
+ ({\s-\h},{(2*(#2)+1)*\s-\h});
+ \draw[color=#3,rounded corners=2pt]
+ ({-\s+\h},{(2*(#1)-1)*\s+\h})
+ rectangle
+ ({\s-\h},{(2*(#2)+1)*\s-\h});
+ \foreach \y in {{#1},...,{#2}}{
+ \fill[color=#3] (0,{2*\y*\s}) circle[radius=0.05];
+ }
+}
+\def\Rechteck#1#2{
+ \draw[rounded corners=3pt]
+ ({-\s-\h},{(2*(#1)-1)*\s-\h})
+ rectangle
+ ({\s+\h},{(2*(#2)+1)*\s+\h});
+}
+
+\def\abbildung#1#2#3#4{
+ \fill[color=gray!20]
+ ({\s+\h},{(2*(#1)+1)*\s})
+ --
+ ({3.5-\s-\h},{-\s})
+ --
+ ({3.5-\s-\h},{(2*(#3)+1)*\s})
+ --
+ ({\s+\h},{(2*(#1)+1)*\s})
+ --
+ cycle;
+ \fill[color=gray!40]
+ ({\s+\h},{(2*(#1+1)-1)*\s})
+ --
+ ({3.5-\s-\h},{(2*(#3+1)-1)*\s})
+ --
+ ({3.5-\s-\h},{(2*(#4)+1)*\s})
+ --
+ ({\s+\h},{(2*(#2)+1)*\s})
+ --
+ cycle;
+ \draw[<-,color=gray]
+ ({\s+\h},{(2*(#1+1)-1)*\s})
+ --
+ ({3.5-\s-\h},{(2*(#3+1)-1)*\s});
+ \draw[->,color=gray]
+ ({3.5-\s-\h},{(2*(#4)+1)*\s})
+ --
+ ({\s+\h},{(2*(#2)+1)*\s});
+ \draw[<-,color=gray!40]
+ ({\s+\h},{(2*(#1)+1)*\s})
+ --
+ ({3.5-\s-\h},{-\s});
+}
+
+\clip ({-3.5-1.7},-1.2) rectangle ({7+1.7},11.7);
+
+\begin{scope}[xshift=-7cm]
+ \abbildung{6}{7}{10}{11}
+\end{scope}
+
+\begin{scope}[xshift=-3.5cm]
+ \abbildung{6}{10}{7}{11}
+ \rechteck{0}{6}{red}
+ \rechteck{7}{10}{darkgreen}
+ \rechteck{11}{11}{blue}
+ \Rechteck{0}{11}
+ \node[color=darkgreen] at ({0},{(9*2-1)*\s}) {$B_{k-2\mathstrut}$};
+ \node at (1.75,{9*2*\s}) {$\Delta_{k-1}$};
+ \node at (1.75,{-\s}) [above] {$\partial_{k-1\mathstrut}$};
+ \draw[decorate,decoration={brace,amplitude=4pt}]
+ ({-\s-0.1},{-\s}) -- ({-\s-0.1},{(2*10+1)*\s});
+ \node at ({-\s-0.17},{10*\s}) [left] {$Z_{k-2\mathstrut}$};
+ \node at (0,{-\s}) [below] {$C_{k-2\mathstrut}$};
+\end{scope}
+
+\begin{scope}
+ \abbildung{2}{7}{5}{10}
+ \rechteck{8}{11}{blue}
+ \rechteck{3}{7}{darkgreen}
+ \rechteck{0}{2}{red}
+ \Rechteck{0}{11}
+ \node at (0,{-\s}) [below] {$C_{k-1\mathstrut}$};
+ \node[color=darkgreen] at ({0},{(5*2-1)*\s}) {$B_{k-1\mathstrut}$};
+ \node at (1.75,{6.5*2*\s}) {$\Delta_k$};
+ \node at (1.75,{-\s}) [above] {$\partial_{k\mathstrut}$};
+ \draw[decorate,decoration={brace,amplitude=4pt}]
+ ({-\s-0.1},{-\s}) -- ({-\s-0.1},{(2*7+1)*\s});
+ \node at ({-\s-0.17},{7*\s}) [left] {$Z_{k-1\mathstrut}$};
+\end{scope}
+
+\begin{scope}[xshift=3.5cm]
+ \abbildung{3}{5}{5}{7}
+ \rechteck{6}{10}{blue}
+ \rechteck{4}{5}{darkgreen}
+ \rechteck{0}{3}{red}
+ \Rechteck{0}{10}
+ \node at (0,{-\s}) [below] {$C_{k\mathstrut}$};
+ \node[color=darkgreen] at ({-0.25},{9*\s})
+ {$B_{k\mathstrut}$};
+ \node[color=darkgreen] at (0.24,{2*4*\s}) {$b_1$};
+ \node[color=darkgreen] at (0.24,{2*4.5*\s+0.1}) {$\vdots$};
+ \node[color=darkgreen] at (0.24,{2*5*\s}) {$b_r$};
+ \node[color=red] at (0.24,{2*0*\s}) {$z_1$};
+ \node[color=red] at (0.24,{2*1*\s}) {$z_2$};
+ \node[color=red] at (0.24,{2*2*\s+0.1}) {$\vdots$};
+ \node[color=red] at (0.24,{2*3*\s}) {$z_l$};
+ \node[color=blue] at (0.24,{2*6*\s}) {$c_1$};
+ \node[color=blue] at (0.24,{2*7*\s}) {$c_2$};
+ \node[color=blue] at (0.24,{2*8*\s}) {$c_3$};
+ \node[color=blue] at (0.24,{2*9*\s}) {$\vdots$};
+ \node[color=blue] at (0.24,{2*10*\s}) {$c_s$};
+ \node at (1.75,{5.5*2*\s}) {$\Delta_{k+1}$};
+ \node at (1.75,{-\s}) [above] {$\partial_{k+1\mathstrut}$};
+ \draw[decorate,decoration={brace,amplitude=4pt}]
+ ({-\s-0.1},{-\s}) -- ({-\s-0.1},{(2*5+1)*\s});
+ \node at ({-\s-0.17},{5*\s}) [left] {$Z_{k\mathstrut}$};
+\end{scope}
+
+\begin{scope}[xshift=7cm]
+ \abbildung{0}{5}{4}{8}
+ \rechteck{5}{7}{blue}
+ \rechteck{1}{5}{darkgreen}
+ \rechteck{0}{0}{red}
+ \Rechteck{0}{7}
+ \node at (0,{-\s}) [below] {$C_{k+1\mathstrut}$};
+ \node[color=darkgreen] at ({0},{(2.0*2+1)*\s})
+ {$B_{k+1\mathstrut}$};
+ \draw[decorate,decoration={brace,amplitude=4pt}]
+ ({-\s-0.1},{-\s}) -- ({-\s-0.1},{(2*5+1)*\s});
+ \node at ({-\s-0.17},{5*\s}) [left] {$Z_{k+1\mathstrut}$};
+\end{scope}
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/gausshomobasis.pdf b/buch/chapters/95-homologie/images/gausshomobasis.pdf
new file mode 100644
index 0000000..07414bb
--- /dev/null
+++ b/buch/chapters/95-homologie/images/gausshomobasis.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/gausshomobasis.tex b/buch/chapters/95-homologie/images/gausshomobasis.tex
new file mode 100644
index 0000000..ba21f54
--- /dev/null
+++ b/buch/chapters/95-homologie/images/gausshomobasis.tex
@@ -0,0 +1,109 @@
+%
+% gaushomobasis.tex -- Bestimmung einer Basis der Homologiegruppen
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1}
+\definecolor{darkgreen}{rgb}{0,0.6,0}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\def\s{0.5}
+\def\inset{0.05}
+\def\w{8}
+
+\def\zeile#1#2{
+ \fill[color=#2] ({0+\inset},{(12-#1)*\s+\inset})
+ rectangle ({\w*\s-\inset},{(13-#1)*\s-\inset});
+}
+\def\marke#1#2{
+\node at ({0.5*\w*\s},{12.5-#1)*\s}) {$#2\mathstrut$};
+}
+
+\def\gauss{
+\draw (0,0) rectangle ({\w*\s},{12*\s});
+\draw (0,{7*\s}) -- ({\w*\s},{7*\s});
+}
+
+\draw[->,color=red,line width=1pt] ({0.1*\s},{(12.5-1)*\s})
+ to[out=180,in=90] (-3.6,-2);
+\draw[->,color=red,line width=1pt] ({0.1*\s},{(12.5-2)*\s})
+ to[out=180,in=90] (-2.2,-2);
+\draw[->,color=red,line width=1pt] ({0.1*\s},{(12.5-4)*\s})
+ to[out=180,in=90] (-0.7,-2);
+
+\draw[->,color=darkgreen,line width=1pt] ({0.1*\s},{(12.5-7)*\s})
+ to[out=180,in=90] (0.9,-2);
+\draw[->,color=darkgreen,line width=1pt] ({0.1*\s},{(12.5-8)*\s})
+ to[out=180,in=90] (1.6,-2);
+\draw[->,color=darkgreen,line width=1pt] ({(\w-0.1)*\s},{(12.5-12)*\s})
+ to[out=0,in=90] (2.6,-2);
+
+\draw[->,line width=2pt] ({\w*\s+0.1},{6*\s}) -- (5.4,{6*\s});
+\node at ({0.5*(\w*\s+5.5)},{6*\s}) [above] {Gauss};
+
+\begin{scope}
+\zeile{1}{red!30}
+\zeile{2}{red!30}
+\zeile{4}{red!30}
+\zeile{7}{darkgreen!30}
+\zeile{8}{darkgreen!30}
+%\zeile{10}{darkgreen!30}
+\zeile{12}{darkgreen!30}
+\marke{1}{\scriptstyle\partial_{k+1}e_1^{(k+1)}}
+\marke{2}{\scriptstyle\partial_{k+1}e_2^{(k+1)}}
+\marke{3}{\scriptstyle\partial_{k+1}e_3^{(k+1)}}
+\marke{4}{\vdots}
+\marke{5}{\scriptstyle\partial_{k+1}e_{n_{k+1}}^{(k+1)}}
+\marke{6}{\scriptstyle z_1^{(k)}}
+\marke{7}{\scriptstyle z_2^{(k)}}
+\marke{8}{\scriptstyle z_3^{(k)}}
+\marke{9}{\scriptstyle z_4^{(k)}}
+\marke{10}{\vdots}
+\marke{11}{\scriptstyle z_{l-1}^{(k)}}
+\marke{12}{\scriptstyle z_{l}^{(k)}}
+\gauss
+\end{scope}
+
+\begin{scope}[xshift=5.5cm]
+\zeile{1}{black!20}
+\zeile{2}{black!20}
+\zeile{3}{black}
+\marke{3}{\color{white}0}
+\zeile{4}{black!20}
+\zeile{5}{black}
+\marke{5}{\color{white}0}
+\zeile{6}{black}
+\marke{6}{\color{white}0}
+\zeile{7}{black!20}
+\zeile{8}{black!20}
+\zeile{9}{black}
+\marke{9}{\color{white}0}
+\zeile{10}{black}
+\marke{10}{\color{white}0}
+\zeile{11}{black}
+\marke{11}{\color{white}0}
+\zeile{12}{black!20}
+\gauss
+\end{scope}
+
+\node at (-4.4,-2) [below right] {$\{
+{\color{red}\partial_{k+1}e_1^{(k+1)}},
+{\color{red}\partial_{k+1}e_2^{(k+1)}},
+{\color{red}\partial_{k+1}e_{i_3}^{(k+1)}},\dots,
+{\color{darkgreen}z_2^{(k)}},
+{\color{darkgreen}z_3^{(k)}},
+\dots
+{\color{darkgreen}z_l^{(k)}}
+\} = {\color{red}\mathcal{B}_k} \cup {\color{darkgreen}\mathcal{Z}_k'}$};
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/gausshomoex.pdf b/buch/chapters/95-homologie/images/gausshomoex.pdf
new file mode 100644
index 0000000..bc0b766
--- /dev/null
+++ b/buch/chapters/95-homologie/images/gausshomoex.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/gausshomoex.tex b/buch/chapters/95-homologie/images/gausshomoex.tex
new file mode 100644
index 0000000..df53f70
--- /dev/null
+++ b/buch/chapters/95-homologie/images/gausshomoex.tex
@@ -0,0 +1,120 @@
+%
+% gausshomoex.tex -- Beispiel für die Bestimmung einer Basis von H_1
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\def\s{2.0}
+
+\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})}
+
+\def\knoten#1#2#3{
+ \fill[color=white] \punkt{#1}{#2} circle[radius=0.3];
+ \node at \punkt{#1}{#2} {$#3$\strut};
+ \draw \punkt{#1}{#2} circle[radius=0.3];
+}
+\def\dreieck#1#2#3{
+ \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+ -- \punkt{#1}{(#2)+1} -- cycle;
+ \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut};
+ \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+ \punkt{#1}{#2} -- \punkt{#1+1}{#2};
+ \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+ \punkt{#1+1}{#2} -- \punkt{#1}{#2+1};
+ \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+ \punkt{#1}{#2+1} -- \punkt{#1}{#2};
+}
+
+\def\Dreieck#1#2#3{
+ \fill[color=gray!50] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+ -- \punkt{#1+1}{(#2)-1} -- cycle;
+ \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut};
+}
+
+\def\kante#1#2#3{
+ \fill[color=white,opacity=0.8] \punkt{#1}{#2} circle[radius=0.15];
+ \node at \punkt{#1}{#2} {$\scriptstyle #3$};
+}
+
+\dreieck{0}{0}{1}
+\dreieck{1}{0}{2}
+\dreieck{2}{0}{3}
+\dreieck{3}{0}{4}
+
+\dreieck{0}{1}{5}
+\dreieck{2}{1}{6}
+
+\dreieck{0}{2}{7}
+\dreieck{1}{2}{8}
+
+\dreieck{0}{3}{9}
+
+
+\knoten{0}{0}{1}
+\knoten{1}{0}{2}
+\knoten{2}{0}{3}
+\knoten{3}{0}{4}
+\knoten{4}{0}{5}
+
+\knoten{0}{1}{6}
+\knoten{1}{1}{7}
+\knoten{2}{1}{8}
+\knoten{3}{1}{9}
+
+\knoten{0}{2}{10}
+\knoten{1}{2}{11}
+\knoten{2}{2}{12}
+
+\knoten{0}{3}{13}
+\knoten{1}{3}{14}
+
+\knoten{0}{4}{15}
+
+\kante{0.5}{0}{1}
+\kante{1.5}{0}{2}
+\kante{2.5}{0}{3}
+\kante{3.5}{0}{4}
+
+\kante{0}{0.5}{5}
+\kante{0.5}{0.5}{6}
+\kante{1}{0.5}{7}
+\kante{1.5}{0.5}{8}
+\kante{2}{0.5}{9}
+\kante{2.5}{0.5}{10}
+\kante{3}{0.5}{11}
+\kante{3.5}{0.5}{12}
+
+\kante{0.5}{1}{13}
+\kante{2.5}{1}{14}
+
+\kante{0}{1.5}{15}
+\kante{0.5}{1.5}{16}
+\kante{2}{1.5}{17}
+\kante{2.5}{1.5}{18}
+
+\kante{0.5}{2}{19}
+\kante{1.5}{2}{20}
+
+\kante{0}{2.5}{21}
+\kante{0.5}{2.5}{22}
+\kante{1}{2.5}{23}
+\kante{1.5}{2.5}{24}
+
+\kante{0.5}{3}{25}
+
+\kante{0}{3.5}{26}
+\kante{0.5}{3.5}{27}
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/homoboundaries.pdf b/buch/chapters/95-homologie/images/homoboundaries.pdf
new file mode 100644
index 0000000..fb94ec8
--- /dev/null
+++ b/buch/chapters/95-homologie/images/homoboundaries.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/homoboundaries.tex b/buch/chapters/95-homologie/images/homoboundaries.tex
new file mode 100644
index 0000000..53087fa
--- /dev/null
+++ b/buch/chapters/95-homologie/images/homoboundaries.tex
@@ -0,0 +1,115 @@
+%
+% tikztemplate.tex -- template for standalon tikz images
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\def\s{0.55}
+
+\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})}
+\def\A{\punkt{0}{0}}
+\def\B{\punkt{1}{0}}
+\def\C{\punkt{2}{0}}
+\def\D{\punkt{3}{0}}
+\def\E{\punkt{4}{0}}
+\def\F{\punkt{0}{1}}
+\def\G{\punkt{1}{1}}
+\def\H{\punkt{2}{1}}
+\def\I{\punkt{3}{1}}
+\def\J{\punkt{0}{2}}
+\def\K{\punkt{1}{2}}
+\def\L{\punkt{2}{2}}
+\def\M{\punkt{0}{3}}
+\def\N{\punkt{1}{3}}
+\def\O{\punkt{0}{4}}
+
+\def\dreieck#1#2#3{
+ \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+ -- \punkt{#1}{(#2)+1} -- cycle;
+}
+
+\def\blau#1#2{
+ \draw[color=blue] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+ -- \punkt{#1}{(#2)+1} -- cycle;
+ \draw[->,color=blue] \punkt{#1}{#2} -- \punkt{#1+1}{#2};
+}
+
+\def\gebiet{
+ \dreieck{0}{0}{1}
+ \dreieck{1}{0}{2}
+ \dreieck{2}{0}{3}
+ \dreieck{3}{0}{4}
+ \dreieck{0}{1}{5}
+ \dreieck{2}{1}{6}
+ \dreieck{0}{2}{7}
+ \dreieck{1}{2}{8}
+ \dreieck{0}{3}{9}
+}
+
+\begin{scope}
+\gebiet
+\blau{0}{0}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_1^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=3cm]
+\gebiet
+\blau{1}{0}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_2^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=6cm]
+\gebiet
+\blau{2}{0}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_3^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=9cm]
+\gebiet
+\blau{3}{0}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_4^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=1.5cm,yshift=2.59cm]
+\gebiet
+\blau{0}{1}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_5^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=7.5cm,yshift=2.59cm]
+\gebiet
+\blau{2}{1}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_6^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=3cm,yshift=5.19cm]
+\gebiet
+\blau{0}{2}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_7^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=6cm,yshift=5.19cm]
+\gebiet
+\blau{1}{2}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_8^{(2)}$};
+\end{scope}
+
+\begin{scope}[xshift=4.5cm,yshift=7.79cm]
+\gebiet
+\blau{0}{3}
+\node[color=blue] at ({2*\s},-0.5) {$\partial_2e_9^{(2)}$};
+\end{scope}
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/homoclasses.pdf b/buch/chapters/95-homologie/images/homoclasses.pdf
new file mode 100644
index 0000000..fbbaedd
--- /dev/null
+++ b/buch/chapters/95-homologie/images/homoclasses.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/homoclasses.tex b/buch/chapters/95-homologie/images/homoclasses.tex
new file mode 100644
index 0000000..4467f08
--- /dev/null
+++ b/buch/chapters/95-homologie/images/homoclasses.tex
@@ -0,0 +1,109 @@
+%
+% homoclasses.tex -- template for standalon tikz images
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1.4}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\definecolor{darkgreen}{rgb}{0,0.6,0}
+\def\s{0.4}
+\def\h{-0.3}
+
+\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})}
+\def\A{\punkt{0}{0}}
+\def\B{\punkt{1}{0}}
+\def\C{\punkt{2}{0}}
+\def\D{\punkt{3}{0}}
+\def\E{\punkt{4}{0}}
+\def\F{\punkt{0}{1}}
+\def\G{\punkt{1}{1}}
+\def\H{\punkt{2}{1}}
+\def\I{\punkt{3}{1}}
+\def\J{\punkt{0}{2}}
+\def\K{\punkt{1}{2}}
+\def\L{\punkt{2}{2}}
+\def\M{\punkt{0}{3}}
+\def\N{\punkt{1}{3}}
+\def\O{\punkt{0}{4}}
+
+%\def\knoten#1#2#3{
+% \fill[color=white] \punkt{#1}{#2} circle[radius=0.3];
+% \node at \punkt{#1}{#2} {$#3$\strut};
+% \draw \punkt{#1}{#2} circle[radius=0.3];
+%}
+\def\dreieck#1#2#3{
+ \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+ -- \punkt{#1}{(#2)+1} -- cycle;
+% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut};
+% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+% \punkt{#1}{#2} -- \punkt{#1+1}{#2};
+% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+% \punkt{#1+1}{#2} -- \punkt{#1}{#2+1};
+% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+% \punkt{#1}{#2+1} -- \punkt{#1}{#2};
+}
+
+%\def\Dreieck#1#2#3{
+% \fill[color=gray!50] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+% -- \punkt{#1+1}{(#2)-1} -- cycle;
+% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut};
+%}
+
+%\def\kante#1#2#3{
+% \fill[color=white,opacity=0.8] \punkt{#1}{#2} circle[radius=0.15];
+% \node at \punkt{#1}{#2} {$\scriptstyle #3$};
+%}
+
+\def\gebiet{
+ \dreieck{0}{0}{1}
+ \dreieck{1}{0}{2}
+ \dreieck{2}{0}{3}
+ \dreieck{3}{0}{4}
+ \dreieck{0}{1}{5}
+ \dreieck{2}{1}{6}
+ \dreieck{0}{2}{7}
+ \dreieck{1}{2}{8}
+ \dreieck{0}{3}{9}
+}
+
+\begin{scope}
+\gebiet
+\draw[color=darkgreen] \B -- \G -- \J -- \F -- cycle;
+\draw[->,color=darkgreen] \B -- \G;
+\node[color=darkgreen] at ({2*\s},{\h}) {$z_5'$};
+\end{scope}
+
+\begin{scope}[xshift=2cm]
+\gebiet
+\draw[color=darkgreen] \D -- \I -- \L -- \H -- cycle;
+\draw[->,color=darkgreen] \D -- \I;
+\node[color=darkgreen] at ({2*\s},{\h}) {$z_6'$};
+\end{scope}
+
+\begin{scope}[xshift=4cm]
+\gebiet
+\draw[color=darkgreen] \C -- \L -- \N -- \K -- \M -- \J -- cycle;
+\draw[->,color=darkgreen] \C -- \L;
+\node[color=darkgreen] at ({2*\s},{\h}) {$z_9'$};
+\end{scope}
+
+\begin{scope}[xshift=6cm]
+\gebiet
+\draw[color=darkgreen] \K -- \N -- \O -- \M -- cycle;
+\draw[->,color=darkgreen] \K -- \N;
+\node[color=darkgreen] at ({2*\s},{\h}) {$z_{12}'$};
+\end{scope}
+
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/homocycles.pdf b/buch/chapters/95-homologie/images/homocycles.pdf
new file mode 100644
index 0000000..b68519e
--- /dev/null
+++ b/buch/chapters/95-homologie/images/homocycles.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/homocycles.tex b/buch/chapters/95-homologie/images/homocycles.tex
new file mode 100644
index 0000000..8f20a0c
--- /dev/null
+++ b/buch/chapters/95-homologie/images/homocycles.tex
@@ -0,0 +1,170 @@
+%
+% tikztemplate.tex -- template for standalon tikz images
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math}
+\begin{document}
+\def\skala{1}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\def\s{0.4}
+
+\def\punkt#1#2{({((#1)+0.5*(#2))*\s},{(#2)*\s*sqrt(3)/2})}
+\def\A{\punkt{0}{0}}
+\def\B{\punkt{1}{0}}
+\def\C{\punkt{2}{0}}
+\def\D{\punkt{3}{0}}
+\def\E{\punkt{4}{0}}
+\def\F{\punkt{0}{1}}
+\def\G{\punkt{1}{1}}
+\def\H{\punkt{2}{1}}
+\def\I{\punkt{3}{1}}
+\def\J{\punkt{0}{2}}
+\def\K{\punkt{1}{2}}
+\def\L{\punkt{2}{2}}
+\def\M{\punkt{0}{3}}
+\def\N{\punkt{1}{3}}
+\def\O{\punkt{0}{4}}
+
+%\def\knoten#1#2#3{
+% \fill[color=white] \punkt{#1}{#2} circle[radius=0.3];
+% \node at \punkt{#1}{#2} {$#3$\strut};
+% \draw \punkt{#1}{#2} circle[radius=0.3];
+%}
+\def\dreieck#1#2#3{
+ \fill[color=gray] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+ -- \punkt{#1}{(#2)+1} -- cycle;
+% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut};
+% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+% \punkt{#1}{#2} -- \punkt{#1+1}{#2};
+% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+% \punkt{#1+1}{#2} -- \punkt{#1}{#2+1};
+% \draw[->,line width=1pt,shorten >= 0.3cm,shorten <= 0.3cm]
+% \punkt{#1}{#2+1} -- \punkt{#1}{#2};
+}
+
+%\def\Dreieck#1#2#3{
+% \fill[color=gray!50] \punkt{#1}{#2} -- \punkt{#1+1}{#2}
+% -- \punkt{#1+1}{(#2)-1} -- cycle;
+% \node at \punkt{#1+0.3333}{#2+0.3333} {$#3$\strut};
+%}
+
+%\def\kante#1#2#3{
+% \fill[color=white,opacity=0.8] \punkt{#1}{#2} circle[radius=0.15];
+% \node at \punkt{#1}{#2} {$\scriptstyle #3$};
+%}
+
+\def\gebiet{
+ \dreieck{0}{0}{1}
+ \dreieck{1}{0}{2}
+ \dreieck{2}{0}{3}
+ \dreieck{3}{0}{4}
+ \dreieck{0}{1}{5}
+ \dreieck{2}{1}{6}
+ \dreieck{0}{2}{7}
+ \dreieck{1}{2}{8}
+ \dreieck{0}{3}{9}
+}
+
+\begin{scope}
+\gebiet
+\draw[->,color=red] \A -- \B -- \F -- cycle;
+\draw[->,color=red] \A -- \B;
+\node[color=red] at ({2*\s},-0.5) {$z_1$};
+\end{scope}
+
+\begin{scope}[xshift=2cm]
+\gebiet
+\draw[color=red] \B -- \C -- \G -- cycle;
+\draw[->,color=red] \B -- \C;
+\node[color=red] at ({2*\s},-0.5) {$z_2$};
+\end{scope}
+
+\begin{scope}[xshift=4cm]
+\gebiet
+\draw[color=red] \C -- \D -- \H -- cycle;
+\draw[->,color=red] \C -- \D;
+\node[color=red] at ({2*\s},-0.5) {$z_3$};
+\end{scope}
+
+\begin{scope}[xshift=6cm]
+\gebiet
+\draw[color=red] \D -- \E -- \I -- cycle;
+\draw[->,color=red] \D -- \E;
+\node[color=red] at ({2*\s},-0.5) {$z_4$};
+\end{scope}
+
+\begin{scope}[xshift=8cm]
+\gebiet
+\draw[color=red] \A -- \B -- \G -- \F -- cycle;
+\draw[<-,color=red] \A -- \B;
+\node[color=red] at ({2*\s},-0.5) {$z_5$};
+\end{scope}
+
+\begin{scope}[xshift=10cm]
+\gebiet
+\draw[color=red] \C -- \D -- \I -- \H -- cycle;
+\draw[<-,color=red] \C -- \D;
+\node[color=red] at ({2*\s},-0.5) {$z_6$};
+\end{scope}
+
+\begin{scope}[xshift=12cm]
+\gebiet
+\draw[color=red] \A -- \B -- \G -- \J -- \F -- cycle;
+\draw[->,color=red] \A -- \B;
+\node[color=red] at ({2*\s},-0.5) {$z_7$};
+\end{scope}
+
+\begin{scope}[xshift=0cm,yshift=-3cm]
+\gebiet
+\draw[color=red] \C -- \D -- \I -- \L -- \H -- cycle;
+\draw[->,color=red] \C -- \D;
+\node[color=red] at ({2*\s},-0.5) {$z_8$};
+\end{scope}
+
+\begin{scope}[xshift=2cm,yshift=-3cm]
+\gebiet
+\draw[color=red] \A -- \B -- \C -- \H -- \L -- \K -- \J -- \F -- cycle;
+\draw[<-,color=red] \A -- \B;
+\node[color=red] at ({2*\s},-0.5) {$z_9$};
+\end{scope}
+
+\begin{scope}[xshift=4cm,yshift=-3cm]
+\gebiet
+\draw[color=red] \J -- \K -- \M -- cycle;
+\draw[->,color=red] \J -- \K;
+\node[color=red] at ({2*\s},-0.5) {$z_{10}$};
+\end{scope}
+
+\begin{scope}[xshift=6cm,yshift=-3cm]
+\gebiet
+\draw[color=red] \A -- \B -- \C -- \H -- \L -- \N -- \K -- \J -- \F -- cycle;
+\draw[->,color=red] \A -- \B;
+\node[color=red] at ({2*\s},-0.5) {$z_{11}$};
+\end{scope}
+
+\begin{scope}[xshift=8cm,yshift=-3cm]
+\gebiet
+\draw[color=red] \J -- \K -- \N -- \M -- cycle;
+\draw[<-,color=red] \J -- \K;
+\node[color=red] at ({2*\s},-0.5) {$z_{12}$};
+\end{scope}
+
+\begin{scope}[xshift=10cm,yshift=-3cm]
+\gebiet
+\draw[color=red] \J -- \K -- \N -- \O -- \M -- cycle;
+\draw[->,color=red] \J -- \K;
+\node[color=red] at ({2*\s},-0.5) {$z_{13}$};
+\end{scope}
+
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/polyeder.pdf b/buch/chapters/95-homologie/images/polyeder.pdf
new file mode 100644
index 0000000..3a8ba60
--- /dev/null
+++ b/buch/chapters/95-homologie/images/polyeder.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/polyeder.tex b/buch/chapters/95-homologie/images/polyeder.tex
new file mode 100644
index 0000000..9a900cc
--- /dev/null
+++ b/buch/chapters/95-homologie/images/polyeder.tex
@@ -0,0 +1,109 @@
+%
+% tikztemplate.tex -- template for standalon tikz images
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{txfonts}
+\usepackage{pgfplots}
+\usepackage{csvsimple}
+\usetikzlibrary{arrows,intersections,math,calc}
+\begin{document}
+\def\skala{1}
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+% add image content here
+\begin{scope}[xshift=-3.5cm,scale=0.5]
+\coordinate (A) at (0,0);
+\coordinate (B) at (4,0);
+\coordinate (C) at (5,-2);
+\coordinate (D) at (8,-1);
+\coordinate (E) at (7,1);
+\coordinate (F) at (7,3);
+\coordinate (G) at (1,3);
+\coordinate (H) at (5,4);
+\coordinate (I) at (9,5);
+\coordinate (J) at (4,7);
+\coordinate (K) at (-1,9);
+\coordinate (L) at (7,11);
+\coordinate (M) at (6,-0.5);
+
+\fill[color=gray,opacity=0.5] (A)--(B)--(H)--(G)--cycle;
+\fill[color=gray,opacity=0.5] (G)--(I)--(K)--cycle;
+\fill[color=gray,opacity=0.5] (G)--(L)--(K)--cycle;
+
+\draw (K)--(G)--(A)--(B)--(D);
+\draw (C)--(E);
+\draw (G)--(I)--(K);
+\draw (G)--(L)--(K);
+\draw (B)--(H);
+\draw (B)--(F);
+
+\fill (A) circle[radius=0.1];
+\fill (B) circle[radius=0.1];
+\fill (C) circle[radius=0.1];
+\fill (D) circle[radius=0.1];
+\fill (E) circle[radius=0.1];
+\fill (F) circle[radius=0.1];
+\fill (G) circle[radius=0.1];
+\fill (H) circle[radius=0.1];
+\fill (I) circle[radius=0.1];
+%\fill (J) circle[radius=0.1];
+\fill (K) circle[radius=0.1];
+\fill (L) circle[radius=0.1];
+%\fill (M) circle[radius=0.1];
+
+\draw[color=red] (H) circle[radius=0.5];
+\draw[color=red] (J) circle[radius=0.5];
+\draw[color=red] (M) circle[radius=0.5];
+\draw[color=red] ($0.25*(A)+0.25*(B)+0.25*(G)+0.25*(H)$) circle[radius=0.5];
+
+\end{scope}
+
+\begin{scope}[xshift=3.5cm,scale=0.5]
+\coordinate (A) at (0,0);
+\coordinate (B) at (4,0);
+\coordinate (C) at (5,-2);
+\coordinate (D) at (8,-1);
+\coordinate (E) at (7,1);
+\coordinate (F) at (7,3);
+\coordinate (G) at (1,3);
+\coordinate (H) at (5,4);
+\coordinate (I) at (9,5);
+\coordinate (J) at (4,7);
+\coordinate (K) at (-1,9);
+\coordinate (L) at (7,11);
+\coordinate (M) at (6,-0.5);
+
+\fill[color=gray!50] (A)--(B)--(H)--(I)--(J)--(L)--(K)--(G)--cycle;
+
+\draw (K)--(G)--(A)--(B)--(D);
+\draw (C)--(E);
+\draw (G)--(I)--(K);
+\draw (G)--(L)--(K);
+\draw (B)--(H);
+\draw (B)--(F);
+\draw (H)--(J);
+\draw (A)--(H);
+
+\fill (A) circle[radius=0.1];
+\fill (B) circle[radius=0.1];
+\fill (C) circle[radius=0.1];
+\fill (D) circle[radius=0.1];
+\fill (E) circle[radius=0.1];
+\fill (F) circle[radius=0.1];
+\fill (G) circle[radius=0.1];
+\fill (H) circle[radius=0.1];
+\fill (I) circle[radius=0.1];
+\fill (J) circle[radius=0.1];
+\fill (K) circle[radius=0.1];
+\fill (L) circle[radius=0.1];
+\fill (M) circle[radius=0.1];
+
+\end{scope}
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/95-homologie/images/tetraeder.jpg b/buch/chapters/95-homologie/images/tetraeder.jpg
new file mode 100644
index 0000000..0ec168b
--- /dev/null
+++ b/buch/chapters/95-homologie/images/tetraeder.jpg
Binary files differ
diff --git a/buch/chapters/95-homologie/images/tetraeder.pdf b/buch/chapters/95-homologie/images/tetraeder.pdf
new file mode 100644
index 0000000..0a57e95
--- /dev/null
+++ b/buch/chapters/95-homologie/images/tetraeder.pdf
Binary files differ
diff --git a/buch/chapters/95-homologie/images/tetraeder.pov b/buch/chapters/95-homologie/images/tetraeder.pov
new file mode 100644
index 0000000..b110f96
--- /dev/null
+++ b/buch/chapters/95-homologie/images/tetraeder.pov
@@ -0,0 +1,116 @@
+//
+// tetraeder.pov
+//
+// (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+//
+#version 3.7;
+#include "colors.inc"
+
+global_settings {
+ assumed_gamma 1
+}
+
+#declare imagescale = 0.169;
+#declare O = <0, 0, 0>;
+#declare at = 0.02;
+
+camera {
+ location <-2, 3, -10>
+ look_at <0, 0.18, 0>
+ right 16/9 * x * imagescale
+ up y * imagescale
+}
+
+//light_source {
+// <-14, 20, -50> color White
+// area_light <1,0,0> <0,0,1>, 10, 10
+// adaptive 1
+// jitter
+//}
+
+light_source {
+ <-41, 20, -20> color White
+ area_light <1,0,0> <0,0,1>, 10, 10
+ adaptive 1
+ jitter
+}
+
+sky_sphere {
+ pigment {
+ color rgb<1,1,1>
+ }
+}
+
+#declare v1 = <1,1,1>;
+#declare v2 = <-1,1,-1>;
+#declare farbe = rgbf<0.8,0.8,1.0,0.5>;
+
+#declare tetraederwinkel = acos(vdot(v1,v2)/(vlength(v1)*vlength(v2)));
+
+#declare O = < 0, 0, 0 >;
+#declare A = < 0, 1, 0 >;
+#declare B = < sin(tetraederwinkel), cos(tetraederwinkel), 0>;
+#declare C = < sin(tetraederwinkel)*cos(2*pi/3), cos(tetraederwinkel), sin(2*pi/3)>;
+#declare D = < sin(tetraederwinkel)*cos(2*pi/3), cos(tetraederwinkel), -sin(2*pi/3)>;
+
+#macro arrow(from, to, arrowthickness, c)
+#declare arrowdirection = vnormalize(to - from);
+#declare arrowlength = vlength(to - from);
+union {
+ sphere {
+ from, 1.0 * arrowthickness
+ }
+ cylinder {
+ from,
+ from + (arrowlength - 8 * arrowthickness) * arrowdirection,
+ arrowthickness
+ }
+ cone {
+ from + (arrowlength - 8 * arrowthickness) * arrowdirection,
+ 2 * arrowthickness,
+ to - 3 * arrowthickness * arrowdirection,
+ 0
+ }
+ pigment {
+ color c
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+union {
+ arrow(B, C, at, White)
+ arrow(D, C, at, White)
+ arrow(D, B, at, White)
+ arrow(B, A, at, White)
+ arrow(C, A, at, White)
+ arrow(D, A, at, White)
+ sphere { A, 4 * at }
+ sphere { B, 4 * at }
+ sphere { C, 4 * at }
+ sphere { D, 4 * at }
+ pigment {
+ color White
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+mesh {
+ triangle { A, B, C }
+ triangle { A, C, D }
+ triangle { A, D, B }
+ triangle { B, C, D }
+ pigment {
+ color farbe
+ }
+// finish {
+// specular 0.9
+// metallic
+// }
+}
diff --git a/buch/chapters/95-homologie/images/tetraeder.tex b/buch/chapters/95-homologie/images/tetraeder.tex
new file mode 100644
index 0000000..e62770f
--- /dev/null
+++ b/buch/chapters/95-homologie/images/tetraeder.tex
@@ -0,0 +1,97 @@
+%
+% tetraeder.tex
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{times}
+\usepackage{amsmath}
+\usepackage{txfonts}
+\usepackage[utf8]{inputenc}
+\usepackage{graphics}
+\usetikzlibrary{arrows,intersections,math,calc}
+\usepackage{ifthen}
+\begin{document}
+
+\newboolean{showgrid}
+\setboolean{showgrid}{false}
+\def\breite{7}
+\def\hoehe{4}
+
+\begin{tikzpicture}[>=latex,thick]
+
+% Povray Bild
+\node at (0,0) {\includegraphics[width=8cm]{tetraeder.jpg}};
+
+% Gitter
+\ifthenelse{\boolean{showgrid}}{
+\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe);
+\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe);
+\draw (-\breite,-\hoehe) grid (\breite, \hoehe);
+\fill (0,0) circle[radius=0.05];
+}{}
+
+\def\knoten#1#2{
+ %\fill[color=white,opacity=0.5] #1 circle[radius=0.2];
+ \node at #1 {$#2$};
+}
+
+\knoten{(-2.2,-3.6)}{0};
+\knoten{( 3.3,-1.9)}{1};
+\knoten{(-3.4,-1.2)}{2};
+\knoten{(-0.75,3.6)}{3};
+
+\def\s{0.2}
+
+\def\kante#1#2{
+ %\fill[color=white,opacity=0.5] #1 circle[radius=0.2];
+ \fill[color=white,opacity=0.5]
+ ($#1+(-\s,-\s)$) --
+ ($#1+(+\s,-\s)$) --
+ ($#1+(+\s,+\s)$) --
+ ($#1+(-\s,+\s)$) -- cycle;
+ \node at #1 {$#2$};
+}
+
+\kante{(0.5,-2.8)}{k_0}
+\kante{(-2.8,-2.3)}{k_1}
+\kante{(-1.4,0)}{k_2}
+\kante{(-0.4,-1.55)}{k_3}
+\kante{(1.25,0.95)}{k_4}
+\kante{(-2.08,1.1)}{k_5}
+
+\def\r{0.33}
+
+\def\flaeche#1#2{
+ \fill[color=white,opacity=0.5]
+ ($#1+({-\r*cos(30)},{-\r*sin(30)})$) --
+ ($#1+({\r*cos(30)},{-\r*sin(30)})$) --
+ ($#1+(0,{\r})$) -- cycle;
+ \node at #1 {$#2$};
+}
+
+\flaeche{(-0.7,-5)}{f_0}
+\draw (-0.7,-4.7) -- (-0.7,-3.25);
+\draw[->,color=black!70] (-0.7,-3.06) -- (-0.7,-2.5);
+\flaeche{(0.2,-0.5)}{f_1}
+\flaeche{(-2.3,-0.7)}{f_2}
+\coordinate (A) at (1,2.6);
+\coordinate (B) at (0,1);
+
+\flaeche{($1.2*(A)-0.2*(B)$)}{f_3}
+
+\def\t{0.58}
+\pgfmathparse{1-\t}
+\xdef\T{\pgfmathresult}
+\draw (A) -- ($\t*(A)+\T*(B)$);
+
+\def\t{0.48}
+\pgfmathparse{1-\t}
+\xdef\T{\pgfmathresult}
+\draw[->,color=black!70] ($\t*(A)+\T*(B)$) -- (B);
+
+
+\end{tikzpicture}
+
+\end{document}
+
diff --git a/buch/chapters/95-homologie/induzierteabb.tex b/buch/chapters/95-homologie/induzierteabb.tex
new file mode 100644
index 0000000..13591d7
--- /dev/null
+++ b/buch/chapters/95-homologie/induzierteabb.tex
@@ -0,0 +1,204 @@
+\subsection{Induzierte Abbildung
+\label{buch:subsection:induzierte-abbildung}}
+Früher haben wurde eine Abbildung $f_*$ zwischen Kettenkomplexen $C_*$ und
+$D_*$ so definiert,
+dass sie mit den Randoperatoren verträglich sein muss.
+Diese Forderung bewirkt, dass sich auch eine lineare Abbildung
+\[
+H_k(f) \colon H_k(C) \to H_k(D)
+\]
+zwischen den Homologiegruppen ergibt, wie wir nun zeigen wollen.
+
+\subsubsection{Definition der induzierten Abbildung}
+Um eine Abbildung von $H_k(C)$ nach $H_k(D)$ zu definieren, müssen wir
+zu einem Element von $H_k(C)$ ein Bildelement konstruieren.
+Ein Element in $H_k(C)$ ist eine Menge von Zyklen in $Z^C_k$, die sich
+nur um einen Rand in $B_k$ unterscheiden.
+Wir wählen also einen Zyklus $z\in Z_k$ und bilden ihn auf $f_k(z)$ ab.
+Wegen $\partial^D_kf(z)=f\partial^C_kz = f(0) =0 $ ist auch $f_k(z)$
+ein Zyklus.
+Wir müssen jetzt aber noch zeigen, dass eine andere Wahl des Zyklus
+das gleiche Element in $H_k(D)$ ergibt.
+Dazu genügt es zu sehen, dass sich $f(z)$ höchstens um einen Rand
+ändert, wenn man $z$ um einen Rand ändert.
+Sei also $b\in B^C_k$ ein Rand, es gibt also ein $w\in C_{k+1}$ mit
+$\partial^C_{k+1}w=b$.
+Dann gilt aber auch
+\[
+f_k(z+b)
+=
+f_k(z) + f_k(b)
+=
+f_k(z) + f_k(\partial^C_{k+1}w)
+=
+f_k(z) + \partial^D_{k+1}(f_k(w)).
+\]
+Der letzte Term ist ein Rand in $D_k$, somit ändert sich $f_k(z)$ nur
+um diesen Rand, wenn man $z$ um einen Rand ändert.
+$f_k(z)$ und $f_k(z+b)$ führen auf die selbe Homologieklasse.
+
+\subsubsection{Matrixdarstellung}
+In Abschnitt~\ref{buch:subsection:basiswahl} wurde gezeigt, wie man
+für die Vektorräume der Zyklen eine Basis derart finden kann,
+dass die Ränder von einer Teilmenge der Basis aufgespannt werden.
+Eine solche Basis kann man immer erweitern zu einer Basis von $C_k$.
+Für das Folgende bezeichnen wir die Vektoren einer solche Basis von $C_k$
+mit
+\[
+\{
+b_1,\dots, b_r,
+z_1,\dots,z_l,
+c_1,\dots,c_s
+\}.
+\]
+wobei die Vektoren die folgende Bedeutung haben:
+\begin{center}
+\begin{tabular}{|l|l|}
+\hline
+Vektoren&Bedeutung\\
+\hline
+$b_1,\dots,b_r$ & Basis für $B_k(C)$ \\
+$z_1,\dots,z_l$ & zusätzliche Vektoren für eine Basis von $Z_k(C)$ \\
+$c_1,\dots,c_s$ & zusätzliche Vektoren für eine Basis von $C_k$ \\
+\hline
+\end{tabular}
+\end{center}
+
+Wählt man eine Basis dieser Art sowohl in $C_*$ wie auch in $D_*$,
+dann kann man die induzierte Abbildung als $3\times 3$-Blockmatrix
+schreiben.
+Man verwendet dabei, dass $f_k$ die Unterräume $B_k(C)$ und
+$Z_k(C)$ in die entsprechenden Unterräume $B_k(D)$ und $Z_k(D)$
+abbildet, also
+\[
+f_k(B_k(C)) \subset B_k(D)
+\qquad\text{und}\qquad
+f_k(Z_k(C)) \subset Z_k(D).
+\]
+In der Matrixdarstellung äussert sich das darin, dass die Blöcke
+links unten zu Null werden.
+Die Matrixdarstellung von $f_k$ hat daher die Form
+\[
+f_k
+=
+\begin{pmatrix}
+f_{k,B} & * & * \\
+ 0 & f_{k,Z} & * \\
+ 0 & 0 & f_{k,*}
+\end{pmatrix}.
+\]
+Genauso kann man natürlich auch die Randoperatoren in dieser Basis
+ausdrücken.
+Sie bilden die Zyklen auf $0$ ab und aus den Vektoren $c_1,\dots,c_s$
+werden Ränder.
+Die Matrix hat daher die Form
+\[
+\partial_k
+=
+\begin{pmatrix}
+0& 0 & \Delta_k \\
+0& 0 & 0 \\
+0& 0 & 0
+\end{pmatrix}
+\]
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/complexbasis.pdf}
+\caption{Basiswahl für den Kettenkomplex $C_k$.
+Der Randoperator $\partial_k$ bildet $Z_k$ auf $0$ ab, der blaue
+Unterraum, aufgespannt von den Vektoren $c_i$, wird bijektiv auf $B_{k-1}$
+abgebildet.
+Eine Basis kann immer so gefunden werden, dass die Vektoren $c_i$
+von $\partial_k$ auf die Basisvektoren von $B_{k-1}$ abgebildet werden.
+In dieser Basis ist $\Delta_k$ eine Einheitsmatrix.
+\label{buch:homologie:fig:komplexbasis}}
+\end{figure}%
+Die Bedingung \eqref{buch:komplex:abbildung} für die Komplexabbildung
+bekommt jetzt die Matrixform
+\begin{equation}
+\left.
+\begin{aligned}
+\partial_k^{D}\circ f_k
+&=
+\begin{pmatrix}
+0&0&\Delta_k^{(D)}\\
+0&0&0\\
+0&0&0
+\end{pmatrix}
+\begin{pmatrix}
+f_{k,B} & * & * \\
+ 0 & f_{k,Z} & * \\
+ 0 & 0 & f_{k,*}
+\end{pmatrix}
+=
+\begin{pmatrix}
+0&0&\Delta_k^{(D)}f_{k,*}\\
+0&0&0\\
+0&0&0
+\end{pmatrix}
+\\
+f_{k-1}\circ \partial_k^C
+&=
+\begin{pmatrix}
+f_{k-1,B}& * & * \\
+ 0 &f_{k-1,Z}& * \\
+ 0 & 0 &f_{k-1,*}
+\end{pmatrix}
+\begin{pmatrix}
+0&0&\Delta_k^{(C)}\\
+0&0&0\\
+0&0&0
+\end{pmatrix}
+=
+\begin{pmatrix}
+0&0&f_{k-1,B}\Delta_k^{(C)}\\
+0&0&0\\
+0&0&0
+\end{pmatrix}
+\end{aligned}
+\right\}
+\Rightarrow
+\Delta_k^{(D)}f_{k,*}
+=
+f_{k-1,B}\Delta_k^{(C)}.
+\label{buch:homologie:matrixform}
+\end{equation}
+Für die induzierte Abbildung in Homologie ist ausschliesslich der
+Block $f_{k,Z}$ notwendig, die Matrix von $H_k(f)$ in der gewählten
+Basis von $H_k(C)$ bzw.~$H_k(D)$ ist also genau die Matrix $f_{k,Z}$.
+
+
+Wie Abbildung~\ref{buch:homologie:fig:komplexbasis} können die
+Basisvektoren $c_*$ in $C_k$ so gewählt werden, dass sie vom Randoperator
+$\partial_k$ auf die Basisvektoren von $Z_{k-1}$ abgebildet werden.
+Bei dieser Wahl wird die Matrix $\Delta_k$ eine Einheitsmatrix.
+
+\subsubsection{Spur}
+Wir betrachten jetzt den Fall einer Selbstabbildung $f_*\colon C_*\to C_*$.
+Die Basis soll so gewählt werden, dass $\Delta_k$ eine Einheitsmatrix ist.
+Aus~\eqref{buch:homologie:matrixform} kann man ablesen, dass für diese
+Basiswahl $f_{k,*}=f_{k-1,B}$ gilt.
+Die Matrizen von $f_k$ haben daher die Form
+\[
+f_k
+=
+\begin{pmatrix}
+f_{k,B} & * & * \\
+ 0 & f_{k,Z} & * \\
+ 0 & 0 & f_{k-1,B}
+\end{pmatrix}.
+\]
+Entsprechend ist die Spur
+\begin{equation}
+\operatorname{Spur} f_k
+=
+\operatorname{Spur} f_{k,B}
++
+\operatorname{Spur} f_{k,Z}
++
+\operatorname{Spur} f_{k-1,B}.
+\label{buch:homologie:eqn:spur}
+\end{equation}
+
+
+
diff --git a/buch/chapters/95-homologie/komplex.tex b/buch/chapters/95-homologie/komplex.tex
index 6dd8efb..9787bb2 100644
--- a/buch/chapters/95-homologie/komplex.tex
+++ b/buch/chapters/95-homologie/komplex.tex
@@ -6,9 +6,107 @@
\section{Kettenkomplexe
\label{buch:section:komplex}}
\rhead{Kettenkomplexe}
+Die algebraische Struktur, die in Abschnitt~\ref{buch:subsection:triangulation}
+konstruiert wurde, kann noch etwas abstrakter konstruiert werden.
+Es ergibt sich das Konzept eines Kettenkomplexes.
+Die Triangulation gibt also Anlass zu einem Kettenkomplex.
+So lässt sich zu einem geometrischen Objekt ein algebraisches
+Vergleichsobjekt konstruieren.
+Im Idealfall lassens ich anschliessend geometrische Eigenschaften mit
+algebraischen Rechnungen zum Beispiel in Vektorräumen mit Matrizen
+beantworten.
-\subsection{Randoperator von Simplexen
-\label{buch:subsection:randoperator-von-simplexen}}
+\subsection{Definition
+\label{buch:subsection:kettenkomplex-definition}}
+Die Operation $\partial$, die für Simplizes konstruiert worden ist,
+war linear und hat die Eigenschaft $\partial^2$ gehabt.
+Diese Eigenschaften reichen bereits für Definition eines Kettenkomplexes.
+
+\begin{definition}
+Eine Folge $C_0,C_1,C_2,\dots$ von Vektorräumen über dem Körper $\Bbbk$
+mit einer Folge von linearen Abbildungen
+$\partial_k\colon C_k \to C_{k-1}$, dem {\em Randoperator},
+heisst ein Kettenkomplex, wenn $\partial_{k-1}\partial_k=0$ gilt
+für alle $k>0$.
+\end{definition}
+
+Die aus den Triangulationen konstruieren Vektorräme von
+Abschnitt~\ref{buch:subsection:triangulation} bilden einen
+Kettenkomplex.
+
+XXX nachrechnen: $\partial^2 = 0$ ?
+
+\subsection{Abbildungen
+\label{buch:subsection:abbildungen}}
+Wenn man verschiedene geometrische Objekte mit Hilfe von Triangulationen
+vergleichen will, dann muss man auch das Konzept der Abbildungen zwischen
+den geometrischen Objekten in die Kettenkomplexe transportieren.
+
+Eine Abbildung zwischen Kettenkomplexen muss einerseits eine lineare
+Abbildung der Vektorräume $C_k$ sein, andererseits muss sich eine
+solche Abbildung mit dem Randoperator vertragen.
+Wir definieren daher
+
+\begin{definition}
+Eine Abbildung $f_*$ zwischen zwei Kettenkomplexe $(C_*,\partial^C_*)$ und
+$(D_*,\partial^D_*)$ heisst eine Abbildung von Kettenkomplexen, wenn
+für jedes $k$
+\begin{equation}
+\partial^D_k
+\circ
+f_{k}
+=
+f_{k-1}
+\circ
+\partial^C_k
+\label{buch:komplex:abbildung}
+\end{equation}
+gilt.
+\end{definition}
+
+Die Beziehung~\eqref{buch:komplex:abbildung} kann übersichtlich als
+kommutatives Diagramm dargestellt werden.
+\begin{equation}
+\begin{tikzcd}
+0
+ & C_0 \arrow[l, "\partial_0^C" above]
+ \arrow[d, "f_0"]
+ & C_1 \arrow[l,"\partial_1^C" above]
+ \arrow[d, "f_1"]
+ & C_2 \arrow[l,"\partial_2^C" above]
+ \arrow[d, "f_2"]
+ & \dots \arrow[l]
+ \arrow[l, "\partial_{3}^C" above]
+ & C_{k-1}
+ \arrow[l, "\partial_{k-1}^C" above]
+ \arrow[d, "f_{k-1}"]
+ & C_{k}\arrow[l, "\partial_{k}^C" above]
+ \arrow[d, "f_{k}"]
+ & \dots
+ \arrow[l,"\partial_{k+1}^C" above]
+\\
+0
+ & D_0 \arrow[l, "\partial_0^D" above]
+ & D_1 \arrow[l,"\partial_1^D" above]
+ & D_2 \arrow[l,"\partial_2^D" above]
+ & \dots \arrow[l]
+ \arrow[l, "\partial_{3}^D" above]
+ & D_{k-1}
+ \arrow[l, "\partial_{k-1}^D" above]
+ & D_{k}\arrow[l, "\partial_{k}^D" above]
+ & \dots
+ \arrow[l,"\partial_{k+1}^D" above]
+\end{tikzcd}
+\label{buch:komplex:abbcd}
+\end{equation}
+Die Relation~\eqref{buch:komplex:abbildung} drückt aus, dass man jeden
+den Pfeilen im Diagram~\eqref{buch:komplex:abbcd} folgen kann und
+dabei zwischen zwei Vektorräumen unabhängig vom Weg die gleiche Abbildung
+resultiert.
+
+Die Verfeinerung einer Triangulation erzeugt eine solche Abbildung von
+Komplexen.
+
+
+% XXX simpliziale Approximation
-\subsection{Kettenkomplexe und Morphismen
-\label{buch:subsection:kettenkomplex}}
diff --git a/buch/chapters/95-homologie/mayervietoris.tex b/buch/chapters/95-homologie/mayervietoris.tex
deleted file mode 100644
index 57105f8..0000000
--- a/buch/chapters/95-homologie/mayervietoris.tex
+++ /dev/null
@@ -1,28 +0,0 @@
-%
-% mayervietoris.tex
-%
-% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
-%
-\section{Exaktheit und die Mayer-Vietoris-Folge
-\label{buch:section:mayervietoris}}
-\rhead{Exaktheit und die Mayer-Vietoris-Folge}
-Die Berechnung der Homologie-Gruppen ist zwar im Wesentlichen ein
-kombinatorisches Problem, trotzdem ist eher aufwändig.
-Oft weiss man, wie sich toplogische Räume aus einfacheren Räumen
-zusammensetzen lassen.
-Eine Mannigkfaltigkeit zum Beispiel wird durch die Karten
-definiert, also zusammenziehbare Teilmengen von $\mathbb{R}^n$,
-die die Mannigkfaltigkeit überdecken.
-Das Ziel dieses Abschnittes ist, Regeln zusammenzustellen, mit denen
-man die Homologie eines solchen zusammengesetzten Raumes aus der
-Homologie der einzelnen Teile und aus den ``Verklebungsabbildungen'',
-die die Teile verbinden, zu berechnen.
-
-\subsection{Kurze exakte Folgen von Kettenkomplexen
-\label{buch:subsection:exaktefolgen}}
-
-\subsection{Schlangenlemma und lange exakte Folgen
-\label{buch:subsection:schlangenlemma}}
-
-\subsection{Mayer-Vietoris-Folge
-\label{buch:subsection:mayervietoris}}
diff --git a/buch/chapters/95-homologie/simplex.tex b/buch/chapters/95-homologie/simplex.tex
index 5ca2ca8..3bf1004 100644
--- a/buch/chapters/95-homologie/simplex.tex
+++ b/buch/chapters/95-homologie/simplex.tex
@@ -1,17 +1,17 @@
%
-% simplex.tex -- simplizes und simpliziale Komplexe
+% simplex.tex -- simplizes und Polyeder
%
% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
%
-\section{Simplexe und simpliziale Komplexe
+\section{Simplizes
\label{buch:section:simplexe}}
-\rhead{Simplexe und simpliziale Komplexe}
+\rhead{Simplizes}
Die Idee, das Dreieck und seinen Rand zu unterscheiden verlangt,
dass wir zunächst Dreiecke und deren höherdimensionale Verallgemeinerungen,
die sogenannten Simplizes entwickeln müssen.
-\subsection{Simplexe und Rand
-\label{buch:subsection:simplexe}}
+\subsection{Simplizes und Rand
+\label{buch:subsection:simplices}}
\subsubsection{Rand eines Dreiecks}
Die Inzidenz-Matrix eines Graphen hat einer Kante die beiden Endpunkte
@@ -231,8 +231,127 @@ Vorzeichen zu, die Matrix ist
\]
\end{definition}
+\subsection{Polyeder}
+\begin{figure}
+\centering
+\includegraphics{chapters/95-homologie/images/polyeder.pdf}
+\caption{Aufbau eines zweidimensionalen Polyeders aus
+verschiedenen Simplizes.
+Die Schnittmenge zweier Simplizes muss ein Untersimplex beider Simplizes
+sein.
+Die roten Kreise im linken Bild weisen auf verschiedene Situationen
+hin, wo das diese Bedingung nicht erfüllt ist.
+In rechten Bild sind zusätzliche Simlizes hinzugefügt worden, um
+die Bedingungen eines Polyeders zu erfüllen.
+\label{buch:homologie:figure:polyeder}}
+\end{figure}
+Aus einzelnen Simplizes können jetzt kompliziertere geometrische
+Objekte gebaut werden.
+Ein Graph ist ein Beispiel für ein geometrisches Objekt, welches
+als Vereinigung von 1-Simplizes entsteht.
+Die Vereinigung ist aber nicht beliebig, vielmehr ist die Schnittmenge
+zweier beliebiger 1-Simplizes immer entweder leer, eine Menge
+mit nur einem Vertex oder ein ganzes 1-Simplex.
+
+Dies reicht aber nicht, wie Abbildung~\ref{buch:homologie:polyeder}
+zeigt.
+In einem Graphen dürfen sich Kanten nicht in einem inneren Punkt treffen,
+sondern nur in Endpunkten.
+Verallgemeinert auf höherdimensionale Simplizes kann man dies als die
+Bedingung formulieren, dass die Schnittmenge zweier beliebiger
+Simplizes immer Untersimplizes beider Simplizes sein müssen.
+Wir fassen dies zusammen in der folgenden Definition.
+
+\begin{definition}
+\index{Polyeder}%
+\index{Dimension eines Polyeders}%
+\index{Polyeder, Dimension eines}%
+Ein {\em Polyeder} ist eine Vereingung von endlich vielen Simplizes derart,
+dass die Schnittmenge zweier beliebiger Simplizes immer ein Untersimplex
+beider Simplizes ist.
+Die {\em Dimension} des Polyeders ist die grösste Dimension der darin
+enthaltenen Simplizes.
+\end{definition}
+
+Ein Graph ist nach dieser Definition ein eindimensionales Polyeder.
+Die Mengen in der Abbildung~\ref{buch:homologie:figure:polyeder}
+ist kein Polyeder, kann aber leicht zu einem Polyeder gemacht werden,
+indem man einzelne Kanten mit zusätzlichen Punkten unterteilt.
+Auch müssen die zweidimensionalen Simplizes aufgeteilt werden.
+
+Die Abbildung~\ref{buch:homologie:figure:polyeder} zeigt auch, dass
+die Darstellung einer Punktmenge als Polyeder nicht eindeutig ist.
+Man kann die Kanten und Flächen jederzeit weiter unterteilen, ohne
+dass sich die Gestalt der gesamten Menge dadurch ändert.
\subsection{Triangulation
-\label{buch:subsection:}}
+\label{buch:subsection:triangulation}}
+Unser Ziel ist, geometrische Objekte besser verstehen zu können.
+Dabei sind uns Deformationen ja sogar Knicke egal, es interessiert uns
+nur die ``Gestalt'' des Objekts.
+Entfernungen zwischen Punkten sind ebenfalls von untergeordneter
+Bedeutung, da sie bei Deformation nicht erhalten bleiben.
+Der Begriff des ``topologischen Raumes'' fasst diese Ideen mathematisch
+präzise ein, eine genaue Definition würde aber an dieser Stelle zu weit
+führen.
+Stattdessen beschränken wir uns auf eine Klasse von Punktmengen, die man
+mit Simplizes beschreiben kann.
+
+Ein topologischer Raum zeichnet sich durch einen Nachbarschaftsbegriff
+von Punkte aus, der erlaubt zu definieren, was eine stetige Abbildung ist.
+Ein stetige Abbildungen bildet nahe beeinander liegende Punkte wieder
+auf nahe beeinander liegende Punkte ab.
+Dass nahe liegende Punkte nicht plötzlich auf weit auseinander liegende
+Punkte abgebildet werden gibt die Intuition wieder, dass Deformationen
+möglich sein sollen, dass der Raum dabei aber nicht ``reissen'' darf.
+Zwei topologische Räume $X$ und $Y$ können daher als ``gleichgestaltig''
+betrachtet werden, wenn es zwei stetige Abbildungen $f\colon X\to Y$
+und $g\colon Y\to X$ gibt, die zu einander invers sein.
+Oder wenn sich $X$ stetig auf $Y$ abbilden lässt, so dass auch die
+Umkehrabbildung stetig ist.
+Eine solche Abbildung heisst ein {\em Homöomorphismus}, die beiden Räume
+$X$ und $Y$ heissen {\em homomorph}.
+
+Eine Kugel ist natürlich kein Polyeder, aber sie kann leicht homöomorph
+auf ein dreidimensionales Simplex abgebildet werden.
+
+\begin{beispiel}
+Sei $T$ ein reguläres Tetraeder mit den Ecken auf der dreidimensionalen
+Einheitskugel $B^3$.
+Für jeden Richtungsvektor $x\ne 0$ sei $l(x)$ Entfernung vom Mittelpunkt des
+Tetraeders bis zum Durchstosspunkt einer Geraden durch den Mittelpunkt
+mit Richtungsvektor $x$ durch die Oberfläche des Tetraeders.
+Dann sind die Abbildungen
+\[
+f\colon
+T\to B^3
+:
+x \mapsto\begin{cases}
+\displaystyle
+\frac{x}{l(x)}&\quad\text{für $x\ne 0$}\\
+0&\quad\text{für $x=0$}
+\end{cases}
+\qquad\text{und}\qquad
+g\colon
+B^3\to T
+:
+x \mapsto\begin{cases}
+l(x) x&\quad\text{für $x\ne 0$}\\
+0&\quad\text{für $x=0$}
+\end{cases}
+\]
+zueinander inverse stetige Abbildungen oder Homöomorphismen.
+\end{beispiel}
+
+Im Folgenden sollen daher nur solche topologischen Räume untersucht werden,
+die homöomorph sind zu einem Polyeder.
+Man nennt die homöomorphe Abbildung eines Polyeders auf so einen Raum
+auch eine Triangulation.
+Durch Unterteilung der Simplizes in kleiner Simplizes kann eine solche
+Triangulation beliebig verfeinert werden.
+
+
+
+