diff options
Diffstat (limited to '')
31 files changed, 2837 insertions, 339 deletions
diff --git a/buch/chapters/95-homologie/Makefile.inc b/buch/chapters/95-homologie/Makefile.inc index 41b1569..3b2b50c 100644 --- a/buch/chapters/95-homologie/Makefile.inc +++ b/buch/chapters/95-homologie/Makefile.inc @@ -8,7 +8,11 @@ CHAPTERFILES = $(CHAPTERFILES) \ chapters/95-homologie/simplex.tex \ chapters/95-homologie/komplex.tex \ chapters/95-homologie/homologie.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 994c400..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,6 +35,16 @@ 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} 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 a03d4b5..b3b184e 100644 --- a/buch/chapters/95-homologie/fixpunkte.tex +++ b/buch/chapters/95-homologie/fixpunkte.tex @@ -33,7 +33,7 @@ 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 @@ -41,7 +41,8 @@ Die {\em Lefshetz-Zahl} einer Abbildung $f$ von Kettenkomplexen ist = \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 @@ -49,11 +50,55 @@ 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. +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, @@ -67,6 +112,7 @@ ist $\lambda(f) \ne 0$, dann hat $f$ einen Fixpunkt. 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$. @@ -76,6 +122,9 @@ 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. diff --git a/buch/chapters/95-homologie/homologie.tex b/buch/chapters/95-homologie/homologie.tex index 905ecc3..747c00f 100644 --- a/buch/chapters/95-homologie/homologie.tex +++ b/buch/chapters/95-homologie/homologie.tex @@ -34,321 +34,8 @@ Es soll möglich werden, kompliziertere Fragen des Zusammenhangs, zum Beispiel das Vorhandensein von Löchern mit algebraischen Mitteln zu analysieren. -\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} - -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 -XXX Bild eines Tetraeders mit Bezeichnung der Ecken und Kanten -\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} - -\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. - -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. - +\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 ac964ff..0a3979e 100644 --- a/buch/chapters/95-homologie/images/Makefile +++ b/buch/chapters/95-homologie/images/Makefile @@ -3,7 +3,9 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: dreieck.pdf polyeder.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 @@ -11,3 +13,34 @@ dreieck.pdf: 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 Binary files differnew file mode 100644 index 0000000..8bdd2e7 --- /dev/null +++ b/buch/chapters/95-homologie/images/approximation.pdf 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 Binary files differnew file mode 100644 index 0000000..9ff6709 --- /dev/null +++ b/buch/chapters/95-homologie/images/complexbasis.pdf 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 Binary files differnew file mode 100644 index 0000000..07414bb --- /dev/null +++ b/buch/chapters/95-homologie/images/gausshomobasis.pdf 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 Binary files differnew file mode 100644 index 0000000..bc0b766 --- /dev/null +++ b/buch/chapters/95-homologie/images/gausshomoex.pdf 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 Binary files differnew file mode 100644 index 0000000..fb94ec8 --- /dev/null +++ b/buch/chapters/95-homologie/images/homoboundaries.pdf 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 Binary files differnew file mode 100644 index 0000000..fbbaedd --- /dev/null +++ b/buch/chapters/95-homologie/images/homoclasses.pdf 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 Binary files differnew file mode 100644 index 0000000..b68519e --- /dev/null +++ b/buch/chapters/95-homologie/images/homocycles.pdf 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/tetraeder.jpg b/buch/chapters/95-homologie/images/tetraeder.jpg Binary files differnew file mode 100644 index 0000000..0ec168b --- /dev/null +++ b/buch/chapters/95-homologie/images/tetraeder.jpg diff --git a/buch/chapters/95-homologie/images/tetraeder.pdf b/buch/chapters/95-homologie/images/tetraeder.pdf Binary files differnew file mode 100644 index 0000000..0a57e95 --- /dev/null +++ b/buch/chapters/95-homologie/images/tetraeder.pdf 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 7ed5937..9787bb2 100644 --- a/buch/chapters/95-homologie/komplex.tex +++ b/buch/chapters/95-homologie/komplex.tex @@ -56,7 +56,7 @@ für jedes $k$ \circ f_{k} = -f_{k+1} +f_{k-1} \circ \partial^C_k \label{buch:komplex:abbildung} @@ -76,26 +76,26 @@ kommutatives Diagramm dargestellt werden. & C_2 \arrow[l,"\partial_2^C" above] \arrow[d, "f_2"] & \dots \arrow[l] - \arrow[l, "\partial_{k-1}^C" above] - & C_k - \arrow[l, "\partial_k^C" above] - \arrow[d, "f_k"] - & C_{k+1}\arrow[l, "\partial_{k+1}^C" above] - \arrow[d, "f_{k+1}"] + \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+2}^C"] + \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_{k-1}^D" above] - & D_k - \arrow[l, "\partial_k^D" above] - & D_{k+1}\arrow[l, "\partial_{k+1}^D" above] + \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+2}^D" above] + \arrow[l,"\partial_{k+1}^D" above] \end{tikzcd} \label{buch:komplex:abbcd} \end{equation} diff --git a/buch/chapters/95-homologie/simplex.tex b/buch/chapters/95-homologie/simplex.tex index 0cf4aa7..3bf1004 100644 --- a/buch/chapters/95-homologie/simplex.tex +++ b/buch/chapters/95-homologie/simplex.tex @@ -3,14 +3,14 @@ % % (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule % -\section{Simplices +\section{Simplizes \label{buch:section:simplexe}} -\rhead{Simplices} +\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{Simplices und Rand +\subsection{Simplizes und Rand \label{buch:subsection:simplices}} \subsubsection{Rand eines Dreiecks} |