From 3dc190b1151b67bfd47d148b5e466e19d6890e12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 23 Mar 2021 19:54:10 +0100 Subject: intro Lie-Gruppen --- buch/chapters/60-gruppen/chapter.tex | 24 ++++++ buch/chapters/60-gruppen/lie-gruppen.tex | 139 +++++++++++++++++++++++++++++++ 2 files changed, 163 insertions(+) (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/chapter.tex b/buch/chapters/60-gruppen/chapter.tex index d07db3f..c2aa68d 100644 --- a/buch/chapters/60-gruppen/chapter.tex +++ b/buch/chapters/60-gruppen/chapter.tex @@ -7,6 +7,30 @@ \label{buch:chapter:matrizengruppen}} \lhead{Matrizengruppen} \rhead{} +Matrizen können dazu verwendet werden, Symmetrien von geometrischen oder +physikalischen Systemen zu beschreiben. +Neben diskreten Symmetrien wie zum Beispiel Spiegelungen gehören dazu +auch kontinuierliche Symmetrien wie Translationen oder Invarianz einer +phyisikalischen Grösse über die Zeit. +Solche Symmetrien müssen durch Matrizen beschrieben werden können, +die auf stetige oder sogar differenzierbare Art von der Zeit abhängen. +Die Menge der Matrizen, die zur Beschreibung solcher Symmetrien benutzt +werden, muss also eine zusätzliche Struktur haben, die ermöglicht, +sinnvoll über Stetigkeit und Differenzierbarkeit bei Matrizen +zu sprechen. + +Die Menge der Matrizen bilden zunächst eine Gruppe, +die zusätzliche differenziarbare Struktur macht daraus +eine sogenannte Lie-Gruppe. +Die Ableitungen nach einem Parameter liegen in der sogenannten +Lie-Algebra, einer Matrizen-Algebra mit dem antisymmetrischen +Lie-Klammer-Produkt $[A,B]=AB-BA$, auch Kommutator genannt. +Lie-Gruppe und Lie-Algebra sind eng miteinander verknüpft, +so eng, dass sich die meisten Eigenschaften der Gruppe aus den Eigenschaften +der Lie-Gruppe aus der Lie-Algebra ableiten lassen. +Die Verbindung wird hergestellt durch die Exponentialabbildung. +Ziel dieses Kapitels ist, die Grundzüge dieses interessanten +Zusammenhangs darzustellen. \input{chapters/60-gruppen/symmetrien.tex} \input{chapters/60-gruppen/lie-gruppen.tex} diff --git a/buch/chapters/60-gruppen/lie-gruppen.tex b/buch/chapters/60-gruppen/lie-gruppen.tex index cb1ca84..022de97 100644 --- a/buch/chapters/60-gruppen/lie-gruppen.tex +++ b/buch/chapters/60-gruppen/lie-gruppen.tex @@ -6,3 +6,142 @@ \section{Lie-Gruppen \label{buch:section:lie-gruppen}} \rhead{Lie-Gruppen} + +\subsection{Drehungen in der Ebene +\label{buch:gruppen:drehungen2d}} +Drehungen der Ebene können in einer orthonormierten Basis durch +Matrizen der Form +\[ +D_{\alpha} += +\begin{pmatrix} +\cos\alpha&-\sin\alpha\\ +\sin\alpha& \cos\alpha +\end{pmatrix} +\] +dargestellt werden. +Wir bezeichnen die Menge der Drehmatrizen in der Ebene mit +$\operatorname{SO}(2)\subset\operatorname{GL}_2(\mathbb{R})$. +Die Abbildung +\[ +D_{\bullet} +\colon +\mathbb{R}\to \operatorname{SO}(2) +: +\alpha \mapsto D_{\alpha} +\] +hat die Eigenschaften +\begin{align*} +D_{\alpha+\beta}&= D_{\alpha}D_{\beta} +\\ +D_0&=I +\\ +D_{2k\pi}&=I\qquad \forall k\in\mathbb{Z}. +\end{align*} +Daraus folgt zum Beispiel, dass $D_{\bullet}$ eine $2\pi$-periodische +Funktion ist. +$D_{\bullet}$ bildet die Menge der Winkel $[0,2\pi)$ bijektiv auf +die Menge der Drehmatrizen in der Ebene ab. + +Ein alternatives Bild für die Drehungen der Ebene kann man in der komplexen +Ebene $\mathbb{C}$ erhalten. +Die Multiplikation mit der komplexen Zahl $e^{i\alpha}$ beschreibt eine +Drehung der komplexen Ebene um den Winkel $\alpha$. +Die Zahlen der Form $e^{i\alpha}$ haben den Betrag $1$ und die Abbildung +\[ +f\colon \mathbb{R}\to \mathbb{C}:\alpha \mapsto e^{i\alpha} +\] +hat die Eigenschaften +\begin{align*} +f(\alpha+\beta) &= f(\alpha)f(\beta) +\\ +f(0)&=1 +\\ +f(2\pi k)&=1\qquad\forall k\in\mathbb{Z}, +\end{align*} +die zu den Eigenschaften der Abbildung $\alpha\mapsto D_{\alpha}$ +analog sind. + +Jede komplexe Zahl $z$ vom Betrag $1$ kann geschrieben werden in der Form +$z=e^{i\alpha}$, die Abbildung $f$ ist also eine Parametrisierung des +Einheitskreises in der Ebene. +Wir bezeichen $S^1=\{z\in\mathbb{C}\;|\; |z|=1\}$ die komplexen Zahlen vom +Betrag $1$. +$S^1$ ist eine Gruppe bezüglich der Multiplikation, da für jede Zahl +$z,w\in S^1$ gilt +$|z^{-1}|=1$ und $|zw|=1$ und damit $z^{-1}\in S^1$ und $zw\in S^1$. + +Zu einer komplexen Zahl $z\in S^1$ gibt es einen bis auf Vielfache +von $2\pi$ eindeutigen Winkel $\alpha(z)$ derart, dass $e^{i\alpha(z)}=z$. +Damit kann man jetzt die Abbildung +\[ +\varphi +\colon +S^1\to \operatorname{SO}(2) +: +z\mapsto D_{\alpha(z)} +\] +konstruieren. +Da $D_{\alpha}$ $2\pi$-periodisch ist, geben um Vielfache +von $2\pi$ verschiedene Wahlen von $\alpha(z)$ die gleiche +Matrix $D_{\alpha(z)}$, die Abbildung $\varphi$ ist daher +wohldefiniert. +$\varphi$ erfüllt ausserdem die Bedingungen +\begin{align*} +\varphi(z_1z_2) +&= +D_{\alpha(z_1z_2)} += +D_{\alpha(z_1)+\alpha(z_2)} += +D_{\alpha(z_1)}D_{\alpha(z_2)} += +\varphi(z_1)\varphi(z_2) +\\ +\varphi(1) +&= +D_{\alpha(1)} += +D_0 += +I +\end{align*} +Die Abbildung $\varphi$ ist ein Homomorphismus der Gruppe $S^1$ +in die Gruppe $\operatorname{SO}(2)$. +Die Menge der Drehmatrizen in der Ebene kann also mit dem Einheitskreis +in der komplexen Ebene identifiziert werden. + +\subsection{Isometrien von $\mathbb{R}^n$ +\label{buch:gruppen:isometrien}} +Lineare Abbildungen der Ebene $\mathbb{R}^n$ mit dem üblichen Skalarprodukt +können durch $n\times n$-Matrizen beschrieben werden. +Die Matrizen, die das Skalarprodukt erhalten, bilden eine Gruppe, +die in diesem Abschnitt genauer untersucht werden soll. +Eine Matrix $A\in M_{2}(\mathbb{R})$ ändert das Skalarprodukt nicht, wenn +für jedes beliebige Paar $x,y$ von Vektoren gilt +$\langle Ax,Ay\rangle = \langle x,y\rangle$. +Das Standardskalarprodukt kann mit dem Matrixprodukt ausgedrückt werden: +\[ +\langle Ax,Ay\rangle += +(Ax)^tAy += +x^tA^tAy += +x^ty += +\langle x,y\rangle +\] +für jedes Paar von Vektoren $x,y\in\mathbb{R}$. + +Mit dem Skalarprodukt kann man auch die Matrixelemente einer Matrix +einer Abbildung $f$ in der Standardbasis bestimmen. +Das Skalarprodukt $\langle e_i, v\rangle$ ist die Länge der Projektion +des Vektors $v$ auf die Richtung $e_i$. +Die Komponenten von $Ae_j$ sind daher $a_{ij}=\langle e_i,f(e_j)\rangle$. +Die Matrix $A$ der Abbildung $f$ hat also die Matrixelemente +$a_{ij}=e_i^tAe_j$. + + +\subsection{Die Gruppe $\operatorname{SU}(2)$ +\label{buch:gruppen:su2}} -- cgit v1.2.1 From 0a3486fa2ae398bb113053ad0823cf59c4a3b1eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 27 Mar 2021 20:33:43 +0100 Subject: new images --- buch/chapters/40-eigenwerte/grundlagen.tex | 30 +++ buch/chapters/40-eigenwerte/images/Makefile | 7 +- buch/chapters/40-eigenwerte/images/bild1.jpg | Bin 0 -> 76315 bytes buch/chapters/40-eigenwerte/images/bild2.jpg | Bin 0 -> 87846 bytes buch/chapters/40-eigenwerte/images/drei.jpg | Bin 0 -> 95383 bytes buch/chapters/40-eigenwerte/images/kern1.jpg | Bin 0 -> 61717 bytes buch/chapters/40-eigenwerte/images/kern2.jpg | Bin 0 -> 87289 bytes buch/chapters/40-eigenwerte/images/kernbild.pdf | Bin 0 -> 189482 bytes buch/chapters/40-eigenwerte/images/kernbild.tex | 40 ++++ buch/chapters/40-eigenwerte/images/kernbild1.jpg | Bin 0 -> 84647 bytes buch/chapters/40-eigenwerte/images/kernbild2.jpg | Bin 0 -> 76111 bytes buch/chapters/40-eigenwerte/images/kombiniert.jpg | Bin 0 -> 117063 bytes buch/chapters/40-eigenwerte/images/kombiniert.pdf | Bin 0 -> 131131 bytes buch/chapters/40-eigenwerte/images/kombiniert.tex | 48 ++++ buch/chapters/60-gruppen/images/castle.jpeg | Bin 0 -> 148054 bytes buch/chapters/60-gruppen/lie-algebren.tex | 255 ++++++++++++++++++++++ buch/chapters/60-gruppen/lie-gruppen.tex | 179 +++++++++++++++ buch/chapters/60-gruppen/symmetrien.tex | 98 +++++++++ 18 files changed, 656 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/40-eigenwerte/images/bild1.jpg create mode 100644 buch/chapters/40-eigenwerte/images/bild2.jpg create mode 100644 buch/chapters/40-eigenwerte/images/drei.jpg create mode 100644 buch/chapters/40-eigenwerte/images/kern1.jpg create mode 100644 buch/chapters/40-eigenwerte/images/kern2.jpg create mode 100644 buch/chapters/40-eigenwerte/images/kernbild.pdf create mode 100644 buch/chapters/40-eigenwerte/images/kernbild.tex create mode 100644 buch/chapters/40-eigenwerte/images/kernbild1.jpg create mode 100644 buch/chapters/40-eigenwerte/images/kernbild2.jpg create mode 100644 buch/chapters/40-eigenwerte/images/kombiniert.jpg create mode 100644 buch/chapters/40-eigenwerte/images/kombiniert.pdf create mode 100644 buch/chapters/40-eigenwerte/images/kombiniert.tex create mode 100644 buch/chapters/60-gruppen/images/castle.jpeg (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/grundlagen.tex b/buch/chapters/40-eigenwerte/grundlagen.tex index d984452..ffc452b 100644 --- a/buch/chapters/40-eigenwerte/grundlagen.tex +++ b/buch/chapters/40-eigenwerte/grundlagen.tex @@ -16,6 +16,36 @@ gestreckt werden. Gelingt es, eine Basis aus solchen sogenanten {\em Eigenvektoren} zu finden, dann kann man die Matrix $A$ durch Basiswechsel in diese Form bringen. +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/40-eigenwerte/images/kernbild.pdf} +\caption{Iterierte Kerne und Bilder einer $3\times 3$-Matrix mit Rang~2. +Die abnehmend geschachtelten iterierten Bilder +$\mathcal{J}^1(A) \subset \mathcal{J}^2(A)$ +sind links dargestellt, die zunehmen geschachtelten iterierten Kerne +$\mathcal{K}^1(A) \subset \mathcal{K}^2(A)$ rechts. +\label{buch:eigenwerte:img:kernbild}} +\end{figure} + +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/40-eigenwerte/images/kombiniert.pdf} +\caption{Iterierte Kerne und Bilder einer $3\times 3$-Matrix mit Rang~2. +Da $\dim\mathcal{J}^2(A)=1$ und $\dim\mathcal{J}^1(A)=2$ ist, muss es +einen Vektor in $\mathcal{J}^1(A)$ geben, der von $A$ auf $0$ abgebildet +wird, der also auch im Kern $\mathcal{K}^1(A)$ liegt. +Daher ist $\mathcal{K}^1(A)$ die Schnittgerade von $\mathcal{J}^1(A)$ und +$\mathcal{K}^2(A)$. +Man kann auch gut erkennen, dass +$\mathbb{R}^3 += +\mathcal{K}^1(A)\oplus \mathcal{J}^1(A) += +\mathcal{K}^2(A) \oplus \mathcal{J}^2(A)$ +ist. +\label{buch:eigenwerte:img:kombiniert}} +\end{figure} + % % Kern und Bild von Matrixpotenzen % diff --git a/buch/chapters/40-eigenwerte/images/Makefile b/buch/chapters/40-eigenwerte/images/Makefile index db00dac..753153d 100644 --- a/buch/chapters/40-eigenwerte/images/Makefile +++ b/buch/chapters/40-eigenwerte/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2020 Prof Dr Andreas Müller, Hochschule Rappersil # -all: sp.pdf nilpotent.pdf +all: sp.pdf nilpotent.pdf kernbild.pdf kombiniert.pdf sp.pdf: sp.tex sppaths.tex pdflatex sp.tex @@ -14,3 +14,8 @@ sppaths.tex: spbeispiel.m nilpotent.pdf: nilpotent.tex pdflatex nilpotent.tex +kernbild.pdf: kernbild.tex bild2.jpg kern2.jpg + pdflatex kernbild.tex + +kombiniert.pdf: kombiniert.tex kombiniert.jpg + pdflatex kombiniert.tex diff --git a/buch/chapters/40-eigenwerte/images/bild1.jpg b/buch/chapters/40-eigenwerte/images/bild1.jpg new file mode 100644 index 0000000..879fae8 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/bild1.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/bild2.jpg b/buch/chapters/40-eigenwerte/images/bild2.jpg new file mode 100644 index 0000000..2597c95 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/bild2.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/drei.jpg b/buch/chapters/40-eigenwerte/images/drei.jpg new file mode 100644 index 0000000..35f9034 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/drei.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/kern1.jpg b/buch/chapters/40-eigenwerte/images/kern1.jpg new file mode 100644 index 0000000..5c99664 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kern1.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/kern2.jpg b/buch/chapters/40-eigenwerte/images/kern2.jpg new file mode 100644 index 0000000..87d18ac Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kern2.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/kernbild.pdf b/buch/chapters/40-eigenwerte/images/kernbild.pdf new file mode 100644 index 0000000..2a321b2 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kernbild.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/kernbild.tex b/buch/chapters/40-eigenwerte/images/kernbild.tex new file mode 100644 index 0000000..4eced84 --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/kernbild.tex @@ -0,0 +1,40 @@ +% +% kernbild.tex -- Kern und Bild einer Matrix +% +% (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.4,0} +\definecolor{turqoise}{rgb}{0,0.3,0.6} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\begin{scope}[xshift=-3.5cm] +\node at (0,0) {\includegraphics[width=6.8cm]{bild2.jpg}}; + +\fill[color=white,opacity=0.8] (-3,-2.75) rectangle (-2,-2.3); +\node[color=orange] at (-2.5,-2.5) {$\mathcal{J}^1(A)$}; +\node at (3.3,0) {$x_1$}; +\node at (0.3,3.2) {$x_3$}; +\node[color=purple] at (2.3,0.6) [rotate=8] {$\mathcal{J}^2(A)$}; +\end{scope} + +\begin{scope}[xshift=3.5cm] +\node at (0,0) {\includegraphics[width=6.8cm]{kern2.jpg}}; +\node[color=darkgreen] at (1.8,2.2) [rotate=58] {$\mathcal{K}^1(A)$}; +\fill[color=white,opacity=0.8] (-1.5,0.8) rectangle (-0.5,1.2); +\node[color=turqoise] at (-1,1) {$\mathcal{K}^2(A)$}; +\node at (3.3,0) {$x_1$}; +\node at (0.3,3.2) {$x_3$}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/images/kernbild1.jpg b/buch/chapters/40-eigenwerte/images/kernbild1.jpg new file mode 100644 index 0000000..87e874e Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kernbild1.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/kernbild2.jpg b/buch/chapters/40-eigenwerte/images/kernbild2.jpg new file mode 100644 index 0000000..1160b31 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kernbild2.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/kombiniert.jpg b/buch/chapters/40-eigenwerte/images/kombiniert.jpg new file mode 100644 index 0000000..bebc36f Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kombiniert.jpg differ diff --git a/buch/chapters/40-eigenwerte/images/kombiniert.pdf b/buch/chapters/40-eigenwerte/images/kombiniert.pdf new file mode 100644 index 0000000..91cee0b Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/kombiniert.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/kombiniert.tex b/buch/chapters/40-eigenwerte/images/kombiniert.tex new file mode 100644 index 0000000..d850c64 --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/kombiniert.tex @@ -0,0 +1,48 @@ +% +% kombiniert.tex -- Iterierte Kerne und Bilder +% +% (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} +\definecolor{darkgreen}{rgb}{0,0.4,0} +\definecolor{turqoise}{rgb}{0,0.3,0.6} +\def\skala{1} +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{7} +\def\hoehe{7} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\node at (0,0) {\includegraphics[width=13.8cm]{kombiniert.jpg}}; + +\node at (6.6,-0.1) {$x_1$}; +\node at (0.3,6.7) {$x_3$}; + +\node[color=purple] at (4.8,1) [rotate=8] {$\mathcal{J}^2(A)$}; +\node[color=darkgreen] at (3.5,4.6) [rotate=58] {$\mathcal{K}^1(A)$}; + +\fill[color=white,opacity=0.8] (-2.3,3.8) rectangle (-1.3,4.2); +\node[color=turqoise] at (-1.8,4) {$\mathcal{K}^2(A)$}; + +\fill[color=white,opacity=0.8] (2.5,-5.75) rectangle (3.5,-5.3); +\node[color=orange] at (3,-5.5) {$\mathcal{J}^1(A)$}; + +%\node at G +% 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]; +}{} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/60-gruppen/images/castle.jpeg b/buch/chapters/60-gruppen/images/castle.jpeg new file mode 100644 index 0000000..bf90a36 Binary files /dev/null and b/buch/chapters/60-gruppen/images/castle.jpeg differ diff --git a/buch/chapters/60-gruppen/lie-algebren.tex b/buch/chapters/60-gruppen/lie-algebren.tex index 69d4b1d..6c6b74b 100644 --- a/buch/chapters/60-gruppen/lie-algebren.tex +++ b/buch/chapters/60-gruppen/lie-algebren.tex @@ -6,3 +6,258 @@ \section{Lie-Algebren \label{buch:section:lie-algebren}} \rhead{Lie-Algebren} +Im vorangegangenen Abschnitt wurde gezeigt, dass alle beschriebenen +Matrizengruppen als Untermannigfaltigkeiten im $n^2$-dimensionalen +Vektorraum $M_n(\mathbb{R}9$ betrachtet werden können. +Die Gruppen haben damit nicht nur die algebraische Struktur einer +Matrixgruppe, sie haben auch die geometrische Struktur einer +Mannigfaltigkeit. +Insbesondere ist es sinnvoll, von Ableitungen zu sprechen. + +Eindimensionale Untergruppen einer Gruppe können auch als Kurven +innerhalb der Gruppe angesehen werden. +In diesem Abschnitt soll gezeigt werden, wie man zu jeder eindimensionalen +Untergruppe einen Vektor in $M_n(\mathbb{R})$ finden kann derart, dass +der Vektor als Tangentialvektor an diese Kurve gelten kann. +Aus einer Abbildung zwischen der Gruppe und diesen Tagentialvektoren +erhält man dann auch eine algebraische Struktur auf diesen Tangentialvektoren, +die sogenannte Lie-Algebra. +Sie ist charakteristisch für die Gruppe. +Insbesondere werden wir sehen, wie die Gruppen $\operatorname{SO}(3)$ +und $\operatorname{SU}(2)$ die gleich Lie-Algebra haben und dass die +Lie-Algebra von $\operatorname{SO}(3)$ mit dem Vektorprodukt in $\mathbb{R}^3$ +übereinstimmt. + +% +% Tangentialvektoren und SO(2) +% +\subsection{Tangentialvektoren und $\operatorname{SO}(2)$} +Die Drehungen in der Ebene können reell als Matrizen der Form +\[ +D_{\alpha} += +\begin{pmatrix} +\cos\alpha&-\sin\alpha\\ +\sin\alpha& \cos\alpha +\end{pmatrix} +\] +als eidimensionale Kurve innerhalb von $M_2(\mathbb{R})$ beschrieben +werden. +Alternativ können Drehungen um den Winkel $\alpha$ als mit Hilfe von +der Abbildung +$ +\alpha\mapsto e^{i\alpha} +$ +als komplexe Zahlen vom Betrag $1$ beschrieben werden. +Dies sind zwei verschiedene Parametrisierungen der gleichen +geometrischen Transformation. + +Die Ableitung nach $\alpha$ ist $ie^{i\alpha}$, der Tangentialvektor +im Punkt $e^{i\alpha}$ ist also $ie^{i\alpha}$. +Die Multiplikation mit $i$ ist die Drehung um $90^\circ$, der Tangentialvektor +ist also der um $90^\circ$ gedrehte Ortsvektor zum Punkt auf der Kurve. + +In der Darstelllung als $2\times 2$-Matrix ist die Ableitung +\[ +\frac{d}{d\alpha}D_\alpha += +\frac{d}{d\alpha} +\begin{pmatrix} +\cos\alpha& -\sin\alpha\\ +\sin\alpha& \cos\alpha +\end{pmatrix} += +\begin{pmatrix} +-\sin\alpha & -\cos\alpha \\ + \cos\alpha & -\sin\alpha +\end{pmatrix}. +\] +Die rechte Seite kann wieder mit der Drehmatrix $D_\alpha$ geschrieben +werden, es ist nämlich +\[ +\frac{d}{d\alpha}D_\alpha += +\begin{pmatrix} +-\sin\alpha & -\cos\alpha \\ + \cos\alpha & -\sin\alpha +\end{pmatrix} += +\begin{pmatrix} +\cos\alpha & -\sin\alpha\\ +\sin\alpha & \cos\alpha +\end{pmatrix} +\begin{pmatrix} +0&-1\\ +1& 0 +\end{pmatrix} += +D_\alpha J. +\] +Der Tangentialvektor an die Kurve $\alpha\mapsto D_\alpha$ innerhalb +$M_2(\mathbb{R})$ im Punkt $D_\alpha$ ist also die Matrix +$JD_\alpha$. +Die Matrix $J$ ist die Drehung um $90^\circ$, denn $J=D_{\frac{\pi}2}$. +Der Zusammenhang zwischen dem Punkt $D_\alpha$ und dem Tangentialvektor +ist also analog zur Beschreibug mit komplexen Zahlen. + +Im Komplexen vermittelt die Exponentialfunktion den Zusammenhang zwischen +dem Winkel $\alpha$ und dre Drehung $e^{i\alpha}$. +Der Grund dafür ist natürlich die Differentialgleichung +\[ +\frac{d}{d\alpha} z(\alpha) = iz(\alpha). +\] +Die analoge Differentialgleichung +\[ +\frac{d}{d\alpha} D_\alpha = J D_\alpha +\] +führt auf die Matrix-Exponentialreihe +\begin{align*} +D_\alpha += +\exp (J\alpha) +&= +\sum_{k=0}^\infty \frac{(J\alpha)^k}{k!} += +\biggl( +1-\frac{\alpha^2}{2!} + \frac{\alpha^4}{4!} -\frac{\alpha^6}{6!}+\dots +\biggr) ++ +J\biggl( +\alpha - \frac{\alpha^3}{3!} ++ \frac{\alpha^5}{5!} +- \frac{\alpha^7}{7!}+\dots +\biggr) +\\ +&= +I\cos\alpha ++ +J\sin\alpha, +\end{align*} +welche der Eulerschen Formel $e^{i\alpha} = \cos\alpha + i \sin\alpha$ +analog ist. + +In diesem Beispiel gibt es nur eine Tangentialrichtung und alle in Frage +kommenden Matrizen vertauschen miteinander. +Es ist daher nicht damit zu rechnen, dass sich eine interessante +Algebrastruktur für die Ableitungen konstruieren lässt. + +% +% Die Lie-Algebra einer Matrizengruppe +% +\subsection{Lie-Algebra einer Matrizengruppe} +Das eindimensionale Beispiel $\operatorname{SO}(2)$ hat gezeigt, dass +die Tangentialvektoren in einem beliebigen Punkt $D_\alpha$ aus dem +Tangentialvektor im Punkt $I$ durch Anwendung der Drehung hervorgehen, +die $I$ in $D_\alpha$ abbildet. +Die Drehungen einer eindimensionalen Untergruppe transportieren daher +den Tangentialvektor in $I$ entlang der Kurve auf jeden beliebigen +anderen Punkt. +Zu jedem Tangentialvektor im Punkt $I$ dürfte es daher genau eine +eindimensionale Untergruppe geben. + +Sei die Abbildung $\varrho\colon\mathbb{R}\to G$ eine Einparameter-Untergruppe +von $G\subset M_n(\mathbb{R})$. +Durch Ableitung der Gleichung $\varrho(t+x) = \varrho(t)\varrho(x)$ nach +$x$ folgt die Differentialgleichung +\[ +\varrho'(t) += +\frac{d}{dx}\varrho(t+x)\bigg|_{x=0} += +\varrho(t) \frac{d}{dx}\varrho(0)\bigg|_{x=0} += +\varrho(t) \varrho'(0). +\] +Der Tangentialvektor in $\varrho'(t)$ in $\varrho(t)$ ist daher +der Tangentialvektor $\varrho'(0)$ in $I$ transportiert in den Punkt +$\varrho(t)$ mit Hilfe der Matrix $\varrho(t)$. + +Aus der Differentialgleichung folgt auch, dass +\[ +\varrho(t) = \exp (t\varrho'(0)). +\] +Zu einem Tangentialvektor in $I$ kann man also immer die +Einparameter-Untergruppe mit Hilfe der Differentialgleichung +oder der expliziten Exponentialreihe rekonstruieren. + +Die eindimensionale Gruppe $\operatorname{SO}(2)$ ist abelsch und +hat einen eindimensionalen Tangentialraum, man kann also nicht mit +einer interessanten Algebrastruktur rechnen. +Für eine höherdimensionale, nichtabelsche Gruppe sollte sich aus +der Tatsache, dass es verschiedene eindimensionale Untergruppen gibt, +deren Elemente nicht mit den Elemente einer anderen solchen Gruppe +vertauschen, eine interessante Algebra konstruieren lassen, deren +Struktur die Nichtvertauschbarkeit wiederspiegelt. + +Seien also $A$ und $B$ Tangentialvektoren einer Matrizengruppe $G$, +die zu den Einparameter-Untergruppen $\varphi(t)=\exp At$ und +$\varrho(t)=\exp Bt$ gehören. +Insbesondere gilt $\varphi'(0)=A$ und $\varrho'(0)=B$. +Das Produkt $\pi(t)=\varphi(t)\varrho(t)$ ist allerdings nicht notwendigerweise +eine Einparametergruppe, denn dazu müsste gelten +\begin{align*} +\pi(t+s) +&= +\varphi(t+s)\varrho(t+s) += +\varphi(t)\varphi(s)\varrho(t)\varrho(s) +\\ += +\pi(t)\pi(s) +&= +\varphi(t)\varrho(t)\varphi(s)\varrho(s) +\end{align*} +Durch Multiplikation von links mit $\varphi(t)^{-1}$ und +mit $\varrho(s)^{-1}$ von rechts folgt, dass dies genau dann gilt, +wenn +\[ +\varphi(s)\varrho(t)=\varrho(t)\varphi(s). +\] +Die beiden Seiten dieser Gleichung sind erneut verschiedene Punkte +in $G$. +Durch Multiplikation mit $\varrho(t)^{-1}$ von links und mit +$\varphi(s)^{-1}$ von rechts erhält man die äquivaliente +Bedingung +\begin{equation} +\varrho(-t)\varphi(s)\varrho(t)\varphi(-s)=I. +\label{buch:lie:konjugation} +\end{equation} +Ist die Gruppe $G$ nicht kommutativ, kann man nicht +annehmen, dass diese Bedingung erfüllt ist. + +Aus \eqref{buch:lie:konjugation} erhält man jetzt eine Kurve +\[ +t \mapsto \gamma(t,s) = \varrho(-t)\varphi(s)\varrho(t)\varphi(-s) \in G +\] +in der Gruppe, die für $t=0$ durch $I$ geht. +Ihren Tangentialvektor kann man durch Ableitung bekommen: +\begin{align*} +\frac{d}{dt}\gamma(t,s) +&= +-\varrho'(-t)\varphi(s)\varrho(t)\varphi(-s) ++\varrho(-t)\varphi(s)\varrho'(t)\varphi(-t) +\\ +\frac{d}{dt}\gamma(t)\bigg|_{t=0} +&= +-B\varphi(s) + \varphi(-s)B +\end{align*} +Durch erneute Ableitung nach $s$ erhält man dann +\begin{align*} +\frac{d}{ds} \frac{d}{dt}\gamma(t,s)\bigg|_{t=0} +&= +-B\varphi'(s) - \varphi(-s)B +\end{align*} + +% +% Die Lie-Algebra von SO(3) +% +\subsection{Die Lie-Algebra von $\operatorname{SO}(3)$} + +% +% Die Lie-Algebra von SU(2) +% +\subsection{Die Lie-Algebra von $\operatorname{SU}(2)$} + + + + diff --git a/buch/chapters/60-gruppen/lie-gruppen.tex b/buch/chapters/60-gruppen/lie-gruppen.tex index 022de97..1268ce2 100644 --- a/buch/chapters/60-gruppen/lie-gruppen.tex +++ b/buch/chapters/60-gruppen/lie-gruppen.tex @@ -111,6 +111,9 @@ in die Gruppe $\operatorname{SO}(2)$. Die Menge der Drehmatrizen in der Ebene kann also mit dem Einheitskreis in der komplexen Ebene identifiziert werden. +% +% Isometrien von R^n +% \subsection{Isometrien von $\mathbb{R}^n$ \label{buch:gruppen:isometrien}} Lineare Abbildungen der Ebene $\mathbb{R}^n$ mit dem üblichen Skalarprodukt @@ -142,6 +145,182 @@ Die Komponenten von $Ae_j$ sind daher $a_{ij}=\langle e_i,f(e_j)\rangle$. Die Matrix $A$ der Abbildung $f$ hat also die Matrixelemente $a_{ij}=e_i^tAe_j$. +\subsubsection{Die orthogonale Gruppe $\operatorname{O}(n)$} +Die Matrixelemente von $A^tA$ sind +$\langle A^tAe_i, e_j\rangle =\langle e_i,e_j\rangle = \delta_{ij}$ +sind diejenigen der Einheitsmatrix, +die Matrix $A$ erfüllt $AA^t=I$ oder $A^{-1}=A^t$. +Dies sind die {\em orthogonalen} Matrizen. +Die Menge $\operatorname{O}(n)$ der isometrischen Abbildungen besteht +daher aus den Matrizen +\[ +\operatorname{O}(n) += +\{ A\in M_n(\mathbb{R})\;|\; AA^t=I\}. +\] +Die Matrixgleichung $AA^t=I$ liefert $n(n+1)/2$ unabhängige Bedingungen, +die die orthogonalen Matrizen innerhalb der $n^2$-dimensionalen +Menge $M_n(\mathbb{R})$ auszeichnen. +Die Menge $\operatorname{O}(n)$ der orthogonalen Matrizen hat daher +die Dimension +\[ +n^2 - \frac{n(n+1)}{2} += +\frac{2n^2-n^2-n}{2} += +\frac{n(n-1)}2. +\] +Im Spezialfall $n=2$ ist die Gruppe $O(2)$ eindimensional. + +\subsubsection{Die Gruppe $\operatorname{SO}(n)$} +Die Gruppe $\operatorname{O}(n)$ enhält auch Isometrien, die +die Orientierung des Raumes umkehren, wie zum Beispiel Spiegelungen. +Wegen $\det (AA^t)=\det A\det A^t = (\det A)^2=1$ kann die Determinante +einer orthogonalen Matrix nur $\pm 1$ sein. +Orientierungserhaltende Isometrien haben Determinante $1$. + +Die Gruppe +\[ +\operatorname{SO}(n) += +\{A\in\operatorname{O}(n)\;|\; \det A=1\} +\] +heisst die {\em spezielle orthogonale Gruppe}. +Die Dimension der Gruppe $\operatorname{O}(n)$ ist $n(n-1)/2$. + +\subsubsection{Die Gruppe $\operatorname{SO}(3)$} +Die Gruppe $\operatorname{SO}(3)$ der Drehungen des dreidimensionalen +Raumes hat die Dimension $3(3-1)/2=3$. +Eine Drehung wird festgelegt durch die Richtung der Drehachse und den +Drehwinkel. +Die Richtung der Drehachse ist ein Einheitsvektor, also ein Punkt +auf der zweidimensionalen Kugel. +Der Drehwinkel ist der dritte Parameter. +Drehungen mit kleinen Drehwinkeln können zusammengesetzt werden +aus den Matrizen +\[ +D_{x,\alpha} += +\begin{pmatrix} +1&0&0\\ +0&\cos\alpha&-\sin\alpha\\ +0&\sin\alpha& \cos\alpha +\end{pmatrix}, +\qquad +D_{y,\beta} += +\begin{pmatrix} + \cos\beta&0&\sin\beta\\ + 0 &1& 0 \\ +-\sin\beta&0&\cos\beta +\end{pmatrix}, +\qquad +D_{z,\gamma} += +\begin{pmatrix} +\cos\gamma&-\sin\gamma&0\\ +\sin\gamma& \cos\gamma&0\\ + 0 & 0 &1 +\end{pmatrix}, +\] +die Drehungen um die Koordinatenachsen um den Winkel $\alpha$ +beschreiben. +Auch die Winkel $\alpha$, $\beta$ und $\gamma$ können als die +drei Koordinaten der Mannigkfaltigkeit $\operatorname{SO}(3)$ +angesehen werden. + +% +% Die Gruppe SU(2) +% \subsection{Die Gruppe $\operatorname{SU}(2)$ \label{buch:gruppen:su2}} +Die Menge der Matrizen +\[ +\operatorname{SU}(2) += +\left\{ +\left. +A=\begin{pmatrix} a&b\\c&d\end{pmatrix} +\;\right|\; +a,b,c,d\in\mathbb{C},\det(A)=1, AA^*=I +\right\} +\] +heisst die {\em spezielle unitäre Gruppe}. +Wegen $\det(AB)=\det(A)\det(B)=1$ und $(AB)^*AB=B^*A^*AB=B^*B=I$ ist +$\operatorname{SU}(2)$ eine Untergruppe von $\operatorname{GL}_2(\mathbb{C})$. +Die Bedingungen $\det A=1$ und $AA^*=I$ schränken die möglichen Werte +von $a$ und $b$ weiter ein. +Aus +\[ +A^* += +\begin{pmatrix} +\overline{a}&\overline{c}\\ +\overline{b}&\overline{d} +\end{pmatrix} +\] +und den Bedingungen führen die Gleichungen +\[ +\begin{aligned} +a\overline{a}+b\overline{b}&=1 +&&\Rightarrow&|a|^2+|b|^2&=1 +\\ +a\overline{c}+b\overline{d}&=0 +&&\Rightarrow& +\frac{a}{b}&=-\frac{\overline{d}}{\overline{c}} +\\ +c\overline{a}+d\overline{b}&=0 +&&\Rightarrow& +\frac{c}{d}&=-\frac{\overline{b}}{\overline{a}} +\\ +c\overline{c}+d\overline{d}&=1&&\Rightarrow&|c|^2+|d|^2&=1 +\\ +ad-bc&=1 +\end{aligned} +\] +Aus der zweiten Gleichung kann man ableiten, dass es eine Zahl $t\in\mathbb{C}$ +gibt derart, dass $c=-t\overline{b}$ und $d=t\overline{a}$. +Damit wird die Bedingung an die Determinante zu +\[ +1 += +ad-bc = at\overline{a} - b(-t\overline{b}) += +t(|a|^2+|b|^2) += +t, +\] +also muss die Matrix $A$ die Form haben +\[ +A += +\begin{pmatrix} +a&b\\ +-\overline{b}&\overline{a} +\end{pmatrix} +\qquad\text{mit}\quad |a|^2+|b|^2=1. +\] +Schreibt man $a=a_1+ia_2$ und $b=b_1+ib_2$ mit rellen $a_i$ und $b_i$, +dann besteht $SU(2)$ aus den Matrizen der Form +\[ +A= +\begin{pmatrix} + a_1+ia_2&b_1+ib_2\\ +-b_1+ib_2&a_1-ia_2 +\end{pmatrix} +\] +mit der zusätzlichen Bedingung +\[ +|a|^2+|b|^2 += +a_1^2 + a_2^2 + b_1^2 + b_2^2 = 1. +\] +Die Matrizen von $\operatorname{SU}(2)$ stehen daher in einer +eins-zu-eins-Beziehung zu den Vektoren $(a_1,a_2,b_1,b_2)\in\mathbb{R}^4$ +eines vierdimensionalen reellen Vektorraums mit Länge $1$. +Geometrisch betrachtet ist also $\operatorname{SU}(2)$ eine dreidmensionalen +Kugel, die in einem vierdimensionalen Raum eingebettet ist. + + + diff --git a/buch/chapters/60-gruppen/symmetrien.tex b/buch/chapters/60-gruppen/symmetrien.tex index 8d5c0e0..cb07475 100644 --- a/buch/chapters/60-gruppen/symmetrien.tex +++ b/buch/chapters/60-gruppen/symmetrien.tex @@ -7,4 +7,102 @@ \section{Symmetrien \label{buch:section:symmetrien}} \rhead{Symmetrien} +Der geometrische Begriff der Symmetrie meint die Eigenschaft eines +geometrischen Objektes, dass es bei einer Bewegung auf sich selbst +abgebildet wird. +Das Wort stammt aus dem altgriechischen, wo es {\em Gleichmass} +bedeutet. +Spiegelsymmetrische Objekte zeichnen sich zum Beispiel dadurch aus, +dass Messungen von Strecken die gleichen Werte ergeben wie die Messungen +der entsprechenden gespiegelten Strecken (siehe auch +Abbildung~\ref{buch:lie:bild:castlehoward}, was die Herkunft des +Begriffs verständlich macht. +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/60-gruppen/images/castle.jpeg} +\caption{Das Castle Howard in Yorkshire war in dieser ausgeprägt symmetrischen +Form geplant, wurde dann aber in modifizeirter Form gebaut. +Messungen zwischen Punkten in der rechten Hälfte des Bildes +ergeben die gleichen Werte wie Messungen entsprechenden Strecken +in der linken Hälfte, was den Begriff Symmetrie rechtfertigt. +\label{buch:lie:bild:castlehoward}} +\end{figure} +In der Physik wird dem Begriff der Symmetrie daher auch eine erweiterte +Bedeutung gegeben. +Jede Transformation eines Systems, welche bestimmte Grössen nicht +verändert, wird als Symmetrie bezeichnet. +Die Gesetze der Physik sind typischerweise unabhängig davon, wo man den +den Nullpunkt der Zeit oder das räumlichen Koordinatensystems ansetzt, +eine Transformation des Zeitnullpunktes oder des Ursprungs des +Koordinatensystems ändert daher die Bewegungsgleichungen nicht, sie ist +eine Symmetrie des Systems. + +Umgekehrt kann man fragen, welche Symmetrien ein System hat. +Da sich Symmetrien zusammensetzen und umkehren lassen, kann man in davon +ausgehen, dass die Symmetrietransformationen eine Gruppe bilden. +Besonders interessant ist dies im Falle von Transformationen, die +durch Matrizen beschrieben weren. +Eine unter der Symmetrie erhaltene Eigenschaft definiert so eine +Untergruppe der Gruppe $\operatorname{GL}_n(\mathbb{R})$ der +invertierbaren Matrizen. +Die erhaltenen Eigenschaften definieren eine Menge von Gleichungen, +denen die Elemente der Untergruppe genügen müssen. +Als Lösungsmenge einer Gleichung erhält die Untergruppe damit eine +zusätzliche geometrische Struktur, man nennt sie eine differenzierbare +Mannigfaltigkeit. +Dieser Begriff wird im Abschnitt~\ref{buch:subsection:mannigfaltigkeit} +eingeführt. +Es wird sich zum Beispiel zeigen, dass die Menge der Drehungen der +Ebene mit den Punkten eines Kreises parametrisieren lassen, +die Lösungen der Gleichung $x^2+y^2=1$ sind. + +Eine Lie-Gruppe ist eine Gruppe, die gleichzeitig eine differenzierbare +Mannigfaltigkeit ist. +Die Existenz von geometrischen Konzepten wie Tangentialvektoren +ermöglicht zusätzliche Werkzeuge, mit denen diese Gruppe untersucht +und verstanden werden können. +Ziel dieses Abschnitts ist, die Grundlagen für diese Untersuchung zu +schaffen, die dann im Abschnitt~\ref{buch:section:lie-algebren} +durchgeführt werden soll. + +\subsection{Algebraische Symmetrien +\label{buch:subsection:algebraische-symmetrien}} +Mit Matrizen lassen sich Symmetrien in einem geometrischen Problem +oder in einem physikalischen System beschreiben. +Man denkt dabei gerne zuerst an geometrische Symmetrien wie die +Symmetrie unter Punktspiegelung oder die Spiegelung an der $x_1$-$x_2$-Ebene, +wie sie zum Beispiel durch die Abbildungen +\[ +\mathbb{R}^3\to\mathbb{R}^3 : x\mapsto -x +\qquad\text{oder}\qquad +\mathbb{R}^3\to\mathbb{R}^3 : +\begin{pmatrix}x_1\\x_2\\x_3\end{pmatrix} +\mapsto +\begin{pmatrix}-x_1\\x_2\\x_3\end{pmatrix} +\] +dargestellt werden. +Beide haben zunächst die Eigenschaft, dass Längen und Winkel und damit +das Skalarprodukt erhalten sind. +Diese Eigenschaft allein erlaubt aber noch nicht, die beiden Transformationen +zu unterscheiden. +Die Punktspiegelung zeichnet sich dadurch aus, das alle Geraden und alle +Ebenen durch den Ursprung auf sich selbst abgebildet werden. +Dies funktioniert für die Ebenenspiegelung nicht, dort bleibt nur die +Spiegelungsebene (die $x_1$-$x_2$-Ebene im vorliegenden Fall) und +ihre Normale erhalten. +Die folgenden Beispiele sollen zeigen, wie solche Symmetriedefinitionen +auf algebraische Bedingungen an die Matrixelemente führen. + + +\subsection{Manningfaltigkeiten +\label{buch:subsection:mannigfaltigkeit}} + +\subsection{Der Satz von Noether +\label{buch:subsection:noether}} + + + + + + -- cgit v1.2.1 From 3815d5cc9533eded31b96a8492fc48c6e7ffc90d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 29 Mar 2021 16:24:40 +0200 Subject: new stuff --- buch/chapters/40-eigenwerte/Makefile.inc | 3 + buch/chapters/40-eigenwerte/chapter.tex | 4 +- buch/chapters/40-eigenwerte/spektralradius.tex | 6 +- buch/chapters/40-eigenwerte/spektraltheorie.tex | 581 ++++++++++++++++++++- .../40-eigenwerte/uebungsaufgaben/4004.tex | 72 +++ .../40-eigenwerte/uebungsaufgaben/4005.tex | 151 ++++++ 6 files changed, 810 insertions(+), 7 deletions(-) create mode 100644 buch/chapters/40-eigenwerte/uebungsaufgaben/4004.tex create mode 100644 buch/chapters/40-eigenwerte/uebungsaufgaben/4005.tex (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/Makefile.inc b/buch/chapters/40-eigenwerte/Makefile.inc index b15f476..5f30ab5 100644 --- a/buch/chapters/40-eigenwerte/Makefile.inc +++ b/buch/chapters/40-eigenwerte/Makefile.inc @@ -12,4 +12,7 @@ CHAPTERFILES = $(CHAPTERFILES) \ chapters/40-eigenwerte/spektraltheorie.tex \ chapters/40-eigenwerte/uebungsaufgaben/4001.tex \ chapters/40-eigenwerte/uebungsaufgaben/4002.tex \ + chapters/40-eigenwerte/uebungsaufgaben/4003.tex \ + chapters/40-eigenwerte/uebungsaufgaben/4004.tex \ + chapters/40-eigenwerte/uebungsaufgaben/4005.tex \ chapters/40-eigenwerte/chapter.tex diff --git a/buch/chapters/40-eigenwerte/chapter.tex b/buch/chapters/40-eigenwerte/chapter.tex index e769b38..5f8cb83 100644 --- a/buch/chapters/40-eigenwerte/chapter.tex +++ b/buch/chapters/40-eigenwerte/chapter.tex @@ -34,8 +34,8 @@ Dies wird in Abschnitt~\ref{buch:section:spektraltheorie} beschrieben. \input{chapters/40-eigenwerte/grundlagen.tex} \input{chapters/40-eigenwerte/normalformen.tex} \input{chapters/40-eigenwerte/spektralradius.tex} -\input{chapters/40-eigenwerte/numerisch.tex} \input{chapters/40-eigenwerte/spektraltheorie.tex} +\input{chapters/40-eigenwerte/numerisch.tex} \section*{Übungsaufgaben} \rhead{Übungsaufgaben} @@ -44,5 +44,7 @@ Dies wird in Abschnitt~\ref{buch:section:spektraltheorie} beschrieben. \uebungsaufgabe{4001} \uebungsaufgabe{4002} \uebungsaufgabe{4003} +\uebungsaufgabe{4004} +\uebungsaufgabe{4005} \end{uebungsaufgaben} diff --git a/buch/chapters/40-eigenwerte/spektralradius.tex b/buch/chapters/40-eigenwerte/spektralradius.tex index bdc725f..a36dc33 100644 --- a/buch/chapters/40-eigenwerte/spektralradius.tex +++ b/buch/chapters/40-eigenwerte/spektralradius.tex @@ -3,9 +3,9 @@ % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswi % -\section{Funktionen einer Matrix -\label{buch:section:funktionen-einer-matrix}} -\rhead{Funktionen einer Matrix} +\section{Analytische Funktionen einer Matrix +\label{buch:section:analytische-funktionen-einer-matrix}} +\rhead{Analytische Funktionen einer Matrix} Eine zentrale Motivation in der Entwicklung der Eigenwerttheorie war das Bestreben, Potenzen $A^k$ auch für grosse $k$ effizient zu berechnen. diff --git a/buch/chapters/40-eigenwerte/spektraltheorie.tex b/buch/chapters/40-eigenwerte/spektraltheorie.tex index 4146505..a3f86ba 100644 --- a/buch/chapters/40-eigenwerte/spektraltheorie.tex +++ b/buch/chapters/40-eigenwerte/spektraltheorie.tex @@ -5,7 +5,582 @@ % \section{Spektraltheorie \label{buch:section:spektraltheorie}} -% Matrix-Exponentialfunktion -% Wurzel einer Matrix -% Beliebige Funktion f(A) für normale Matrizen +Aufgabe der Spektraltheorie ist, Bedingungen an eine Matrix $A$ und eine +Funktion $f(z)$ zu finden, unter denen es möglich ist, $f(A)$ auf +konsistente Art und Weise zu definieren. +Weiter müssen Methoden entwickelt werden, mit denen $f(A)$ berechnet +werden kann. +Für ein Polynom $p(z)$ ist $p(A)$ durch einsetzen definiert. +Für Funktionen, die sich nicht durch ein Polynom darstellen lassen, +muss eine Approximation der Funktion durch Polynome verwendet werden. +Sei also $p_n(z)$ eine Folge von Polynomen, die als Approximation der +Funktion $f(z)$ verwendet werden soll. +Das Ziel ist, $f(A)$ als den Grenzwert der Matrixfolge $p_n(A)$ +zu definieren. + +Zunächst ist nicht klar, wie eine solche Folge gewählt werden muss. +Es muss eine Teilmenge von $K\subset\mathbb{C}$ spezifiziert werden, +auf der die Funktionenfolge $p_n(z)$ konvergieren muss, +damit auch die Konvergenz der Matrizenfolge $p_n(A)$ garantiert ist. +Auch die Art der Konvergenz von $p_n(z)$ auf der Menge $K$ ist noch +unklar. +Da der Abstand zweier Matrizen $A$ und $B$ in der Operatornorm +mit der grössten Abweichung $\|(A-B)v\|$ für Einheitsvektoren $v$ +gemessen wird, ist es einigermassen plausibel, dass +die grösse Abweichung zwischen zwei Polynomen $|p(z) - q(z)|$ auf +der Menge $K$ kleine sein muss, wenn $\|p(A)-q(A)\|$ klein +sein soll. +Da die Differenz $p(z)-q(z)$ für beliebige Polynome, die sich nicht +nur um eine Konstante unterscheiden, mit $z$ über alle Grenzen wächst, +muss $K$ beschränkt sein. +Gesucht ist also eine kompakte Menge $K\subset\mathbb{C}$ und eine +Folge $p_n(z)$ von Polynomen, die auf $K$ gleichmässig gegen $f(z)$ +konvergieren. +Die Wahl von $K$ muss sicherstellen, dass für jede gleichmässig +konvergente Folge von Polynomen $p_n(z)$ auch die Matrizenfolge +$p_n(A)$ konvergiert. + +Es wird sich zeigen, dass die Menge $K$ das Spektrum von $A$ ist, +also eine endliche Teilmenge von $\mathbb{C}$. +Jede Funktion kann auf so einer Menge durch Polynome exakt wiedergegeben +werden. +Es gibt insbesondere Folgen von Polynomen, die eingeschränkt +auf das Spektrum gleich sind, also $p_n(z)=p_m(z)$ für alle $z\in K$, +die aber ausserhalb des Spektrums alle verschieden sind. +Als Beispiel kann die Matrix +\[ +N=\begin{pmatrix}0&1\\0&0\end{pmatrix} +\] +herangezogen werden. +Ihr Spektrum ist $\operatorname{Sp}(N)=\{0\}\subset\mathbb{C}$. +Zwei Polynome stimmen genau dann auf $\operatorname{Sp}(N)$ überein, +wenn der konstante Koeffizient gleich ist. +Die Polynome $p(z)=z$ und $q(z)=z^2$ stimmen daher auf dem Spektrum +überein. +Für die Matrizen gilt aber $p(N)=N$ und $q(N)=N^2=0$, die Matrizen +stimmen also nicht überein. +Es braucht also zusätzliche Bedingungen an die Matrix $A$, die +sicherstellen, dass $p(A)=0$ ist, wann immer $p(z)=0$ für +$z\in\operatorname{Sp}(A)$ gilt. + +In diesem Abschnitt sollen diese Fragen untersucht werden. +In Abschnitt~\ref{buch:subsection:approximation-durch-polynome} +wird gezeigt, wie sich Funktionen durch Polynome approximieren +lassen, woraus sich dann Approximationen von $f(A)$ für diagonalisierbare +Matrizen mit reellen Eigenwerten ergeben. + +Der Satz von Stone-Weierstrass, der in +Abschnitt~\ref{buch:subsetion:stone-weierstrass} dargestellt wird, +ist ein sehr allgemeines Approximationsresultat, welches nicht nur +zeigt, dass die Approximation unter sehr natürlichen Voraussetzungen +beliebig genau möglich ist, sondern uns im komplexen Fall auch +weitere Einsicht dafür geben kann, welche Voraussetzungen an eine +komplexe Matrix gestellt werden müssen, damit man damit rechnen kann, +dass die Approximation zu einer konsistenten Definition von $f(A)$ führt. + +% +% Approximation +% +\subsection{Approximation durch Polynome +\label{buch:subsection:approximation-durch-polynome}} +Die der Berechnung von $f(A)$ für eine beleibige stetige Funktion, +die sich nicht als Potenzreihe schreiben lässt, verwendet Approximationen +von Polynomen. +Die numerische Mathematik hat eine grosse Menge von solchen +Approximationsverfahren entwickelt, wovon zwei kurz (ohne Beweise) +vorgestellt werden sollen. + +\subsubsection{Das Legendre-Interpolationspolynom} +Zu vorgegebenen, verschiedenen Zahlen $z_i\in\mathbb{C}$, $0\le i\le n$, +die auch die {\em Stützstellen} genannt werden, +gibt es immer ein Polynom vom Grade $n$, welches in den $z_i$ vorgegebene +Werte $f(z_i)$ annimmt. +Ein solches Polynom lässt sich im Prinzip mit Hilfe eines linearen +Gleichungssystems finden, man kann aber auch direkt eine Lösung +konstruieren. +Dazu bildet man erst die Polynome +\begin{align*} +l(z) &= (z-z_0)(z-z_1)\dots (z-z_n) \qquad\text{und} +\\ +l_i(z) &= (z-z_0)\dots \widehat{(z-z_i)}\dots (z-z_n). +\end{align*} +Darin bedeutet der Hut, dass dieser Term weggelassen werden soll. +Für $z\ne z_i$ ist $l_i(z)=l(z)/(z-z_i)$. +Die Polynome +\[ +k_i(z) += +\frac{l_i(z)}{l_i(z_i)} += +\frac{(z-z_0)\dots \widehat{(z-z_i)}\dots (z-z_n)}{(z_i-z_0)\dots \widehat{(z_i-z_i)}\dots (z_i-z_n)} +\] +haben die Eigenschaft +$k_i(z_j)=\delta_{ij}$. +Damit lässt sich jetzt ein Polynom +\[ +p(z) = \sum_{j=0}^n f(z_j) \frac{l_j(z)}{l_j(z_j)} +\] +vom Grad $n$ konstruieren, welches die Werte +\[ +p(z_i) += +\sum_{j=0}^n f(z_j) \frac{l_j(z_i)}{l_j(z_j)} += +\sum_{j=0}^n f(z_j) \delta_{ij} += +f_(z_i) +\] +annimmt. +Das Polynom $p(z)$ heisst das {\em Legendre-Interpolationspolynom}. + +Zwar lässt sich also für eine endliche Menge von komplexen Zahlen immer +ein Polynom finden, welches vorgeschriebene Wert in allen diesen Zahlen +annimmt, doch ist die Stabilität für grosse $n$ eher beschränkt. + + +\subsubsection{Gleichmassige Approximation mit Bernstein-Polynomen} +Das Legendre-Interpolationspolynom nimmt in den Stützstellen die +verlangten Werte an, aber ausserhalb der Stützstellen ist nicht +garantiert, dass man eine gute Approximation einer Funktion $f(z)$ +erhält. + +Für die Approximation auf einem reellen Interval $[a,b]$ hat +Sergei Natanowitsch Bernstein ein +Dazu werden zuerst die reellen Bernsteinpolynome vom Grad $n$ +durch +\begin{align*} +B_{i,n}(t) = \binom{n}{i} t^i(1-t)^{n-i}. +\end{align*} +definiert. +Als Approximationspolynom für die auf dem Interval +$[0,1]$ definierte, stetige Funktion $f(t)$ kann man dann +\[ +B_n(f)(t) += +\sum_{i=0}^n B_{i,n}(t) f\biggl(\frac{i}{n}\biggr) +\] +verwenden. +Die Polynome $B_n(f)(t)$ konvergieren gleichmässig auf $[0,1]$ +gegen die Funktion $f(t)$. +Über die Konvergenz ausserhalb des reellen Intervalls wird nichts +ausgesagt. +Die Approximation mit Bernstein-Polynomen ist daher nur sinnvoll, +wenn man weiss, dass die Eigenwerte der Matrix reell sind, was im +wesentlichen auf diagonalisierbare Matrizen führt. + +Für ein anderes Interval $[a,b]$ kann man ein Approximationspolynom +erhalten, indem man die affine Transformation +$s\mapsto (s-a)/(b-a)$ +von $[a,b]$ auf $[0,1]$ +verwendet. + +% +% Der Satz von Stone-Weierstrass +% +\subsection{Der Satz von Stone-Weierstrasss +\label{buch:subsetion:stone-weierstrass}} +Der Satz von Stone-Weierstrass behandelt im Gegensatz zu den in +Abschnitt~\ref{buch:subsection:approximation-durch-polynome} +besprochenen Approximationsmethoden nicht nur Funktionen von +reellen Variablen durch Polynome. +Vielmehr kann das Definitionsgebiet irgend eine abgeschlossene +und beschränkte Teilmenge eines reellen oder komplexen Vektorraumes +sein und die Funktionen können Polynome aber auch viel allgemeinere +Funktionen verwendet werden, wie zum Beispiel die Funktionen +$x\mapsto \cos nx$ und $x\mapsto \sin nx$ definiert auf dem +Intervall $[0,2\pi]$. +In diesem Fall liefert der Satz von Stone-Weierstrass die Aussage, +dass sich jede stetige periodische Funktion gleichmässig durch +trigonometrische Polynome approximieren lässt. + +Die Aussage des Satz von Stone-Weierstrass über reelle Funktionen +lässt sich nicht auf komplexe Funktionen erweitern. +Von besonderem Interesse ist jedoch, dass der Beweis des Satz +zeigt, warum solche Aussagen für komplexe Funktionen nicht mehr +zutreffen. +Im Falle der Approximation von komplexen Funktionen $f(z)$ durch Polynome +zwecks Definition von $f(A)$ werden sich daraus Bedingungen an die +Matrix ableiten lassen, die eine konsistente Definition überhaupt +erst ermöglichen werden. + +\subsubsection{Punkte trennen} +Aus den konstanten Funktionen lassen sich durch algebraische +Operationen nur weitere konstante Funktionen erzeugen. +Die konstanten Funktionen sind also nur dann eine genügend +reichhaltige Menge, wenn die Menge $K$ nur einen einzigen Punkt +enthält. +Damit sich Funktionen approximieren lassen, die in zwei Punkten +verschiedene Werte haben, muss es auch unter den zur Approximation +zur Verfügung stehenden Funktionen solche haben, deren Werte sich +in diesen Punkten unterscheiden. +Diese Bedingung wird in der folgenden Definition formalisiert. + +\begin{definition} +Sei $K$ eine beliebige Menge und $A$ eine Menge von Funktionen +$K\to \mathbb{C}$. +Man sagt, $A$ {\em trennt die Punkte von $K$}, wenn es für jedes Paar +\index{Punkte trennen}% +von Punkten $x,y\in K$ eine Funktion $f\in A$ gibt derart, dass +$f(x)\ne f(y)$. +\end{definition} + +Man kann sich die Funktionen $f$, die gemäss dieser Definition die Punkte +von $K$ trennen, als eine Art Koordinaten der Punkte in $K$ vorstellen. +Die Punkte der Teilmenge $K\subset \mathbb{R}^n$ werden zum Beispiel +von den Koordinatenfunktionen $x\mapsto x_i$ getrennt. +Wir schreiben für die $i$-Koordinate daher auch als Funktion $x_i(x)=x_i$. +Zwei verschiedene Punkte $x,y\in K$ unterscheiden sich in mindestens +einer Koordinate. +Für diese Koordinate sind dann die Werte der zugehörigen +Koordinatenfunktion $x_i=x_i(x)\ne x_i(y)=y_i$ verschieden, die +Funktionen $x_1(x)$ bis $x_n(x)$ trennen also die Punkte. + +\begin{beispiel} +Wir betrachten einen Kreis in der Ebene, also die Menge +\[ +S^1 += +\{(x_1,x_2)\;|\; x_1^2 + x_2^2=1\} +\] +$S^1$ ist eine abgeschlossene und beschränkte Menge in $\mathbb{R}^2$. +Die Funktion $x\mapsto x_1$ trennt die Punkte nicht, denn zu jedem +Punkt $(x_1,x_2)\in S^2$ gibt es den an der ersten Achse +gespiegelten Punkt $\sigma(x)=(x_1,-x_2)$, dessen erste Koordinate +den gleichen Wert hat. +Ebenso trennt die Koordinatenfunktion $x\mapsto x_2$ die Punkte nicht. +Die Menge $A=\{ x_1(x), x_2(x)\}$ bestehend aus den beiden +Koordinatenfunktionen trennt dagegen die Punkte von $S^1$, da die Punkte +sich immer in mindestens einem Punkt unterscheiden. + +Man könnte auch versuchen, den Kreis in Polarkoordinaten zu beschreiben. +Die Funktion $\varphi(x)$, die jedem Punkt $x\in S^1$ den Polarwinkel +zuordnet, trennt sicher die Punkte des Kreises. +Zwei verschiedene Punkte auf dem Kreis haben verschieden Polarwinkel. +Die Menge $\{\varphi\}$ trennt also die Punkte von $S^1$. +Allerdings ist die Funktion nicht stetig, was zwar der Definition +nicht widerspricht aber ein Hindernis für spätere Anwendungen ist. +\end{beispiel} + + +\subsubsection{Der Satz von Stone-Weierstrass für reelle Funktionen} +Die Beispiele von Abschnitt~\ref{buch:subsection:approximation-durch-polynome} +haben bezeigt, dass sich reellwertige Funktionen einer reellen +Variable durch Polynome beliebig genau approximieren lassen. +Es wurde sogar eine Methode vorgestellt, die eine auf einem Intervall +gleichmässig konvergente Polynomefolge produziert. +Die Variable $x\in[a,b]$ trennt natürlich die Punkte, die Algebra der +Polynome in der Variablen $x$ enthält also sicher Funktionen, die in +verschiedenen Punkten des Intervalls auch verschiedene Werte annehmen. +Nicht ganz so selbstverständlich ist aber, dass sich daraus bereits +ergibt, dass jede beliebige Funktion sich als Polynome in $x$ +approximieren lässt. +Dies ist der Inhalt des folgenden Satzes von Stone-Weierstrass. + +\begin{satz}[Stone-Weierstrass] +\label{buch:satz:stone-weierstrass} +Enthält eine $\mathbb{R}$-Algebra $A$ von stetigen, rellen Funktionen +auf einer kompakten Menge $K$ die konstanten Funktionen und trennt sie +Punkte, d.~h.~für zwei verschiedene Punkte $x,y\in K$ gibt es +immer eine Funktion $f\in A$ mit $f(x)\ne f(y)$, dann ist jede stetige, +reelle Funktion auf $K$ gleichmässig approximierbar durch Funktionen +in $A$. +\end{satz} + +\begin{proof}[Beweis] +XXX TODO +\end{proof} + +Der entscheidende Schritt des Beweises ist, dass man die Betragsfunktion +konstruieren kann. +Daraus leiten sich dann alle folgenden Konstruktionen ab. + +\subsubsection{Anwendung auf symmetrische und hermitesche Matrizen} +Für symmetrische und hermitesche Matrizen $A$ ist bekannt, dass die +Eigenwerte reell sind, also das Spektrum $\operatorname{A}\subset\mathbb{R}$ +ist. +Für eine Funktion $\mathbb{R}\to \mathbb{R}$ lässt sich nach dem +Satz~\ref{buch:satz:stone-weierstrass} immer eine Folge $p_n$ von +approximierenden Polynomen in $x$ finden, die auf $\operatorname{Sp}(A)$ +gleichmässig konvergiert. +Die Matrix $f(A)$ kann dann definiert werden also der Grenzwert +\[ +f(A) = \lim_{n\to\infty} p_n(A). +\] +Da diese Matrizen auch diagonalisierbar sind, kann man eine Basis +aus Eigenvektoren verwenden. +Die Wirkung von $p_n(A)$ auf einem Eigenvektor $v$ zum Eigenwert $\lambda$ +ist +\[ +p_n(A)v += +(a_kA^k + a_{k-1}A^{k-1}+\dots +a_2A^2+a_1A+a_0I)v += +(a_k\lambda^k + a_{k-1}\lambda^{k-1}+\dots + a_2\lambda^2 + a_1\lambda + a_0)v += +p_n(\lambda)v. +\] +Im Grenzwert wirkt $f(A)$ daher durch Multiplikation eines Eigenvektors +mit $f(\lambda)$, die Matrix $f(A)$ hat in der genannten Basis die +Diagonalform +\[ +A=\begin{pmatrix} +\lambda_1& & & \\ + &\lambda_2& & \\ + & &\ddots& \\ + & & &\lambda_n +\end{pmatrix} +\qquad\Rightarrow\qquad +f(A)=\begin{pmatrix} +f(\lambda_1)& & & \\ + &f(\lambda_2)& & \\ + & &\ddots& \\ + & & &f(\lambda_n) +\end{pmatrix}. +\] + +\begin{satz} +\label{buch:eigenwerte:satz:spektralsatz} +Ist $A$ symmetrische oder selbstadjungiert Matrix und $f$ eine Funktion +auf dem Spektrum $\operatorname{Sp}(A)$ von $A$. +Dann gibt es genau eine Matrix $f(A)$, die Grenzwert jeder beliebigen +Folge $p_n(A)$ für Polynomfolgen, die $\operatorname{Sp}(A)$ gleichmässig +gegen $f$ konvergieren. +\end{satz} + +\subsubsection{Der Satz von Stone-Weierstrass für komplexe Funktionen} +Der Satz~\ref{buch:satz:stone-weierstrass} von Stone-Weierstrass für +reelle Funktionen gilt nicht für komplexe Funktionen. +Der Grund ist, dass im Beweis benötigt wird, dass man den Betrag +einer Funktion approximieren können muss. +Dies geschah, indem zunächst eine Polynom-Approximation für die +Quadratwurzel konstruiert wurde, die dann auf das Quadrat einer +Funktion angewendet wurde. +Der Betrag einer komplexen Zahl $z$ ist aber nicht allein aus $z$ +berechenbar, man braucht in irgend einer Form Zugang zu Real- +und Imaginärteil. +Zum Beispiel kann man Real- und Imaginärteil als +$\Re z= \frac12(z+\overline{z})$ und $\Im z = \frac12(z-\overline{z})$ +bestimmen. +Kenntnis von Real- und Imaginärteil ist als gleichbedeutend mit +der Kenntnis der komplex Konjugierten $\overline{z}$. +Der Betrag lässt sich daraus als $|z|^2 = z\overline{z}$ finden. +Beide Beispiele zeigen, dass man den im Beweis benötigten Betrag +nur dann bestimmen kann, wenn mit jeder Funktion aus $A$ auch die +komplex konjugierte Funktion zur Verfügung steht. + +\begin{satz}[Stone-Weierstrass] +Enthält eine $\mathbb{C}$-Algebra $A$ von stetigen, komplexwertigen +Funktionen auf einer kompakten Menge $K$ die konstanten Funktionen, +trennt sie Punkte und ist ausserdem mit jeder Funktion $f\in A$ auch +die komplex konjugiert Funktion $\overline{f}\in A$, +dann lässt sich jede stetige, komplexwertige Funktion +auf $K$ gleichmässig durch Funktionen aus $A$ approximieren. +\end{satz} + +Mit Hilfe der konjugiert komplexen Funktion lässt sich immer eine +Approximation für die Betragsfunktion finden, so dass sich der +Beweis des reellen Satzes von Stone-Weierstrass übertragen lässt. + +% +% Normale Matrizen +% +\subsection{Normale Matrizen +\label{buch:subsection:normale-matrizen}} +Aus dem Satz von Stone-Weierstrass für komplexe Matrizen kann man +jetzt einen Spektralsätze für eine etwas grössere Klasse von Matrizen +ableiten, als im Satz~\ref{buch:eigenwerte:satz:spektralsatz} +möglich war. +Der Satz besagt, dass für eine beliebige Funktion $f$ auf dem Spektrum +$\operatorname{Sp}(A)$ eine Folge von auf $\operatorname{Sp}(A)$ +gleichmässig konvergenten, approximierenden Polynomen +$p_n(z,\overline{z})$ gefunden werden kann. +Doch wie soll jetzt aus dieser Polynomfolge ein Kandidat von $f(A)$ +gefunden werden? + +Zunächst stellt sich die Frage, was für die Variable $\overline{z}$ +eingesetzt werden soll. +$1\times 1$-Matrizen sind notwendigerweise diagonal, also muss +man in diesem Fall die Matrix $\overline{A}$ für die Variable +$\overline{z}$ eingesetzt werden. +Dies erklärt aber noch nicht, wie für $n\times n$-Matrizen +vorzugehen ist, wenn $n>1$ ist. + +Die Notwendigkeit, die Variable $\overline{z}$ hinzuzunehmen +ergab sich aus der Anforderung, dass der Betrag aus $|z|^2=z\overline{z}$ +konstruiert werden können muss. +Insbesondere muss beim Einsetzen eine Matrix entstehen, die nur +positive Eigenwerte hat. +Für eine beliebige komplexe $n\times n$-Matrix $A$ ist aber +$A\overline{A}$ nicht notwendigerweise positiv, wie das Beispiel +\[ +A += +\begin{pmatrix}0&i\\i&0\end{pmatrix} +\qquad +\Rightarrow +\qquad +A\overline{A} += +\begin{pmatrix}0&i\\-i&0\end{pmatrix} +\begin{pmatrix}0&-i\\i&0\end{pmatrix} += +\begin{pmatrix} +-1&0\\ + 0&-1 +\end{pmatrix} += +-I +\] +zeigt. +Eine positive Matrix entsteht dagegen immer, wenn man statt +$A$ die Adjungierte $A^*=\overline{A}^t$ verwendet. + +Die Substitution von $A$ für $z$ und $A^*$ für $\overline{z}$ +in einem Polynom $p(z,\overline{z})$ ist nicht unbedingt eindeutig. +Schon das Polynom $p(z,\overline{z})=z\overline{z}$ kann man auch +als $\overline{z}z$ schreiben. +Damit die Substition eindeutig wird, muss man also fordern, dass +$AA^* = A^*A$ ist. + +\begin{definition} +Eine Matrix $A\in M_n(\mathbb{C})$ heisst {\em normal}, wenn $AA^*=A^*A$ gilt. +\end{definition} + +\subsubsection{Beispiele normaler Matrizen} + +\begin{enumerate} +\item +Hermitesche und Antihermitesche Matrizen sind normal, denn solche +Matrizen erfüllen $A^*=\pm A$ und damit +\( +AA^* = \pm A^2 = A^*A. +\) +\item +Symmetrische und antisymmetrische Matrizen sind normal, +denn aus $A=A^t$ folgt $A^*=\overline{A}^t$ und damit +\begin{align*} +AA^* &= A\overline{A}^t = +\\ +A^*A &= +\end{align*} +\item +Unitäre Matrizen $U$ sind normal, das $UU^*=I=U^*U$ gilt. +\item +Orthogonale Matrizen sind normal wegen $O(n) = U(n) \cap M_n(\mathbb{R})$. +\end{enumerate} + +Jede Matrix lässt sich durch Wahl einer geeigneten Basis in Jordansche +Normalform bringen. +Allerdings sind Jordan-Blöcke keine normalen Matrizen, wie der folgende +Satz zeigt. + +\begin{satz} +Eine Dreiecksmatrix ist genau dann normal, wenn sie diagonal ist. +\end{satz} + +\begin{proof}[Beweis] +Sei $A$ eine obere Dreiecksmatrix, das Argument für eine untere Dreiecksmatrix +funktioniert gleich. +Wir berechnen ein Diagonalelement für beide Produkte $AA^*$ und $A^*A$. +Dazu brauchen wir die Matrixelemente von $A$ und $A^*$. +Bezeichnen wir die Matrixelemente von $A$ mit $a_{ij}$, dann hat $A^*$ +die Matrixelemente $(A^*)_{ij}=\overline{a}_{ji}$. +Damit kann man die Diagonalelemente der Produkte als +\begin{align*} +(AA^*)_{ii} +&= +\sum_{j=1}^n a_{ij}\overline{a}_{ij} += +\sum_{j=i}^n |a_{ij}|^2 +\\ +(A^*A)_{ii} +&= +\sum_{j=1}^n \overline{a}_{ji}a_{ji} += +\sum_{j=1}^i |a_{ji}|^2 +\end{align*} +ausrechnen. +Der obere Ausdruck ist die quadrierte Länge der Zeile $i$ der Matrix $A$, +der untere ist die quadrierte Länge der Spalte $i$. +Da die Matrix eine obere Dreiecksmatrix ist, hat die erste Spalte höchstens +ein einziges von $0$ verschiedenes Element. +Daher kann auch die erste Zeile höchstens dieses eine Elemente haben. +Die Matrix hat daher Blockstruktur mit einem $1\times 1$-Block in der +linken obere Ecke und einem $n-1$-dimensionalen Block für den Rest. +Durch Wiederholen des Arguments für den $(n-1)\times (n-1)$-Block +kann man so schrittweise schliessen, dass die Matrix $A$ diagonal sein muss. +\end{proof} + + +\begin{satz} +Sind $A$ und $B$ normale Matrizen und $AB^*=B^*A$, dann sind auch $A+B$ +und $AB$ normal. +\end{satz} + +\begin{proof}[Beweis] +Zunächst folgt aus $AB^*=B^*A$ auch +$A^*B = (B^*A)^* = (AB^*)^* = BA^*$. +Der Beweis erfolgt durch Nachrechnen: +\begin{align*} +(A+B)(A+B)^* +&= +AA^* + AB^* + BA^*+BB^* +\\ +(A+B)^*(A+B) +&= +A^*A + A^*B + B^*A + B^*B +\end{align*} +Die ersten und letzten Terme auf der rechten Seite stimmen überein, weil +$A$ und $B$ normal sind. +Die gemischten Terme stimmen überein wegen der Vertauschbarkeit von +$A$ und $B^*$. + +Für das Produkt rechnet man +\begin{align*} +(AB)(AB)^* +&= ABB^*A^* = AB^*BA^* += B^*AA^*B += +B^*A^*AB += +(AB)^*(AB), +\end{align*} +was zeigt, dass auch $AB$ normal ist. +\end{proof} + +\subsubsection{Äquivalente Bedingungen} +Es gibt eine grosse Zahl äquivalenter Eigenschaften für normale Matrizen. +Die folgenden Eigenschaften sind äquivalent: +\begin{enumerate} +\item +Die Matrix $A$ ist mit einer unitären Matrix diagonalisierbar +\item +Es gibt eine orthonormale Basis von Eigenvektoren von $A$ für $\mathbb{C}^n$ +\item +Für jeden Vektor $x\in\mathbb{C}^n$ gilt $\|Ax\|=\|A^*x\|$ +\item +Die Forbenius-Norm der Matrix $A$ kann mit den Eigenwerten $\lambda_i$ +von $A$ berechnet werden: +$\operatorname{Spur}(A^*A) = \sum_{i=1}^n |\lambda_i|^2$ +\item +Der hermitesche Teil $\frac12(A+A^*)$ und der antihermitesche Teil +$\frac12(A-A^*)$ von $A$ vertauschen. +\item +$A^*$ ist ein Polynom vom Grad $n-1$ in $A$. +\item +Es gibt eine unitäre Matrix $U$ derart, dass $A^*=AU$ +\item +Es gibt eine Polarzerlegugn $A=UP$ mit einer unitären Matrix $U$ und +einer postiv semidefiniten Matrix $P$, die untereinander vertauschen. +\item +Es gibt eine Matrix $N$ mit verschiedenen Eigenwerten, mit denen $A$ +vertauscht. +\item +Wenn $A$ die (absteigend geordneten) singulärwerte $\sigma_i$ und +die absteigend geordneten Eigenwerte $\lambda_i$ hat, +dann it $\sigma_i=|\lambda_i|$. +\end{enumerate} + + + diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4004.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4004.tex new file mode 100644 index 0000000..5940b46 --- /dev/null +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4004.tex @@ -0,0 +1,72 @@ +Berechnen Sie $\sin At$ für die Matrix +\[ +A=\begin{pmatrix} +\omega& 1 \\ + 0 &\omega +\end{pmatrix}. +\] +Kontrollieren Sie Ihr Resultat, indem Sie den Fall $\omega = 0$ gesondert +ausrechnen. +\begin{hinweis} +Schreiben Sie $A=\omega I + N$ mit einer nilpotenten Matrix. +\end{hinweis} + +\begin{loesung} +Man muss $At$ in die Potenzreihe +\[ +\sin z = z - \frac{z^3}{3!} + \frac{z^5}{5!} - \frac{z^7}{7!} + \dots +\] +für die Sinus-Funktion einsetzen. +Mit der Schreibweise $A=\omega I + N$, wobei $N^2=0$ können die Potenzen etwas +leichter berechnet werden: +\begin{align*} +A^0 &= I +\\ +A^1 &= \omega I + N +\\ +A^2 &= \omega^2 I + 2\omega N +\\ +A^3 &= \omega^3 I + 3\omega^2 N +\\ +A^4 &= \omega^4 I + 4\omega^3 N +\\ +&\phantom{a}\vdots +\\ +A^k &= \omega^k I + k\omega^{k-1} N +\end{align*} +Damit kann man jetzt $\sin At$ berechnen: +\begin{align} +\sin At +&= +At - \frac{A^3t^3}{3!} + \frac{A^5t^5}{5!} - \frac{A^7t^7}{7!} +\dots +\notag +\\ +&= +\biggl( +\omega t - \frac{\omega^3t^3}{3!} + \frac{\omega^5t^5}{5!} - \frac{\omega^7t^7}{7!} ++\dots +\biggr)I ++ +\biggl( +t -\frac{3\omega^2t^3}{3!} + \frac{5\omega^4t^5}{5!} - \frac{7\omega^6t^7}{7!}+\dots +\biggr)N +\notag +\\ +&= +I\sin\omega t ++tN\biggl(1-\frac{\omega^2t^2}{2!} +\frac{\omega^4t^4}{4!} +- \frac{\omega^6t^6}{6!} ++\dots\biggr) +\notag +\\ +&=I\sin\omega t + tN\cos\omega t. +\label{4004:resultat} +\end{align} +Im Fall $\omega=0$ ist $A=N$ und $A^2=0$, so dass +\[ +\sin At = tN, +\] +dies stimmt mit \eqref{4004:resultat} für $\omega=0$ überein, da +$\cos\omega t = \cos 0=1$ in diesem Fall. +\end{loesung} diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4005.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4005.tex new file mode 100644 index 0000000..ec76c34 --- /dev/null +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4005.tex @@ -0,0 +1,151 @@ +Rechnen Sie nach, dass die Matrix +\[ +A += +\begin{pmatrix} +2&1&0\\ +0&2&1\\ +1&0&2 +\end{pmatrix} +\] +normal ist. +\begin{teilaufgaben} +\item +Berechnen Sie die Eigenwerte, indem Sie das charakteristische Polynom +von $A$ und seine Nullstellen bestimmen. +\item +Das Polynom +\[ +p(z,\overline{z}) += +\frac{(3-\sqrt{3})z\overline{z}-9(1-\sqrt{3})}{6} +\] +hat die Eigenschaft, dass +\begin{align*} +p(\lambda,\lambda) &= |\lambda| +\end{align*} +für alle drei Eigenwerte von $A$. +Verwenden Sie dieses Polynom, um $B=|A|$ zu berechen. +\item +Überprüfen Sie Ihr Resultat, indem Sie mit einem Computeralgebra-Programm +die Eigenwerte von $B$ bestimmen. +\end{teilaufgaben} + +\begin{loesung} +Die Matrix $A$ ist von der Form $2I+O$ mit $O\in\operatorname{SO}(3)$, +für solche Matrizen wurde gezeigt, dass sie normal sind. +Man kann aber auch direkt nachrechnen: +\begin{align*} +AA^t +&= +\begin{pmatrix} +2&1&0\\ +0&2&1\\ +1&0&2 +\end{pmatrix} +\begin{pmatrix} +2&0&1\\ +1&2&0\\ +0&1&2 +\end{pmatrix} += +\begin{pmatrix} +5&2&2\\ +2&5&2\\ +2&2&5 +\end{pmatrix} +\\ +A^tA +&= +\begin{pmatrix} +2&0&1\\ +1&2&0\\ +0&1&2 +\end{pmatrix} +\begin{pmatrix} +2&1&0\\ +0&2&1\\ +1&0&2 +\end{pmatrix} += +\begin{pmatrix} +5&2&2\\ +2&5&2\\ +2&2&5 +\end{pmatrix} +\end{align*} +Es gilt also $AA^t=A^tA$, die Matrix ist also normal. +\begin{teilaufgaben} +\item Das charakteristische Polynom ist +\begin{align} +\chi_A(\lambda) +&=\left| +\begin{matrix} +2-\lambda & 1 & 0  \\ + 0 & 2-\lambda & 1 \\ + 1 & 0 & 2-\lambda +\end{matrix} +\right| += +(2-\lambda)^3+1 +\label{4005:charpoly} +\\ +&=-\lambda^3 -6\lambda^2 + 12\lambda +9. +\notag +\end{align} +Mit einem Taschenrechner kann man die Nullstellen finden, +aber man kann das auch die Form \eqref{4005:charpoly} +des charakteristischen Polynoms direkt faktorisieren: +\begin{align*} +\chi_A(\lambda) +&= +(2-\lambda)^3+1 +\\ +&= +((2-\lambda)+1) +((2-\lambda)^2 -(2-\lambda)+1) +\\ +&= +(3-\lambda) +(\lambda^2-3\lambda +4-2+\lambda +1) +\\ +&= +(3-\lambda) +(\lambda^2-2\lambda +3) +\end{align*} +Daraus kann man bereits einen Eigenwert $\lambda=3$ ablesen, +die weiteren Eigenwerte sind die Nullstellen des zweiten Faktors, die +man mit der Lösungsformel für quadratische Gleichungen finden kann: +\begin{align*} +\lambda_{\pm} +&= +\frac{3\pm\sqrt{9-12}}{2} += +\frac{3}{2} \pm\frac{\sqrt{-3}}{2} += +\frac{3}{2} \pm i\frac{\sqrt{3}}{2} +\end{align*} +\item +Wir müssen $z=A$ und $\overline{z}=A^t$ im Polynom $p(z,\overline{z})$ +substituieren und erhalten +\begin{align*} +B +&= +\frac{3-\sqrt{3}}6 \begin{pmatrix}5&2&2\\2&5&2\\2&2&5\end{pmatrix} ++\frac{\sqrt{3}-1}{2}I +\\ +&= +\begin{pmatrix} + 2.1547005& 0.42264973& 0.42264973 \\ + 0.4226497& 2.15470053& 0.42264973 \\ + 0.4226497& 0.42264973& 2.15470053 +\end{pmatrix} +\end{align*} +\item +Tatsächlich gibt die Berechnung der Eigenwerte +den einfachen Eigenwert $\mu_0=3=|\lambda_0|$ +und +den doppelten Eigenwert $\mu_{\pm} = \sqrt{3}=1.7320508=|\lambda_{\pm}|$. +\qedhere +\end{teilaufgaben} +\end{loesung} -- cgit v1.2.1 From dfcaa8ec3257a82bb77920524c929419ed2edb56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 30 Mar 2021 07:55:07 +0200 Subject: =?UTF-8?q?Tippfehler=20korrigiert=20(mit=20Dank=20f=C3=BCr=20den?= =?UTF-8?q?=20Hinweis=20an=20L.=20Zogg)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../30-endlichekoerper/uebungsaufgaben/3003.tex | 2 +- .../30-endlichekoerper/uebungsaufgaben/3004.tex | 30 +++++++++++----------- 2 files changed, 16 insertions(+), 16 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3003.tex b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3003.tex index 8a83256..5dea881 100644 --- a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3003.tex +++ b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3003.tex @@ -46,7 +46,7 @@ Q(2)Q(1)Q(3)Q(4) \begin{pmatrix} 4&-17\\ -11&47 \end{pmatrix}. \end{align*} Daraus kann man ablesen, dass $s=4$ und $t=-17$, tatsächlich ist -$4\cdot 47-47\cdot 11=188-187=1$. +$4\cdot 47-17\cdot 11=188-187=1$. Wir schliessen daraus, dass $-17=30\in\mathbb{F}_{47}$ die multiplikative Inverse von $b=11$ ist. Die Rechnung $11\cdot 30 = 330 = 7\cdot 47 + 1$ zeigt, dass dies diff --git a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3004.tex b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3004.tex index 046ac94..deb15dc 100644 --- a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3004.tex +++ b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3004.tex @@ -65,19 +65,19 @@ Die Gauss-Tableaux sind \begin{align*} \begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|>{$}c<{$}|} \hline - 1 & 1 & 0 & 0 & 1\\ - 0 & 1 & 1 & 1 & 0\\ - 1 & 1 & 1 & 1 & 0\\ - 0 & 1 & 1 & 0 & 1\\ + 1 & 1 & 0 & 0 & 0\\ + 0 & 1 & 1 & 1 & 1\\ + 1 & 1 & 1 & 1 & 1\\ + 0 & 1 & 1 & 0 & 0\\ \hline \end{tabular} &\to \begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|>{$}c<{$}|} \hline - 1 & 1 & 0 & 0 & 1\\ - 0 & 1 & 1 & 1 & 0\\ + 1 & 1 & 0 & 0 & 0\\ + 0 & 1 & 1 & 1 & 1\\ 0 & 0 & 1 & 1 & 1\\ - 0 & 1 & 1 & 0 & 1\\ + 0 & 1 & 1 & 0 & 0\\ \hline \end{tabular} %\\ @@ -85,8 +85,8 @@ Die Gauss-Tableaux sind \to \begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|>{$}c<{$}|} \hline - 1 & 1 & 0 & 0 & 1\\ - 0 & 1 & 1 & 1 & 0\\ + 1 & 1 & 0 & 0 & 0\\ + 0 & 1 & 1 & 1 & 1\\ 0 & 0 & 1 & 1 & 1\\ 0 & 0 & 0 & 1 & 1\\ \hline @@ -95,8 +95,8 @@ Die Gauss-Tableaux sind \to \begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|>{$}c<{$}|} \hline - 1 & 1 & 0 & 0 & 1\\ - 0 & 1 & 1 & 0 & 1\\ + 1 & 1 & 0 & 0 & 0\\ + 0 & 1 & 1 & 0 & 0\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 1 & 1\\ \hline @@ -106,8 +106,8 @@ Die Gauss-Tableaux sind \to \begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|>{$}c<{$}|} \hline - 1 & 1 & 0 & 0 & 1\\ - 0 & 1 & 0 & 0 & 1\\ + 1 & 1 & 0 & 0 & 0\\ + 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 1 & 1\\ \hline @@ -118,7 +118,7 @@ Die Gauss-Tableaux sind \begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|>{$}c<{$}|} \hline 1 & 0 & 0 & 0 & 0\\ - 0 & 1 & 0 & 0 & 1\\ + 0 & 1 & 0 & 0 & 0\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 1 & 1\\ \hline @@ -128,7 +128,7 @@ In der ersten Zeile stehen die Schritt der Vorwärtsreduktion, in der zweiten die Schritte des Rückwärtseinsetzens. Als Lösung liest man ab \[ -x=\begin{pmatrix}0\\1\\0\\1 \end{pmatrix}, +x=\begin{pmatrix}0\\0\\0\\1 \end{pmatrix}, \] die Korrektheit kann man leicht durch Einsetzen überprüfen. \item -- cgit v1.2.1 From f62357e61d1a1cb647bc5e208946ac5be018bd85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 1 Apr 2021 13:33:00 +0200 Subject: add missing files --- buch/chapters/40-eigenwerte/grundlagen.tex | 192 ++++++++++++++++++ buch/chapters/40-eigenwerte/images/Makefile | 23 ++- buch/chapters/40-eigenwerte/images/dimjk.pdf | Bin 0 -> 23762 bytes buch/chapters/40-eigenwerte/images/dimjk.tex | 78 ++++++++ buch/chapters/40-eigenwerte/images/jknilp.pdf | Bin 0 -> 23241 bytes buch/chapters/40-eigenwerte/images/jknilp.tex | 181 +++++++++++++++++ buch/chapters/40-eigenwerte/images/normalform.pdf | Bin 0 -> 18132 bytes buch/chapters/40-eigenwerte/images/normalform.tex | 214 +++++++++++++++++++++ buch/chapters/40-eigenwerte/images/wa.m | 80 ++++++++ buch/chapters/40-eigenwerte/images/wurzel.pdf | Bin 0 -> 19221 bytes buch/chapters/40-eigenwerte/images/wurzel.tex | 94 +++++++++ .../chapters/40-eigenwerte/images/wurzelapprox.pdf | Bin 0 -> 33171 bytes .../chapters/40-eigenwerte/images/wurzelapprox.tex | 107 +++++++++++ buch/chapters/40-eigenwerte/spektraltheorie.tex | 213 +++++++++++++++++++- .../40-eigenwerte/uebungsaufgaben/4001.tex | 12 +- .../40-eigenwerte/uebungsaufgaben/4003.tex | 30 +-- buch/chapters/60-gruppen/lie-algebren.tex | 2 +- 17 files changed, 1195 insertions(+), 31 deletions(-) create mode 100644 buch/chapters/40-eigenwerte/images/dimjk.pdf create mode 100644 buch/chapters/40-eigenwerte/images/dimjk.tex create mode 100644 buch/chapters/40-eigenwerte/images/jknilp.pdf create mode 100644 buch/chapters/40-eigenwerte/images/jknilp.tex create mode 100644 buch/chapters/40-eigenwerte/images/normalform.pdf create mode 100644 buch/chapters/40-eigenwerte/images/normalform.tex create mode 100644 buch/chapters/40-eigenwerte/images/wa.m create mode 100644 buch/chapters/40-eigenwerte/images/wurzel.pdf create mode 100644 buch/chapters/40-eigenwerte/images/wurzel.tex create mode 100644 buch/chapters/40-eigenwerte/images/wurzelapprox.pdf create mode 100644 buch/chapters/40-eigenwerte/images/wurzelapprox.tex (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/grundlagen.tex b/buch/chapters/40-eigenwerte/grundlagen.tex index ffc452b..69618a9 100644 --- a/buch/chapters/40-eigenwerte/grundlagen.tex +++ b/buch/chapters/40-eigenwerte/grundlagen.tex @@ -213,6 +213,24 @@ Somit können sich $\mathcal{K}^i(A)$ und $\mathcal{J}^i(A)$ für $i>n$ nicht mehr ändern. \end{proof} +\begin{figure} +\centering +\includegraphics{chapters/40-eigenwerte/images/dimjk.pdf} +\caption{Entwicklung der Dimension von $\dim\mathcal{K}^k(A)$ (grün) +und $\dim\mathcal{J}^k(A)$ (orange) in Abhängigkeit vom Exponenten $k$. +Für $k\ge l$ ändern sich die Dimensionen nicht mehr, $A$ eingeschränkt +auf $\mathcal{J}^l(A)=\mathcal{J}(A)$ ist injektiv. +\label{buch:eigenwerte:fig:dimjk}} +\end{figure} + +Abbildung~\ref{buch:eigenwerte:fig:dimjk} zeigt die Abhängigkeit der +Dimensionen $\dim\mathcal{K}^k(A)$ und $\dim\mathcal{J}^k(A)$ von $k$. +Die Dimension $\dim\mathcal{J}^k(A)$ nimmt ab bis zu $k=l$, danach ändert +sie sich nicht mehr und die Einschränkung von $A$ auf $\mathcal{J}^l(A)$ +ist injektiv. +Die Dimension $\dim\mathcal{K}^k(A)$ nimmt zu bis zu $k=l$, danach +ändert sie sich nicht mehr. + \begin{definition} \label{buch:eigenwerte:def:KundJ} Die gemäss Satz~\ref{buch:eigenwerte:satz:ketten} identischen Unterräume @@ -228,6 +246,7 @@ $\mathcal{J}^i(A)$ für $i\ge k$ werden mit bezeichnet. \end{definition} + % % Inveriante Unterräume % @@ -399,6 +418,7 @@ Mit vollständiger Induktion folgt, dass $a_{ij}^s=0$ für $i+s>j$. Insbesondere ist $A^n=0$, die Matrix $A$ ist nilpotent. \end{beispiel} + Man kann die Konstruktion der Unterräume $\mathcal{K}^i(A)$ weiter dazu verwenden, eine Basis zu finden, in der eine nilpotente Matrix eine besonders einfach Form erhält. @@ -487,6 +507,178 @@ Nach Satz~\ref{buch:eigenwerte:satz:allgnilpotent} kann man in $\mathcal{K}(A)$ eine Basis so wählen, dass die Matrix die Blockform \eqref{buch:eigenwerte:eqn:allgnilpotent} erhält. + + +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/40-eigenwerte/images/jknilp.pdf} +\caption{Entwicklung der Dimensionen von Kern und Bild von $A^k$ in +Abhängigkeit von $k$ +\label{buch:eigenwte:fig:jknilp}} +\end{figure} + +\begin{beispiel} +In der Abbildung~\ref{buch:eigenwte:fig:jknilp} sind die Dimensionen +von Kern und Bild der Matrix +\[ +\setcounter{MaxMatrixCols}{12} +A=\begin{pmatrix} +0& & & & & & & & & & & \\ + &0& & & & & & & & & & \\ + & &0& & & & & & & & & \\ + & & &0& & & & & & & & \\ + & & & &0&1& & & & & & \\ + & & & & &0& & & & & & \\ + & & & & & &0&1& & & & \\ + & & & & & & &0&1& & & \\ + & & & & & & & &0&1& & \\ + & & & & & & & & &0&1& \\ + & & & & & & & & & &0& +\end{pmatrix} +\] +dargestellt. +Die Matrix $A^k$ ist in den kleinen Quadraten am unteren Rand der Matrix +symbolisch dargestellt. +Grüne Spalten bestehen aus lauter Nullen, die zugehörigen +Standardbasisvektoren werden von diesem $A^k$ auf $0$ abgebildet. +Die orangen Felder enthalten Einsen, die entsprechenden Standardbasisvektoren +bilden daher eine Basis des Bildes von $A^k$. +\end{beispiel} + +% +% Basis für die Jordan-Normalform einer nilpotenten Matrix +% +\subsection{Basis für die Normalform einer nilpotenten Matrix bestimmen +\label{buch:subsection:normalform-einer-nilpotenten-matrix}} +Die Zerlegung in die invarianten Unterräume $\mathcal{J}^k(f)$ und +$\mathcal{K}^k(f)$ ermöglichen, eine Basis zu finden, in der die +Matrix von $f$ die Blockform \eqref{buch:eigenwerte:eqn:allgnilpotent} +hat. +In diesem Abschnitt soll die Konstruktion einer solchen Basis +etwas ausführlicher beschrieben werden. + +\begin{figure} +\centering +\includegraphics{chapters/40-eigenwerte/images/normalform.pdf} +\caption{Konstruktion der Basis für die Jordansche Normalform einer +nilpotenten Matrix. +Die Vektoren werden in der Reihenfolge von rechts nach links in die +Matrix gefüllt. +\label{buch:eigenwerte:fig:normalform}} +\end{figure} + +Abbildung~\ref{buch:eigenwerte:fig:normalform} illustriert den Prozess +an einer nilpotenten Matrix $A$ mit $A^3=0$ +Die vertikalen Rechtecke im linken Teil der Abbildung symbolisieren +die Unterräume $\mathcal{K}^k(A)$. +Es ist bekannt, dass $\mathcal{K}^k(A) \subset \mathcal{K}^{k+1}(A)$ ist, +die Einbettung wird in der Abbildung durch graue Rechtecke dargestellt. +Es sei wieder $l$ der Exponent, für den $\mathcal{K}^l(A)=\Bbbk^n$ wird. +Da $\mathcal{K}^{l-1}(A)\ne \mathcal{K}^l(A)$ ist, muss es einen +komplementären Unterraum geben, in dem eine Basis gewählt wird. +Jeder der Vektoren $b_1,\dots,b_s$ dieser Basis gibt Anlass zu einem +Block der Form $N_l$, der auf dem Unterraum +$\langle b_i,Ab_i,\dots,A^{l-1}b_i\rangle$ operiert. +In der Abbildung ist $b_i$ durch einen roten Punkt symbolisiert und +die Bilder $Ab_i,\dots,A^{l-1}b_i$ werden durch blaue Pfeile untereinander +verbunden. + +Der Raum $\mathcal{K}^{l-1}(A)$ enthält dann $\mathcal{K}^{l-2}(A)$ und +die Vektoren $Ab_1,\dots,Ab_s$. +Es ist aber möglich, dass diese Vektoren nicht den ganzen Raum +$\mathcal{K}^{l-1}(A)$ erzeugen. +In diesem Fall lassen sich die Vektoren mit Hilfe weiterer Vektoren +$b_{s+1},\dots,b_{s+r}$ zu einer Basisi von $\mathcal{K}^{l-1}(A)$ +ergänzen. +Wie vorhin gibt jeder der Vektoren $b_{s+i}$ Anlass zu einem Block +der Form $N_{l-1}$, der auf dem Unterraum +$\langle b_{s+i},Ab_{s+i}\dots,A^{l-2}b_{s+i}\rangle$ +operiert. + +Durch Wiederholung dieses Prozesses können schrittweise Basisvektoren +$b_i$ erzeugt werden. +Die Matrix der Abbildung $f$ in der Basis $\{b_i,Ab_i,\dots,A^kb_i\}$ +ist ein Block der Form $N_k$. +Für $0\le k\le l-1$ sind die Vektoren $A^kb_i$, +solange sie von $0$ verschieden sind, +alle nach Konstruktion linear unabhängig, sie bilden eine Basis +von $\mathcal{K}^l(A)=\mathbb{R}^n$. + +\begin{beispiel} +Die Basis für die Zerlegung der Matrix +\[ +A += +\begin{pmatrix*}[r] + 3& 1&-2\\ +-21&-7&14\\ + -6&-2& 4 +\end{pmatrix*} +\] +in Blockform soll nach der oben beschriebenen Methode ermittelt werden. +Zunächst kann man nachrechnen, dass $A^2=0$ ist. +Der Kern von $A$ ist der Lösungsraum der Gleichung $Ax=0$, da alle Zeilen +Vielfache der ersten Zeile sind, recht es zu verlangen, dass die +Komponenten $x_i$ der Lösung die Gleichung +\[ +3x_1+x_2-2x_3=0 +\] +erfüllen. +Jetzt muss ein Vektor $b_1$ ausserhalb von $\mathbb{L}$ gefunden werden, +der erste Standardbasisvektor $e_1$ kann dazu verwendet werden. +Es ist auch klar, dass $Ae_1\ne 0$ ist. +Wir verwenden daher die beiden Vektoren +\[ +b_3=e_1=\begin{pmatrix} 1\\0\\0 \end{pmatrix} +,\qquad +b_2=Ab_3=\begin{pmatrix*}[r] 3\\-21\\-6 \end{pmatrix*}, +\] +in dieser Basis hat $A$ die Matrix $N_2$. +Jetzt muss noch ein Basisvektor $b_1$ gefunden werden, +der in $\ker A=\mathbb{L}$ liegt und so, dass $b_1$ und $b_2$ +linear unabhängig sind. +Die zweite Bedingung kann leicht dadurch sichergestellt werden, +dass man die erste Komponente von $b_1$ als $0$ wählt. +Eine mögliche Lösung ist dann +\[ +b_1=\begin{pmatrix}0\\2\\1\end{pmatrix} +\] +Die Matrix +\[ +B=\begin{pmatrix*}[r] + 0& 1& 3\\ + 2& 0& -21\\ + 1& 0& -6 +\end{pmatrix*} +\qquad\text{mit Inverser} +\qquad +B^{-1}=\begin{pmatrix*}[r] +0&-\frac23& \frac73\\ +0&-\frac19& \frac29\\ +1& \frac13&-\frac23 +\end{pmatrix*} +\] +transformiert die Matrix $A$ auf den Block $N_3$: +\[ +B^{-1}AB += +B^{-1}\begin{pmatrix*}[r] +0&0& 3\\ +0&0&-21\\ +0&0& -6 +\end{pmatrix*} += +\begin{pmatrix} +0&0&0\\ +0&0&1\\ +0&0&0 +\end{pmatrix} += +N_3. +\qedhere +\] +\end{beispiel} + % % Begriff des Eigenwertes und Eigenvektors % diff --git a/buch/chapters/40-eigenwerte/images/Makefile b/buch/chapters/40-eigenwerte/images/Makefile index 753153d..bec12d5 100644 --- a/buch/chapters/40-eigenwerte/images/Makefile +++ b/buch/chapters/40-eigenwerte/images/Makefile @@ -3,7 +3,9 @@ # # (c) 2020 Prof Dr Andreas Müller, Hochschule Rappersil # -all: sp.pdf nilpotent.pdf kernbild.pdf kombiniert.pdf +all: sp.pdf nilpotent.pdf kernbild.pdf kombiniert.pdf \ + wurzelapprox.pdf wurzel.pdf dimjk.pdf jknilp.pdf \ + normalform.pdf sp.pdf: sp.tex sppaths.tex pdflatex sp.tex @@ -19,3 +21,22 @@ kernbild.pdf: kernbild.tex bild2.jpg kern2.jpg kombiniert.pdf: kombiniert.tex kombiniert.jpg pdflatex kombiniert.tex + +wurzelapprox.pdf: wurzelapprox.tex wa.tex + pdflatex wurzelapprox.tex + +wa.tex: wa.m + octave wa.m + +wurzel.pdf: wurzel.tex + pdflatex wurzel.tex + +dimjk.pdf: dimjk.tex + pdflatex dimjk.tex + +jknilp.pdf: jknilp.tex + pdflatex jknilp.tex + +normalform.pdf: normalform.tex + pdflatex normalform.tex + diff --git a/buch/chapters/40-eigenwerte/images/dimjk.pdf b/buch/chapters/40-eigenwerte/images/dimjk.pdf new file mode 100644 index 0000000..fcfe4da Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/dimjk.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/dimjk.tex b/buch/chapters/40-eigenwerte/images/dimjk.tex new file mode 100644 index 0000000..28e0f9f --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/dimjk.tex @@ -0,0 +1,78 @@ +% +% dimjk.tex -- dimensionen von K^l und J^l +% +% (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.2} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\pfad{ + ({0*\sx},{6-6}) -- + ({1*\sx},{6-4.5}) -- + ({2*\sx},{6-3.5}) -- + ({3*\sx},{6-2.9}) -- + ({4*\sx},{6-2.6}) -- + ({5*\sx},{6-2.4}) -- + ({8*\sx},{6-2.4}) +} +\def\sx{1.2} + +\fill[color=orange!20] \pfad -- ({6*\sx},6) -- (0,6) -- cycle; +\fill[color=darkgreen!20] \pfad -- ({6*\sx},0) -- cycle; + +\fill[color=orange!40] ({5*\sx},6) rectangle ({8*\sx},{6-2.4}); +\fill[color=darkgreen!40] ({5*\sx},0) rectangle ({8*\sx},{6-2.4}); + +\draw[color=darkgreen,line width=2pt] ({3*\sx},{6-6}) -- ({3*\sx},{6-2.9}); +\node[color=darkgreen] at ({3*\sx},{6-4.45}) [rotate=90,above] {$\dim\mathcal{K}^k(A)$}; +\draw[color=orange,line width=2pt] ({3*\sx},{6-0}) -- ({3*\sx},{6-2.9}); +\node[color=orange] at ({3*\sx},{6-1.45}) [rotate=90,above] {$\dim\mathcal{J}^k(A)$}; + +\node[color=orange] at ({6.5*\sx},{6-1.2}) {bijektiv}; +\node[color=darkgreen] at ({6.5*\sx},{6-4.2}) {konstant}; + +\fill ({0*\sx},{6-6}) circle[radius=0.08]; +\fill ({1*\sx},{6-4.5}) circle[radius=0.08]; +\fill ({2*\sx},{6-3.5}) circle[radius=0.08]; +\fill ({3*\sx},{6-2.9}) circle[radius=0.08]; +\fill ({4*\sx},{6-2.6}) circle[radius=0.08]; +\fill ({5*\sx},{6-2.4}) circle[radius=0.08]; +\fill ({6*\sx},{6-2.4}) circle[radius=0.08]; +\fill ({7*\sx},{6-2.4}) circle[radius=0.08]; +\fill ({8*\sx},{6-2.4}) circle[radius=0.08]; + +\draw \pfad; + +\draw[->] (-0.5,0) -- ({8*\sx+0.5},0) coordinate[label={$k$}]; +\draw[->] (-0.5,6) -- ({8*\sx+0.5},6); + +\foreach \x in {0,...,8}{ + \draw ({\x*\sx},-0.05) -- ({\x*\sx},0.05); +} +\foreach \x in {0,...,3}{ + \node at ({\x*\sx},-0.05) [below] {$\x$}; +} +\node at ({4*\sx},-0.05) [below] {$\dots\mathstrut$}; +\node at ({5*\sx},-0.05) [below] {$l$}; +\node at ({6*\sx},-0.05) [below] {$l+1$}; +\node at ({7*\sx},-0.05) [below] {$l+2$}; +\node at ({8*\sx},-0.05) [below] {$l+3$}; + +\node[color=orange] at ({1.2*\sx},5.6) + {$\mathcal{J}^k(A)\supset\mathcal{J}^{k+1}(A)$}; +\node[color=darkgreen] at ({1.2*\sx},0.4) + {$\mathcal{K}^k(A)\subset\mathcal{K}^{k+1}(A)$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/images/jknilp.pdf b/buch/chapters/40-eigenwerte/images/jknilp.pdf new file mode 100644 index 0000000..9293263 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/jknilp.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/jknilp.tex b/buch/chapters/40-eigenwerte/images/jknilp.tex new file mode 100644 index 0000000..e8e8e14 --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/jknilp.tex @@ -0,0 +1,181 @@ +% +% jknilp.tex -- Dimensionen von K^l und J^l für nilpotente Matrizen +% +% (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] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\s{0.15} +\def\punkt#1#2{({#1*\s},{#2*\s})} + +\def\vektor#1{ + \fill[color=darkgreen!30] \punkt{#1}{0} rectangle \punkt{(#1+1)}{12}; +} +\def\feld#1#2{ + \fill[color=orange!60] ({#1*\s},{(12-#2)*\s}) rectangle + ({(#1+1)*\s},{(11-#2)*\s}); +} + +\def\quadrat#1{ + \draw \punkt{0}{0} rectangle \punkt{12}{12}; + + \draw \punkt{0}{11} -- \punkt{2}{11} -- \punkt{2}{9} -- \punkt{4}{9} + -- \punkt{4}{6} -- \punkt{12}{6}; + + \draw \punkt{1}{12} -- \punkt{1}{10} -- \punkt{3}{10} + -- \punkt{3}{8} -- \punkt{6}{8} -- \punkt{6}{0}; + \node at ({6*\s},0) [below] {#1\strut}; +} + +\begin{scope}[xshift=-0.9cm,yshift=-3cm] +\foreach \n in {0,...,11}{ + \feld{\n}{\n} +} +\quadrat{$A^0=I$} +\end{scope} + +\begin{scope}[xshift=1.1cm,yshift=-3cm] +\vektor{0} +\vektor{1} +\vektor{2} +\vektor{3} +\vektor{4} +\vektor{6} +\feld{5}{4} +\feld{7}{6} +\feld{8}{7} +\feld{9}{8} +\feld{10}{9} +\feld{11}{10} +\quadrat{$A$} +\end{scope} + +\begin{scope}[xshift=3.1cm,yshift=-3cm] +\vektor{0} +\vektor{1} +\vektor{2} +\vektor{3} +\vektor{4} +\vektor{5} +\vektor{6} +\vektor{7} +\feld{8}{6} +\feld{9}{7} +\feld{10}{8} +\feld{11}{9} +\quadrat{$A^2$} +\end{scope} + +\begin{scope}[xshift=5.1cm,yshift=-3cm] +\vektor{0} +\vektor{1} +\vektor{2} +\vektor{3} +\vektor{4} +\vektor{5} +\vektor{6} +\vektor{7} +\vektor{8} +\feld{9}{6} +\feld{10}{7} +\feld{11}{8} +\quadrat{$A^3$} +\end{scope} + +\begin{scope}[xshift=7.1cm,yshift=-3cm] +\vektor{0} +\vektor{1} +\vektor{2} +\vektor{3} +\vektor{4} +\vektor{5} +\vektor{6} +\vektor{7} +\vektor{8} +\vektor{9} +\feld{10}{6} +\feld{11}{7} +\quadrat{$A^4$} +\end{scope} + +\begin{scope}[xshift=9.1cm,yshift=-3cm] +\vektor{0} +\vektor{1} +\vektor{2} +\vektor{3} +\vektor{4} +\vektor{5} +\vektor{6} +\vektor{7} +\vektor{8} +\vektor{9} +\vektor{10} +\feld{11}{6} +\quadrat{$A^5$} +\end{scope} + +\begin{scope}[xshift=11.1cm,yshift=-3cm] +\vektor{0} +\vektor{1} +\vektor{2} +\vektor{3} +\vektor{4} +\vektor{5} +\vektor{6} +\vektor{7} +\vektor{8} +\vektor{9} +\vektor{10} +\vektor{11} +\quadrat{$A^6$} +\end{scope} + +\def\pfad{ + (0,0) -- (2,3) -- (4,4) -- (6,4.5) -- (8,5) -- (10,5.5) -- (12,6) +} + + +\fill[color=orange!20] \pfad -- (-1,6) -- (-1,0) -- cycle; +\fill[color=darkgreen!20] \pfad -- (13,6) -- (13,0) -- cycle; +\draw[line width=1.3pt] \pfad; + +\fill (0,0) circle[radius=0.08]; +\fill (2,3) circle[radius=0.08]; +\fill (4,4) circle[radius=0.08]; +\fill (6,4.5) circle[radius=0.08]; +\fill (8,5) circle[radius=0.08]; +\fill (10,5.5) circle[radius=0.08]; +\fill (12,6) circle[radius=0.08]; + +\foreach \y in {0.5,1,...,5.5}{ + \draw[line width=0.3pt] (-1.1,\y) -- (13.0,\y); +} +\foreach \y in {0,2,4,...,12}{ + \node at (-1.1,{\y*0.5}) [left] {$\y$}; +} +\foreach \x in {0,...,6}{ + \draw ({2*\x},0) -- ({2*\x},-1.2); + \node at ({2*\x},-0.6) [above,rotate=90] {$k=\x$}; +} + +\draw[->] (-1.1,0) -- (13.4,0) coordinate[label={$k$}]; +\draw[->] (-1.1,6) -- (13.4,6); +\draw[->] (-1.0,0) -- (-1.0,6.5); + +\node[color=darkgreen] at (8,1.95) [above] {$\dim \mathcal{K}^k(A)$}; +\node[color=orange] at (2,4.95) [above] {$\dim \mathcal{J}^k(A)$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/images/normalform.pdf b/buch/chapters/40-eigenwerte/images/normalform.pdf new file mode 100644 index 0000000..c5bdb61 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/normalform.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/normalform.tex b/buch/chapters/40-eigenwerte/images/normalform.tex new file mode 100644 index 0000000..f3cb532 --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/normalform.tex @@ -0,0 +1,214 @@ +% +% normalform.tex -- Normalform einer Matrix ermitteln +% +% (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] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\b{0.025} + +\def\s{2.5} +\def\t{0.7} +\def\T{0.5} + +\fill[color=darkgreen!20] + ({-3*\s-0.5*\t},{8*\t}) + -- + ({-3*\s+0.5*\t},{8*\t}) + -- + ({-2*\s-0.5*\t},{7*\t}) + -- + ({-2*\s+0.5*\t},{7*\t}) + -- + ({-1*\s-0.5*\t},{4*\t}) + -- + ({-1*\s+0.5*\t},{4*\t}) + -- + ({-0.5*\t},0) + -- + ({-3*\s-0.5*\t},{0*\t}) + -- cycle; + + +\fill[color=white,rounded corners=3pt] + ({-0.5*\t-\b},{-\b}) rectangle ({0.5*\t+\b},{\b+0.15}); +\draw[rounded corners=3pt] + ({-0.5*\t-\b},{-\b}) rectangle ({0.5*\t+\b},{\b+0.15}); +\node at (0,0) [below] {$\mathcal{K}^0(A)$}; + +\fill[color=white,rounded corners=3pt] + ({-1*\s-0.5*\t-\b},{-\b}) rectangle ({-1*\s+0.5*\t+\b},{4*\t+\b}); +\draw[rounded corners=3pt] + ({-1*\s-0.5*\t-\b},{-\b}) rectangle ({-1*\s+0.5*\t+\b},{4*\t+\b}); +\fill[color=blue!20,rounded corners=2pt] + ({-1*\s-0.5*\t+\b},{1*\t+\b}) rectangle ({-1*\s+0.5*\t-\b},{3*\t-\b}); +\draw[color=blue!40,rounded corners=2pt] + ({-1*\s-0.5*\t+\b},{1*\t+\b}) rectangle ({-1*\s+0.5*\t-\b},{3*\t-\b}); +\fill[color=blue!20,rounded corners=2pt] + ({-1*\s-0.5*\t+\b},{3*\t+\b}) rectangle ({-1*\s+0.5*\t-\b},{4*\t-\b}); +\draw[color=blue!40,rounded corners=2pt] + ({-1*\s-0.5*\t+\b},{3*\t+\b}) rectangle ({-1*\s+0.5*\t-\b},{4*\t-\b}); +\fill[color=red!20,rounded corners=2pt] + ({-1*\s-0.5*\t+\b},{\b}) rectangle ({-1*\s+0.5*\t-\b},{1*\t-\b}); +\draw[color=red,rounded corners=2pt] + ({-1*\s-0.5*\t+\b},{\b}) rectangle ({-1*\s+0.5*\t-\b},{1*\t-\b}); +\fill[color=red] ({-1*\s},{0.5*\t}) circle[radius=0.1]; +\fill[color=red,opacity=0.5] ({-1*\s},{1.5*\t}) circle[radius=0.1]; +\fill[color=red,opacity=0.5] ({-1*\s},{2.5*\t}) circle[radius=0.1]; +\fill[color=red,opacity=0.5] ({-1*\s},{3.5*\t}) circle[radius=0.1]; +\node at ({-1*\s},0) [below] {$\mathcal{K}^1(A)$}; + +\fill[color=white,rounded corners=3pt] + ({-2*\s-0.5*\t-\b},{-\b}) rectangle ({-2*\s+0.5*\t+\b},{7*\t+\b}); +\draw[rounded corners=3pt] + ({-2*\s-0.5*\t-\b},{-\b}) rectangle ({-2*\s+0.5*\t+\b},{7*\t+\b}); +\fill[color=gray!20,rounded corners=2pt] + ({-2*\s-0.5*\t+\b},{+\b}) rectangle ({-2*\s+0.5*\t-\b},{4*\t-\b}); +\draw[color=gray,rounded corners=2pt] + ({-2*\s-0.5*\t+\b},{+\b}) rectangle ({-2*\s+0.5*\t-\b},{4*\t-\b}); +\node[color=black!70] at ({-2*\s},{2*\t}) [rotate=90] {$\mathcal{K}^1(A)$}; +\fill[color=red!20,rounded corners=2pt] + ({-2*\s-0.5*\t+\b},{4*\t+\b}) rectangle ({-2*\s+0.5*\t-\b},{6*\t-\b}); +\draw[color=red,rounded corners=2pt] + ({-2*\s-0.5*\t+\b},{4*\t+\b}) rectangle ({-2*\s+0.5*\t-\b},{6*\t-\b}); +\fill[color=blue!20,rounded corners=2pt] + ({-2*\s-0.5*\t+\b},{6*\t+\b}) rectangle ({-2*\s+0.5*\t-\b},{7*\t-\b}); +\draw[color=blue!40,rounded corners=2pt] + ({-2*\s-0.5*\t+\b},{6*\t+\b}) rectangle ({-2*\s+0.5*\t-\b},{7*\t-\b}); +\fill[color=red] ({-2*\s},{4.5*\t}) circle[radius=0.1]; +\fill[color=red] ({-2*\s},{5.5*\t}) circle[radius=0.1]; +\fill[color=red,opacity=0.5] ({-2*\s},{6.5*\t}) circle[radius=0.1]; +\draw[->,color=blue,line width=1.2pt,shorten >= 0.15cm,shorten <= 0.15cm] + ({-2*\s},{6.5*\t}) -- ({-1*\s},{3.5*\t}); +\draw[->,color=blue,line width=1.2pt,shorten >= 0.15cm,shorten <= 0.15cm] + ({-2*\s},{5.5*\t}) -- ({-1*\s},{2.5*\t}); +\draw[->,color=blue,line width=1.2pt,shorten >= 0.15cm,shorten <= 0.15cm] + ({-2*\s},{4.5*\t}) -- ({-1*\s},{1.5*\t}); +\node at ({-2*\s},0) [below] {$\mathcal{K}^2(A)$}; + +\fill[color=white,rounded corners=3pt] + ({-3*\s-0.5*\t-\b},{-\b}) rectangle ({-3*\s+0.5*\t+\b},{8*\t+\b}); +\draw[rounded corners=3pt] + ({-3*\s-0.5*\t-\b},{-\b}) rectangle ({-3*\s+0.5*\t+\b},{8*\t+\b}); +\fill[color=gray!20,rounded corners=2pt] + ({-3*\s-0.5*\t+\b},{+\b}) rectangle ({-3*\s+0.5*\t-\b},{7*\t-\b}); +\draw[color=gray,rounded corners=2pt] + ({-3*\s-0.5*\t+\b},{+\b}) rectangle ({-3*\s+0.5*\t-\b},{7*\t-\b}); +\node[color=black!70] at ({-3*\s},{3.5*\t}) [rotate=90] {$\mathcal{K}^2(A)$}; +\fill[color=red!20,rounded corners=2pt] + ({-3*\s-0.5*\t+\b},{7*\t+\b}) rectangle ({-3*\s+0.5*\t-\b},{8*\t-\b}); +\draw[color=red,rounded corners=2pt] + ({-3*\s-0.5*\t+\b},{7*\t+\b}) rectangle ({-3*\s+0.5*\t-\b},{8*\t-\b}); +\fill[color=red] ({-3*\s},{7.5*\t}) circle[radius=0.1]; +\draw[->,color=blue,line width=1.2pt,shorten >= 0.15cm,shorten <= 0.15cm] + ({-3*\s},{7.5*\t}) -- ({-2*\s},{6.5*\t}); +\node at ({-3*\s},0) [below] {$\mathcal{K}^3(A)$}; + +\def\xo{1} +\def\yo{-1} + +\def\punkt#1#2{ + ({\xo+(#1)*\T},{\yo-(#2)*\T}) +} + +\fill[color=red!20] \punkt{0}{0} rectangle \punkt{1}{8}; +\fill[color=red!20] \punkt{2}{0} rectangle \punkt{3}{8}; +\fill[color=red!20] \punkt{4}{0} rectangle \punkt{5}{8}; +\fill[color=red!20] \punkt{7}{0} rectangle \punkt{8}{8}; + +\fill[color=blue!20] \punkt{2}{1} rectangle \punkt{3}{2}; +\fill[color=blue!20] \punkt{4}{3} rectangle \punkt{5}{4}; +\fill[color=blue!20] \punkt{6}{5} rectangle \punkt{7}{6}; +\fill[color=blue!20] \punkt{7}{6} rectangle \punkt{8}{7}; + +\draw \punkt{0}{0} rectangle \punkt{8}{8}; + +\draw[color=gray] \punkt{0}{1} -- \punkt{3}{1} -- \punkt{3}{5} -- \punkt{8}{5}; +\draw[color=gray] \punkt{1}{0} -- \punkt{1}{3} -- \punkt{5}{3} -- \punkt{5}{8}; + +\draw[->,color=red] + ({-3*\s+0.5*\t+\b},{7.5*\t}) + -- + ({0*\s+0.5*\t},{7.5*\t}) + to[out=0,in=90] + ({\xo+7.5*\T},{\yo}); + +\draw[->,color=blue] + ({-2*\s+0.5*\t+\b},{6.5*\t}) + -- + ({0*\s+0.5*\t},{6.5*\t}) + to[out=0,in=90] + ({\xo+6.5*\T},{\yo}); + +\draw[->,color=blue] + ({-1*\s+0.5*\t+\b},{3.5*\t}) + -- + ({0*\s+0.5*\t},{3.5*\t}) + to[out=0,in=90] + ({\xo+5.5*\T},{\yo}); + +\draw[->,color=red] + ({-2*\s+0.5*\t+\b},{5.5*\t}) + -- + ({0*\s+0.5*\t},{5.5*\t}) + to[out=0,in=90] + ({\xo+4.5*\T},{\yo}); + +\draw[->,color=red] + ({-2*\s+0.5*\t+\b},{4.5*\t}) + -- + ({0*\s+0.5*\t},{4.5*\t}) + to[out=0,in=90] + ({\xo+2.5*\T},{\yo}); + +\draw[->,color=blue] + ({-1*\s+0.5*\t+\b},{2.5*\t}) + -- + ({0*\s+0.5*\t},{2.5*\t}) + to[out=0,in=90] + ({\xo+3.5*\T},{\yo}); + +\draw[->,color=red] + ({-1*\s+0.5*\t+\b},{0.5*\t}) + -- + ({0*\s+0.5*\t},{0.5*\t}) + to[out=0,in=90] + ({\xo+0.5*\T},{\yo}); + +\draw[->,color=blue] + ({-1*\s+0.5*\t+\b},{1.5*\t}) + -- + ({0*\s+0.5*\t},{1.5*\t}) + to[out=0,in=90] + ({\xo+1.5*\T},{\yo}); + +\node at \punkt{0.5}{0.5} {$0$}; +\node at \punkt{1.5}{1.5} {$0$}; +\node at \punkt{2.5}{2.5} {$0$}; +\node at \punkt{3.5}{3.5} {$0$}; +\node at \punkt{4.5}{4.5} {$0$}; +\node at \punkt{5.5}{5.5} {$0$}; +\node at \punkt{6.5}{6.5} {$0$}; +\node at \punkt{7.5}{7.5} {$0$}; + +\node[color=blue] at \punkt{2.5}{1.5} {$1$}; +\node[color=blue] at \punkt{4.5}{3.5} {$1$}; +\node[color=blue] at \punkt{6.5}{5.5} {$1$}; +\node[color=blue] at \punkt{7.5}{6.5} {$1$}; + +\node at \punkt{-0.5}{4} [left] {$A=$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/images/wa.m b/buch/chapters/40-eigenwerte/images/wa.m new file mode 100644 index 0000000..3d6d2c3 --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/wa.m @@ -0,0 +1,80 @@ +# +# wa.m -- Wurzelapproximation +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +global u; +global N; +global t; +global s; + +N = 100; +n = 10; +s = 1; + +u = zeros(N + 2, n); +t = (0:N+1)' / N; +t = t.^2; + +for i = (2:n) + u(:,i) = u(:,i-1) + 0.5 * (t-u(:,i-1).^2); +end + +u + +global f; +f = fopen("wa.tex", "w"); +fprintf(f, "%%\n"); +fprintf(f, "%% Approximation der Wurzelfunktion\n"); +fprintf(f, "%%\n"); + +function pfad(i, name) + global f; + global u; + global t; + global N; + fprintf(f, "\\def\\pfad%s{\n", name); + fprintf(f, "(%.4f,%.4f)\n", t(1,1), u(1,i)); + for j = (2:N+1) + fprintf(f, "--(%.4f,%.4f)\n", t(j,1), u(j,i)); + end + fprintf(f, "}\n"); +end + +pfad( 1, "a") +pfad( 2, "b") +pfad( 3, "c") +pfad( 4, "d") +pfad( 5, "e") +pfad( 6, "f") +pfad( 7, "g") +pfad( 8, "h") +pfad( 9, "i") +pfad(10, "j") + +function fehler(i, name) + global f; + global u; + global t; + global N; + global s; + fprintf(f, "\\def\\fehler%s{\n", name); + fprintf(f, "(%.4f,%.4f)\n", t(1,1), s*(sqrt(t(1,1))-u(1,i))); + for j = (2:N+2) + fprintf(f, "--(%.4f,%.4f)\n", t(j,1), s*(sqrt(t(j,1))-u(j,i))); + end + fprintf(f, "}\n"); +end + +fehler( 1, "a") +fehler( 2, "b") +fehler( 3, "c") +fehler( 4, "d") +fehler( 5, "e") +fehler( 6, "f") +fehler( 7, "g") +fehler( 8, "h") +fehler( 9, "i") +fehler(10, "j") + +fclose(f); diff --git a/buch/chapters/40-eigenwerte/images/wurzel.pdf b/buch/chapters/40-eigenwerte/images/wurzel.pdf new file mode 100644 index 0000000..751cf33 Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/wurzel.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/wurzel.tex b/buch/chapters/40-eigenwerte/images/wurzel.tex new file mode 100644 index 0000000..ca2825a --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/wurzel.tex @@ -0,0 +1,94 @@ +% +% wurzel.tex -- Wurzel +% +% (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{10} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\a{0.8} +\def\U{0} + +\fill[color=blue!20] (0,\a) rectangle (1.00,1.03); +\draw[line width=0.4pt] (0,1) -- (1,1) -- (1,0); + +\draw[->] (0,{-0.01}) -- (0,{1.06}) coordinate[label={right:$y$}]; + +\begin{scope} +\clip (0,0) rectangle (1,1); +\draw[color=blue,line width=1.4pt] plot[domain=0:1.01,samples=100] + ({\x},{\x*\x}); +\end{scope} + +%\draw[color=purple,line width=0.5pt] (0.48,-0.01) -- (1,1); +%\fill[color=purple] (1,1) circle[radius=0.008]; + +\node[color=blue] at (0,{\a}) [left] {$a$}; + +\def\schritt#1#2{ + \xdef\u{\U} + \pgfmathparse{0.5*(\a-\u*\u)} + \xdef\d{\pgfmathresult} + \pgfmathparse{\u+\d} + \xdef\U{\pgfmathresult} + + \fill[color=purple!10] (\u,{\u*\u}) -- (\U,\a) -- (\u,\a) -- cycle; + + \node[color=darkgreen] at (\u,0) [below] {$u_#1$}; + \draw[color=darkgreen,line width=0.1pt] (\u,0)--(\u,\a); + + \fill[color=darkgreen] (\u,{\u*\u}) circle[radius=0.006]; + + \draw[<->,color=darkgreen] (\u,{\u*\u}) -- (\u,\a); + + \draw[color=purple,shorten <= 0.6mm] + (\u,{\u*\u}) -- (\U,\a); +} +\def\marke#1#2{ + \node[color=orange] at ({0.5*(\u+\U)},\a) [#2] {$\frac12(a-u_#1^2)$}; + \draw[<->,color=orange,shorten >= 0mm,shorten <= 0mm] + (\u,\a) -- (\U,\a); +} + +\def\hoehe#1{ + \node[color=darkgreen] at ({\u+0.01},{\a-\d-0.01}) + [above,rotate=90] {$a-u_#1^2$}; +} + +\schritt{0}{1} +\hoehe{0} +\marke{0}{above} + +\schritt{1}{2} +\hoehe{1} +\marke{1}{above} +\node[color=darkgreen] at (\u,{\u*\u-0.02}) [above left] {$u_1^2$}; + +\schritt{2}{3} +\hoehe{2} +%\marke{2}{right,rotate=90} +\marke{2}{above} +\node[color=darkgreen] at (\u,{\u*\u-0.02}) [above left] {$u_2^2$}; + +\schritt{3}{4} + +\draw[color=blue] ({sqrt(\a)},-0.01) -- ({sqrt(\a)},\a); +\node[color=blue] at ({sqrt(\a)-0.02},0) [below right] {$\sqrt{a}$}; + +\draw[->] (-0.01,0) -- (1.05,0) coordinate[label={$u$}]; +\node at (1,0) [below] {$1$}; +\node at (0,1) [left] {$1$}; +\draw (1,-0.01) -- (1,0.01); + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf b/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf new file mode 100644 index 0000000..aeb5e5d Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/wurzelapprox.tex b/buch/chapters/40-eigenwerte/images/wurzelapprox.tex new file mode 100644 index 0000000..676c7e9 --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/wurzelapprox.tex @@ -0,0 +1,107 @@ +% +% wurzelapprox.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{5.7} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\input{wa.tex} + +\begin{scope}[xshift=-0.63cm] + +\draw[->] (-0.01,0) -- (1.05,0) coordinate[label={$t$}]; + +\begin{scope} + \clip (0,0) rectangle (1,1.01); + \draw[color=blue,line width=1.6pt] \pfada; + \draw[color=blue,line width=1.2pt] \pfadb; + \draw[color=blue,line width=1.2pt] \pfadc; + \draw[color=blue,line width=1.2pt] \pfadd; + \draw[color=blue,line width=1.2pt] \pfade; + \draw[color=blue,line width=1.2pt] \pfadf; + \draw[color=blue,line width=1.2pt] \pfadg; + \draw[color=blue,line width=1.2pt] \pfadh; + \draw[color=blue,line width=1.2pt] \pfadi; + \draw[color=blue,line width=1.2pt] \pfadj; + + \draw[color=red,line width=1.6pt] + plot[domain=0:1.01,samples=100] ({\x*\x},{\x}); +\end{scope} + +\node[color=red] at (0.5,0.707) [above,rotate={atan(0.5)}] {$\sqrt{t}$}; + +\draw[->] (0,-0.01) -- (0,1.05) coordinate[label={right:$u_n(t)$}]; + +\foreach \x in {2,4,...,8}{ + \draw ({0.1*\x},-0.01) -- ({0.1*\x},0.01); + \node at ({0.1*\x},-0.01) [below] {0.\x\strut}; + \draw (-0.01,{0.1*\x}) -- (0.01,{0.1*\x}); + \node at (-0.01,{0.1*\x}) [left] {0.\x\strut}; +} +\draw (1,-0.01) -- (1,0.01); +\node at (1,-0.01) [below] {1.0\strut}; +\node at (0,-0.01) [below] {0\strut}; + +\draw (-0.01,1) -- (0.01,1); +\node at (-0.01,1) [left] {1.0\strut}; + +\node[color=blue] at (1.01,0) [above left] {$u_0(t)$}; +\node[color=blue] at (1,0.51) [below left,rotate={atan(0.5)}] {$u_1(t)$}; +\node[color=blue] at (1,{0.86+0.03}) [below left,rotate={atan(0.86)}] {$u_2(t)$}; +\node[color=blue] at (1,1.00) [below left,rotate={atan(0.5)}] {$u_3(t)$}; + +\end{scope} + +\begin{scope}[xshift=0.63cm] + +\begin{scope} + \clip (0,0) rectangle (1,1.01); + \draw[color=darkgreen,line width=1.2pt] \fehlera; + \draw[color=darkgreen,line width=1.2pt] \fehlerb; + \draw[color=darkgreen,line width=1.2pt] \fehlerc; + \draw[color=darkgreen,line width=1.2pt] \fehlerd; + \draw[color=darkgreen,line width=1.2pt] \fehlere; + \draw[color=darkgreen,line width=1.2pt] \fehlerf; + \draw[color=darkgreen,line width=1.2pt] \fehlerg; + \draw[color=darkgreen,line width=1.2pt] \fehlerh; + \draw[color=darkgreen,line width=1.2pt] \fehleri; + \draw[color=darkgreen,line width=1.2pt] \fehlerj; +\end{scope} + +\draw[->] (0,-0.01) -- (0,1.05) coordinate[label={right:${\color{red}\sqrt{t}}-{\color{blue}u_n(t)}$}]; +\draw[->] (-0.01,0) -- (1.05,0) coordinate[label={$t$}]; + +\foreach \x in {2,4,...,9}{ + \draw ({0.1*\x},-0.01) -- ({0.1*\x},0.01); + \node at ({0.1*\x},-0.01) [below] {0.\x\strut}; + \draw (-0.01,{0.1*\x}) -- (0.01,{0.1*\x}); + \node at (-0.01,{0.1*\x}) [left] {0.\x\strut}; +} +\draw (1,-0.01) -- (1,0.01); +\node at (1,-0.01) [below] {1.0\strut}; +\node at (0,-0.01) [below] {0\strut}; + +\draw (-0.01,1) -- (0.01,1); +\node at (-0.01,1) [left] {1.0\strut}; + +\node[color=darkgreen] at (1,1) [below left,rotate={atan(0.5)}] {$n=0$}; +\node[color=darkgreen] at (1,0.5) [above left] {$n=1$}; +\node[color=darkgreen] at (1,0.13) [above left,rotate=-13] {$n=2$}; +\node[color=darkgreen] at (1,0.00) [above left,rotate=-9] {$n=3$}; + +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/spektraltheorie.tex b/buch/chapters/40-eigenwerte/spektraltheorie.tex index a3f86ba..4bf5c42 100644 --- a/buch/chapters/40-eigenwerte/spektraltheorie.tex +++ b/buch/chapters/40-eigenwerte/spektraltheorie.tex @@ -276,6 +276,25 @@ ergibt, dass jede beliebige Funktion sich als Polynome in $x$ approximieren lässt. Dies ist der Inhalt des folgenden Satzes von Stone-Weierstrass. +\begin{figure} +\centering +\includegraphics{chapters/40-eigenwerte/images/wurzel.pdf} +\caption{Konstruktion einer monoton wachsenden Approximationsfolge für +$\sqrt{a}$ +\label{buch:eigenwerte:fig:wurzelverfahren}} +\end{figure} + +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/40-eigenwerte/images/wurzelapprox.pdf} +\caption{Monoton wachsende Approximation der Funktion $t\mapsto\sqrt{t}$ mit +Polynomen $u_n(t)$ nach +\eqref{buch:eigenwerte:eqn:wurzelapproximation} +(links) und der Fehler der Approximation +(rechts). +\label{buch:eigenwerte:fig:wurzelapproximation}} +\end{figure} + \begin{satz}[Stone-Weierstrass] \label{buch:satz:stone-weierstrass} Enthält eine $\mathbb{R}$-Algebra $A$ von stetigen, rellen Funktionen @@ -286,12 +305,137 @@ reelle Funktion auf $K$ gleichmässig approximierbar durch Funktionen in $A$. \end{satz} +Für den Beweis des Satzes wird ein Hilfsresultat benötigt, welches wir +zunächst ableiten. +Es besagt, dass sich die Wurzelfunktion $t\mapsto\sqrt{t}$ +auf dem Interval $[0,1]$ gleichmässig +von unten durch Polynome approximieren lässt, die in +Abbildung~\ref{buch:eigenwerte:fig:wurzelapproximation} dargestellt +sind. + +\begin{satz} +Die rekursiv definierte Folge von Polynomen +\begin{equation} +u_{n+1}(t) += +u_n(t) + \frac12(t-u_n(t)^2), +\qquad +u_0(t)=0 +\label{buch:eigenwerte:eqn:wurzelapproximation} +\end{equation} +ist monoton wachsend und approximiert die Wurzelfunktion $t\mapsto\sqrt{t}$ +gleichmässig auf dem Intervall $[0,1]$. +\end{satz} + \begin{proof}[Beweis] -XXX TODO +Wer konstruieren zunächst das in +Abbildung~\ref{buch:eigenwerte:fig:wurzelverfahren} +visualierte Verfahren, mit dem für jede Zahl $a\in[0,1]$ +die Wurzel $\sqrt{a}$ berechnet werden kann. +Sei $u < \sqrt{a}$ eine Approximation der Wurzel. +Die Approximation ist der exakte Wert der Lösung, wenn $a-u^2=0$. +In jedem anderen Fall muss $u$ um einen Betrag $d$ vergrössert werden. +Natürlich muss immer noch $u+d<\sqrt{a}$ sein. +Man kann die maximal zulässige Korrektur $d$ geometrisch abschätzen, +wie dies in Abbildung~\ref{buch:eigenwerte:fig:wurzelverfahren} +skizziert ist. +Die maximale Steigung des Graphen der Funktion $u\mapsto u^2$ ist $2$, +daher darf man $u$ maximal um die Hälfte der Differenz $a-u^2$ (grün) +vergrössern, also $d=\frac12(a-u^2)$. +Die Rekursionsformel +\[ +u_{n+1} = u_n + d = u_n + \frac12(a-u_n^2) +\] +mit dem Startwert $u_0=0$ liefert daher eine +Folge, die gegen $\sqrt{a}$ konvergiert. \end{proof} -Der entscheidende Schritt des Beweises ist, dass man die Betragsfunktion -konstruieren kann. +\begin{proof}[Beweis des Satzes von Stone-Weierstrass] +Da $A$ eine Algebra ist, ist mit jeder Funktion $f\in A$ für jedes Polynome +$p\in\mathbb{R}[X]$ auch $p(f)$ eine Funktion in $A$. +\begin{enumerate} +\item Schritt: Für jede Funktion $f\in A$ lässt sich auch $|f|$ durch +Funktionen in $A$ beliebig genau durch eine monoton wachsende Folge +von Funktionen approximieren. + +Da $A$ eine Algebra ist, ist $f^2\in A$. +Sei ausserdem $m^2=\sup \{f(x)^2\;|\;x\in K\}$, so dass $f^2/m^2$ eine Funktion +mit Werten im Intervall $[0,1]$ ist. +Die Funktionen $f_n(x)=mu_n(f(x)^2/m^2)$ sind ebenfalls in $A$ und +approximieren gleichmässig $\sqrt{f(x)^2}=|f(x)|$. +\item Schritt: Für zwei Funktionen $f,g\in A$ gibt es eine monoton wachsende +Folge, die $\max(f,g)$ gleichmässig beliebig genau approximiert +und eine monoton fallende Folge, die $\min(f,g)$ gleichmässig beliebig +genau approximiert. + +Diese Folgen können aus der Approximationsfolge für den Betrag einer +Funktion und den Identitäten +\begin{align*} +\max(f,g) &= \frac12(f+g+|f-g|) \\ +\min(f,g) &= \frac12(f+g-|f-g|) +\end{align*} +gefunden werden. +\item Schritt: Zu zwei beliebigen Punkten $x,y\in K$ und Werten +$\alpha,\beta\in\mathbb{R}$ gibt es immer eine Funktion in $A$, +die in den Punkten $x,y$ die vorgegebenen Werte $\alpha$ bzw.~$\beta$ +annimmt. +Da $A$ die Punkte trennt, gibt es eine Funktion $f_0$ mit $f_0(x)\ne f_0(y)$. +Dann ist die Funktion +\[ +f(t) += +\beta + \frac{f_0(t)-f_0(y)}{f_0(x)-f_0(y)}(\alpha-\beta) +\] +wohldefiniert und nimmt die verlangten Werte an. +\item Schritt: Zu jeder stetigen Funktion $f\colon K\to\mathbb{R}$, jedem +Punkt $x\in K$ und jedem $\varepsilon>0$ gibt es eine Funktion $g\in A$ derart, +dass $g(x)=f(x)$ und $g(y) \le f(y)+\varepsilon$ für alle $y\in K$. + +Zu jedem $z\in K$ gibt es eine Funktion in $A$ mit +$h_z(x)=f(x)$ und $h_z(z) \le f(z)+\frac12\varepsilon$. +Wegen der Stetigkeit von $h_z$ gibt es eine Umgebung $V_z$ von $z$, in der +immer noch gilt $h_z(y)\le f(y)+\varepsilon$ für $y\in V_z$. +Wegen der Kompaktheit von $K$ kann man endlich viele Punkte $z_i$ wählen +derart, dass die $V_{z_i}$ immer noch $K$ überdecken. +Dann erfüllt die Funktion +\( +g(z) = \inf h_{z_i} +\) +die Bedingungen $g(x) = f(x)$ und für $z\in V_{z_i}$ +\[ +g(z) = \inf_{j} h_{z_j}(z) \le h_{z_i}(z) \le f(z)+\varepsilon. +\] +Ausserdem ist $g(z)$ nach dem zweiten Schritt beliebig genau durch +Funktionen in $A$ approximierbar. +\item Schritt: Jede stetige Funktion $f\colon K\to\mathbb{R}$ kann +beliebig genau durch Funktionen in $A$ approximiert werden. +Sei $\varepsilon > 0$. + +Nach dem vierten Schritt gibt es für jedes $y\in K$ eine Funktion $g_y$ +derart, dass $g_y(y)=f(y)$ und $g_y(x) \le f(x) + \varepsilon$ für +$x\in K$. +Da $g_y$ stetig ist, gilt ausserdem $g_y(x) \ge f(x) -\varepsilon$ in +einer Umgebung $U_y$ von $y$. +Da $K$ kompakt ist, kann man endlich viele $y_i$ derart, dass die $U_{y_i}$ +immer noch ganz $K$ überdecken. +Die Funktion $g=\sup g_{y_i}$ erfüllt dann überall $g(x) \le f(x)+\varepsilon$, +weil jede der Funktionen $g_y$ diese Ungleichung erfüllt. +Ausserdem gilt für $x\in V_{x_j}$ +\[ +g(x) = \sup_i g_{x_i}(x) \ge g_{x_j}(x) \ge f(x)-\varepsilon. +\] +Somit ist +\[ +|f(x)-g(x)| \le \varepsilon. +\] +Damit ist $f(x)$ beliebig nahe an der Funktion $g(x)$, die sich +beliebig genau durch Funktionen aus $A$ approximieren lässt. +\qedhere +\end{enumerate} +\end{proof} + +Im ersten Schritt des Beweises ist ganz entscheidend, dass man die +Betragsfunktion konstruieren kann. Daraus leiten sich dann alle folgenden Konstruktionen ab. \subsubsection{Anwendung auf symmetrische und hermitesche Matrizen} @@ -347,13 +491,66 @@ Folge $p_n(A)$ für Polynomfolgen, die $\operatorname{Sp}(A)$ gleichmässig gegen $f$ konvergieren. \end{satz} -\subsubsection{Der Satz von Stone-Weierstrass für komplexe Funktionen} +\subsubsection{Unmöglichkeit der Approximation von $z\mapsto \overline{z}$ +in $\mathbb{C}[z]$} Der Satz~\ref{buch:satz:stone-weierstrass} von Stone-Weierstrass für reelle Funktionen gilt nicht für komplexe Funktionen. -Der Grund ist, dass im Beweis benötigt wird, dass man den Betrag -einer Funktion approximieren können muss. -Dies geschah, indem zunächst eine Polynom-Approximation für die -Quadratwurzel konstruiert wurde, die dann auf das Quadrat einer +In diesem Abschnitt zeigen wir, dass sich die Funktion $z\mapsto\overline{z}$ +auf der Einheitskreisscheibe $K=\{z\in\mathbb{C}\;|\; |z|\le 1\}$ nicht +gleichmässig durch Polynome $p(z)$ mit komplexen Koeffizienten approximieren +lässt. + +Wäre eine solche Approximation möglich, dann könnte man $\overline{z}$ +auch durch eine Potenzreihe +\[ +\overline{z} += +\sum_{k=0}^\infty a_kz^k +\] +darstellen. +Das Wegintegral beider Seiten über den Pfad $\gamma(t) = e^{it}$ +in der komplexen Ebene ist +\begin{align*} +\oint_\gamma z^k\,dz +&= +\int_0^{2\pi} e^{ikt} ie^{it}\,dt += +i\int_0^{2\pi} e^{it(k+1)}\,dt += +i\biggl[ \frac{1}{i(k+1)} e^{it(k+1)}\biggr]_0^{2\pi} += +0 +\\ +\oint_\gamma +\sum_{k=0}^\infty a_kz^k +\,dz +&= +\sum_{k=0}^\infty a_k \oint_\gamma z^k\,dz += +\sum_{k=0}^\infty a_k\cdot 0 += +0 +\\ +\oint_\gamma \overline{z}\,dz +&= +\int_0^{2\pi} e^{it} ie^{it}\,dt += +i\int_0^{2\pi} \,dt = 2\pi i, +\end{align*} +dabei wurde $\overline{\gamma}(t)=e^{-it}$ verwendet. +Insbesondere widersprechen sich die beiden Integrale. +Die ursprüngliche Annahmen, $\overline{z}$ lasse sich durch Polynome +gleichmässig approximieren, muss daher verworfen werden. + +\subsubsection{Der Satz von Stone-Weierstrass für komplexe Funktionen} +Der Satz von Stone-Weierstrass kann nach dem vorangegangene Abschnitt +also nicht gelten. +Um den Beweis des Satzes~\ref{buch:satz:stone-weierstrass} +auf komplexe Zahlen zu übertragen, muss im ersten Schritt ein Weg +gefunden werden, den Betrag einer Funktion zu approximieren. + +Im reellen Fall geschah dies, indem zunächst eine Polynom-Approximation +für die Quadratwurzel konstruiert wurde, die dann auf das Quadrat einer Funktion angewendet wurde. Der Betrag einer komplexen Zahl $z$ ist aber nicht allein aus $z$ berechenbar, man braucht in irgend einer Form Zugang zu Real- diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4001.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4001.tex index 2fab61a..dd82067 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4001.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4001.tex @@ -2,7 +2,7 @@ Verwenden Sie die Matrixdarstellung komplexer Zahlen, um $i^i$ zu berechnen. \begin{hinweis} -Verwenden Sie die eulersche Formel um $\log J$ zu bestimmen. +Verwenden Sie die Eulersche Formel um $\log J$ zu bestimmen. \end{hinweis} \begin{loesung} @@ -14,11 +14,11 @@ Zunächst erinnern wir an die Eulersche Formel = \sum_{k=0}^\infty \frac{t^k J^k}{k!} = -\sum_{i=0}^\infty \frac{t^{2i}(-1)^i}{(2i)!}\cdot E +\sum_{i=0}^\infty \frac{t^{2i}(-1)^i}{(2i)!}\cdot I + \sum_{i=0}^\infty \frac{t^{2i+1}(-1)^i}{(2i+1)!}\cdot J = -\cos t\cdot E +\cos t\cdot I + \sin t\cdot J. \] @@ -49,7 +49,7 @@ J = \begin{pmatrix} Als nächstes müssen wir $J\log J$ berechnen. Aus \eqref{4001:logvalue} folgt \[ -J\log J = J\cdot \frac{\pi}2J = - \frac{\pi}2 \cdot E. +J\log J = J\cdot \frac{\pi}2J = - \frac{\pi}2 \cdot I. \] Darauf ist die Exponentialreihe auszuwerten, also \[ @@ -57,7 +57,7 @@ J^J = \exp (J\log J) = -\exp(-\frac{\pi}2 E) +\exp(-\frac{\pi}2 I) = \exp \begin{pmatrix} @@ -70,7 +70,7 @@ e^{-\frac{\pi}2}&0\\ 0&e^{-\frac{\pi}2} \end{pmatrix} = -e^{-\frac{\pi}2} E. +e^{-\frac{\pi}2} I. \] Als komplexe Zahlen ausgedrückt folgt also $i^i = e^{-\frac{\pi}2}$. \end{loesung} diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4003.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4003.tex index 3cd9959..b749356 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4003.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4003.tex @@ -78,11 +78,11 @@ Ab_1 = 3b_1 \] ab. -Diesen Vektor können wir auch finden, indem wir $\mathcal{J}(A-eE)$ +Diesen Vektor können wir auch finden, indem wir $\mathcal{J}(A-2I)$ bestimmen. -Die vierte Potenz von $A-2E$ ist +Die vierte Potenz von $A-2I$ ist \begin{equation} -(A-2E)^4 +(A-2I)^4 = \begin{pmatrix} 0& 0& 0& 0\\ @@ -108,13 +108,13 @@ b_4 = \begin{pmatrix}0\\0\\1\\2\end{pmatrix} \] -für den Kern $\mathcal{K}(A-2E)$ ablesen. -Da $\lambda=2$ der einzige andere Eigenwert ist, muss $\mathcal{K}(A-2E) -= \mathcal{J}(A-3E)$ sein. -Dies lässt sich überprüfen, indem wir die vierte Potenz von $A-2E$ +für den Kern $\mathcal{K}(A-2I)$ ablesen. +Da $\lambda=2$ der einzige andere Eigenwert ist, muss $\mathcal{K}(A-2I) += \mathcal{J}(A-3I)$ sein. +Dies lässt sich überprüfen, indem wir die vierte Potenz von $A-2I$ berechnen, sie ist \[ -(A-2E)^4 +(A-2I)^4 = \begin{pmatrix} 79& -26& 152& -152\\ @@ -124,7 +124,7 @@ berechnen, sie ist \end{pmatrix}. \] Die Spaltenvektoren lassen sich alle durch die Vektoren $b_2$, $b_3$ -und $b_4$ ausdrücken, also ist $\mathcal{J}(A-2E)=\langle b_2,b_3,b_4\rangle$. +und $b_4$ ausdrücken, also ist $\mathcal{J}(A-2I)=\langle b_2,b_3,b_4\rangle$. Indem die Vektoren $b_i$ als Spalten in eine Matrix $T$ schreibt, kann man jetzt berechnen, wie die Matrix der linearen Abbildung in dieser neuen @@ -154,16 +154,16 @@ A_1 \end{pmatrix} \] in der rechten unteren Ecke hat den dreifachen Eigenwert $2$, -und die Potenzen von $A_1-2E$ sind +und die Potenzen von $A_1-2I$ sind \[ -A_1-2E +A_1-2I \begin{pmatrix} -15 & 5& 29\\ -27 & 9& 51\\ -3 & 1& 6 \end{pmatrix} ,\qquad -(A_1-2E)^2 +(A_1-2I)^2 = \begin{pmatrix} 3 & -1 & -6\\ @@ -171,10 +171,10 @@ A_1-2E 0 & 0 & 0\\ \end{pmatrix} ,\qquad -(A_1-2E)^3=0. +(A_1-2I)^3=0. \] Für die Jordan-Normalform brauchen wir einen von $0$ verschiedenen -Vektor im Kern von $(A_1-2E)^2$, zum Beispiel den Vektor mit den +Vektor im Kern von $(A_1-2I)^2$, zum Beispiel den Vektor mit den Komponenten $1,3,1$. Man beachte aber, dass diese Komponenten jetzt in der neuen Basis $b_2,\dots,b_4$ zu verstehen sind, d.~h.~der Vektor, den wir suchen, ist @@ -185,7 +185,7 @@ b_1+ 3b_2+b_3 = \begin{pmatrix}1\\3\\1\\2\end{pmatrix}. \] -Jetzt berechnen wir die Bilder von $c_3$ unter $A-2E$: +Jetzt berechnen wir die Bilder von $c_3$ unter $A-2I$: \[ c_2 = diff --git a/buch/chapters/60-gruppen/lie-algebren.tex b/buch/chapters/60-gruppen/lie-algebren.tex index 6c6b74b..366d280 100644 --- a/buch/chapters/60-gruppen/lie-algebren.tex +++ b/buch/chapters/60-gruppen/lie-algebren.tex @@ -118,7 +118,7 @@ D_\alpha &= \sum_{k=0}^\infty \frac{(J\alpha)^k}{k!} = -\biggl( +I\biggl( 1-\frac{\alpha^2}{2!} + \frac{\alpha^4}{4!} -\frac{\alpha^6}{6!}+\dots \biggr) + -- cgit v1.2.1 From d6cada0da41ae105c293804d5b314d88c72bbcee Mon Sep 17 00:00:00 2001 From: Roy Seitz Date: Thu, 1 Apr 2021 13:39:23 +0200 Subject: Typo. --- buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex index 28f4d2c..8435bf3 100644 --- a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex +++ b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex @@ -1,4 +1,4 @@ -Das Polynom $m(X)=X^2+X+1$ ist als Polynom in $\mathbb{F}_3[X]$ irreduzibel. +Das Polynom $m(X)=X^2+2X+2$ ist als Polynom in $\mathbb{F}_3[X]$ irreduzibel. Dies bedeutet, dass der Ring der Polynome $\mathbb{F}_3[X] / (m(X))$ ein Körper ist, man bezeichnet ihn auch mit $\mathbb{F}_3(\alpha)$, wobei man sich $\alpha$ als eine Nullstelle von $m(X)$ -- cgit v1.2.1 From e3672b14f72766592748d50c0162f7544c5df907 Mon Sep 17 00:00:00 2001 From: Roy Seitz Date: Thu, 1 Apr 2021 15:20:39 +0200 Subject: =?UTF-8?q?Musterl=C3=B6sung=20korrigiert.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../30-endlichekoerper/uebungsaufgaben/3005.tex | 121 ++++++++++++++------- 1 file changed, 81 insertions(+), 40 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex index 8435bf3..65c18a2 100644 --- a/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex +++ b/buch/chapters/30-endlichekoerper/uebungsaufgaben/3005.tex @@ -1,10 +1,12 @@ +% !TeX spellcheck = de_CH Das Polynom $m(X)=X^2+2X+2$ ist als Polynom in $\mathbb{F}_3[X]$ irreduzibel. Dies bedeutet, dass der Ring der Polynome $\mathbb{F}_3[X] / (m(X))$ -ein Körper ist, man bezeichnet ihn auch mit $\mathbb{F}_3(\alpha)$, -wobei man sich $\alpha$ als eine Nullstelle von $m(X)$ +ein Körper ist. +Man bezeichnet ihn auch mit $\mathbb{F}_3(\alpha)$, +wobei man sich $\alpha$ als Nullstelle von $m(X)$ oder als die Matrix \[ -\alpha = \begin{pmatrix} 0&2\\1&2\end{pmatrix} +\alpha = \begin{pmatrix} 0&1\\1&1\end{pmatrix} \] vorstellen kann. \begin{teilaufgaben} @@ -70,17 +72,30 @@ Die Additions- und Multiplikationstabelle von $\mathbb{F}_3$ ist \end{tikzpicture} \end{center} \item -Wegen $m(\alpha)=\alpha^2+\alpha+1=0$ folgt $\alpha+1+\alpha^{-1}=0$ -oder $\alpha^{-1} = -\alpha - 1 = 2+2\alpha$. +Aus $m(\alpha)=\alpha^2+2\alpha+2=0$ folgt +\begin{align*} + \alpha + 2 + 2\alpha^{-1} + &= + 0 + \\ + 2\alpha^{-1} + &= + 2\alpha + 1 + \\ + \alpha^{-1} + &= + \alpha + 2 + . +\end{align*} Als Matrix kann man \[ \alpha^{-1} = -2\alpha + 2 +\alpha + 2 = \begin{pmatrix} -0&4\\ -2&4 +0&1\\ +1&1 \end{pmatrix} + \begin{pmatrix} @@ -88,10 +103,10 @@ Als Matrix kann man \end{pmatrix} = \begin{pmatrix} -2&4\\2&2 +2&1\\1&3 \end{pmatrix} \equiv -\begin{pmatrix}2&1\\2&0\end{pmatrix} +\begin{pmatrix}2&1\\1&0\end{pmatrix} \mod 3 \] schreiben und durch Nachrechnen verifizieren dass, tatsächlich gilt @@ -99,17 +114,17 @@ schreiben und durch Nachrechnen verifizieren dass, tatsächlich gilt \alpha\alpha^{-1} = \begin{pmatrix} -0&2\\ -1&2 +0&1\\ +1&1 \end{pmatrix} \begin{pmatrix} 2&1\\ -2&0 +1&0 \end{pmatrix} = \begin{pmatrix} -4&0\\ -6&1 +1&0\\ +3&1 \end{pmatrix} \equiv \begin{pmatrix} @@ -125,9 +140,11 @@ Im ersten Schritt ist es \[ \arraycolsep=1.4pt \begin{array}{rcrcrcrcrcr} - \llap{$($}X^2&+&X&+&1\rlap{$)$}&\;:&(X&+&1)&=&X = q_1\\ -\llap{$-($}X^2&+&X\rlap{$)$}& & & & & & & & \\ \cline{1-3} - & &0&+&1 &\rlap{$\mathstrut = r_1$}\phantom{)}& & & & & \\ + \llap{$($}X^2&+&2X&+&2\rlap{$)$}&\;:&(X&+&1)&=&X + 1 = q_1\\ + \llap{$-($}X^2&+&X\rlap{$)$}& & & & & & & & \\ \cline{1-3} + & &X&+&2 & & & & & & \\ + & & \llap{$-($}X&+&1\rlap{$)$} & & & & & & \\ \cline{3-5} + & & & &1 &\rlap{$\mathstrut = r_1$}\phantom{)}& & & & &\\ \end{array} \] Die nächste Division ist $(X+1) : 1$, die als Quotient $q_2=X+1$ und den @@ -152,53 +169,77 @@ Q(q_1) 0&1\\1&2X+2 \end{pmatrix} \begin{pmatrix} -0&1\\{\color{red}1}&{\color{red}2X} +0&1\\1&2X+2 \end{pmatrix} = \begin{pmatrix} -{\color{red}1}&{\color{red}2X}\\ -2X&X^2+X+1 +1&2X+2\\ +2X+2&X^2+X+2 \end{pmatrix}. \end{align*} -Die gesuchten Polynome sind $s=1$ und $t=2X$ und man kann nachrechnen, +Die gesuchten Polynome sind $s=1$ und $t=2X+2$ und man kann nachrechnen, dass \begin{align*} s\cdot m(X) + t\cdot (X+1) &= -X^2+X+1 + 2X\cdot (X+1) -= -X^2+X+1 + 2X^2 + 2X +X^2+2X+2 + (2X+2)\cdot (X+1) \\ -&= 3X^2+3X+1\equiv 1 \mod 3. +&= +X^2+2X+2 + 2X^2 + 4X + 2 +\\ +&= 3X^2+6X+1\\ +&\equiv 1 \mod 3. \end{align*} Natürlich kann man $s$ und $t$ auch mit der erweiterten Tabelle finden: \begin{center} \begin{tabular}{|>{$}c<{$}|>{$}c<{$}>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}>{$}c<{$}|} \hline -k& a_k&b_k& q_k&r_k& c_k& d_k\\ +k& a_k&b_k & q_k&r_k& c_k& d_k\\ \hline - & & & & & 1& 0\\ -0&X^2+X+1&X+1& X & 1& 0& 1\\ -1& X+1& 1& X+1& 0&{\color{red} 1}&{\color{red} 2X}\\ -2& 1& 0& & 0&2X+2& 2X^2+2X\\ + & & & & & 1& 0\\ +0&X^2+2X+2&X+1& X+1& 1& 0& 1\\ +1& X+1& 1& X+1& 0& 1& 2X+2\\ +2& 1& 0& & 0&2X+2&X^2+2X+2\\ \hline \end{tabular} \end{center} -In allen Fällen ist also $(1+X)^{-1} = 2X$. +In allen Fällen ist also $(X+1)^{-1} = 2X+2$. \item -Wegen $m(\alpha)=0$ ist $\alpha^2=-\alpha-1=2\alpha+2$ und damit +Wegen $m(\alpha)=\alpha^2 + 2\alpha + 2 = 0$ ist +$\alpha^2=-2\alpha-2=\alpha+1$ und damit \begin{align*} \alpha^3 &= -\alpha\cdot \alpha^2 = \alpha (2\alpha +2) = -2\alpha^2 + 2\alpha -= -2(\underbrace{\alpha^2 + \alpha + 1}_{\displaystyle=0} + 2) -= -2\cdot 2 +\alpha\cdot \alpha^2 = \alpha (\alpha +1) = +\alpha^2 + \alpha = -1. +2\alpha+1 +. +\end{align*} +Die restlichen Potenzen von $\alpha$ sind +\begin{align*} + \alpha^4 + &= + \alpha (2\alpha+1) + = 2\alpha^2 + \alpha + = 2\alpha + 2 + \alpha = 2 + \\ + \alpha^5 + &= + 2\alpha + \\ + \alpha^6 + &= + 2\alpha^2 + = + 2\alpha + 2 + \\ + \alpha^7 + &= + 2\alpha^2 + 2\alpha + = + \alpha + 2 \qedhere \end{align*} \end{teilaufgaben} -- cgit v1.2.1 From e0e48e498a5e70bf35b6c7b52cb74f876349c208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 2 Apr 2021 20:12:06 +0200 Subject: add new images --- buch/chapters/40-eigenwerte/images/Makefile | 4 +- buch/chapters/40-eigenwerte/images/minmax.pdf | Bin 0 -> 53375 bytes buch/chapters/40-eigenwerte/images/minmax.tex | 134 +++++++++++++++++++++ buch/chapters/40-eigenwerte/images/sp.pdf | Bin 24022 -> 24019 bytes .../chapters/40-eigenwerte/images/wurzelapprox.pdf | Bin 33171 -> 33171 bytes buch/chapters/40-eigenwerte/spektraltheorie.tex | 25 +++- 6 files changed, 159 insertions(+), 4 deletions(-) create mode 100644 buch/chapters/40-eigenwerte/images/minmax.pdf create mode 100644 buch/chapters/40-eigenwerte/images/minmax.tex (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/images/Makefile b/buch/chapters/40-eigenwerte/images/Makefile index bec12d5..54b36d5 100644 --- a/buch/chapters/40-eigenwerte/images/Makefile +++ b/buch/chapters/40-eigenwerte/images/Makefile @@ -5,7 +5,7 @@ # all: sp.pdf nilpotent.pdf kernbild.pdf kombiniert.pdf \ wurzelapprox.pdf wurzel.pdf dimjk.pdf jknilp.pdf \ - normalform.pdf + normalform.pdf minmax.pdf sp.pdf: sp.tex sppaths.tex pdflatex sp.tex @@ -40,3 +40,5 @@ jknilp.pdf: jknilp.tex normalform.pdf: normalform.tex pdflatex normalform.tex +minmax.pdf: minmax.tex + pdflatex minmax.tex diff --git a/buch/chapters/40-eigenwerte/images/minmax.pdf b/buch/chapters/40-eigenwerte/images/minmax.pdf new file mode 100644 index 0000000..46ed28a Binary files /dev/null and b/buch/chapters/40-eigenwerte/images/minmax.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/minmax.tex b/buch/chapters/40-eigenwerte/images/minmax.tex new file mode 100644 index 0000000..f661d5b --- /dev/null +++ b/buch/chapters/40-eigenwerte/images/minmax.tex @@ -0,0 +1,134 @@ +% +% minmax.tex -- minimum und maximum +% +% (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] + +\definecolor{darkgreen}{rgb}{0,0.5,0} + +\def\mittellinie{ + plot[domain=0:6.2832,samples=400] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159))}) +} + +\begin{scope} + \fill[color=darkgreen!20] + plot[domain=0:6.2832,samples=360] + ({\x},{sin(180*\x/3.1415)}) + -- + plot[domain=6.2832:0,samples=360] + ({\x},{cos(180*\x/3.1415)}) + -- cycle; + \foreach \x in {0.5,1,...,6}{ + \draw[color=darkgreen] + ({\x},{sin(180*\x/3.1415)}) + -- + ({\x},{cos(180*\x/3.1415)}); + } + + \node[color=darkgreen] at (2,-0.8) [left] {$|f(x)-g(x)|$}; + \draw[color=darkgreen,line width=0.3pt] (2,-0.8) -- (2.5,-0.7); + + \draw[color=blue,line width=1.4pt] plot[domain=0:6.29,samples=360] + ({\x},{sin(180*\x/3.1415)}); + \draw[color=red,line width=1.4pt] plot[domain=0:6.29,samples=360] + ({\x},{cos(180*\x/3.1415)}); + \draw[color=purple!50,line width=1.4pt] \mittellinie; + \node[color=purple!50] at (6.2832,0.5) [right] {$\frac12(f(x)+g(x))$}; + + \draw[->] (-0.1,0) -- (6.5,0) coordinate[label={below:$x$}]; + \draw[->] (0,-1.1) -- (0,1.3) coordinate[label={right:$y$}]; + + + \xdef\x{2} + \node[color=blue] at (\x,{sin(180*\x/3.1415)}) [above right] {$f(x)$}; + \pgfmathparse{2.5*3.14159-\x} + \xdef\x{\pgfmathresult} + \node[color=red] at (\x,{cos(180*\x/3.1415)}) [above left] {$g(x)$}; + +\end{scope} + +\draw[->,line width=4pt,color=gray!40] ({3.1415-1},-1.3) -- ({3.1415-2.3},-3); +\draw[->,line width=4pt,color=gray!40] ({3.1415+1},-1.3) -- ({3.1415+2.3},-3); + +\node at ({3.1415-1.75},-2.15) [left] {$\frac12(f(x)+g(x))+\frac12|f(x)-g(x)|$}; +\node at ({3.1415+1.75},-2.15) [right] {$\frac12(f(x)+g(x))-\frac12|f(x)-g(x)|$}; + +\def\s{(-0.1)} + +\begin{scope}[xshift=-3.4cm,yshift=-4.6cm] + \fill[color=darkgreen!20] + \mittellinie + -- + plot[domain=6.2832:0,samples=400] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159)+abs(sin(180*\x/3.14159)-cos(180*\x/3.14159)))}) + -- cycle; + \foreach \x in {0.5,1,...,6}{ + \draw[color=darkgreen] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159)+abs(sin(180*\x/3.14159)-cos(180*\x/3.14159)))}) + -- + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159))}); + } + \draw[color=darkgreen,line width=1.4pt] + plot[domain=6.2832:0,samples=400] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159)+abs(sin(180*\x/3.14159)-cos(180*\x/3.14159)))}); + + \node[color=darkgreen] at (2,-0.3) [left] {$|f(x)-g(x)|$}; + \draw[color=darkgreen,line width=0.3pt] (2,-0.3) -- (2.5,0.2); + + \draw[color=purple!50,line width=1.4pt] \mittellinie; + \pgfmathparse{0.75*3.1415+\s} + \xdef\x{\pgfmathresult} + \node[color=darkgreen] at (\x,{sin(180*\x/3.1415)}) [above right] + {$\max(f(x),g(x))$}; + \node[color=purple!50] at ({1.25*3.1415},-0.7) [below] + {$\frac12(f(x)+g(x))$}; + \draw[->] (-0.1,0) -- (6.5,0) coordinate[label={$x$}]; + \draw[->] (0,-1.1) -- (0,1.3) coordinate[label={right:$y$}]; +\end{scope} + + +\begin{scope}[xshift=+3.4cm,yshift=-4.6cm] + \fill[color=darkgreen!20] + \mittellinie + -- + plot[domain=6.2832:0,samples=400] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159)-abs(sin(180*\x/3.14159)-cos(180*\x/3.14159)))}) + -- cycle; + \foreach \x in {0.5,1,...,6}{ + \draw[color=darkgreen] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159)-abs(sin(180*\x/3.14159)-cos(180*\x/3.14159)))}) + -- + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159))}); + } + \draw[color=darkgreen,line width=1.4pt] + plot[domain=6.2832:0,samples=400] + ({\x},{0.5*(sin(180*\x/3.14159)+cos(180*\x/3.14159)-abs(sin(180*\x/3.14159)-cos(180*\x/3.14159)))}); + + \node[color=darkgreen] at (3,0.3) [right] {$|f(x)-g(x)|$}; + \draw[color=darkgreen,line width=0.3pt] (3,0.3) -- (2.5,-0.4); + + \draw[color=purple!50,line width=1.4pt] \mittellinie; + \pgfmathparse{0.75*3.1415-\s} + \xdef\x{\pgfmathresult} + \node[color=darkgreen] at (\x,{cos(180*\x/3.1415)}) [below left] + {$\min(f(x),g(x))$}; + \node[color=purple!50] at ({0.25*3.1415},0.7) [above right] + {$\frac12(f(x)+g(x))$}; + \draw[->] (-0.1,0) -- (6.5,0) coordinate[label={$x$}]; + \draw[->] (0,-1.1) -- (0,1.3) coordinate[label={right:$y$}]; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/40-eigenwerte/images/sp.pdf b/buch/chapters/40-eigenwerte/images/sp.pdf index d4de984..b93b890 100644 Binary files a/buch/chapters/40-eigenwerte/images/sp.pdf and b/buch/chapters/40-eigenwerte/images/sp.pdf differ diff --git a/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf b/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf index aeb5e5d..01fa714 100644 Binary files a/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf and b/buch/chapters/40-eigenwerte/images/wurzelapprox.pdf differ diff --git a/buch/chapters/40-eigenwerte/spektraltheorie.tex b/buch/chapters/40-eigenwerte/spektraltheorie.tex index 4bf5c42..466b99e 100644 --- a/buch/chapters/40-eigenwerte/spektraltheorie.tex +++ b/buch/chapters/40-eigenwerte/spektraltheorie.tex @@ -327,6 +327,20 @@ ist monoton wachsend und approximiert die Wurzelfunktion $t\mapsto\sqrt{t}$ gleichmässig auf dem Intervall $[0,1]$. \end{satz} +\begin{figure} +\centering +\includegraphics{chapters/40-eigenwerte/images/minmax.pdf} +\caption{Graphische Erklärung der +Identitäten~\eqref{buch:eigenwerte:eqn:minmax} für +$\max(f(x),g(x))$ und $\min(f(x),g(x))$. +Die purpurrote Kurve stellt den Mittelwert von $f(x)$ und $g(x)$ dar, +die vertikalen grünen Linien haben die Länge der Differenz $|f(x)-g(x)|$. +Das Maximum erhält man, indem man den halben Betrag der Differenz zum +Mittelwert hinzuaddiert, das Minimum erhält man durch Subtraktion +der selben Grösse. +\label{buch:eigenwerte:fig:minmax}} +\end{figure} + \begin{proof}[Beweis] Wer konstruieren zunächst das in Abbildung~\ref{buch:eigenwerte:fig:wurzelverfahren} @@ -368,13 +382,18 @@ Folge, die $\max(f,g)$ gleichmässig beliebig genau approximiert und eine monoton fallende Folge, die $\min(f,g)$ gleichmässig beliebig genau approximiert. + Diese Folgen können aus der Approximationsfolge für den Betrag einer Funktion und den Identitäten -\begin{align*} +\begin{equation} +\begin{aligned} \max(f,g) &= \frac12(f+g+|f-g|) \\ \min(f,g) &= \frac12(f+g-|f-g|) -\end{align*} -gefunden werden. +\end{aligned} +\label{buch:eigenwerte:eqn:minmax} +\end{equation} +gefunden werden, die in Abbildung~\ref{buch:eigenwerte:fig:minmax} +graphisch erklärt werden. \item Schritt: Zu zwei beliebigen Punkten $x,y\in K$ und Werten $\alpha,\beta\in\mathbb{R}$ gibt es immer eine Funktion in $A$, die in den Punkten $x,y$ die vorgegebenen Werte $\alpha$ bzw.~$\beta$ -- cgit v1.2.1 From ea9c6380f729ddd512fa59c2d0b67cc7cc8ab56c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 2 Apr 2021 21:43:03 +0200 Subject: kontinuierliche Symmetrien --- buch/chapters/60-gruppen/images/phasenraum.pdf | Bin 0 -> 24581 bytes buch/chapters/60-gruppen/images/phasenraum.tex | 45 +++++++ buch/chapters/60-gruppen/symmetrien.tex | 177 ++++++++++++++++++++++++- 3 files changed, 221 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/60-gruppen/images/phasenraum.pdf create mode 100644 buch/chapters/60-gruppen/images/phasenraum.tex (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/images/phasenraum.pdf b/buch/chapters/60-gruppen/images/phasenraum.pdf new file mode 100644 index 0000000..2ab46e4 Binary files /dev/null and b/buch/chapters/60-gruppen/images/phasenraum.pdf differ diff --git a/buch/chapters/60-gruppen/images/phasenraum.tex b/buch/chapters/60-gruppen/images/phasenraum.tex new file mode 100644 index 0000000..136d91d --- /dev/null +++ b/buch/chapters/60-gruppen/images/phasenraum.tex @@ -0,0 +1,45 @@ +% +% phasenraum.tex -- +% +% (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] + +\pgfmathparse{1/sqrt(2)} +\xdef\o{\pgfmathresult} + +\def\punkt#1#2{ ({#2*cos(#1)},{\o*#2*sin(#1)}) } + +\foreach \r in {1,2,...,6}{ + \draw[line width=0.5pt] + plot[domain=0:359,samples=360] + ({\r*cos(\x)},{\o*\r*sin(\x)}) -- cycle; +} +\draw[color=red,line width=1.4pt] + plot[domain=0:359,samples=360] + ({4*cos(\x)},{\o*4*sin(\x)}) -- cycle; + +\draw[->] (-6.1,0) -- (6.3,0) coordinate[label={$x$}]; +\draw[->] (0,-4.4) -- (0,4.7) coordinate[label={right:$p$}]; + +\node at \punkt{0}{4} [below right] {$x_0$}; +\node at \punkt{90}{4} [above left] {$\omega x_0$}; + +\fill[color=white] \punkt{60}{4} rectangle \punkt{58}{5.9}; + +\fill[color=red] \punkt{60}{4} circle[radius=0.08]; +\node[color=red] at \punkt{60}{4} [above right] + {$\begin{pmatrix}x(t)\\p(t)\end{pmatrix}$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/60-gruppen/symmetrien.tex b/buch/chapters/60-gruppen/symmetrien.tex index cb07475..80f6534 100644 --- a/buch/chapters/60-gruppen/symmetrien.tex +++ b/buch/chapters/60-gruppen/symmetrien.tex @@ -93,8 +93,183 @@ ihre Normale erhalten. Die folgenden Beispiele sollen zeigen, wie solche Symmetriedefinitionen auf algebraische Bedingungen an die Matrixelemente führen. +Zu jeder Abbildung $f\colon\mathbb{R}^n\to\mathbb{R}^n$, unter der +ein geometrisches Objekt in $\mathbb{R}^n$ symmetrisch ist, können wir +sofort weitere Abbildungen angeben, die ebenfalls Symmetrien sind. +Zum Beispiel sind die iterierten Abbildungen $f\circ f$, $f\circ f\circ f$ +u.~s.~w., die wir auch $f^n$ mit $n\in\mathbb{N}$ schreiben werden, +ebenfalls Symmetrien. +Wenn die Symmetrie auch umkehrbar ist, dann gilt dies sogar für alle +$n\in\mathbb{Z}$. +Wir erhalten so eine Abbildung +$\varphi\colon \mathbb{Z}\to \operatorname{GL}_n(\mathbb{R}):n\mapsto f^n$ +mit den Eigenschaften $\varphi(0)=f^0 = I$ und +$\varphi(n+m)=f^{n+m}=f^n\circ f^m = \varphi(n)\circ\varphi(m)$. +$\varphi$ ist ein Homomorphismus der Gruppe $\mathbb{Z}$ in die Gruppe +$\operatorname{GL}_n(\mathbb{R})$. +Wir nennen dies eine {\em diskrete Symmetrie}. -\subsection{Manningfaltigkeiten +\subsection{Kontinuierliche Symmetrien +\label{buch:subsection:kontinuierliche-symmetrien}} +Von besonderem Interesse sind kontinuierliche Symmetrien. +Dies sind Abbildungen eines Systems, die von einem Parameter +abhängen. +Zum Beispiel können wir Drehungen der Ebene $\mathbb{R}^2$ um den +Winkel $\alpha$ durch Matrizen +\[ +D_{\alpha} += +\begin{pmatrix} +\cos\alpha&-\sin\alpha\\ +\sin\alpha& \cos\alpha +\end{pmatrix} +\] +beschrieben werden. +Ein Kreis um den Nullpunkt bleibt unter jeder dieser Drehungen invariant. +Im Gegensatz dazu sind alle $3n$-Ecke mit Schwerpunkt $0$ nur invariant +unter der einen Drehung $D_{\frac{2\pi}3}$ invariant. +Die kleinste Menge, die einen vorgegebenen Punkt enthält und unter +allen Drehungen $D_\alpha$ invariant ist, ist immer ein Kreis um +den Nullpunkt. + +\begin{definition} +Ein Homomorphismus $\varphi\colon\mathbb{R}\to\operatorname{GL}_n(\mathbb{R})$ +von der additiven Gruppe $\mathbb{R}$ in die allgemeine lineare Gruppe +heisst eine {\em Einparameter-Untergruppe} von +$\operatorname{GL}(\mathbb{R})$. +\end{definition} + +Die Abbildung +\[ +\varphi +\colon +\mathbb{R}\to\operatorname{GL}_n(\mathbb{R}) +: +\alpha \mapsto +D_{\alpha} += +\begin{pmatrix} +\cos\alpha&-\sin\alpha\\ +\sin\alpha& \cos\alpha +\end{pmatrix} +\] +ist also eine Einparameter-Untergruppe von $\operatorname{GL}_2(\mathbb{R})$. + +\subsubsection{Der harmonische Oszillator} +Eine Masse $m$ verbunden mit einer Feder mit der Federkonstanten $K$ +schwingt um die Ruhelage $x=0$ entsprechend der Differentialgleichung +\[ +m\frac{d^2}{dt^2} x(t) = -Kx(t). +\] +Die Kreisfrequenz der Schwingung ist +\[ +\omega = \sqrt{\frac{K}{m}}. +\] +Das System kann als zweidimensionales System im Phasenraum mit den +Koordinaten $x_1=x$ und $x_2=p=m\dot{x}$ beschrieben werden. +Die zweidimensionale Differentialgleichung ist +\begin{equation} +\left. +\begin{aligned} +\dot{x}(t) &= \frac{1}{m}p(t)\\ +\dot{p}(t) &= -Kx(t) +\end{aligned} +\quad +\right\} +\qquad\Rightarrow\qquad +\frac{d}{dt} +\begin{pmatrix}x(t)\\p(t)\end{pmatrix} += +\begin{pmatrix} +0&\frac{1}{m}\\ +-K&0 +\end{pmatrix} +\begin{pmatrix}x(t)\\p(t)\end{pmatrix}. +\label{chapter:gruppen:eqn:phasenraumdgl} +\end{equation} +Die Lösung der Differentialgleichung für die Anfangsbedingung $x(0)=1$ und +$p(0)=0$ ist +\[ +x(t) += +\cos \omega t +\qquad\Rightarrow\qquad +p(t) += +-\omega \sin\omega t, +\] +die Lösung zur Anfangsbedingung $x(0)=0$ und $p(0)=1$ ist +\[ +x(t) = \frac{1}{\omega} \sin\omega t, +\qquad +p(t) = \cos \omega t. +\] +In Matrixform kann man die allgemeine Lösung zur Anfangsbedingun $x(0)=x_0$ +und $p(0)=p_0$ +\[ +\begin{pmatrix} +x(t)\\ +p(t) +\end{pmatrix} += +\underbrace{ +\begin{pmatrix} + \cos \omega t & \frac{1}{\omega} \sin\omega t \\ +-\omega \sin\omega t & \cos\omega t +\end{pmatrix} +}_{\Phi_t} +\begin{pmatrix}x_0\\p_0\end{pmatrix} +\] +schreiben. +Die Matrizen $\Phi_t$ bilden eine Einparameter-Untergruppe von +$\operatorname{GL}_n(\mathbb{R})$, da +\begin{align*} +\Phi_s\Phi_t +&= +\begin{pmatrix} + \cos\omega s & \frac{1}{\omega} \sin\omega s \\ +-\omega \sin\omega s & \cos\omega s +\end{pmatrix} +\begin{pmatrix} + \cos\omega t & \frac{1}{\omega} \sin\omega t \\ +-\omega \sin\omega t & \cos\omega t +\end{pmatrix} +\\ +&= +\begin{pmatrix} +\cos\omega s \cos\omega t - \sin\omega s \sin\omega t +& \frac{1}{\omega} ( \cos\omega s \sin\omega t + \sin\omega s \cos \omega t) +\\ +-\omega (\sin\omega s \cos\omega t + \cos\omega s \sin\omega t ) +& \cos\omega s \cos\omega t -\sin\omega s \sin\omega t +\end{pmatrix} +\\ +&= +\begin{pmatrix} + \cos\omega(s+t) & \frac{1}{\omega}\sin\omega(s+t) \\ +-\omega \sin\omega(s+t) & \cos\omega(s+t) +\end{pmatrix} += +\Phi_{s+t} +\end{align*} +gilt. +Die Lösungen der +Differentialgleichung~\eqref{chapter:gruppen:eqn:phasenraumdgl} +sind in Abbildung~\ref{chapter:gruppen:fig:phasenraum} +Die Matrizen $\Phi_t$ beschreiben eine kontinuierliche Symmetrie +des Differentialgleichungssystems, welches den harmonischen Oszillator +beschreibt. + +\begin{figure} +\centering +\includegraphics{chapters/60-gruppen/images/phasenraum.pdf} +\caption{Die Lösungen der +Differentialgleichung~\eqref{chapter:gruppen:eqn:phasenraumdgl} +im Phasenraum sind Ellipsen mit Halbachsenverhältnis $\omega^{-1}$. +\label{chapter:gruppen:fig:phasenraum}} +\end{figure} + +\subsection{Mannigfaltigkeiten \label{buch:subsection:mannigfaltigkeit}} \subsection{Der Satz von Noether -- cgit v1.2.1 From 260bd654d33b27c69b47e07217fa2212ef835fbd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 3 Apr 2021 16:53:38 +0200 Subject: add new images --- buch/chapters/60-gruppen/images/Makefile | 19 ++ buch/chapters/60-gruppen/images/karten.pdf | Bin 0 -> 486440 bytes buch/chapters/60-gruppen/images/karten.tex | 111 ++++++++++ buch/chapters/60-gruppen/images/kartenkreis.pdf | Bin 0 -> 26310 bytes buch/chapters/60-gruppen/images/kartenkreis.tex | 179 ++++++++++++++++ buch/chapters/60-gruppen/images/phasenraum.pdf | Bin 24581 -> 72789 bytes buch/chapters/60-gruppen/images/phasenraum.tex | 72 +++++-- buch/chapters/60-gruppen/images/torus.png | Bin 0 -> 456476 bytes buch/chapters/60-gruppen/images/torus.pov | 189 +++++++++++++++++ buch/chapters/60-gruppen/symmetrien.tex | 264 +++++++++++++++++++++++- 10 files changed, 812 insertions(+), 22 deletions(-) create mode 100644 buch/chapters/60-gruppen/images/Makefile create mode 100644 buch/chapters/60-gruppen/images/karten.pdf create mode 100644 buch/chapters/60-gruppen/images/karten.tex create mode 100644 buch/chapters/60-gruppen/images/kartenkreis.pdf create mode 100644 buch/chapters/60-gruppen/images/kartenkreis.tex create mode 100644 buch/chapters/60-gruppen/images/torus.png create mode 100644 buch/chapters/60-gruppen/images/torus.pov (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/images/Makefile b/buch/chapters/60-gruppen/images/Makefile new file mode 100644 index 0000000..bc65a71 --- /dev/null +++ b/buch/chapters/60-gruppen/images/Makefile @@ -0,0 +1,19 @@ +# +# Makefile +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +all: phasenraum.pdf kartenkreis.pdf karten.pdf + +phasenraum.pdf: phasenraum.tex + pdflatex phasenraum.tex + +kartenkreis.pdf: kartenkreis.tex + pdflatex kartenkreis.tex + +torus.png: torus.pov + povray +A0.1 -W1920 -H1080 -Otorus.png torus.pov + +karten.pdf: karten.tex torus.png + pdflatex karten.tex + diff --git a/buch/chapters/60-gruppen/images/karten.pdf b/buch/chapters/60-gruppen/images/karten.pdf new file mode 100644 index 0000000..f0a9879 Binary files /dev/null and b/buch/chapters/60-gruppen/images/karten.pdf differ diff --git a/buch/chapters/60-gruppen/images/karten.tex b/buch/chapters/60-gruppen/images/karten.tex new file mode 100644 index 0000000..a13d7c7 --- /dev/null +++ b/buch/chapters/60-gruppen/images/karten.tex @@ -0,0 +1,111 @@ +% +% karten.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] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\node at (0,0) {\includegraphics[width=10cm]{torus.png}}; + +\def\s{3} + +\node at (-3.5,-0.4) {$U_\alpha$}; +\node at (2.0,-0.4) {$U_\beta$}; + +\draw[->] (-2,-2.2) -- (-3,-4.3); +\node at (-2.5,-3.25) [left] {$\varphi_\alpha$}; + +\draw[->] (1.4,-1.7) -- (3,-4.3); +\node at (2.5,-3.25) [right] {$\varphi_\beta$}; + +\begin{scope}[xshift=-4.5cm,yshift=-8cm] + \begin{scope} + \clip (0,{-0.2*\s}) rectangle ({1*\s},{1.2*\s}); + \begin{scope}[xshift=1.8cm,yshift=0.6cm,rotate=30] + \fill[color=gray!20] + (0,{-0.2*\s}) rectangle ({1*\s},{1.2*\s}); + \foreach \x in {0,0.2,...,1}{ + \draw[color=darkgreen] + ({\x*\s},{-0.2*\s}) + -- + ({\x*\s},{1.2*\s}); + } + \foreach \y in {-0.2,0,...,1.2}{ + \draw[color=orange] + (0,{\y*\s}) + -- + ({1*\s},{\y*\s}); + } + \end{scope} + \end{scope} + + \foreach \x in {0,0.2,...,1}{ + \draw[color=blue,line width=1.4pt] + ({\x*\s},{-0.2*\s}) -- ({\x*\s},{1.2*\s}); + } + \foreach \y in {-0.2,0,...,1.2}{ + \draw[color=red,line width=1.4pt] + (0,{\y*\s}) -- ({1*\s},{\y*\s}); + } + + \draw[->] ({\s*(-0.1)},0) -- ({1.1*\s},0) coordinate[label={$x_1$}]; + \draw[->] (0,{-0.3*\s}) -- (0,{1.3*\s}) coordinate[label={left:$x_2$}]; + + \node at ({1*\s},{1.2*\s}) [above right] {$\mathbb{R}^2$}; + +\end{scope} + +\begin{scope}[xshift=1.5cm,yshift=-8cm] + \begin{scope} + \clip (0,{-0.2*\s}) rectangle ({1*\s},{1.2*\s}); + % x = - [ (sqrt(3)/2)*0.6+(1/2)*0.2 ] = -0.6196 + % y = - [ (-1/2)*0.6 + (sqrt(3)/2)*0.2 ] = + \begin{scope}[xshift=-1.8588cm,yshift=0.3804cm,rotate=-30] + \fill[color=gray!20] + (0,{-0.2*\s}) rectangle ({1*\s},{1.2*\s}); + \foreach \x in {0,0.2,...,1}{ + \draw[color=blue] + ({\x*\s},{-0.2*\s}) + -- + ({\x*\s},{1.2*\s}); + } + \foreach \y in {-0.2,0,...,1.2}{ + \draw[color=red] + (0,{\y*\s}) + -- + ({1*\s},{\y*\s}); + } + \end{scope} + \end{scope} + + \foreach \x in {0,0.2,...,1}{ + \draw[color=darkgreen,line width=1.4pt] + ({\x*\s},{-0.2*\s}) -- ({\x*\s},{1.2*\s}); + } + \foreach \y in {-0.2,0,...,1.2}{ + \draw[color=orange,line width=1.4pt] (0,{\y*\s}) -- ({1*\s},{\y*\s}); + } + \draw[->] ({\s*(-0.1)},0) -- ({1.1*\s},0) coordinate[label={$x_1$}]; + \draw[->] (0,{-0.3*\s}) -- (0,{1.3*\s}) coordinate[label={left:$x_2$}]; + \node at ({1*\s},{1.2*\s}) [above right] {$\mathbb{R}^2$}; +\end{scope} + +\draw[<-,color=white,opacity=0.8,line width=5pt] (2.5,-6.5) arc (55:100:6.5); +\draw[<-,shorten >= 0.1cm,shorten <= 0.3cm] (2.5,-6.5) arc (55:100:6.5); + +\node at (0,-5.8) {$\varphi_\beta\circ\varphi_\alpha^{-1}$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/60-gruppen/images/kartenkreis.pdf b/buch/chapters/60-gruppen/images/kartenkreis.pdf new file mode 100644 index 0000000..3235779 Binary files /dev/null and b/buch/chapters/60-gruppen/images/kartenkreis.pdf differ diff --git a/buch/chapters/60-gruppen/images/kartenkreis.tex b/buch/chapters/60-gruppen/images/kartenkreis.tex new file mode 100644 index 0000000..be6d6b3 --- /dev/null +++ b/buch/chapters/60-gruppen/images/kartenkreis.tex @@ -0,0 +1,179 @@ +% +% kartenkreis.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{3} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\fill[color=red!20] (0,-1) rectangle (1.5,1); +\fill[color=blue!20] (-1.5,-1) rectangle (0,1); +\fill[color=darkgreen!40,opacity=0.5] (-1,0) rectangle (1,1.5); +\fill[color=orange!40,opacity=0.5] (-1,-1.5) rectangle (1,0); +\fill[color=white] (0,0) circle[radius=1]; + +\fill[color=gray!20] + (0,-1.5) -- (0.02,-1.6) -- (0.5,-1.8) -- (0.98,-1.6) -- (1,-1.5) + -- cycle; +\fill[color=gray!20] + (0,1.5) -- (0.02,1.6) -- (0.5,1.8) -- (0.98,1.6) -- (1,1.5) + -- cycle; +\fill[color=gray!20] + (0,-1.5) -- (-0.02,-1.6) -- (-0.5,-1.8) -- (-0.98,-1.6) -- (-1,-1.5) + -- cycle; +\fill[color=gray!20] + (0,1.5) -- (-0.02,1.6) -- (-0.5,1.8) -- (-0.98,1.6) -- (-1,1.5) + -- cycle; + +\fill[color=gray!20] + (1.5,0) -- (1.6,0.02) -- (1.8,0.5) -- (1.6,0.98) -- (1.5,1) + -- cycle; +\fill[color=gray!20] + (-1.5,0) -- (-1.6,0.02) -- (-1.8,0.5) -- (-1.6,0.98) -- (-1.5,1) + -- cycle; +\fill[color=gray!20] + (1.5,0) -- (1.6,-0.02) -- (1.8,-0.5) -- (1.6,-0.98) -- (1.5,-1) + -- cycle; +\fill[color=gray!20] + (-1.5,0) -- (-1.6,-0.02) -- (-1.8,-0.5) -- (-1.6,-0.98) -- (-1.5,-1) + -- cycle; + +\draw[->] (0.5,-1.8) arc (-180:-90:0.1) arc (-90:0:1.3) arc (0:90:0.1); +\draw[->] (1.8,0.5) arc (-90:0:0.1) arc (0:90:1.3) arc (90:180:0.1); +\draw[->] (-0.5,1.8) arc (0:90:0.1) arc (90:180:1.3) arc (180:270:0.1); +\draw[->] (-1.8,-0.5) arc (90:180:0.1) arc (180:270:1.3) arc (270:360:0.1); + +\node at (1.01,1.32) + [right] {$\varphi_3\circ \varphi_1^{-1}(y)=\sqrt{1-y^2}$}; +\node at (1.01,-1.28) + [right] {$\varphi_1\circ \varphi_4^{-1}(x)=-\sqrt{1-x^2}$}; +\node at (-1.24,1.32) + [left] {$\varphi_2\circ\varphi_4^{-1}(x)=\sqrt{1-x^2}$}; +\node at (-1.18,-1.28) + [left] {$\varphi_4\circ\varphi_2^{-1}(y)=-\sqrt{1-y^2}$}; + +\foreach \y in {0.1,0.3,...,0.9}{ + \draw[->,color=red,shorten >= 0.1cm,shorten <= 0.3cm] + ({sqrt(1-\y*\y)},{\y}) -- (1.5,\y); + \draw[->,color=red,shorten >= 0.1cm,shorten <= 0.3cm] + ({sqrt(1-\y*\y)},{-\y}) -- (1.5,-\y); + \draw[->,color=blue,shorten >= 0.1cm,shorten <= 0.3cm] + ({-sqrt(1-\y*\y)},{\y}) -- (-1.5,\y); + \draw[->,color=blue,shorten >= 0.1cm,shorten <= 0.3cm] + ({-sqrt(1-\y*\y)},{-\y}) -- (-1.5,-\y); +} +\foreach \x in {0.1,0.3,...,0.9}{ + \draw[->,color=darkgreen,shorten >= 0.1cm,shorten <= 0.3cm] + ({\x},{sqrt(1-\x*\x)}) -- ({\x},1.5); + \draw[->,color=darkgreen,shorten >= 0.1cm,shorten <= 0.3cm] + ({-\x},{sqrt(1-\x*\x)}) -- ({-\x},1.5); + \draw[->,color=orange,shorten >= 0.1cm,shorten <= 0.3cm] + ({\x},{-sqrt(1-\x*\x)}) -- ({\x},-1.5); + \draw[->,color=orange,shorten >= 0.1cm,shorten <= 0.3cm] + ({-\x},{-sqrt(1-\x*\x)}) -- ({-\x},-1.5); +} + +\draw[color=gray!20,line width=3pt] (0,0) circle[radius=1]; + +\def\r{1.02} + +\begin{scope} + \clip (0,-1.1) rectangle (1.1,1.1); + \draw[color=red,line width=1.4pt] (-89:\r) arc (-89:89:\r); + \draw[color=red,line width=1.4pt] (0,-\r) circle[radius=0.02]; + \draw[color=red,line width=1.4pt] (0,\r) circle[radius=0.02]; +\end{scope} + +\begin{scope} + \clip (-1.1,-1.1) rectangle (0,1.1); + \draw[color=blue,line width=1.4pt] (91:\r) arc (91:269:\r); + \draw[color=blue,line width=1.4pt] (0,-\r) circle[radius=0.02]; + \draw[color=blue,line width=1.4pt] (0,\r) circle[radius=0.02]; +\end{scope} + +\xdef\r{0.98} + +\begin{scope} + \clip (-1.1,0) rectangle (1.1,1.1); + \draw[color=darkgreen,line width=1.4pt] (1:\r) arc (1:179:\r); + \draw[color=darkgreen,line width=1.4pt] (\r,0) circle[radius=0.02]; + \draw[color=darkgreen,line width=1.4pt] (-\r,0) circle[radius=0.02]; +\end{scope} + +\begin{scope} + \clip (-1.1,-1.1) rectangle (1.1,0); + \draw[color=orange,line width=1.4pt] (181:\r) arc (181:359:\r); + \draw[color=orange,line width=1.4pt] (\r,0) circle[radius=0.02]; + \draw[color=orange,line width=1.4pt] (-\r,0) circle[radius=0.02]; +\end{scope} + +\begin{scope}[yshift=1.5cm] + \draw[->] (-1.1,0) -- (1.15,0) coordinate[label={$\mathbb{R}$}]; + \begin{scope} + \clip (-1,-0.1) rectangle (1,0.1); + \draw[color=darkgreen,line width=1.4pt] (-0.98,0) -- (0.98,0); + \draw[color=darkgreen,line width=1.4pt] (-1,0) + circle[radius=0.02]; + \draw[color=darkgreen,line width=1.4pt] (1,0) + circle[radius=0.02]; + \end{scope} +\end{scope} + +\begin{scope}[yshift=-1.5cm] + \draw[->] (-1.1,0) -- (1.15,0) coordinate[label={below:$\mathbb{R}$}]; + \begin{scope} + \clip (-1,-0.1) rectangle (1,0.1); + \draw[color=orange,line width=1.4pt] (-0.98,0) -- (0.98,0); + \draw[color=orange,line width=1.4pt] (-1,0) circle[radius=0.02]; + \draw[color=orange,line width=1.4pt] (1,0) circle[radius=0.02]; + \end{scope} +\end{scope} + +\begin{scope}[xshift=1.5cm] + \draw[->] (0,-1.1) -- (0,1.15) coordinate[label={right:$\mathbb{R}$}]; + \begin{scope} + \clip (-0.1,-1) rectangle (0.1,1); + \draw[color=red,line width=1.4pt] (0,-0.98) -- (0,0.98); + \draw[color=red,line width=1.4pt] (0,-1) circle[radius=0.02]; + \draw[color=red,line width=1.4pt] (0,1) circle[radius=0.02]; + \end{scope} +\end{scope} + +\begin{scope}[xshift=-1.5cm] + \draw[->] (0,-1.1) -- (0,1.15) coordinate[label={left:$\mathbb{R}$}]; + \begin{scope} + \clip (-0.1,-1) rectangle (0.1,1); + \draw[color=blue,line width=1.4pt] (0,-0.98) -- (0,0.98); + \draw[color=blue,line width=1.4pt] (0,-1) circle[radius=0.02]; + \draw[color=blue,line width=1.4pt] (0,1) circle[radius=0.02]; + \end{scope} +\end{scope} + +\node[color=red] at (23:1) [right] {$U_{x>0}$}; +\node[color=red] at (1.25,0) [right] {$\varphi_1$}; + +\node[color=blue] at (157:1) [left] {$U_{x<0}$}; +\node[color=blue] at (-1.25,0) [left] {$\varphi_2$}; + +\node[color=darkgreen] at (115:1) [below right] {$U_{y>0}$}; +\node[color=darkgreen] at (0,1.25) [above] {$\varphi_4$}; + +\node[color=orange] at (-115:1) [above right] {$U_{y<0}$}; +\node[color=orange] at (0,-1.25) [below] {$\varphi_4$}; + +\draw[->] (-1.1,0) -- (1.15,0) coordinate[label={$x$}]; +\draw[->] (0,-1.1) -- (0,1.15) coordinate[label={right:$y$}]; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/60-gruppen/images/phasenraum.pdf b/buch/chapters/60-gruppen/images/phasenraum.pdf index 2ab46e4..adfb0c6 100644 Binary files a/buch/chapters/60-gruppen/images/phasenraum.pdf and b/buch/chapters/60-gruppen/images/phasenraum.pdf differ diff --git a/buch/chapters/60-gruppen/images/phasenraum.tex b/buch/chapters/60-gruppen/images/phasenraum.tex index 136d91d..2bccc27 100644 --- a/buch/chapters/60-gruppen/images/phasenraum.tex +++ b/buch/chapters/60-gruppen/images/phasenraum.tex @@ -14,32 +14,80 @@ \def\skala{1} \begin{tikzpicture}[>=latex,thick,scale=\skala] -\pgfmathparse{1/sqrt(2)} +\def\m{1} +\def\K{0.444} + +\pgfmathparse{sqrt(\K/\m)} \xdef\o{\pgfmathresult} \def\punkt#1#2{ ({#2*cos(#1)},{\o*#2*sin(#1)}) } -\foreach \r in {1,2,...,6}{ - \draw[line width=0.5pt] - plot[domain=0:359,samples=360] +\foreach \r in {0.5,1,...,6}{ + \draw plot[domain=0:359,samples=360] ({\r*cos(\x)},{\o*\r*sin(\x)}) -- cycle; } -\draw[color=red,line width=1.4pt] - plot[domain=0:359,samples=360] - ({4*cos(\x)},{\o*4*sin(\x)}) -- cycle; -\draw[->] (-6.1,0) -- (6.3,0) coordinate[label={$x$}]; -\draw[->] (0,-4.4) -- (0,4.7) coordinate[label={right:$p$}]; +\def\tangente#1#2{ + \pgfmathparse{#2/\m} + \xdef\u{\pgfmathresult} + + \pgfmathparse{-#1*\K} + \xdef\v{\pgfmathresult} + + \pgfmathparse{sqrt(\u*\u+\v*\v)} + \xdef\l{\pgfmathresult} -\node at \punkt{0}{4} [below right] {$x_0$}; -\node at \punkt{90}{4} [above left] {$\omega x_0$}; + \fill[color=blue] (#1,#2) circle[radius=0.03]; + \draw[color=blue,line width=0.5pt] + ({#1-0.2*\u/\l},{#2-0.2*\v/\l}) + -- + ({#1+0.2*\u/\l},{#2+0.2*\v/\l}); +} + +\foreach \x in {-6.25,-5.75,...,6.3}{ + \foreach \y in {-4.25,-3.75,...,4.3}{ + \tangente{\x}{\y} + } +} -\fill[color=white] \punkt{60}{4} rectangle \punkt{58}{5.9}; +%\foreach \x in {0.5,1,...,5.5,6}{ +% \tangente{\x}{0} +% \tangente{-\x}{0} +% \foreach \y in {0.5,1,...,4}{ +% \tangente{\x}{\y} +% \tangente{-\x}{\y} +% \tangente{\x}{-\y} +% \tangente{-\x}{-\y} +% } +%} +%\foreach \y in {0.5,1,...,4}{ +% \tangente{0}{\y} +% \tangente{0}{-\y} +%} + +\fill[color=white,opacity=0.7] \punkt{60}{4} rectangle \punkt{59}{5.8}; +\fill[color=white,opacity=0.7] \punkt{0}{4} rectangle \punkt{18}{4.9}; + +\draw[->,color=red,line width=1.4pt] + plot[domain=0:60,samples=360] + ({4*cos(\x)},{\o*4*sin(\x)}); + +\draw[->] (-6.5,0) -- (6.7,0) coordinate[label={$x$}]; +\draw[->] (0,-4.5) -- (0,4.7) coordinate[label={right:$p$}]; \fill[color=red] \punkt{60}{4} circle[radius=0.08]; \node[color=red] at \punkt{60}{4} [above right] {$\begin{pmatrix}x(t)\\p(t)\end{pmatrix}$}; +\fill[color=red] \punkt{0}{4} circle[radius=0.08]; +\node[color=red] at \punkt{0}{4} [above right] + {$\begin{pmatrix}x_0\\0\end{pmatrix}$}; + +\fill[color=white] (4,0) circle[radius=0.05]; +\node at (3.9,0) [below right] {$x_0$}; +\fill (0,{\o*4}) circle[radius=0.05]; +\node at (0.1,{\o*4+0.05}) [below left] {$\omega x_0$}; + \end{tikzpicture} \end{document} diff --git a/buch/chapters/60-gruppen/images/torus.png b/buch/chapters/60-gruppen/images/torus.png new file mode 100644 index 0000000..c42440f Binary files /dev/null and b/buch/chapters/60-gruppen/images/torus.png differ diff --git a/buch/chapters/60-gruppen/images/torus.pov b/buch/chapters/60-gruppen/images/torus.pov new file mode 100644 index 0000000..3a8e327 --- /dev/null +++ b/buch/chapters/60-gruppen/images/torus.pov @@ -0,0 +1,189 @@ +// +// diffusion.pov +// +// (c) 2021 Prof Dr Andreas Müller, OST Ostscheizer Fachhochschule +// +#version 3.7; +#include "colors.inc" + +global_settings { + assumed_gamma 1 +} + +#declare imagescale = 0.034; +#declare N = 100; +#declare r = 0.43; +#declare R = 1; + +camera { + location <43, 25, -20> + look_at <0, -0.01, 0> + right 16/9 * x * imagescale + up y * imagescale +} + +light_source { + <10, 20, -40> color White + area_light <1,0,0> <0,0,1>, 10, 10 + adaptive 1 + jitter +} + +sky_sphere { + pigment { + color rgb<1,1,1> + } +} + +#macro rotiere(phi, vv) + < cos(phi) * vv.x - sin(phi) * vv.z, vv.y, sin(phi) * vv.x + cos(phi) * vv.z > +#end + +#macro punkt(phi,theta) + rotiere(phi, < R + r * cos(theta), r * sin(theta), 0 >) +#end + +mesh { + #declare phistep = 2 * pi / N; + #declare thetastep = 2 * 2 * pi / N; + #declare phi = 0; + #while (phi < 2 * pi - phistep/2) + #declare theta = 0; + #while (theta < 2 * pi - thetastep/2) + triangle { + punkt(phi , theta ), + punkt(phi + phistep, theta ), + punkt(phi + phistep, theta + thetastep) + } + triangle { + punkt(phi , theta ), + punkt(phi + phistep, theta + thetastep), + punkt(phi , theta + thetastep) + } + #declare theta = theta + thetastep; + #end + #declare phi = phi + phistep; + #end + pigment { + color Gray + } + finish { + specular 0.9 + metallic + } +} + +#declare thetastart = -0.2; +#declare thetaend = 1.2; +#declare phistart = 5; +#declare phiend = 6; + +union { + #declare thetastep = 0.2; + #declare theta = thetastart; + #while (theta < thetaend + thetastep/2) + #declare phistep = (phiend-phistart)/N; + #declare phi = phistart; + #while (phi < phiend - phistep/2) + sphere { punkt(phi,theta), 0.01 } + cylinder { + punkt(phi,theta), + punkt(phi+phistep,theta), + 0.01 + } + #declare phi = phi + phistep; + #end + sphere { punkt(phi,theta), 0.01 } + #declare theta = theta + thetastep; + #end + + pigment { + color Red + } + finish { + specular 0.9 + metallic + } +} + +union { + #declare phistep = 0.2; + #declare phi = phistart; + #while (phi < phiend + phistep/2) + #declare thetastep = (thetaend-thetastart)/N; + #declare theta = thetastart; + #while (theta < thetaend - thetastep/2) + sphere { punkt(phi,theta), 0.01 } + cylinder { + punkt(phi,theta), + punkt(phi,theta+thetastep), + 0.01 + } + #declare theta = theta + thetastep; + #end + sphere { punkt(phi,theta), 0.01 } + #declare phi = phi + phistep; + #end + pigment { + color Blue + } + finish { + specular 0.9 + metallic + } +} + +#macro punkt2(a,b) + punkt(5.6+a*sqrt(3)/2-b/2,0.2+a/2 + b*sqrt(3)/2) +#end + +#declare darkgreen = rgb<0,0.6,0>; + +#declare astart = 0; +#declare aend = 1; +#declare bstart = -0.2; +#declare bend = 1.2; +union { + #declare a = astart; + #declare astep = 0.2; + #while (a < aend + astep/2) + #declare b = bstart; + #declare bstep = (bend - bstart)/N; + #while (b < bend - bstep/2) + sphere { punkt2(a,b), 0.01 } + cylinder { punkt2(a,b), punkt2(a,b+bstep), 0.01 } + #declare b = b + bstep; + #end + sphere { punkt2(a,b), 0.01 } + #declare a = a + astep; + #end + pigment { + color darkgreen + } + finish { + specular 0.9 + metallic + } +} +union { + #declare b = bstart; + #declare bstep = 0.2; + #while (b < bend + bstep/2) + #declare a = astart; + #declare astep = (aend - astart)/N; + #while (a < aend - astep/2) + sphere { punkt2(a,b), 0.01 } + cylinder { punkt2(a,b), punkt2(a+astep,b), 0.01 } + #declare a = a + astep; + #end + sphere { punkt2(a,b), 0.01 } + #declare b = b + bstep; + #end + pigment { + color Orange + } + finish { + specular 0.9 + metallic + } +} diff --git a/buch/chapters/60-gruppen/symmetrien.tex b/buch/chapters/60-gruppen/symmetrien.tex index 80f6534..b686791 100644 --- a/buch/chapters/60-gruppen/symmetrien.tex +++ b/buch/chapters/60-gruppen/symmetrien.tex @@ -156,6 +156,14 @@ D_{\alpha} ist also eine Einparameter-Untergruppe von $\operatorname{GL}_2(\mathbb{R})$. \subsubsection{Der harmonische Oszillator} +\begin{figure} +\centering +\includegraphics{chapters/60-gruppen/images/phasenraum.pdf} +\caption{Die Lösungen der +Differentialgleichung~\eqref{chapter:gruppen:eqn:phasenraumdgl} +im Phasenraum sind Ellipsen mit Halbachsenverhältnis $\omega^{-1}$. +\label{chapter:gruppen:fig:phasenraum}} +\end{figure} Eine Masse $m$ verbunden mit einer Feder mit der Federkonstanten $K$ schwingt um die Ruhelage $x=0$ entsprechend der Differentialgleichung \[ @@ -206,7 +214,7 @@ p(t) = \cos \omega t. \] In Matrixform kann man die allgemeine Lösung zur Anfangsbedingun $x(0)=x_0$ und $p(0)=p_0$ -\[ +\begin{equation} \begin{pmatrix} x(t)\\ p(t) @@ -217,9 +225,10 @@ p(t) \cos \omega t & \frac{1}{\omega} \sin\omega t \\ -\omega \sin\omega t & \cos\omega t \end{pmatrix} -}_{\Phi_t} +}_{\displaystyle =\Phi_t} \begin{pmatrix}x_0\\p_0\end{pmatrix} -\] +\label{buch:gruppen:eqn:phi} +\end{equation} schreiben. Die Matrizen $\Phi_t$ bilden eine Einparameter-Untergruppe von $\operatorname{GL}_n(\mathbb{R})$, da @@ -260,17 +269,252 @@ Die Matrizen $\Phi_t$ beschreiben eine kontinuierliche Symmetrie des Differentialgleichungssystems, welches den harmonischen Oszillator beschreibt. -\begin{figure} -\centering -\includegraphics{chapters/60-gruppen/images/phasenraum.pdf} -\caption{Die Lösungen der +\subsubsection{Fluss einer Differentialgleichung} +Die Abbildungen $\Phi_t$ von \eqref{buch:gruppen:eqn:phi} sind jeweils +Matrizen in $\operatorname{GL}_n(\mathbb{R})$. +Der Grund dafür ist, dass die Differentialgleichung~\eqref{chapter:gruppen:eqn:phasenraumdgl} -im Phasenraum sind Ellipsen mit Halbachsenverhältnis $\omega^{-1}$. -\label{chapter:gruppen:fig:phasenraum}} -\end{figure} +linear ist. +Dies hat zur Folge, dass für zwei Anfangsbedingungen $x_1,x_2\in\mathbb{R}^2$ +die Lösung für Linearkombinationen $\lambda x_1+\mu x_2$ durch +Linearkombination der Lösungen erhalten werden kann, also +aus der Formel +\[ +\Phi_t (\lambda x_1 + \mu x_2) = \lambda \Phi_t x_1 + \mu \Phi_t x_2. +\] +Dies zeigt, dass $\Phi_t$ für jedes $t$ eine lineare Abbildung sein muss. + +Für eine beliebige Differentialgleichung kann man immer noch eine Abbildung +$\Phi$ konstruieren, die aber nicht mehr linear ist. +Sei dazu die Differentialgleichung erster Ordnung +\begin{equation} +\frac{dx}{dt} += +f(t,x) +\qquad\text{mit}\qquad +f\colon \mathbb{R}\times\mathbb{R}^n \to \mathbb{R}^n +\label{buch:gruppen:eqn:dgl} +\end{equation} +gegeben. +Für jeden Anfangswert $x_0\in\mathbb{R}^n$ kann man mindestens für eine +gewisse Zeit $t <\varepsilon$ eine Lösung $x(t,x_0)$ finden mit $x(t,x_0)=x_0$. +Aus der Theorie der gewöhnlichen Differentialgleichungen ist auch +bekannt, dass $x(t,x_0)$ mindestens in der Nähe von $x_0$ differenzierbar von +$x_0$ abhängt. +Dies erlaubt eine Abbildung +\[ +\Phi\colon \mathbb{R}\times \mathbb{R}^n \to \mathbb{R}^n +: +(t,x_0) \mapsto \Phi_t(x_0) = x(t,x_0) +\] +zu definieren, die sowohl von $t$ als auch von $x_0$ differenzierbar +abhängt. +Aus der Definition folgt unmittelbar, dass $\Phi_0(x_0)=x_0$ ist, dass +also $\Phi_0$ die identische Abbildung von $\mathbb{R}^n$ ist. + +Aus der Definition lässt sich auch ableiten, dass +$\Phi_{s+t}=\Phi_s\circ\Phi_t$ gilt. +$\Phi_t(x_0)=x(t,x_0)$ ist der Endpunkt der Bahn, die bei $x_0$ beginnt +und sich während der Zeit $t$ entwickelt. +$\Phi_s(x(t,x_0))$ ist dann der Endpunkt der Bahn, die bei $x(t,x_0)$ +beginnt und sich während der Zeit $s$ entwickelt. +Somit ist $\Phi_s\circ \Phi_t(x_0)$ der Endpunkt der Bahn, die bei +$x_0$ beginnt und sich über die Zeit $s+t$ entwickelt. +In Formeln bedeutet dies +\[ +\Phi_{s+t} = \Phi_s\circ \Phi_t. +\] +Die Abbildung $t\mapsto \Phi_t$ ist also wieder ein Homomorphismus +von der additiven Gruppe $\mathbb{R}$ in eine Gruppe von differenzierbaren +Abbildungen $\mathbb{R}^n\to\mathbb{R}^n$. + +\begin{definition} +Die Abbildung +\[ +\Phi\colon \mathbb{R}\times\mathbb{R}^n\to\mathbb{R}^n +: +(t,x_0) \mapsto \Phi_t(x_0) = x(t,x_0) +\] +heisst der {\em Fluss} der Differentialgleichung +\eqref{buch:gruppen:eqn:dgl}, +wenn für jedes $x_0\in\mathbb{R}^n$ die Kurve $t\mapsto \Phi_t(x_0)$ +eine Lösung der Differentialgleichung ist mit Anfangsbedingung $x_0$. +\end{definition} + +Die Abbildung $\Phi_t$ von \eqref{buch:gruppen:eqn:phi} ist also +der Fluss der Differentialgleichung des harmonischen Oszillators. \subsection{Mannigfaltigkeiten \label{buch:subsection:mannigfaltigkeit}} +Eine Differentialgleichung der Form~\eqref{buch:gruppen:eqn:dgl} +stellt einen Zusammenhang her zwischen einem Punkt $x$ und der +Tangentialrichtung einer Bahnkurve $f(t,x)$. +Die Ableitung liefert die lineare Näherung der Bahkurve +\[ +x(t_0+h) = x(t_0) + h f(t_0,x_0) + o(h) +\] +für $h$ in einer kleinen Umgebung von $0$. +Das funktioniert auch, weil $f(t_0,x_0)$ selbst ein Vektor von +$\mathbb{R}^n$ ist, in dem die Bahnkurve verläuft. + +Diese Idee funktioniert nicht mehr zum Beispiel für eine +Differentialgleichung auf einer Kugeloberfläche, weil alle Punkte +$x(t_0)+hf(t_0,x_0)$ für alle $h\ne 0$ nicht mehr auf der Kugeloberfläche +liegen. +Physikalisch äussert sich das ein einer zusätzlichen Kraft, die nötig +ist, die Bahn auf der Kugeloberfläche zu halten. +Diese Kraft stellt zum Beispiel sicher, dass die Vektoren $f(t,x)$ für +Punkte $x$ auf der Kugeloberfläche immer tangential an die Kugel sind. +Trotzdem ist der Tangentialvektor oder der Geschwindigkeitsvektor +nicht mehr ein Objekt, welches als Teil der Kugeloberfläche definiert +werden kann, er kann nur definiert werden, wenn man sich die Kugel als +in einen höherdimensionalen Raum eingebettet vorstellen kann. + +Um die Idee der Differentialgleichung auf einer beliebigen Fläche +konsistent zu machen ist daher notwendig, die Idee einer Tagentialrichtung +auf eine Art zu definieren, die nicht von der Einbettung der Fläche +in den $n$-dimensionalen Raum abhängig ist. +Das in diesem Abschnitt entwickelte Konzept der {\em Mannigfaltigkeit} +löst dieses Problem. + +\subsubsection{Karten} +Die Navigation auf der Erdoberfläche verwendet das Koordinatensystem +der geographischen Länge und Breite. +Dieses Koordinatensystem funktioniert gut, solange man sich nicht an +den geographischen Polen befindet, denn deren Koordinaten sind +nicht mehr eindeutig. +Alle Punkte mit geographischer Breite $90^\circ$ und beliebiger +geographischer Länge beschreiben den Nordpol. +Auch die Ableitung funktioniert dort nicht mehr. +Bewegt man sich mit konstanter Geschwindigkeit über den Nordpol, +springt die Ableitung der geographischen Breite von einem positiven +Wert auf einen negativen Wert, sie kann also nicht differenzierbar sein. +Diese Einschränkungen sind in der Praxis nur ein geringes Problem dar, +da die meisten Reisen nicht über die Pole erfolgen. + +Der Polarforscher, der in unmittelbarer Umgebung des Poles arbeitet, +kann das Problem lösen, indem er eine lokale Karte für das Gebiet +um den Pol erstellt. +Dafür kann er beliebige Koordinaten verwenden, zum Beispiel auch +ein kartesisches Koordinatensystem, er muss nur eine Methode haben, +wie er seine Koordinaten wieder auf geographische Länge und Breite +umrechnen will. +Und wenn er über Geschwindigkeiten kommunizieren will, dann muss +er auch Ableitungen von Kurven in seinem kartesischen Koordinatensystem +umrechnen können auf die Kugelkoordinaten. +Dazu muss seine Umrechnungsformel von kartesischen Koordinaten +auf Kugelkoordinaten differenzierbar sein. + +Diese Idee wird vom Konzept der Mannigfaltigkeit verallgemeinert. +Eine $n$-dimensionale {\em Mannigfaltigkeit} ist eine Menge $M$ von Punkten, +die lokal, also in der Umgebung eines Punktes, mit möglicherweise mehreren +verschiedenen Koordinatensystemen versehen werden kann. +Ein Koordinatensystem ist eine umkehrbare Abbildung einer offenen Teilmenge +$U\subset M$ in den Raum $\mathbb{R}^n$. +Die Komponenten dieser Abbildung heissen die {\em Koordinaten}. + +\begin{definition} +Eine Karte auf $M$ ist eine umkehrbare Abbildung +$\varphi\colon U\to \mathbb{R}^n$. +Ein differenzierbarer Atlas ist eine Familie von Karten $\varphi_\alpha$ +derart, dass die Definitionsgebiete $U_\alpha$ die ganze Menge $M$ +überdecken, und dass die Kartenwechsel Abbildungen +\[ +\varphi_\beta\circ\varphi_\alpha^{-1} +\colon +\varphi_\alpha(U_\alpha\cap U_\beta) +\to +\varphi_\beta(U_\alpha\cap U_\beta) +\] +als Abbildung von offenen Teilmengen von $\mathbb{R}^n$ differenzierbar +ist. +Eine {$n$-dimensionale differenzierbare Mannigfaltigkeit} ist eine +Menge $M$ mit einem differenzierbaren Atlas. +\end{definition} + +Karten und Atlanten regeln also nur, wie sich verschiedene lokale +Koordinatensysteme ineinander umrechnen lassen. + +\begin{beispiel} +$M=\mathbb{R}^n$ ist eine differenzierbare Mannigfaltigkeit denn +die identische Abbildung $M\to \mathbb{R}^n$ ist eine Karte und ein +Atlas von $M$. +\end{beispiel} + +\begin{beispiel} +\begin{figure} +\centering +\includegraphics{chapters/60-gruppen/images/kartenkreis.pdf} +\caption{Karten für die Kreislinie $S^1\subset\mathbb{R}^2$. +\label{buch:gruppen:fig:kartenkreis}} +\end{figure} +Die Kreislinie in in der Ebene ist eine $1$-dimensionale Mannigfaltigkeit. +Natürlich kann sie nicht mit einer einzigen Karte beschrieben werden, +da es keine umkehrbaren Abbildungen zwischen $\mathbb{R}$ und der Kreislinie +gibt. +Man kann aber die folgenden vier Karten verwenden: +\begin{align*} +\varphi_1&\colon U_{x>0}\{(x,y)\;|\;x^2+y^2=1\wedge x>0\} \to +: +(x,y) \mapsto y\\ +\varphi_2&\colon U_{x<0}\{(x,y)\;|\;x^2+y^2=1\wedge x<0\} \to +: +(x,y) \mapsto y\\ +\varphi_3&\colon U_{y>0}\{(x,y)\;|\;x^2+y^2=1\wedge y>0\} \to +: +(x,y) \mapsto x\\ +\varphi_4&\colon U_{y<0}\{(x,y)\;|\;x^2+y^2=1\wedge y<0\} \to +: +(x,y) \mapsto x +\end{align*} +Die Werte der Kartenabbildungen sind genau die $x$- und $y$-Koordinaten +auf der in den Raum $\mathbb{R}^2$ eingebetteten Kreislinie. + +Für $\varphi_1$ und $\varphi_2$ sind die Definitionsgebiete disjunkt, +hier gibt es also keine Notwendigkeit, Koordinatenumrechnungen vornehmen +zu können. +Dasselbe gilt für $\varphi_3$ und $\varphi_4$. + +Die nichtleeren Schnittmengen der verschiedenen Kartengebiete beschreiben +jeweils die Punkte der Kreislinie in einem Quadranten. +Die Umrechnung zwischen den Koordinaten erfolgt je nach Quadrant durch +\[ +x\mapsto y=\pm\sqrt{1-x^2\mathstrut} +\qquad\text{oder}\qquad +y\mapsto x=\pm\sqrt{1-y^2\mathstrut}, +\] +diese Abbildungen sind im offenen Intervall $(-1,1)$ differenzierbar, +Schwierigkeiten mit der Ableitungen ergeben sich nur an den Stellen +$x=\pm1$ und $y=\pm 1$, die in einem Überschneidungsgebiet von Karten +nicht vorkommen können. +Somit bilden die vier Karten einen differenzierbaren Atlas für +die Kreislinie (Abbildung~\ref{buch:gruppen:fig:kartenkreis}). +\end{beispiel} + +\begin{beispiel} +Ganz analog zum vorangegangenen Beispiel über die Kreisline lässt sich +für eine $n$-di\-men\-sio\-nale Sphäre +\[ +S^n = \{ (x_1,\dots,x_{n+1})\;|\; x_0^2+\dots+x_n^2=1\} +\] +immer ein Atlas aus $2^{n+1}$ Karten mit den Koordinatenabbildungen +\[ +\varphi_{i,\pm} +\colon +U_{i,\pm} += +\{p\in S^n\;|\; \pm x_i >0\} +\to +\mathbb{R}^n +: +p\mapsto (x_1,\dots,\hat{x}_i,\dots,x_{n+1}) +\] +konstruieren, der $S^n$ zu einer $n$-dimensionalen Mannigfaltigkeit macht. +\end{beispiel} + +\subsubsection{Tangentialraum} + +\subsubsection{Einbettung und Karten} \subsection{Der Satz von Noether \label{buch:subsection:noether}} -- cgit v1.2.1 From e4713250376d10840dbfd23ca353e394aa84be08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sat, 3 Apr 2021 20:52:04 +0200 Subject: =?UTF-8?q?Info=20=C3=BCber=20Mannigfaltigkeiten=20hinzuf=C3=BCgen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/chapters/60-gruppen/images/karten.pdf | Bin 486440 -> 487946 bytes buch/chapters/60-gruppen/images/karten.tex | 3 +- buch/chapters/60-gruppen/lie-gruppen.tex | 99 +++++++++++++++++++++++++++++ buch/chapters/60-gruppen/symmetrien.tex | 83 ++++++++++++++++++++++-- 4 files changed, 179 insertions(+), 6 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/images/karten.pdf b/buch/chapters/60-gruppen/images/karten.pdf index f0a9879..d769cca 100644 Binary files a/buch/chapters/60-gruppen/images/karten.pdf and b/buch/chapters/60-gruppen/images/karten.pdf differ diff --git a/buch/chapters/60-gruppen/images/karten.tex b/buch/chapters/60-gruppen/images/karten.tex index a13d7c7..c8eb4a3 100644 --- a/buch/chapters/60-gruppen/images/karten.tex +++ b/buch/chapters/60-gruppen/images/karten.tex @@ -104,7 +104,8 @@ \draw[<-,color=white,opacity=0.8,line width=5pt] (2.5,-6.5) arc (55:100:6.5); \draw[<-,shorten >= 0.1cm,shorten <= 0.3cm] (2.5,-6.5) arc (55:100:6.5); -\node at (0,-5.8) {$\varphi_\beta\circ\varphi_\alpha^{-1}$}; +\node at (0,-5.9) + {$\varphi_{\beta\alpha}=\varphi_\beta\circ\varphi_\alpha^{-1}$}; \end{tikzpicture} \end{document} diff --git a/buch/chapters/60-gruppen/lie-gruppen.tex b/buch/chapters/60-gruppen/lie-gruppen.tex index 1268ce2..48d6b43 100644 --- a/buch/chapters/60-gruppen/lie-gruppen.tex +++ b/buch/chapters/60-gruppen/lie-gruppen.tex @@ -6,6 +6,105 @@ \section{Lie-Gruppen \label{buch:section:lie-gruppen}} \rhead{Lie-Gruppen} +Die in bisherigen Beispielen untersuchten Matrizengruppen zeichnen sich +durch zusätzliche Eigenschaften aus. +Die Gruppe +\[ +\operatorname{GL}_n(\mathbb{R}) += +\{ A \in M_n(\mathbb{R})\;|\; \det A \ne 0\} +\] +besteht aus den Matrizen, deren Determinante nicht $0$ ist. +Da die Menge der Matrizen mit $\det A=0$ eine abgeschlossene Menge +in $M_n(\mathbb{R}) \simeq \mathbb{R}^{n^2}$ ist, ist +$\operatorname{GL}_n(\mathbb{R})$ eine offene Teilmenge in $\mathbb{R}^{n^2}$, +sie besitzt also automatisch die Struktur einer $n^2$-Mannigfaltigkeit. +Dies gilt jedoch auch für alle anderen Matrizengruppen, die in diesem +Abschnitt genauer untersucht werden sollen. + +\subsection{Mannigfaltigkeitsstruktur der Matrizengruppen +\label{buch:subsection:mannigfaltigkeitsstruktur-der-matrizengruppen}} +Eine Matrizengruppe wird automatsich zu einer Mannigfaltigkeit, +wenn es gelingt, eine Karte für eine Umgebung des neutralen Elements +zu finden. +Dazu muss gezeigt werden, dass sich aus einer solchen Karte für jedes +andere Gruppenelement eine Karte für eine Umgebung ableiten lässt. +Sei also $\varphi_e\colon U_e\mathbb{R}^N$ eine Karte für die Umgebung +$U_e\subset G$ von $e\in G$. +Für $g\in G$ ist dann die Abbildung +\[ +\varphi_g +\colon +U_g += +gU_e +\to +\mathbb{R} +: +h\mapsto \varphi_e(g^{-1}h) +\] +eine Karte für die Umgebung $U_g$ des Gruppenelementes $g$. +schreibt man $l_{g}$ für die Abbildung $h\mapsto gh$, dann +kann man die Kartenabbildung auch $\varphi_g = \varphi_e\circ l_{g^{-1}}$ +schreiben. + +Die Kartenwechsel-Abbildungen für zwei Karten $\varphi_{g_1}$ +und $\varphi_{g_2}$ ist die Abbildung +\[ +\varphi_{g_1,g_2} += +\varphi_{g_1}\circ \varphi_{g_2}^{-1} += +\varphi_e\circ l_{g_1^{-1}} \circ (\varphi_e\circ l_{g_2^{-1}})^{-1} += +\varphi_e\circ l_{g_1^{-1}} \circ l_{g_2^{-1}}^{-1} \varphi_e^{-1} += +\varphi_e\circ l_{g_1^{-1}} \circ l_{g_2}\varphi_e^{-1} += +\varphi_e\circ l_{g_1^{-1}g_2}\varphi_e^{-1} +\] +mit der Ableitung +\[ +D\varphi_e\circ Dl_{g_1^{-1}g_2} D\varphi_e^{-1} += +D\varphi_e\circ Dl_{g_1^{-1}g_2} (D\varphi_e)^{-1}. +\] +Die Abbildung $l_{g_1^{-1}g_2}$ ist aber nur die Multiplikation mit +einer Matrix, also eine lineare Abbildung, so dass der Kartenwechsel +nichts anderes ist als die Darstellung der Matrix der Linksmultiplikation +$l_{g_1^{-1}g_2}$ im Koordinatensystem der Karte $U_e$ ist. +Differenzierbarkeit der Kartenwechsel ist damit sichergestellt, +die Matrizengruppen sind automatisch differenzierbare Mannigfaltigkeiten. + +Die Konstruktion aller Karten aus einer einzigen Karte für eine +Umgebung des neutralen Elements zeigt auch, dass es für die Matrizengruppen +reicht, wenn man die Elemente in einer Umgebung des neutralen +Elementes parametrisieren kann. +Dies ist jedoch nicht nur für die Matrizengruppen möglich. +Wenn eine Gruppe gleichzeitig eine differenzierbare Mannigfaltigkeit +ist, dann können Karten über die ganze Gruppe transportiert werden, +wenn die Multiplikation mit Gruppenelementen eine differenzierbare +Abbildung ist. +Solche Gruppen heissen auch Lie-Gruppen gemäss der folgenden Definition. + +\begin{definition} +\index{Lie-Gruppe}% +Eine {\em Lie-Gruppe} ist eine Gruppe, die gleichzeitig eine differenzierbare +Mannigfaltigkeit ist derart, dass die Abbildungen +\begin{align*} +G\times G \to G &: (g_1,g_2)\mapsto g_1g_2 +G\to G &: g \mapsto g^{-1} +\end{align*} +differenzierbare Abbildungen zwischen Mannigfaltigkeiten sind. +\end{definition} + +Die Abstraktheit dieser Definition täuscht etwas über die +Tatsache hinweg, dass sich mit Hilfe der Darstellungstheorie +jede beliebige Lie-Gruppe als Untermannigfaltigkeit einer +Matrizengruppe verstehen lässt. +Das Studium der Matrizengruppen erlaubt uns daher ohne grosse +Einschränkungen ein Verständnis für die Theorie der Lie-Gruppen +zu entwickeln. \subsection{Drehungen in der Ebene \label{buch:gruppen:drehungen2d}} diff --git a/buch/chapters/60-gruppen/symmetrien.tex b/buch/chapters/60-gruppen/symmetrien.tex index b686791..e7c3240 100644 --- a/buch/chapters/60-gruppen/symmetrien.tex +++ b/buch/chapters/60-gruppen/symmetrien.tex @@ -405,7 +405,7 @@ umrechnen können auf die Kugelkoordinaten. Dazu muss seine Umrechnungsformel von kartesischen Koordinaten auf Kugelkoordinaten differenzierbar sein. -Diese Idee wird vom Konzept der Mannigfaltigkeit verallgemeinert. +Diese Idee wird durch das Konzept der Mannigfaltigkeit verallgemeinert. Eine $n$-dimensionale {\em Mannigfaltigkeit} ist eine Menge $M$ von Punkten, die lokal, also in der Umgebung eines Punktes, mit möglicherweise mehreren verschiedenen Koordinatensystemen versehen werden kann. @@ -413,14 +413,30 @@ Ein Koordinatensystem ist eine umkehrbare Abbildung einer offenen Teilmenge $U\subset M$ in den Raum $\mathbb{R}^n$. Die Komponenten dieser Abbildung heissen die {\em Koordinaten}. +\begin{figure} +\centering +\includegraphics{chapters/60-gruppen/images/karten.pdf} +\caption{Karten +$\varphi_\alpha\colon U_\alpha\to \mathbb{R}^2$ +und +$\varphi_\beta\colon U_\beta\to \mathbb{R}^2$ +auf einem Torus. +Auf dem Überschneidungsgebiet $\varphi_\alpha^{-1}(U_\alpha\cap U_\beta)$ +ist der Kartenwechsel $\varphi_\beta\circ\varphi_\alpha^{-1}$ wohldefiniert +und muss differnzierbar sein, wenn eine differenzierbare Mannigfaltigkeit +entstehen soll. +\label{buch:gruppen:fig:karten}} +\end{figure} + \begin{definition} Eine Karte auf $M$ ist eine umkehrbare Abbildung -$\varphi\colon U\to \mathbb{R}^n$. +$\varphi\colon U\to \mathbb{R}^n$ (siehe auch +Abbildung~\ref{buch:gruppen:fig:karten}). Ein differenzierbarer Atlas ist eine Familie von Karten $\varphi_\alpha$ derart, dass die Definitionsgebiete $U_\alpha$ die ganze Menge $M$ überdecken, und dass die Kartenwechsel Abbildungen \[ -\varphi_\beta\circ\varphi_\alpha^{-1} +\varphi_{\beta\alpha}=\varphi_\beta\circ\varphi_\alpha^{-1} \colon \varphi_\alpha(U_\alpha\cap U_\beta) \to @@ -513,8 +529,65 @@ konstruieren, der $S^n$ zu einer $n$-dimensionalen Mannigfaltigkeit macht. \end{beispiel} \subsubsection{Tangentialraum} - -\subsubsection{Einbettung und Karten} +Mit Hilfe einer Karte $\varphi_\alpha\colon U_\alpha\to\mathbb{R}^n$ +kann das Geschehen in einer Mannigfaltigkeit in den vertrauten +$n$-dimensionalen Raum $\mathbb{B}^n$ transportiert werden. +Eine Kurve $\gamma\colon \mathbb{R}\to M$, die so parametrisiert sein +soll, dass $\gamma(t)\in U_\alpha$ für $t$ in einer Umgebung $I$ von $0$ ist, +wird von der Karte in eine Kurve +$\gamma_\alpha=\varphi_\alpha\circ\gamma\colon I\to \mathbb{R}^n$ +abgebildet, +deren Tangentialvektor wieder ein Vektor in $\mathbb{R}^n$ ist. + +Eine zweite Karte $\varphi_\beta$ führt auf eine andere Kurve +mit der Parametrisierung +$\gamma_\beta=\varphi_\beta\circ\gamma\colon I \to \mathbb{R}^n$ +und einem anderen Tangentialvektor. +Die beiden Tangentialvektoren können aber mit der Ableitung der +Koordinatenwechsel-Abbildung +$\varphi_{\beta\alpha}=\varphi_\beta\circ\varphi_\alpha^{-1}\colon +\varphi_\alpha(U_\alpha\cap U_\beta)\to \mathbb{R}^n$ +ineinander umgerechnet werden. +Aus +\[ +\gamma_\beta += +\varphi_\beta\circ \gamma += +( +\varphi_\beta +\circ +\varphi_\alpha^{-1} +) +\circ +\varphi_\alpha\circ\gamma += +\varphi_{\beta\alpha} +\circ +\varphi_\alpha\circ\gamma += +\varphi_{\beta\alpha}\circ\gamma_\alpha +\] +folgt durch Ableitung nach dem Kurvenparameter $t$, dass +\[ +\frac{d}{dt}\gamma_\beta(t) += +D\varphi_{\beta\alpha} \frac{d}{dt}\gamma_\alpha(t). +\] +Die Ableitung $D\varphi_{\beta\alpha}$ von $\varphi_{\beta\alpha}$ +an der Stelle $\gamma_\alpha(t)$ berechnet also aus dem Tangentialvektor +einer Kurve in der Karte $\varphi_\alpha$ den Tangentialvektor der +Kurve in der Karte $\varphi_\beta$. + +Die Forderung nach Differenzierbarkeit der Kartenwechselabbildungen +$\varphi_{\beta\alpha}$ stellt also nur sicher, dass die Beschreibung +eines Systemes mit Differentialgleichungen in verschiedenen +Koordinatensystemen auf die gleichen Lösungskurven in der +Mannigfaltigkeit führt. +Insbesondere ist die Verwendung von Karten ist also nur ein Werkzeug, +mit dem die Unmöglichkeit einer globalen Besschreibung einer +Mannigfaltigkeit $M$ mit einem einzigen globalen Koordinatensystem +ohne Singularitäten umgangen werden kann. \subsection{Der Satz von Noether \label{buch:subsection:noether}} -- cgit v1.2.1 From b4867d6eecff66204bd083e3fe1da46a7f1aef42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 4 Apr 2021 10:02:05 +0200 Subject: fix phi_4 --- buch/chapters/60-gruppen/images/kartenkreis.tex | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/images/kartenkreis.tex b/buch/chapters/60-gruppen/images/kartenkreis.tex index be6d6b3..8f2d9d5 100644 --- a/buch/chapters/60-gruppen/images/kartenkreis.tex +++ b/buch/chapters/60-gruppen/images/kartenkreis.tex @@ -55,12 +55,19 @@ \node at (1.01,1.32) [right] {$\varphi_3\circ \varphi_1^{-1}(y)=\sqrt{1-y^2}$}; +\node at (1.6,1.6) {$\varphi_{31}$}; + \node at (1.01,-1.28) [right] {$\varphi_1\circ \varphi_4^{-1}(x)=-\sqrt{1-x^2}$}; +\node at (1.6,-1.6) {$\varphi_{14}$}; + \node at (-1.24,1.32) [left] {$\varphi_2\circ\varphi_4^{-1}(x)=\sqrt{1-x^2}$}; +\node at (-1.6,-1.6) {$\varphi_{42}$}; + \node at (-1.18,-1.28) [left] {$\varphi_4\circ\varphi_2^{-1}(y)=-\sqrt{1-y^2}$}; +\node at (-1.6,1.6) {$\varphi_{23}$}; \foreach \y in {0.1,0.3,...,0.9}{ \draw[->,color=red,shorten >= 0.1cm,shorten <= 0.3cm] @@ -166,7 +173,7 @@ \node[color=blue] at (-1.25,0) [left] {$\varphi_2$}; \node[color=darkgreen] at (115:1) [below right] {$U_{y>0}$}; -\node[color=darkgreen] at (0,1.25) [above] {$\varphi_4$}; +\node[color=darkgreen] at (0,1.25) [above] {$\varphi_3$}; \node[color=orange] at (-115:1) [above right] {$U_{y<0}$}; \node[color=orange] at (0,-1.25) [below] {$\varphi_4$}; -- cgit v1.2.1 From cca51799a95ab64faa3f0dfb841883c2852037d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 4 Apr 2021 16:11:42 +0200 Subject: tangentialvektoren von o(n), sl_n --- buch/chapters/60-gruppen/images/Makefile | 5 +- buch/chapters/60-gruppen/images/kartenkreis.pdf | Bin 26310 -> 26755 bytes buch/chapters/60-gruppen/images/kartenkreis.tex | 11 +- buch/chapters/60-gruppen/images/sl2.pdf | Bin 0 -> 27116 bytes buch/chapters/60-gruppen/images/sl2.tex | 146 ++++++++ buch/chapters/60-gruppen/lie-gruppen.tex | 469 +++++++++++++++++++++++- buch/chapters/60-gruppen/symmetrien.tex | 159 +++++++- 7 files changed, 755 insertions(+), 35 deletions(-) create mode 100644 buch/chapters/60-gruppen/images/sl2.pdf create mode 100644 buch/chapters/60-gruppen/images/sl2.tex (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/images/Makefile b/buch/chapters/60-gruppen/images/Makefile index bc65a71..8824d75 100644 --- a/buch/chapters/60-gruppen/images/Makefile +++ b/buch/chapters/60-gruppen/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: phasenraum.pdf kartenkreis.pdf karten.pdf +all: phasenraum.pdf kartenkreis.pdf karten.pdf sl2.pdf phasenraum.pdf: phasenraum.tex pdflatex phasenraum.tex @@ -17,3 +17,6 @@ torus.png: torus.pov karten.pdf: karten.tex torus.png pdflatex karten.tex +sl2.pdf: sl2.tex + pdflatex sl2.tex + diff --git a/buch/chapters/60-gruppen/images/kartenkreis.pdf b/buch/chapters/60-gruppen/images/kartenkreis.pdf index 3235779..4619b56 100644 Binary files a/buch/chapters/60-gruppen/images/kartenkreis.pdf and b/buch/chapters/60-gruppen/images/kartenkreis.pdf differ diff --git a/buch/chapters/60-gruppen/images/kartenkreis.tex b/buch/chapters/60-gruppen/images/kartenkreis.tex index 8f2d9d5..4f19937 100644 --- a/buch/chapters/60-gruppen/images/kartenkreis.tex +++ b/buch/chapters/60-gruppen/images/kartenkreis.tex @@ -62,12 +62,13 @@ \node at (1.6,-1.6) {$\varphi_{14}$}; \node at (-1.24,1.32) - [left] {$\varphi_2\circ\varphi_4^{-1}(x)=\sqrt{1-x^2}$}; -\node at (-1.6,-1.6) {$\varphi_{42}$}; + [left] {$\varphi_2\circ\varphi_3^{-1}(x)=\sqrt{1-x^2}$}; +\node at (-1.6,1.6) {$\varphi_{23}$}; \node at (-1.18,-1.28) [left] {$\varphi_4\circ\varphi_2^{-1}(y)=-\sqrt{1-y^2}$}; -\node at (-1.6,1.6) {$\varphi_{23}$}; +\node at (-1.6,-1.6) {$\varphi_{42}$}; + \foreach \y in {0.1,0.3,...,0.9}{ \draw[->,color=red,shorten >= 0.1cm,shorten <= 0.3cm] @@ -90,7 +91,9 @@ ({-\x},{-sqrt(1-\x*\x)}) -- ({-\x},-1.5); } -\draw[color=gray!20,line width=3pt] (0,0) circle[radius=1]; +%\draw[color=gray!50,line width=3pt] (0,0) circle[radius=1]; +\draw[color=yellow!30,line width=3pt] (0,0) circle[radius=1]; +\node[color=yellow] at ({1/sqrt(2)},{1/sqrt(2)}) [above right] {$S^1$}; \def\r{1.02} diff --git a/buch/chapters/60-gruppen/images/sl2.pdf b/buch/chapters/60-gruppen/images/sl2.pdf new file mode 100644 index 0000000..ffc0759 Binary files /dev/null and b/buch/chapters/60-gruppen/images/sl2.pdf differ diff --git a/buch/chapters/60-gruppen/images/sl2.tex b/buch/chapters/60-gruppen/images/sl2.tex new file mode 100644 index 0000000..0e44aa9 --- /dev/null +++ b/buch/chapters/60-gruppen/images/sl2.tex @@ -0,0 +1,146 @@ +% +% sl2.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] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\begin{scope}[xshift=-4.5cm] + \fill[color=blue!20] + (1.4,0) -- (0,1.4) -- (-1.4,0) -- (0,-1.4) -- cycle; + \fill[color=red!40,opacity=0.5] + (1.96,0) -- (0,1) -- (-1.96,0) -- (0,-1) -- cycle; + + \begin{scope} + \clip (-2.1,-2.1) rectangle (2.3,2.3); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] + ({(1/1.4)*exp(\x)},{(1/1.4)*exp(-\x)}); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] + ({(1/1.4)*exp(\x)},{-(1/1.4)*exp(-\x)}); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] + ({-(1/1.4)*exp(\x)},{(1/1.4)*exp(-\x)}); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] + ({-(1/1.4)*exp(\x)},{-(1/1.4)*exp(-\x)}); + \end{scope} + + \draw[->] (-2.1,0) -- (2.3,0) coordinate[label={$x$}]; + \draw[->] (0,-2.1) -- (0,2.3) coordinate[label={right:$y$}]; + + \draw[->,color=blue] (0,0) -- (1.4,0); + \draw[->,color=blue] (0,0) -- (0,1.4); + + \draw[->,color=red] (0,0) -- (1.96,0); + \draw[->,color=red] (0,0) -- (0,1); + \node at (0,-3.2) + {$\displaystyle + \begin{aligned} + A&=\begin{pmatrix}1&0\\0&-1\end{pmatrix} + \\ + e^{At} + &=\begin{pmatrix}e^t&0\\0&e^{-t}\end{pmatrix} + \end{aligned} + $}; + +\end{scope} + + +\begin{scope} + \fill[color=blue!20] + (0:1.4) -- (90:1.4) -- (180:1.4) -- (270:1.4) -- cycle; + \fill[color=red!40,opacity=0.5] + (33:1.4) -- (123:1.4) -- (213:1.4) -- (303:1.4) -- cycle; + + \draw[color=darkgreen] (0,0) circle[radius=1.4]; + + \draw[->] (-2.1,0) -- (2.3,0) coordinate[label={$x$}]; + \draw[->] (0,-2.1) -- (0,2.3) coordinate[label={right:$y$}]; + + \draw[->,color=blue] (0,0) -- (1.4,0); + \draw[->,color=blue] (0,0) -- (0,1.4); + + \draw[->,color=red] (0,0) -- (33:1.4); + \draw[->,color=red] (0,0) -- (123:1.4); + + \node at (0,-3.2) + {$\displaystyle + \begin{aligned} + B + &=\begin{pmatrix}0&-1\\1&0 \end{pmatrix} + \\ + e^{Bt} + &= + \begin{pmatrix} + \cos t&-\sin t\\ + \sin t& \cos t + \end{pmatrix} + \end{aligned}$}; +\end{scope} + + +\begin{scope}[xshift=4.5cm] + \fill[color=blue!20] + (0:1.4) -- (90:1.4) -- (180:1.4) -- (270:1.4) -- cycle; + \def\x{0.5} + \fill[color=red!40,opacity=0.5] + ({1.4*cosh(\x)},{1.4*sinh(\x}) + -- + ({1.4*sinh(\x},{1.4*cosh(\x)}) + -- + ({-1.4*cosh(\x)},{-1.4*sinh(\x}) + -- + ({-1.4*sinh(\x},{-1.4*cosh(\x)}) + -- cycle; + + \begin{scope} + \clip (-2.1,-2.1) rectangle (2.2,2.2); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] ({1.4*cosh(\x)},{1.4*sinh(\x)}); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] ({1.4*sinh(\x)},{1.4*cosh(\x)}); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] ({-1.4*cosh(\x)},{1.4*sinh(\x)}); + \draw[color=darkgreen] + plot[domain=-1:1,samples=100] ({1.4*sinh(\x)},{-1.4*cosh(\x)}); + \end{scope} + + \draw[->] (-2.1,0) -- (2.3,0) coordinate[label={$x$}]; + \draw[->] (0,-2.1) -- (0,2.3) coordinate[label={right:$y$}]; + + \draw[->,color=blue] (0,0) -- (1.4,0); + \draw[->,color=blue] (0,0) -- (0,1.4); + + \draw[->,color=red] (0,0) -- ({1.4*cosh(\x)},{1.4*sinh(\x)}); + \draw[->,color=red] (0,0) -- ({1.4*sinh(\x)},{1.4*cosh(\x)}); + + \node at (0,-3.2) {$\displaystyle + \begin{aligned} + C&=\begin{pmatrix}0&1\\1&0\end{pmatrix} + \\ + e^{Ct} + &= + \begin{pmatrix} + \cosh t&\sinh t\\ + \sinh t&\cosh t + \end{pmatrix} + \end{aligned} + $}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/60-gruppen/lie-gruppen.tex b/buch/chapters/60-gruppen/lie-gruppen.tex index 48d6b43..6d2531a 100644 --- a/buch/chapters/60-gruppen/lie-gruppen.tex +++ b/buch/chapters/60-gruppen/lie-gruppen.tex @@ -48,6 +48,7 @@ schreibt man $l_{g}$ für die Abbildung $h\mapsto gh$, dann kann man die Kartenabbildung auch $\varphi_g = \varphi_e\circ l_{g^{-1}}$ schreiben. +\subsubsection{Kartenwechsel} Die Kartenwechsel-Abbildungen für zwei Karten $\varphi_{g_1}$ und $\varphi_{g_2}$ ist die Abbildung \[ @@ -93,6 +94,7 @@ Eine {\em Lie-Gruppe} ist eine Gruppe, die gleichzeitig eine differenzierbare Mannigfaltigkeit ist derart, dass die Abbildungen \begin{align*} G\times G \to G &: (g_1,g_2)\mapsto g_1g_2 +\\ G\to G &: g \mapsto g^{-1} \end{align*} differenzierbare Abbildungen zwischen Mannigfaltigkeiten sind. @@ -106,8 +108,79 @@ Das Studium der Matrizengruppen erlaubt uns daher ohne grosse Einschränkungen ein Verständnis für die Theorie der Lie-Gruppen zu entwickeln. +\subsubsection{Tangentialvektoren und die Exponentialabbildung} +Die Matrizengruppen sind alle in der +$n^2$-dimensionalen Mannigfaltigkeit $\operatorname{GL}_n(\mathbb{R})$ +enthalten. +Diffferenzierbare Kurven $\gamma(t)$ in $\operatorname{GL}_n(\mathbb{R})$ +haben daher in jedem Punkt Tangentialvektoren, die als Matrizen in +$M_n(\mathbb{R})$ betrachtet werden können. +Wenn $\gamma(t)$ die Matrixelemente $\gamma_{ij}(t)$ hat, dann ist der +Tangentialvektor im Punkt $\gamma(t)$ durch +\[ +\frac{d}{dt} +\gamma(t) += +\begin{pmatrix} +\dot{\gamma}_{11}(t)&\dots &\dot{\gamma}_{1n}(t)\\ +\vdots &\ddots&\vdots \\ +\dot{\gamma}_{n1}(t)&\dots &\dot{\gamma}_{nn}(t) +\end{pmatrix} +\] +gegeben. + +Im Allgemeinen kann man Tangentialvektoren in verschiedenen Punkten +einer Mannigfaltigkeit nicht miteinander vergleichen. +Die Multiplikation $l_g$, die den Punkt $e$ in den Punkt $g$ verschiebt, +transportiert auch die Tangentialvektoren im Punkt $e$ in +Tangentialvektoren im Punkt $g$. + +\begin{aufgabe} +Gibt es eine Kurve $\gamma(t)\in\mathbb{GL}_n(\mathbb{R})$ mit +$\gamma(0)=e$ derart, dass der Tangentialvektor im Punkt $\gamma(t)$ +für $t>0$ derselbe ist wie der Tangentialvektor im Punkt $e$, transportiert +durch Matrixmultiplikation mit $\gamma(t)$? +\end{aufgabe} + +Eine solche Kurve muss die Differentialgleichung +\begin{equation} +\frac{d}{dt}\gamma(t) += +\gamma(t)\cdot A +\label{buch:gruppen:eqn:expdgl} +\end{equation} +erfüllen, wobei $A\in M_n(\mathbb{R})$ der gegebene Tangentialvektor +in $e=I$ ist. + +Die Matrixexponentialfunktion +\[ +e^{At} += +1+At+\frac{A^2t^2}{2!}+\frac{A^3t^3}{3!}+\frac{A^4t^4}{4!}+\dots +\] +liefert eine Einparametergruppe +$\mathbb{R}\to \operatorname{GL}_n(\mathbb{R})$ mit der Ableitung +\[ +\frac{d}{dt} e^{At} += +\lim_{h\to 0} \frac{e^{A(t+h)}-e^{At}}{h} += +\lim_{h\to 0} e^{At}\frac{e^{Ah}-I}{h} += +e^{At} A. +\] +Sie ist also Lösung der Differentialgleichung~\eqref{buch:gruppen:eqn:expdgl}. + \subsection{Drehungen in der Ebene \label{buch:gruppen:drehungen2d}} +Die Drehungen der Ebene sind die orientierungserhaltenden Symmetrien +des Einheitskreises, der in Abbildung~\ref{buch:gruppen:fig:kartenkreis} +als Mannigfaltigkeit erkannt wurde. +Sie bilden eine Lie-Gruppe, die auf verschiedene Arten als Matrix +beschrieben werden kann. + +\subsubsection{Die Untergruppe +$\operatorname{SO}(2)\subset \operatorname{GL}_2(\mathbb{R})$} Drehungen der Ebene können in einer orthonormierten Basis durch Matrizen der Form \[ @@ -142,6 +215,21 @@ Funktion ist. $D_{\bullet}$ bildet die Menge der Winkel $[0,2\pi)$ bijektiv auf die Menge der Drehmatrizen in der Ebene ab. +Für jedes Intervall $(a,b)\subset\mathbb{R}$ mit Länge +$b-a < 2\pi$ ist die Abbildung $\alpha\mapsto D_{\alpha}$ umkehrbar, +die Umkehrung kann als Karte verwendet werden. +Zwei verschiedene Karten $\alpha_1\colon U_1\to\mathbb{R}$ und +$\alpha_2\colon U_2\to\mathbb{R}$ bilden die Elemente $g\in U_1\cap U_2$ +in Winkel $\alpha_1(g)$ und $\alpha_2(g)$ ab, für die +$D_{\alpha_1(g)}=D_{\alpha_2(g)}$ gilt. +Dies ist gleichbedeutend damit, dass $\alpha_1(g)=\alpha_2(g)+2\pi k$ +mit $k\in \mathbb{Z}$. +In einem Intervall in $U_1\cap U_2$ muss $k$ konstant sein. +Die Kartenwechselabblidung ist also nur die Addition eines Vielfachen +von $2\pi$, mit der identischen Abbildung als Ableitung. +Diese Karten führen also auf besonders einfache Kartenwechselabbildungen. + +\subsubsection{Die Untergruppe $S^1\subset\mathbb{C}$} Ein alternatives Bild für die Drehungen der Ebene kann man in der komplexen Ebene $\mathbb{C}$ erhalten. Die Multiplikation mit der komplexen Zahl $e^{i\alpha}$ beschreibt eine @@ -210,16 +298,60 @@ in die Gruppe $\operatorname{SO}(2)$. Die Menge der Drehmatrizen in der Ebene kann also mit dem Einheitskreis in der komplexen Ebene identifiziert werden. +\subsubsection{Tangentialvektoren von $\operatorname{SO}(2)$} +Da die Gruppe $\operatorname{SO}(2)$ eine eindimensionale Gruppe +ist, kann jede Kurve $\gamma(t)$ durch den Drehwinkel $\alpha(t)$ +mit $\gamma(t) = D_{\alpha(t)}$ beschrieben werden. +Die Ableitung in $M_2(\mathbb{R})$ ist +\begin{align*} +\frac{d}{dt} \gamma(t) +&= +\frac{d}{d\alpha} +\begin{pmatrix} +\cos\alpha(t) & - \sin\alpha(t)\\ +\sin\alpha(t) & \cos\alpha(t) +\end{pmatrix} +\cdot +\frac{d\alpha}{dt} +\\ +&= +\begin{pmatrix} +-\sin\alpha(t)&-\cos\alpha(t)\\ + \cos\alpha(t)&-\sin\alpha(t) +\end{pmatrix} +\cdot +\dot{\alpha}(t) +\\ +&= +\begin{pmatrix} +\cos\alpha(t) & - \sin\alpha(t)\\ +\sin\alpha(t) & \cos\alpha(t) +\end{pmatrix} +\begin{pmatrix} +0&-1\\ +1&0 +\end{pmatrix} +\cdot +\dot{\alpha}(t) += +D_{\alpha(t)}J\cdot\dot{\alpha}(t). +\end{align*} +Alle Tangentialvektoren von $\operatorname{SO}(2)$ im Punkt $D_\alpha$ +entstehen aus $J$ durch Drehung mit der Matrix $D_\alpha$ und Skalierung +mit $\dot{\alpha}(t)$. + % % Isometrien von R^n % \subsection{Isometrien von $\mathbb{R}^n$ \label{buch:gruppen:isometrien}} -Lineare Abbildungen der Ebene $\mathbb{R}^n$ mit dem üblichen Skalarprodukt -können durch $n\times n$-Matrizen beschrieben werden. -Die Matrizen, die das Skalarprodukt erhalten, bilden eine Gruppe, -die in diesem Abschnitt genauer untersucht werden soll. -Eine Matrix $A\in M_{2}(\mathbb{R})$ ändert das Skalarprodukt nicht, wenn + +\subsubsection{Skalarprodukt} +Lineare Abbildungen des Raumes $\mathbb{R}^n$ können durch +$n\times n$-Matrizen beschrieben werden. +Die Matrizen, die das Standardskalarprodukt $\mathbb{R}^n$ erhalten, +bilden eine Gruppe, die in diesem Abschnitt genauer untersucht werden soll. +Eine Matrix $A\in M_{n}(\mathbb{R})$ ändert das Skalarprodukt, wenn für jedes beliebige Paar $x,y$ von Vektoren gilt $\langle Ax,Ay\rangle = \langle x,y\rangle$. Das Standardskalarprodukt kann mit dem Matrixprodukt ausgedrückt werden: @@ -271,6 +403,60 @@ n^2 - \frac{n(n+1)}{2} \] Im Spezialfall $n=2$ ist die Gruppe $O(2)$ eindimensional. +\subsubsection{Tangentialvektoren} +Die orthogonalen Matrizen bilden eine abgeschlossene Untermannigfaltigkeit +von $\operatorname{GL}_n(\mathbb{R})$, nicht jede Matrix $M_n(\mathbb{R})$ +kann also ein Tangentialvektor von $O(n)$ sein. +Um herauszufinden, welche Matrizen als Tangentialvektoren in Frage +kommen, betrachten wir eine Kurve $\gamma\colon\mathbb{R}\to O(n)$ +von orthogonalen Matrizen mit $\gamma(0)=I$. +Orthogonal bedeutet +\[ +\begin{aligned} +&& +0 +&= +\frac{d}{dt}I += +\frac{d}{dt} +(\gamma(t)^t\gamma(t)) += +\dot{\gamma}(t)^t\gamma(t)) ++ +\gamma(t)^t\dot{\gamma}(t)) +\\ +&\Rightarrow& +0 +&= +\dot{\gamma}(0)^t \cdot I + I\cdot \dot{\gamma(0)} += +\dot{\gamma}(0)^t + \dot{\gamma}(0) += +A^t+A=0 +\\ +&\Rightarrow& +A^t&=-A +\end{aligned} +\] +Die Tangentialvektoren von $\operatorname{O}(n)$ sind also genau +die antisymmetrischen Matrizen. + +Für $n=2$ sind alle antisymmetrischen Matrizen Vielfache der Matrix +$J$, wie in Abschnitt~\ref{buch:gruppen:drehungen2d} +gezeigt wurde. + +Für jedes Paar $i0}\{(x,y)\;|\;x^2+y^2=1\wedge x>0\} \to +\varphi_1&\colon U_{x>0}\{(x,y)\;|\;x^2+y^2=1\wedge x>0\} \to\mathbb{R} : -(x,y) \mapsto y\\ -\varphi_2&\colon U_{x<0}\{(x,y)\;|\;x^2+y^2=1\wedge x<0\} \to +(x,y) \mapsto y +\\ +\varphi_2&\colon U_{x<0}\{(x,y)\;|\;x^2+y^2=1\wedge x<0\} \to\mathbb{R} : -(x,y) \mapsto y\\ -\varphi_3&\colon U_{y>0}\{(x,y)\;|\;x^2+y^2=1\wedge y>0\} \to +(x,y) \mapsto y +\\ +\varphi_3&\colon U_{y>0}\{(x,y)\;|\;x^2+y^2=1\wedge y>0\} \to\mathbb{R} : -(x,y) \mapsto x\\ -\varphi_4&\colon U_{y<0}\{(x,y)\;|\;x^2+y^2=1\wedge y<0\} \to +(x,y) \mapsto x +\\ +\varphi_4&\colon U_{y<0}\{(x,y)\;|\;x^2+y^2=1\wedge y<0\} \to\mathbb{R} : (x,y) \mapsto x \end{align*} @@ -493,13 +497,47 @@ Dasselbe gilt für $\varphi_3$ und $\varphi_4$. Die nichtleeren Schnittmengen der verschiedenen Kartengebiete beschreiben jeweils die Punkte der Kreislinie in einem Quadranten. -Die Umrechnung zwischen den Koordinaten erfolgt je nach Quadrant durch -\[ -x\mapsto y=\pm\sqrt{1-x^2\mathstrut} -\qquad\text{oder}\qquad -y\mapsto x=\pm\sqrt{1-y^2\mathstrut}, -\] -diese Abbildungen sind im offenen Intervall $(-1,1)$ differenzierbar, +Die Umrechnung zwischen den Koordinaten und ihre Ableitung +ist je nach Quadrant durch +\begin{align*} +&\text{1.~Quadrant}& +\varphi_{31} +&= +\varphi_3\circ\varphi_1^{-1}\colon y\mapsto\phantom{-}\sqrt{1-y^2\mathstrut} +& +D\varphi_{31} +&= +-\frac{y}{\sqrt{1-y^2\mathstrut}} +\\ +&\text{2.~Quadrant}& +\varphi_{24} +&= +\varphi_3\circ\varphi_1^{-1}\colon x\mapsto\phantom{-}\sqrt{1-x^2\mathstrut} +& +D\varphi_{24} +&= +-\frac{x}{\sqrt{1-x^2\mathstrut}} +\\ +&\text{3.~Quadrant}& +\varphi_{42} +&= +\varphi_3\circ\varphi_1^{-1}\colon y\mapsto-\sqrt{1-y^2\mathstrut} +& +D\varphi_{42} +&= +\phantom{-}\frac{y}{\sqrt{1-y^2\mathstrut}} +\\ +&\text{4.~Quadrant}& +\varphi_{14} +&= +\varphi_3\circ\varphi_1^{-1}\colon x\mapsto-\sqrt{1-x^2\mathstrut} +& +D\varphi_{14} +&= +\phantom{-}\frac{x}{\sqrt{1-x^2\mathstrut}} +\end{align*} +gegeben. +Diese Abbildungen sind im offenen Intervall $(-1,1)$ differenzierbar, Schwierigkeiten mit der Ableitungen ergeben sich nur an den Stellen $x=\pm1$ und $y=\pm 1$, die in einem Überschneidungsgebiet von Karten nicht vorkommen können. @@ -572,7 +610,9 @@ folgt durch Ableitung nach dem Kurvenparameter $t$, dass \[ \frac{d}{dt}\gamma_\beta(t) = -D\varphi_{\beta\alpha} \frac{d}{dt}\gamma_\alpha(t). +D\varphi_{\beta\alpha} +\cdot +\frac{d}{dt}\gamma_\alpha(t). \] Die Ableitung $D\varphi_{\beta\alpha}$ von $\varphi_{\beta\alpha}$ an der Stelle $\gamma_\alpha(t)$ berechnet also aus dem Tangentialvektor @@ -589,6 +629,91 @@ mit dem die Unmöglichkeit einer globalen Besschreibung einer Mannigfaltigkeit $M$ mit einem einzigen globalen Koordinatensystem ohne Singularitäten umgangen werden kann. +\begin{beispiel} +Das Beispiel des Kreises in Abbildung~\ref{buch:gruppen:fig:kartenkreis} +zeigt, dass die Tangentialvektoren je nach Karte sehr verschieden +aussehen können. +Der Tangentialvektor der Kurve $\gamma(t) = (x(t), y(t))$ im Punkt +$\gamma(t)$ ist $\dot{y}(t)$ in den Karten $\varphi_1$ und $\varphi_2$ +und $\dot{x}(t)$ in den Karten $\varphi_3$ und $\varphi_4$. + +Die spezielle Kurve $\gamma(t) = (\cos t,\sin t)$ hat in einem Punkt +$t\in (0,\frac{\pi}2)$. +in der Karte $\varphi_1$ den Tangentialvektor $\dot{y}(t)=\cos t$, +in der Karte $\varphi_3$ aber den Tangentialvektor $\dot{x}=-\sin t$. +Die Ableitung des Kartenwechsels in diesem Punkt ist die $1\times 1$-Matrix +\[ +D\varphi_{31}(\gamma(t)) += +-\frac{y(t)}{\sqrt{1-y(t)^2}} += +-\frac{\sin t}{\sqrt{1-\sin^2 t}} += +-\frac{\sin t}{\cos t} += +-\tan t. +\] +Die Koordinatenumrechnung ist gegeben durch +\[ +\dot{x}(t) += +D\varphi_{31}(\gamma(t)) +\dot{y}(t) +\] +wird für die spezielle Kurve $\gamma(t)=(\cos t,\sin t)$ wird dies zu +\[ +D\varphi_{31}(\gamma(t)) +\cdot +\dot{y}(t) += +-\tan t\cdot \cos t += +-\frac{\sin t}{\cos t}\cdot \cos t += +-\sin t += +\dot{x}(t). +\qedhere +\] +\end{beispiel} + +Betrachtet man die Kreislinie als Kurve in $\mathbb{R}^2$, +dann ist der Tangentialvektor durch +$\dot{\gamma}(t)=(\dot{x}(t),\dot{y}(t))$ gegeben. +Da die Karten Projektionen auf die $x$- bzw.~$y$-Achsen sind, +entsteht der Tangentialvektor in der Karte durch Projektion +von $(\dot{x}(t),\dot{y}(t))$ auf die entsprechende Komponente. + +Die Tangentialvektoren in zwei verschiedenen Punkten der Kurve können +im Allgemeinen nicht miteinander verglichen werden. +Darüber hinweg hilft auch die Tatsache nicht, dass die Kreislinie +in den Vektorraum $\mathbb{R}^2$ eingebettet sind, wo sich Vektoren +durch Translation miteinander vergleichen lassen. +Ein nichtverschwindender Tangentialvektor im Punkt $(1,0)$ hat, +betrachtet als Vektor in $\mathbb{R}^2$ verschwindende $x$-Komponente, +für Tangentialvektoren im Inneren eines Quadranten ist dies nicht +der Fall. + +Eine Möglichkeit, einen Tangentialvektor in $(1,0)$ mit einem +Tangentialvektor im Punkt $(\cos t,\sin t)$ zu vergleichen, besteht +darin, den Vektor um den Winkel $t$ zu drehen. +Dies ist möglich, weil die Kreislinie eine kontinuierliche Symmetrie, +nämlich die Drehung um den Winkel $t$ hat, die es erlaubt, den Punkt $(1,0)$ +in den Punkt $(\cos t,\sin t)$ abzubilden. +Erst diese Symmetrie ermöglicht den Vergleich. +Dieser Ansatz ist für alle Matrizen erfolgreich, wie wir später sehen werden. + +Ein weiterer Ansatz, Tangentialvektoren zu vergleichen, ist die Idee, +einen sogenannten Zusammenhang zu definieren, eine Vorschrift, wie +Tangentialvektoren infinitesimal entlang von Kurven in der Mannigfaltigkeit +transportiert werden können. +Auf einer sogenannten {\em Riemannschen Mannigfaltigkeit} ist zusätzlich +zur Mannigfaltigkeitsstruktur die Längenmessung definiert. +Sie kann dazu verwendet werden, den Transport von Vektoren entlang einer +Kurve so zu definieren, dass dabei Längen und Winkel erhalten bleiben. +Dieser Ansatz ist die Basis der Theorie der Krümmung sogenannter +Riemannscher Mannigfaltigkeiten. + \subsection{Der Satz von Noether \label{buch:subsection:noether}} -- cgit v1.2.1 From b2f142c6a525994a61484238b6ce0e6323863953 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 4 Apr 2021 19:37:26 +0200 Subject: fix typos --- buch/chapters/60-gruppen/images/Makefile | 5 +- buch/chapters/60-gruppen/images/scherungen.pdf | Bin 0 -> 24544 bytes buch/chapters/60-gruppen/images/scherungen.tex | 157 +++++++++++++++++++++++++ buch/chapters/60-gruppen/lie-gruppen.tex | 13 ++ 4 files changed, 174 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/60-gruppen/images/scherungen.pdf create mode 100644 buch/chapters/60-gruppen/images/scherungen.tex (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/images/Makefile b/buch/chapters/60-gruppen/images/Makefile index 8824d75..3ed39e5 100644 --- a/buch/chapters/60-gruppen/images/Makefile +++ b/buch/chapters/60-gruppen/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: phasenraum.pdf kartenkreis.pdf karten.pdf sl2.pdf +all: phasenraum.pdf kartenkreis.pdf karten.pdf sl2.pdf scherungen.pdf phasenraum.pdf: phasenraum.tex pdflatex phasenraum.tex @@ -20,3 +20,6 @@ karten.pdf: karten.tex torus.png sl2.pdf: sl2.tex pdflatex sl2.tex +scherungen.pdf: scherungen.tex + pdflatex scherungen.tex + diff --git a/buch/chapters/60-gruppen/images/scherungen.pdf b/buch/chapters/60-gruppen/images/scherungen.pdf new file mode 100644 index 0000000..c7f4988 Binary files /dev/null and b/buch/chapters/60-gruppen/images/scherungen.pdf differ diff --git a/buch/chapters/60-gruppen/images/scherungen.tex b/buch/chapters/60-gruppen/images/scherungen.tex new file mode 100644 index 0000000..893bd12 --- /dev/null +++ b/buch/chapters/60-gruppen/images/scherungen.tex @@ -0,0 +1,157 @@ +% +% scherungen.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] + +\definecolor{blau}{rgb}{0,0.8,1} +\definecolor{blau}{rgb}{0,0.6,0} +\def\s{1.1} + +\begin{scope}[xshift=-4.6cm] + + \fill[color=blue!20] (0,0) rectangle (2,2); + \fill[color=red!40,opacity=0.5] (0,0) -- (2,\s) -- (2,{2+\s}) -- (0,2) + -- cycle; + + \foreach \x in {-1,...,3}{ + \draw[color=blau] (\x,-1) -- (\x,3); + \draw[color=blau] (-1,\x) -- (3,\x); + } + + \begin{scope} + \clip (-1,-1) rectangle (3,3); + \foreach \x in {-1,...,3}{ + \draw[color=orange] (\x,-1) -- (\x,3); + \draw[color=orange] (-1,{\x-0.5*\s}) -- (3,{\x+1.5*\s}); + } + \end{scope} + + \draw[->] (-1.1,0) -- (3.3,0) coordinate[label={$x$}]; + \draw[->] (0,-1.1) -- (0,3.5) coordinate[label={right:$y$}]; + + \node[color=blue] at (0,2) [above left] {$1$}; + \node[color=blue] at (2,0) [below right] {$1$}; + \draw[->,color=blue] (0,0) -- (2,0); + \draw[->,color=blue] (0,0) -- (0,2); + + \draw[->,color=red] (0,0) -- (2,\s); + \draw[->,color=red] (0,0) -- (0,2); + + \node[color=red] at (2,\s) [below right] {$(1,t)$}; + + \node at (0,0) [below right] {$O$}; + \node at (1,-1.1) [below] {$\displaystyle + \begin{aligned} + M &= \begin{pmatrix}0&0\\1&0 \end{pmatrix} + \\ + e^{Mt} + &= + \begin{pmatrix}1&0\\t&1 \end{pmatrix} + \end{aligned} + $}; +\end{scope} + +\begin{scope} + \fill[color=blue!20] (0,0) rectangle (2,2); + \fill[color=red!40,opacity=0.5] (0,0) -- (2,0) -- ({2+\s},2) -- (\s,2) + -- cycle; + + \foreach \x in {-1,...,3}{ + \draw[color=blau] (\x,-1) -- (\x,3); + \draw[color=blau] (-1,\x) -- (3,\x); + } + + \begin{scope} + \clip (-1,-1) rectangle (3,3); + \foreach \x in {-1,...,3}{ + \draw[color=orange] (-1,\x) -- (3,\x); + \draw[color=orange] ({\x-0.5*\s},-1) -- ({\x+1.5*\s},3); + } + \end{scope} + + \draw[->] (-1.1,0) -- (3.3,0) coordinate[label={$x$}]; + \draw[->] (0,-1.1) -- (0,3.5) coordinate[label={right:$y$}]; + + \node[color=blue] at (0,2) [above left] {$1$}; + \node[color=blue] at (2,0) [below right] {$1$}; + \draw[->,color=blue] (0,0) -- (2,0); + \draw[->,color=blue] (0,0) -- (0,2); + + \draw[->,color=red] (0,0) -- (2,0); + \draw[->,color=red] (0,0) -- (\s,2); + + \node[color=red] at (\s,2) [above left] {$(t,1)$}; + + \node at (0,0) [below right] {$O$}; + + \node at (1,-1.1) [below] {$\displaystyle + \begin{aligned} N &= \begin{pmatrix}0&1\\0&0 \end{pmatrix} + \\ + e^{Nt} + &= + \begin{pmatrix}1&t\\0&1 \end{pmatrix} + \end{aligned} + $}; +\end{scope} + +\begin{scope}[xshift=3.6cm,yshift=0cm] + \def\punkt#1#2{({1.6005*(#1)+0.4114*(#2)},{-0.2057*(#1)+0.5719*(#2)})} + \fill[color=blue!20] (0,0) rectangle (2,2); + \fill[color=red!40,opacity=0.5] + (0,0) -- \punkt{2}{0} -- \punkt{2}{2} -- \punkt{0}{2} -- cycle; + + \foreach \x in {0,...,4}{ + \draw[color=blau] (\x,-1) -- (\x,3); + } + \foreach \y in {-1,...,3}{ + \draw[color=blau] (0,\y) -- (4,\y); + } + + \begin{scope} + \clip (-0,-1) rectangle (4,3); + \foreach \x in {-1,...,6}{ + \draw[color=orange] \punkt{\x}{-3} -- \punkt{\x}{6}; + \draw[color=orange] \punkt{-3}{\x} -- \punkt{6}{\x}; + } + \end{scope} + + \draw[->] (-0.1,0) -- (4.3,0) coordinate[label={$x$}]; + \draw[->] (0,-1.1) -- (0,3.5) coordinate[label={right:$y$}]; + + \node[color=blue] at (0,2) [above left] {$1$}; + \node[color=blue] at (2,0) [below right] {$1$}; + \draw[->,color=blue] (0,0) -- (2,0); + \draw[->,color=blue] (0,0) -- (0,2); + + \draw[->,color=red] (0,0) -- \punkt{2}{0}; + \draw[->,color=red] (0,0) -- \punkt{0}{2}; + + \node at (0,0) [below right] {$O$}; + + \node at (2,-1.1) [below] {$\displaystyle + \begin{aligned} D &= \begin{pmatrix}0.5&0.4\\-0.2&-0.5 \end{pmatrix} + \\ + e^{D\cdot 1} + &= + \begin{pmatrix} + 1.6005 & 0.4114\\ + -0.2057 & 0.5719 + \end{pmatrix} + \end{aligned} + $}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/60-gruppen/lie-gruppen.tex b/buch/chapters/60-gruppen/lie-gruppen.tex index 6d2531a..d6fc007 100644 --- a/buch/chapters/60-gruppen/lie-gruppen.tex +++ b/buch/chapters/60-gruppen/lie-gruppen.tex @@ -768,8 +768,21 @@ auch diese Matrizen sind flächenerhaltend. \caption{Tangentialvektoren und die davon erzeugen Einparameteruntergruppen für die Lie-Gruppe $\operatorname{SL}_2(\mathbb{R})$ der flächenerhaltenden linearen Abbildungen von $\mathbb{R}^2$. +In allen drei Fällen wird ein blauer Rhombus mit den Ecken in den +Standardbasisvektoren von einer Matrix der Einparameteruntergruppe zu +zum roten Viereck verzerrt, der Flächeninhalt bleibt aber erhalten. +In den beiden Fällen $B$ und $C$ stellen die grünen Kurven die Bahnen +der Bilder der Standardbasisvektoren dar. \label{buch:gruppen:fig:sl2}} \end{figure}% +\begin{figure} +\centering +\includegraphics{chapters/60-gruppen/images/scherungen.pdf} +\caption{Weitere Matrizen mit Spur $0$ und ihre Wirkung +Die inken beiden Beispiele $M$ und $N$ sind nilpotente Matrizen, +die zugehörigen Einparameter-Untergruppen beschreiben Schwerungen. +\label{buch:gruppen:fig:scherungen}} +\end{figure} \end{beispiel} % -- cgit v1.2.1 From 6fd28b0754e453e3f843b6fbe6493022a846f618 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 4 Apr 2021 22:48:42 +0200 Subject: Lie-Algebra stuff --- buch/chapters/60-gruppen/chapter.tex | 2 +- buch/chapters/60-gruppen/lie-algebren.tex | 718 +++++++++++++++++++++++------- buch/chapters/references.bib | 10 + 3 files changed, 562 insertions(+), 168 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/chapter.tex b/buch/chapters/60-gruppen/chapter.tex index c2aa68d..8472b58 100644 --- a/buch/chapters/60-gruppen/chapter.tex +++ b/buch/chapters/60-gruppen/chapter.tex @@ -35,7 +35,7 @@ Zusammenhangs darzustellen. \input{chapters/60-gruppen/symmetrien.tex} \input{chapters/60-gruppen/lie-gruppen.tex} \input{chapters/60-gruppen/lie-algebren.tex} -\input{chapters/60-gruppen/homogen.tex} +%\input{chapters/60-gruppen/homogen.tex} diff --git a/buch/chapters/60-gruppen/lie-algebren.tex b/buch/chapters/60-gruppen/lie-algebren.tex index 366d280..cee8510 100644 --- a/buch/chapters/60-gruppen/lie-algebren.tex +++ b/buch/chapters/60-gruppen/lie-algebren.tex @@ -29,234 +29,618 @@ Lie-Algebra von $\operatorname{SO}(3)$ mit dem Vektorprodukt in $\mathbb{R}^3$ übereinstimmt. % -% Tangentialvektoren und SO(2) +% Die Lie-Algebra einer Matrizengruppe +% +\subsection{Lie-Algebra einer Matrizengruppe +\label{buch:section:lie-algebra-einer-matrizengruppe}} +Zu jedem Tangentialvektor $A$ im Punkt $I$ einer Matrizengruppe gibt es +eine Einparameteruntergruppe, die mit Hilfe der Exponentialfunktion +$e^{At}$ konstruiert werden kann. +Für die folgende Konstruktion arbeiten wir in der Gruppe +$\operatorname{GL}_n(\mathbb{R})$, in der jede Matrix auch ein +Tangentialvektor ist. +Wir werden daraus die Lie-Klammer ableiten und später verifizieren, +dass diese auch für die Tangentialvektoren der Gruppen +$\operatorname{SO}(n)$ oder $\operatorname{SL}_n(\mathbb{R})$ funktioniert. + +\subsubsection{Lie-Klammer} +Zu zwei verschiedenen Tagentialvektoren $A\in M_n(\mathbb{R})$ und +$B\in M_n(\mathbb{R})$ gibt es zwei verschiedene Einparameteruntergruppen +$e^{At}$ und $e^{Bt}$. +Wenn die Matrizen $A$ und $B$ oder die Einparameteruntergruppen +$e^{At}$ und $e^{Bt}$ vertauschbar sind, dann stimmen +$e^{At}e^{Bt}$ und $e^{Bt}e^{At}$ nicht überein. +Die zugehörigen Potenzreihen sind: +\begin{align*} +e^{At} +&= +I+At + \frac{A^2t^2}{2!} + \frac{A^3t^3}{3!} + \dots +\\ +e^{Bt} +&= +I+Bt + \frac{B^2t^2}{2!} + \frac{B^3t^3}{3!} + \dots +\\ +e^{At}e^{Bt} +&= +\biggl(I+At + \frac{A^2t^2}{2!} + \dots\biggr) +\biggl(I+Bt + \frac{B^2t^2}{2!} + \dots\biggr) +\\ +&= +I+(A+B)t + \biggl(\frac{A^2}{2!}+AB+\frac{B^2}{2!}\biggr)t^2 +\dots +\\ +e^{Bt}e^{At} +&= +\biggl(I+Bt + \frac{B^2t^2}{2!} + \dots\biggr) +\biggl(I+At + \frac{A^2t^2}{2!} + \dots\biggr) +\\ +&= +I+(B+A)t + \biggl(\frac{B^2}{2!}+BA+\frac{A^2}{2!}\biggr)t^2 +\dots +\intertext{% +Die beiden Kurven $e^{At}e^{Bt}$ und $e^{Bt}e^{At}$ haben zwar den gleichen +Tangentialvektor für $t=0$, sie unterscheiden +sich aber untereinander, und sie unterscheiden sich von der +Einparameteruntergruppe von $A+B$} +e^{(A+B)t} +&= +I + (A+B)t + \frac{t^2}{2}(A^2 + AB + BA + B^2) + \ldots +\intertext{Für die Unterschiede finden wir} +e^{At}e^{Bt} - e^{(A+B)t} +&= +\biggl(AB-\frac{AB+BA}2\biggr)t^2 ++\ldots += +(AB-BA) \frac{t^2}{2} + \ldots += +[A,B]\frac{t^2}{2}+\ldots +\\ +e^{Bt}e^{At} - e^{(A+B)t} +&= +\biggl(BA-\frac{AB+BA}2\biggr)t^2 ++\ldots += +(BA-AB) +\frac{t^2}{2} ++\ldots += +-[A,B]\frac{t^2}{2} +\\ +e^{At}e^{Bt}-e^{Bt}e^{At} +&= +(AB-BA)t^2+\ldots += +\phantom{-}[A,B]t^2+\ldots +\end{align*} +wobei mit $[A,B]=AB-BA$ abgekürzt wird. + +\begin{definition} +\label{buch:gruppen:def:kommutator} +Der Kommutator zweier Matrizen $A,B\in M_n(\mathbb{R})$ ist die Matrix +$[A,B]=AB-BA$. +\end{definition} + +Der Kommutator ist bilinear und antisymmetrisch, da +\begin{align*} +[\lambda A+\mu B,C] +&= +\lambda AC+\mu BC-\lambda CA -\mu CB += +\lambda[A,C]+\mu[B,C] +\\ +[A,\lambda B+\mu C] +&= +\lambda AB + \mu AC - \lambda BA - \mu CA += +\lambda[A,B]+\mu[A,C] +\\ +[A,B] +&= +AB-BA = -(BA-AB) = -[B,A]. +\end{align*} +Aus der letzten Bedingung folgt insbesodnere $[A,A]=0$ + +Der Kommutator $[A,B]$ misst in niedrigster Ordnung den Unterschied +zwischen den $e^{At}$ und $e^{Bt}$. +Der Kommutator der Tangentialvektoren $A$ und $B$ bildet also die +Nichtkommutativität der Matrizen $e^{At}$ und $e^{Bt}$ ab. + + +\subsubsection{Die Jacobi-Identität} +Der Kommutator hat die folgende zusätzliche algebraische Eigenschaft: +\begin{align*} +[A,[B,C]] ++ +[B,[C,A]] ++ +[C,[A,B]] +&= +[A,BC-CB] ++ +[B,CA-AC] ++ +[C,AB-BA] +\\ +&=\phantom{+} +ABC-ACB-BCA+CBA +\\ +&\phantom{=}+ +BCA-BAC-CAB+ACB +\\ +&\phantom{=}+ +CAB-CBA-ABC+BAC +\\ +&=0. +\end{align*} +Diese Eigenschaft findet man auch bei anderen Strukturen, zum Beispiel +bei Vektorfeldern, die man als Differentialoperatoren auf Funktionen +betrachten kann. +Man kann dann einen Kommutator $[X,Y]$ für zwei Vektorfelder +$X$ und $Y$ definieren. +Dieser Kommutator von Vektorfeldern erfüllt ebenfalls die gleiche +Identität. + +\begin{definition} +\label{buch:gruppen:def:jacobi} +Ein bilineares Produkt $[\;,\;]\colon V\times V\to V$ auf dem Vektorraum +erfüllt die {\em Jacobi-Identität}, wenn +\[ +[u,[v,w]] + [v,[w,u]] + [w,[u,v]]=0 +\] +ist für beliebige Vektoren $u,v,w\in V$. +\end{definition} + +\subsubsection{Lie-Algebra} +Die Tangentialvektoren einer Lie-Gruppe tragen also mit dem Kommutator +eine zusätzliche Struktur, nämlich die Struktur einer Lie-Algebra. + +\begin{definition} +Ein Vektorraum $V$ mit einem bilinearen, Produkt +\[ +[\;,\;]\colon V\times V \to V : (u,v) \mapsto [u,v], +\] +welches zusätzlich die Jacobi-Identität~\ref{buch:gruppen:def:jacobi} +erfüllt, heisst eine {\em Lie-Algebra}. +\end{definition} + +Die Lie-Algebra einer Lie-Gruppe $G$ wird mit $LG$ bezeichnet. +$LG$ besteht aus den Tangentialvektoren im Punkt $I$. +Die Exponentialabbildung $\exp\colon LG\to G:A\mapsto e^A$ +ist eine differenzierbare Abbildung von $LG$ in die Gruppe $G$. +Insbesondere kann die Inverse der Exponentialabbildung als eine +Karte in einer Umgebung von $I$ verwendet werden. + +Für die Lie-Algebren der Matrizengruppen, die früher definiert worden +sind, verwenden wir die als Notationskonvention, dass der Name der +Lie-Algebra der mit kleinen Buchstaben geschrieben Name der Lie-Gruppe ist. +Die Lie-Algebra von $\operatorname{SO}(n)$ ist also +$L\operatorname{SO}(n) = \operatorname{os}(n)$, +die Lie-Algebra von $\operatorname{SL}_n(\mathbb{R})$ ist +$L\operatorname{SL}_n(\mathbb{R})=\operatorname{sl}_n(\mathbb{R})$. + + % -\subsection{Tangentialvektoren und $\operatorname{SO}(2)$} -Die Drehungen in der Ebene können reell als Matrizen der Form +% Die Lie-Algebra von SO(3) +% +\subsection{Die Lie-Algebra von $\operatorname{SO}(3)$ +\label{buch:subsection:die-lie-algebra-von-so3}} +Zur Gruppe $\operatorname{SO}(3)$ der Drehmatrizen gehört die Lie-Algebra +$\operatorname{so}(3)$ der antisymmetrischen $3\times 3$-Matrizen. +Solche Matrizen haben die Form \[ -D_{\alpha} +\Omega = \begin{pmatrix} -\cos\alpha&-\sin\alpha\\ -\sin\alpha& \cos\alpha + 0 & \omega_3&-\omega_2\\ +-\omega_3& 0 & \omega_1\\ + \omega_2&-\omega_1& 0 \end{pmatrix} \] -als eidimensionale Kurve innerhalb von $M_2(\mathbb{R})$ beschrieben -werden. -Alternativ können Drehungen um den Winkel $\alpha$ als mit Hilfe von -der Abbildung -$ -\alpha\mapsto e^{i\alpha} -$ -als komplexe Zahlen vom Betrag $1$ beschrieben werden. -Dies sind zwei verschiedene Parametrisierungen der gleichen -geometrischen Transformation. - -Die Ableitung nach $\alpha$ ist $ie^{i\alpha}$, der Tangentialvektor -im Punkt $e^{i\alpha}$ ist also $ie^{i\alpha}$. -Die Multiplikation mit $i$ ist die Drehung um $90^\circ$, der Tangentialvektor -ist also der um $90^\circ$ gedrehte Ortsvektor zum Punkt auf der Kurve. +Der Vektorraum $\operatorname{so}(3)$ ist also dreidimensional. -In der Darstelllung als $2\times 2$-Matrix ist die Ableitung +Die Wirkung von $I+t\Omega$ auf einem Vektor $x$ ist \[ -\frac{d}{d\alpha}D_\alpha +(I+t\Omega) +\begin{pmatrix}x_1\\x_2\\x_3\end{pmatrix} = -\frac{d}{d\alpha} \begin{pmatrix} -\cos\alpha& -\sin\alpha\\ -\sin\alpha& \cos\alpha + 1 & t\omega_3&-t\omega_2\\ +-t\omega_3& 1 & t\omega_1\\ + t\omega_2&-t\omega_1& 1 \end{pmatrix} +\begin{pmatrix}x_1\\x_2\\x_3\end{pmatrix} = \begin{pmatrix} --\sin\alpha & -\cos\alpha \\ - \cos\alpha & -\sin\alpha +x_1-t(-\omega_3x_2+\omega_2x_3)\\ +x_2-t( \omega_3x_1-\omega_1x_3)\\ +x_3-t(-\omega_2x_1+\omega_1x_2) +\end{pmatrix} += +x- t\begin{pmatrix}\omega_1\\\omega_2\\\omega_3\end{pmatrix}\times x += +x+ tx\times \omega. +\] +Die Matrix $\Omega$ ist als die infinitesimale Version einer Drehung +um die Achse $\omega$. + +Wir können die Analogie zwischen Matrizen in $\operatorname{so}(3)$ und +Vektoren in $\mathbb R^3$ noch etwas weiter treiben. Zu jedem Vektor +in $\mathbb R^3$ konstruieren wir eine Matrix in $\operatorname{so}(3)$ +mit Hilfe der Abbildung +\[ +\mathbb R^3\to\operatorname{so}(3) +: +\begin{pmatrix}v_1\\v_2\\v_3\end{pmatrix} +\mapsto +\begin{pmatrix} + 0 & v_3&-v_1\\ +-v_3& 0 & v_2\\ + v_1&-v_2& 0 \end{pmatrix}. \] -Die rechte Seite kann wieder mit der Drehmatrix $D_\alpha$ geschrieben -werden, es ist nämlich +Der Kommutator von zwei so aus Vektoren $\vec u$ und $\vec v$ +konstruierten Matrizen $U$ und $V$ ist: +\begin{align*} +[U,V] +&= +UV-VU +\\ +&= +\begin{pmatrix} + 0 & u_3&-u_1\\ +-u_3& 0 & u_2\\ + u_1&-u_2& 0 +\end{pmatrix} +\begin{pmatrix} + 0 & v_3&-v_1\\ +-v_3& 0 & v_2\\ + v_1&-v_2& 0 +\end{pmatrix} +- +\begin{pmatrix} + 0 & v_3&-v_1\\ +-v_3& 0 & v_2\\ + v_1&-v_2& 0 +\end{pmatrix} +\begin{pmatrix} + 0 & u_3&-u_1\\ +-u_3& 0 & u_2\\ + u_1&-u_2& 0 +\end{pmatrix} +\\ +&= +\begin{pmatrix} +u_3v_3+u_1v_1 - u_3v_3 - u_1v_1 + & u_1v_2 - u_2v_1 + & u_3v_2 - u_2v_3 +\\ +u_2v_1 - u_1v_2 + & -u_3v_3-u_2v_2 + u_3v_3+u_2v_2 + & u_3v_1 - u_1v_3 +\\ +u_2v_3 - u_3v_2 + & u_1v_3 - u_3v_1 + &-u_1v_1-u_2v_2 u_1v_1+u_2v_2 +\end{pmatrix} +\\ +&= +\begin{pmatrix} +0 + & u_1v_2 - u_2v_1 + &-(u_2v_3-u_3v_2) +\\ +-( u_1v_2 - u_2v_1) + & 0 + & u_3v_1 - u_1v_3 +\\ +u_2v_3 - u_3v_2 + &-( u_3v_1 - u_1v_3) + & 0 +\end{pmatrix} +\end{align*} +Die Matrix $[U,V]$ gehört zum Vektor $\vec u\times\vec v$. +Damit können wir aus der Jacobi-Identität jetzt folgern, dass +\[ +\vec u\times(\vec v\times w) ++ +\vec v\times(\vec w\times u) ++ +\vec w\times(\vec u\times v) +=0 +\] +für drei beliebige Vektoren $\vec u$, $\vec v$ und $\vec w$ ist. +Dies bedeutet, dass der dreidimensionale Vektorraum $\mathbb R^3$ +mit dem Vektorprodukt zu einer Lie-Algebra wird. +In der Tat verwenden einige Bücher statt der vertrauten Notation +$\vec u\times \vec v$ für das Vektorprodukt die aus der Theorie der +Lie-Algebren entlehnte Notation $[\vec u,\vec v]$, zum Beispiel +das Lehrbuch der Theoretischen Physik \cite{skript:landaulifschitz1} +von Landau und Lifschitz. + +Die Lie-Algebren sind vollständig klassifiziert worden, es gibt +keine nicht trivialen zweidimensionalen Lie-Algebren. +Unser dreidimensionaler Raum ist also auch in dieser Hinsicht speziell: +es ist der kleinste Vektorraum, in dem eine nichttriviale Lie-Algebra-Struktur +möglich ist. + +Die antisymmetrischen Matrizen \[ -\frac{d}{d\alpha}D_\alpha +\omega_{23} += +\begin{pmatrix} 0&1&0\\-1&0&0\\0&0&0\end{pmatrix} +\quad +\omega_{31} = +\begin{pmatrix} 0&0&-1\\0&0&0\\1&0&0\end{pmatrix} +\quad +\omega_{12} += +\begin{pmatrix} 0&0&0\\0&0&1\\0&-1&0\end{pmatrix} +\] +haben die Kommutatoren +\begin{equation} +\begin{aligned} +[\omega_{23},\omega_{31}] +&= \begin{pmatrix} --\sin\alpha & -\cos\alpha \\ - \cos\alpha & -\sin\alpha +0&0&0\\ +0&0&1\\ +0&-1&0 \end{pmatrix} = +\omega_{12} +\\ +[\omega_{31},\omega_{12}] +&= \begin{pmatrix} -\cos\alpha & -\sin\alpha\\ -\sin\alpha & \cos\alpha +0&1&0\\ +-1&0&0\\ +0&0&0 \end{pmatrix} += +\omega_{23} +\\ +[\omega_{12},\omega_{23}] +&= \begin{pmatrix} -0&-1\\ -1& 0 +0&0&-1\\ +0&0&0\\ +1&0&0 \end{pmatrix} = -D_\alpha J. -\] -Der Tangentialvektor an die Kurve $\alpha\mapsto D_\alpha$ innerhalb -$M_2(\mathbb{R})$ im Punkt $D_\alpha$ ist also die Matrix -$JD_\alpha$. -Die Matrix $J$ ist die Drehung um $90^\circ$, denn $J=D_{\frac{\pi}2}$. -Der Zusammenhang zwischen dem Punkt $D_\alpha$ und dem Tangentialvektor -ist also analog zur Beschreibug mit komplexen Zahlen. +\omega_{31} +\end{aligned} +\label{buch:gruppen:eqn:so3-kommutatoren} +\end{equation} -Im Komplexen vermittelt die Exponentialfunktion den Zusammenhang zwischen -dem Winkel $\alpha$ und dre Drehung $e^{i\alpha}$. -Der Grund dafür ist natürlich die Differentialgleichung +\subsection{Die Lie-Algebra von $\operatorname{SL}_n(\mathbb{R})$} +Die Lie-Algebra von $\operatorname{SL}_n(\mathbb{R})$ besteht aus den +spurlosen Matrizen in $M_n(\mathbb{R})$. +Der Kommutator solcher Matrizen erfüllt +\[ +\operatorname{Spur}([A,B]) += +\operatorname{Spur}(AB-BA) += +\operatorname{Spur}(AB)-\operatorname{Spur}(BA) += +0, +\] +somit ist \[ -\frac{d}{d\alpha} z(\alpha) = iz(\alpha). +\operatorname{sl}_n(\mathbb{R}) += +\{ +A\in M_n(\mathbb{R})\;|\; \operatorname{Spur}(A)=0 +\} \] -Die analoge Differentialgleichung +mit dem Kommutator eine Lie-Algebra. + +% +% Die Lie-Algebra von U(n) +% +\subsection{Die Lie-Algebra von $\operatorname{U}(n)$} +Die Lie-Gruppe \[ -\frac{d}{d\alpha} D_\alpha = J D_\alpha +U(n) += +\{ +A\in M_n(\mathbb{C} +\;|\; +AA^*=I +\} \] -führt auf die Matrix-Exponentialreihe +heisst die unitäre Gruppe, sie besteht aus den Matrizen, die +das sesquilineare Standardskalarprodukt auf dem komplexen +Vektorraum $\mathbb{C}^n$ invariant lassen. +Sei eine $\gamma(t)$ ein differenzierbare Kurve in $\operatorname{U}(n)$ +derart, dass $\gamma(0)=I$. +Die Ableitung der Identität $AA^*=I$ führt dann auf \begin{align*} -D_\alpha +0 = -\exp (J\alpha) -&= -\sum_{k=0}^\infty \frac{(J\alpha)^k}{k!} +\frac{d}{dt} +\gamma(t)\gamma(t)^* +\bigg|_{t=0} = -I\biggl( -1-\frac{\alpha^2}{2!} + \frac{\alpha^4}{4!} -\frac{\alpha^6}{6!}+\dots -\biggr) +\dot{\gamma}(0)\gamma(0)^* + -J\biggl( -\alpha - \frac{\alpha^3}{3!} -+ \frac{\alpha^5}{5!} -- \frac{\alpha^7}{7!}+\dots -\biggr) -\\ -&= -I\cos\alpha +\gamma(0)\dot{\gamma}(0)^* += +\dot{\gamma}(0) + -J\sin\alpha, +\dot{\gamma}(0)^* +\quad\Rightarrow\quad +\dot{\gamma}(0)&=-\dot{\gamma}(0)^*. +A&=-A^* \end{align*} -welche der Eulerschen Formel $e^{i\alpha} = \cos\alpha + i \sin\alpha$ -analog ist. - -In diesem Beispiel gibt es nur eine Tangentialrichtung und alle in Frage -kommenden Matrizen vertauschen miteinander. -Es ist daher nicht damit zu rechnen, dass sich eine interessante -Algebrastruktur für die Ableitungen konstruieren lässt. - -% -% Die Lie-Algebra einer Matrizengruppe -% -\subsection{Lie-Algebra einer Matrizengruppe} -Das eindimensionale Beispiel $\operatorname{SO}(2)$ hat gezeigt, dass -die Tangentialvektoren in einem beliebigen Punkt $D_\alpha$ aus dem -Tangentialvektor im Punkt $I$ durch Anwendung der Drehung hervorgehen, -die $I$ in $D_\alpha$ abbildet. -Die Drehungen einer eindimensionalen Untergruppe transportieren daher -den Tangentialvektor in $I$ entlang der Kurve auf jeden beliebigen -anderen Punkt. -Zu jedem Tangentialvektor im Punkt $I$ dürfte es daher genau eine -eindimensionale Untergruppe geben. +Die Lie-Algebra $\operatorname{u}(n)$ besteht daher aus den antihermiteschen +Matrizen. -Sei die Abbildung $\varrho\colon\mathbb{R}\to G$ eine Einparameter-Untergruppe -von $G\subset M_n(\mathbb{R})$. -Durch Ableitung der Gleichung $\varrho(t+x) = \varrho(t)\varrho(x)$ nach -$x$ folgt die Differentialgleichung -\[ -\varrho'(t) +Wir sollten noch verifizieren, dass der Kommutator zweier antihermiteschen +Matrizen wieder anithermitesch ist: +\begin{align*} +[A,B]^* +&= +(AB-BA)^* = -\frac{d}{dx}\varrho(t+x)\bigg|_{x=0} +B^*A^*-A^*B^* = -\varrho(t) \frac{d}{dx}\varrho(0)\bigg|_{x=0} +BA - AB = -\varrho(t) \varrho'(0). -\] -Der Tangentialvektor in $\varrho'(t)$ in $\varrho(t)$ ist daher -der Tangentialvektor $\varrho'(0)$ in $I$ transportiert in den Punkt -$\varrho(t)$ mit Hilfe der Matrix $\varrho(t)$. +-[B,A]. +\end{align*} -Aus der Differentialgleichung folgt auch, dass +Eine antihermitesche Matrix erfüllt $a_{ij}=-\overline{a}_{ji}$, +für die Diagonalelemente folgt daher $a_{ii} = -\overline{a}_{ii}$ +oder $\overline{a}_{ii}=-a_{ii}$. +Der Realteil von $a_{ii}$ ist \[ -\varrho(t) = \exp (t\varrho'(0)). +\Re a_{ii} += +\frac{a_{ii}+\overline{a}_{ii}}2 += +0, \] -Zu einem Tangentialvektor in $I$ kann man also immer die -Einparameter-Untergruppe mit Hilfe der Differentialgleichung -oder der expliziten Exponentialreihe rekonstruieren. +die Diagonalelemente einer antihermiteschen Matrix sind daher rein +imaginär. -Die eindimensionale Gruppe $\operatorname{SO}(2)$ ist abelsch und -hat einen eindimensionalen Tangentialraum, man kann also nicht mit -einer interessanten Algebrastruktur rechnen. -Für eine höherdimensionale, nichtabelsche Gruppe sollte sich aus -der Tatsache, dass es verschiedene eindimensionale Untergruppen gibt, -deren Elemente nicht mit den Elemente einer anderen solchen Gruppe -vertauschen, eine interessante Algebra konstruieren lassen, deren -Struktur die Nichtvertauschbarkeit wiederspiegelt. -Seien also $A$ und $B$ Tangentialvektoren einer Matrizengruppe $G$, -die zu den Einparameter-Untergruppen $\varphi(t)=\exp At$ und -$\varrho(t)=\exp Bt$ gehören. -Insbesondere gilt $\varphi'(0)=A$ und $\varrho'(0)=B$. -Das Produkt $\pi(t)=\varphi(t)\varrho(t)$ ist allerdings nicht notwendigerweise -eine Einparametergruppe, denn dazu müsste gelten +% +% Die Lie-Algebra SU(2) +% +\subsection{Die Lie-Algebra von $\operatorname{SU}(2)$} +Die Lie-Algebra $\operatorname{su}(n)$ besteht aus den +spurlosen antihermiteschen Matrizen. +Sie erfüllen daher die folgenden Bedingungen: +\[ +A=\begin{pmatrix}a&b\\c&d\end{pmatrix} +\qquad +\text{mit} +\qquad +\left\{ +\begin{aligned} +a+d&=0&&\Rightarrow& a=is = -d +\\ +b^*&=-c +\end{aligned} +\right. +\] +Damit hat $A$ die Form +\begin{align*} +A=\begin{pmatrix} +is&u+iv\\ +-u+iv&-is +\end{pmatrix} +&= +s +\begin{pmatrix} +i&0\\ +0&-i +\end{pmatrix} ++ +u +\begin{pmatrix} + 0&1\\ +-1&0 +\end{pmatrix} ++ +v +\begin{pmatrix} +0&i\\ +i&0 +\end{pmatrix} +\\ +&= +iv\underbrace{\begin{pmatrix}0&1\\1&0\end{pmatrix}}_{\displaystyle=\sigma_1} ++ +iu\underbrace{\begin{pmatrix}0&-i\\i&0\end{pmatrix}}_{\displaystyle=\sigma_2} ++ +is\underbrace{\begin{pmatrix}1&0\\0&-1\end{pmatrix}}_{\displaystyle=\sigma_3} +\end{align*} +Diese Matrizen heissen die {\em Pauli-Matrizen}, sie haben die Kommutatoren \begin{align*} -\pi(t+s) +[\sigma_1,\sigma_2] &= -\varphi(t+s)\varrho(t+s) +\begin{pmatrix}0&1\\1&0\end{pmatrix} +\begin{pmatrix}0&-i\\i&0\end{pmatrix} +- +\begin{pmatrix}0&-i\\i&0\end{pmatrix} +\begin{pmatrix}0&1\\1&0\end{pmatrix} += +2\begin{pmatrix}i&0\\0&-i \end{pmatrix} = -\varphi(t)\varphi(s)\varrho(t)\varrho(s) +2i\sigma_3, \\ +[\sigma_2,\sigma_3] +&= +\begin{pmatrix}0&-i\\i&0\end{pmatrix} +\begin{pmatrix}1&0\\0&-1\end{pmatrix} +- +\begin{pmatrix}1&0\\0&-1\end{pmatrix} +\begin{pmatrix}0&-i\\i&0\end{pmatrix} += +2 +\begin{pmatrix}0&i\\i&0\end{pmatrix} = -\pi(t)\pi(s) +2i\sigma_1. +\\ +[\sigma_1,\sigma_3] &= -\varphi(t)\varrho(t)\varphi(s)\varrho(s) +\begin{pmatrix}0&1\\1&0\end{pmatrix} +\begin{pmatrix}1&0\\0&-1\end{pmatrix} +- +\begin{pmatrix}1&0\\0&-1\end{pmatrix} +\begin{pmatrix}0&1\\1&0\end{pmatrix} += +2i +\begin{pmatrix}0&-1\\1&0\end{pmatrix} += +2i\sigma_2, \end{align*} -Durch Multiplikation von links mit $\varphi(t)^{-1}$ und -mit $\varrho(s)^{-1}$ von rechts folgt, dass dies genau dann gilt, -wenn -\[ -\varphi(s)\varrho(t)=\varrho(t)\varphi(s). -\] -Die beiden Seiten dieser Gleichung sind erneut verschiedene Punkte -in $G$. -Durch Multiplikation mit $\varrho(t)^{-1}$ von links und mit -$\varphi(s)^{-1}$ von rechts erhält man die äquivaliente -Bedingung -\begin{equation} -\varrho(-t)\varphi(s)\varrho(t)\varphi(-s)=I. -\label{buch:lie:konjugation} -\end{equation} -Ist die Gruppe $G$ nicht kommutativ, kann man nicht -annehmen, dass diese Bedingung erfüllt ist. - -Aus \eqref{buch:lie:konjugation} erhält man jetzt eine Kurve -\[ -t \mapsto \gamma(t,s) = \varrho(-t)\varphi(s)\varrho(t)\varphi(-s) \in G -\] -in der Gruppe, die für $t=0$ durch $I$ geht. -Ihren Tangentialvektor kann man durch Ableitung bekommen: +Bis auf eine Skalierung stimmt dies überein mit den Kommutatorprodukten +der Matrizen $\omega_{23}$, $\omega_{31}$ und $\omega_{12}$ +in \eqref{buch:gruppen:eqn:so3-kommutatoren}. +Die Matrizen $-\frac12i\sigma_j$ haben die Kommutatorprodukte \begin{align*} -\frac{d}{dt}\gamma(t,s) +\bigl[-{\textstyle\frac12}i\sigma_1,-{\textstyle\frac12}i\sigma_2\bigr] +&= +-{\textstyle\frac14}[\sigma_1,\sigma_2] += +-{\textstyle\frac14}\cdot 2i\sigma_3 += +-{\textstyle\frac12}i\sigma_3 +\\ +\bigl[-{\textstyle\frac12}i\sigma_2,-{\textstyle\frac12}i\sigma_3\bigr] &= --\varrho'(-t)\varphi(s)\varrho(t)\varphi(-s) -+\varrho(-t)\varphi(s)\varrho'(t)\varphi(-t) +-{\textstyle\frac14}[\sigma_2,\sigma_3] += +-{\textstyle\frac14}\cdot 2i\sigma_1 += +-{\textstyle\frac12}i\sigma_1 \\ -\frac{d}{dt}\gamma(t)\bigg|_{t=0} +\bigl[-{\textstyle\frac12}i\sigma_3,-{\textstyle\frac12}i\sigma_1\bigr] &= --B\varphi(s) + \varphi(-s)B +-{\textstyle\frac14}[\sigma_3,\sigma_1] += +-{\textstyle\frac14}\cdot 2i\sigma_2 += +-{\textstyle\frac12}i\sigma_2 \end{align*} -Durch erneute Ableitung nach $s$ erhält man dann +Die lineare Abbildung, die \begin{align*} -\frac{d}{ds} \frac{d}{dt}\gamma(t,s)\bigg|_{t=0} -&= --B\varphi'(s) - \varphi(-s)B +\omega_{23}&\mapsto -{\textstyle\frac12}i\sigma_1\\ +\omega_{31}&\mapsto -{\textstyle\frac12}i\sigma_2\\ +\omega_{12}&\mapsto -{\textstyle\frac12}i\sigma_3 \end{align*} +abbildet ist daher ein Isomorphismus der Lie-Algebra $\operatorname{so}(3)$ +auf die Lie-Algebra $\operatorname{su}(2)$. +Die Lie-Gruppen $\operatorname{SO}(3)$ und $\operatorname{SU}(2)$ +haben also die gleiche Lie-Algebra. -% -% Die Lie-Algebra von SO(3) -% -\subsection{Die Lie-Algebra von $\operatorname{SO}(3)$} +Tatsächlich kann man Hilfe von Quaternionen die Matrix $\operatorname{SU}(2)$ +als Einheitsquaternionen beschreiben und damit eine Darstellung der +Drehmatrizen in $\operatorname{SO}(3)$ finden. +Dies wird in Kapitel~\ref{chapter:clifford} dargestellt. -% -% Die Lie-Algebra von SU(2) -% -\subsection{Die Lie-Algebra von $\operatorname{SU}(2)$} diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index 2eed953..a4579e7 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -123,3 +123,13 @@ abstract = "In this paper, we present Google, a prototype of a large-scale searc year = 2021 } +@book{skript:landaulifschitz1, + author = {Landau, L. D. and Lifschitz, E. M.}, + title = {Mechanik}, + series = {Lehrbuch der theoretischen Physik}, + volume = {1}, + publisher = {Akademie-Verlag}, + year = {1981}, + language = {german}, +} + -- cgit v1.2.1 From 150b2c4844fb8866cb13218874f0b205187a2157 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 5 Apr 2021 09:53:30 +0200 Subject: add two Lie-Group-Problems --- buch/chapters/60-gruppen/chapter.tex | 8 +- buch/chapters/60-gruppen/uebungsaufgaben/6001.tex | 233 ++++++++++++++++++++++ buch/chapters/60-gruppen/uebungsaufgaben/6002.tex | 162 +++++++++++++++ 3 files changed, 402 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/60-gruppen/uebungsaufgaben/6001.tex create mode 100644 buch/chapters/60-gruppen/uebungsaufgaben/6002.tex (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/chapter.tex b/buch/chapters/60-gruppen/chapter.tex index 8472b58..3b1abc1 100644 --- a/buch/chapters/60-gruppen/chapter.tex +++ b/buch/chapters/60-gruppen/chapter.tex @@ -37,5 +37,11 @@ Zusammenhangs darzustellen. \input{chapters/60-gruppen/lie-algebren.tex} %\input{chapters/60-gruppen/homogen.tex} - +\section*{Übungsaufgaben} +\rhead{Übungsaufgaben} +\aufgabetoplevel{chapters/60-gruppen/uebungsaufgaben} +\begin{uebungsaufgaben} +\uebungsaufgabe{6002} +\uebungsaufgabe{6001} +\end{uebungsaufgaben} diff --git a/buch/chapters/60-gruppen/uebungsaufgaben/6001.tex b/buch/chapters/60-gruppen/uebungsaufgaben/6001.tex new file mode 100644 index 0000000..2acf6f6 --- /dev/null +++ b/buch/chapters/60-gruppen/uebungsaufgaben/6001.tex @@ -0,0 +1,233 @@ +Eine Drehung eines Vektors $\vec{x}$ der Ebene $\mathbb{R}^2$ +um den Winkel $\alpha$ gefolgt von einer Translation um $\vec{t}$ +ist gegeben durch $D_\alpha\vec{x}+\vec{t}$. +Darauf lässt sich jedoch die Theorie der Matrizengruppen nicht +darauf anwenden, weil die Operation nicht die Form einer Matrixmultiplikation +schreiben. +Die Drehung und Translation kann in eine Matrix zusammengefasst werden, +indem zunächst die Ebene mit +\[ +\mathbb{R}^2\to\mathbb{R}^3 +: +\begin{pmatrix}x\\y\end{pmatrix} +\mapsto +\begin{pmatrix}x\\y\\1\end{pmatrix} +\qquad\text{oder in Vektorschreibweise }\qquad +\vec{x}\mapsto\begin{pmatrix}\vec{x}\\1\end{pmatrix} +\] +in den dreidimensionalen Raum eingebettet wird. +Die Drehung und Verschiebung kann damit in der Form +\[ +\begin{pmatrix}D_\alpha\vec{x}+\vec{t}\\1 +\end{pmatrix} += +\begin{pmatrix}D_\alpha&\vec{t}\\0&1\end{pmatrix} +\begin{pmatrix}\vec{x}\\1\end{pmatrix} +\] +als Matrizenoperation geschrieben werden. +Die Gruppe der Drehungen und Verschiebungen der Ebene ist daher +die Gruppe +\[ +G += +\left\{ +\left. +A += +\begin{pmatrix} +D_\alpha&\vec{t}\\ +0&1 +\end{pmatrix} += +\begin{pmatrix} +\cos\alpha & -\sin\alpha & t_x \\ +\sin\alpha & \cos\alpha & t_y \\ + 0 & 0 & 1 +\end{pmatrix} +\; +\right| +\; +\alpha\in\mathbb{R},\vec{t}\in\mathbb{R}^2 +\right\} +\] +Wir kürzen die Elemente von $G$ auch als $(\alpha,\vec{t})$ ab. +\begin{teilaufgaben} +\item +Verifizieren Sie, dass das Produkt zweier solcher Matrizen +$(\alpha_1,\vec{t}_1)$ und $(\alpha_2,\vec{t}_2)$ +wieder die selbe Form $(\alpha,\vec{t})$ hat und berechnen Sie +$\alpha$ und $\vec{t}_j$. +\item +Bestimmen Sie das inverse Element zu $(\alpha,\vec{t}) \in G$. +\item +Die Elemente der Gruppe $G$ sind parametrisiert durch den Winkel $\alpha$ +und die Translationskomponenten $t_x$ und $t_y$. +Rechnen Sie nach, dass +\[ +\alpha\mapsto \begin{pmatrix} D_{\alpha}&0\\0&1\end{pmatrix}, +\quad +t_x\mapsto +\begin{pmatrix} I&\begin{pmatrix}t_x\\0\end{pmatrix}\\0&1\end{pmatrix}, +\qquad +t_y\mapsto +\begin{pmatrix} I&\begin{pmatrix}0\\t_y\end{pmatrix}\\0&1\end{pmatrix} +\] +Einparameteruntergruppen von $G$ sind. +\item +Berechnen Sie die Tangentialvektoren $D$, $X$ und $Y$, +die zu den Einparameteruntergruppen von c) gehören. +\item +Berechnen Sie die Lie-Klammer für alle Paare von Tangentialvektoren. +\end{teilaufgaben} + +\begin{loesung} +\begin{teilaufgaben} +\item +Die Wirkung beider Gruppenelemente auf dem Vektor $\vec{x}$ ist +\begin{align*} +\begin{pmatrix}D_{\alpha_1}&\vec{t}_1\\0&1\end{pmatrix} +\begin{pmatrix}D_{\alpha_2}&\vec{t}_2\\0&1\end{pmatrix} +\begin{pmatrix}\vec{x}\\1\end{pmatrix} +&= +\begin{pmatrix}D_{\alpha_1}&\vec{t}_1\\0&1\end{pmatrix} +\begin{pmatrix}D_{\alpha_2}\vec{x}+\vec{t}_2\\1\end{pmatrix} += +\begin{pmatrix} +D_{\alpha_1}(D_{\alpha_2}\vec{x}+\vec{t}_2)+\vec{t}_1\\1 +\end{pmatrix} +\\ +&= +\begin{pmatrix} +D_{\alpha_1}D_{\alpha_2}\vec{x} + D_{\alpha_1}\vec{t}_2+\vec{t}_1\\1 +\end{pmatrix} += +\begin{pmatrix} +D_{\alpha_1+\alpha_2}&D_{\alpha_1}\vec{t}_2+\vec{t}_1\\ +0&1 +\end{pmatrix} +\begin{pmatrix}\vec{x}\\1\end{pmatrix}. +\end{align*} +Das Produkt in der Gruppe $G$ kann daher +\[ +(\alpha_1,\vec{t}_1) (\alpha_2,\vec{t}_2) += +(\alpha_1+\alpha_2,\vec{t}_1+D_{\alpha_1}\vec{t}_2) +\] +geschrieben werden. +\item +Die Inverse der Abbildung $\vec{x}\mapsto \vec{y}=D_\alpha\vec{x}+\vec{t}$ +kann gefunden werden, indem man auf der rechten Seite nach $\vec{x}$ +auflöst: +\begin{align*} +\vec{y}&=D_\alpha\vec{x}+\vec{t} +&&\Rightarrow& +D_{\alpha}^{-1}( \vec{y}-\vec{t}) &= \vec{x} +\\ +&&&& \vec{x} &= D_{-\alpha}\vec{y} + (-D_{-\alpha}\vec{t}) +\end{align*} +Die Inverse von $(\alpha,\vec{t})$ ist also $(-\alpha,-D_{-\alpha}\vec{t})$. +\item +Da $D_\alpha$ eine Einparameteruntergruppe von $\operatorname{SO}(2)$ ist, +ist $\alpha\mapsto (D_\alpha,0)$ ebenfalls eine Einparameteruntergruppe. +Für die beiden anderen gilt +\[ +\biggl(I,\begin{pmatrix}t_{x1}\\0\end{pmatrix}\biggr) +\biggl(I,\begin{pmatrix}t_{x2}\\0\end{pmatrix}\biggr) += +\biggl(I,\begin{pmatrix}t_{x1}+t_{x2}\\0\end{pmatrix}\biggr) +\quad\text{und}\quad +\biggl(I,\begin{pmatrix}0\\t_{y1}\end{pmatrix}\biggr) +\biggl(I,\begin{pmatrix}0\\t_{y2}\end{pmatrix}\biggr) += +\biggl(I,\begin{pmatrix}0\\t_{y1}+t_{y2}\end{pmatrix}\biggr), +\] +also sind dies auch Einparameteruntergruppen. +\item +Die Ableitungen sind +\begin{align*} +D +&= +\frac{d}{d\alpha}\begin{pmatrix}D_\alpha&0\\0&1\end{pmatrix}\bigg|_{\alpha=0} += +\begin{pmatrix}J&0\\0&0\end{pmatrix} += +\begin{pmatrix} +0&-1&0\\ +1& 0&0\\ +0& 0&0 +\end{pmatrix} +\\ +X +&= +\frac{d}{dt_x} +\left. +\begin{pmatrix}I&\begin{pmatrix}t_x\\0\end{pmatrix}\\0&1\end{pmatrix} +\right|_{t_x=0} += +\begin{pmatrix} +0&0&1\\ +0&0&0\\ +0&0&0 +\end{pmatrix} +& +Y +&= +\frac{d}{dt_y} +\left. +\begin{pmatrix}I&\begin{pmatrix}0\\t_y\end{pmatrix}\\0&1\end{pmatrix} +\right|_{t_y=0} += +\begin{pmatrix} +0&0&0\\ +0&0&1\\ +0&0&0 +\end{pmatrix} +\end{align*} +\item +Die Vertauschungsrelationen sind +\begin{align*} +[D,X] +&= +DX-XD += +\begin{pmatrix} +0&0&0\\ +0&0&1\\ +0&0&0 +\end{pmatrix} +- +\begin{pmatrix} +0&0&0\\ +0&0&0\\ +0&0&0 +\end{pmatrix} += +Y +\\ +[D,Y] +&= +DY-YD += +\begin{pmatrix} +0&0&-1\\ +0&0&0\\ +0&0&0 +\end{pmatrix} +- +\begin{pmatrix} +0&0&0\\ +0&0&0\\ +0&0&0 +\end{pmatrix} += +-X +\\ +[X,Y] +&= +XY-YX += +0-0=0 +\qedhere +\end{align*} +\end{teilaufgaben} +\end{loesung} diff --git a/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex b/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex new file mode 100644 index 0000000..43464d7 --- /dev/null +++ b/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex @@ -0,0 +1,162 @@ +Die Elemente der Gruppe $G$ der Translationen und Streckungen von +$\mathbb{R}$ kann durch Paare $(\lambda,t)\in\mathbb{R}^+\times\mathbb{R}$ +beschrieben werden, +wobei $\lambda$ durch Streckung und $t$ durch Translation wirkt: +\[ +(\lambda,t)\colon \mathbb{R}\to\mathbb{R}: x\mapsto \lambda x+t. +\] +Dies ist allerdings noch keine Untergruppe einer Matrizengruppe. +Dazu bettet man $\mathbb{R}$ mit Hilfe der Abbildung +\[ +\mathbb{R}\to\mathbb{R}^2 : x\mapsto \begin{pmatrix}x\\1\end{pmatrix} +\] +in $\mathbb{R}^2$ ein. +Die Wirkung von $(\lambda,t)$ ist dann +\[ +\begin{pmatrix}(\lambda,t)\cdot x\\1\end{pmatrix} += +\begin{pmatrix} \lambda x + t\\1\end{pmatrix} += +\begin{pmatrix}\lambda&1\\0&1\end{pmatrix}\begin{pmatrix}x\\1\end{pmatrix}. +\] +Die Wirkung des Paares $(\lambda,t)$ kann also mit Hilfe einer +$2\times 2$-Matrix beschrieben werden. +Die Abbildung +\[ +G\to \operatorname{GL}_2(\mathbb{R}) +: +(\lambda,t) +\mapsto +\begin{pmatrix}\lambda&t\\0&1\end{pmatrix} +\] +bettet die Gruppe $G$ in $\operatorname{GL}_2(\mathbb{R})$ ein. +\begin{teilaufgaben} +\item +Berechnen Sie das Produkt $g_1g_2$ zweier Elemente +$g_j=(\lambda_j,t_j)$. +\item +Bestimmen Sie das inverse Elemente von $(\lambda,t)$ in $G$. +\item +Der sogenannte Kommutator zweier Elemente ist $g_1g_2g_1^{-1}g_2^{-1}$, +berechnen Sie den Kommutator für die Gruppenelemente von a). +\item +Rechnen Sie nach, dass +\[ +s\mapsto \begin{pmatrix}e^s&0\\0&1\end{pmatrix} +,\qquad +t\mapsto \begin{pmatrix}1&t\\0&1\end{pmatrix} +\] +Einparameteruntergruppen von $\operatorname{GL}_2(\mathbb{R})$ sind. +\item +Berechnen Sie die Tangentialvektoren $S$ und $T$ dieser beiden +Einparameteruntergruppen. +\item +Berechnen Sie den Kommutator $[S,T]$ +\end{teilaufgaben} + +\begin{loesung} +\begin{teilaufgaben} +\item +Die beiden Gruppenelemente wirken auf $x$ nach +\[ +(\lambda_1,t_1) +(\lambda_2,t_2) +\cdot +x += +(\lambda_1,t_1)(\lambda_2x+t_2) += +\lambda_1(\lambda_2x+t_2)+t_1) += +\lambda_1\lambda_2 x + (\lambda_1t_2+t_1), +\] +also ist $g_1g_2=(\lambda_1\lambda_2,\lambda_1t_2+t_1)$. +\item +Die Inverse von $(\lambda,t)$ kann erhalten werden, indem man die +Abbildung $x\mapsto y=\lambda x +t$ nach $x$ auflöst: +\[ +y=\lambda x+t +\qquad\Rightarrow\qquad +\lambda^{-1}(y-t) += +\lambda^{-1}y - \lambda^{-1}t. +\] +Daraus liest man ab, dass $(\lambda,t)^{-1}=(\lambda^{-1},-\lambda^{-1}t)$ +ist. +\item +Mit Hilfe der Identität $g_1g_2g_1^{-1}g_2^{-1}=g_1g_2(g_2g_1)^{-1}$ +kann man den Kommutator leichter berechnen +\begin{align*} +g_1g_2&=(\lambda_1\lambda_2,t_1+\lambda_1t_2) +\\ +g_2g_1&= (\lambda_2\lambda_1,t_2+\lambda_2t_1) +\\ +(g_2g_1)^{-1} +&= +(\lambda_1^{-1}\lambda_2^{-1}, + -\lambda_2^{-1}\lambda_1^{-1}(t_2+\lambda_2t_1)) +\\ +g_1g_2g_1^{-1}g_2^{-1} +&= +(\lambda_1\lambda_2,t_1+\lambda_1t_2) +(\lambda_1^{-1}\lambda_2^{-1}, + -\lambda_2^{-1}\lambda_1^{-1}(t_2+\lambda_2t_1)) +\\ +&=(1,t_1+\lambda_1t_2 + \lambda_1\lambda_2( + -\lambda_2^{-1}\lambda_1^{-1}(t_2+\lambda_2t_1)) +) +\\ +&=(1, t_1+\lambda_1t_2 - t_2 -\lambda_2t_1) += +(1,(1-\lambda_2)(t_1-t_2)) +\end{align*} +Der Kommutator ist also das neutrale Element, wenn $\lambda_2=1$ ist. +\item +Dies ist am einfachsten in der Matrixform nachzurechnen: +\begin{align*} +\begin{pmatrix} e^{s_1}&0\\0&1\end{pmatrix} +\begin{pmatrix} e^{s_2}&0\\0&1\end{pmatrix} +&= +\begin{pmatrix}e^{s_1+s_2}&0\\0&1\end{pmatrix} +& +\begin{pmatrix} 1&t_1\\0&1\end{pmatrix} +\begin{pmatrix} 1&t_2\\0&1\end{pmatrix} +&= +\begin{pmatrix} 1&t_1+t_2\\0&1\end{pmatrix} +\end{align*} +\item +Die Tangentialvektoren werden erhalten durch ableiten der +Matrixdarstellung nach dem Parameter +\begin{align*} +S +&= +\frac{d}{ds} \begin{pmatrix}e^s&0\\0&1\end{pmatrix}\bigg|_{s=0} += +\begin{pmatrix}1&0\\0&0\end{pmatrix} +\\ +T +&= +\frac{d}{dt} \begin{pmatrix}1&t\\0&1\end{pmatrix}\bigg|_{t=0} += +\begin{pmatrix}0&1\\0&0\end{pmatrix} +\end{align*} +\item Der Kommutator ist +\[ +[S,T] += +\begin{pmatrix}1&0\\0&0\end{pmatrix} +\begin{pmatrix}0&1\\0&0\end{pmatrix} +- +\begin{pmatrix}0&1\\0&0\end{pmatrix} +\begin{pmatrix}1&0\\0&0\end{pmatrix} += +\begin{pmatrix}0&1\\0&0\end{pmatrix} +- +\begin{pmatrix}0&0\\0&0\end{pmatrix} += +T. +\qedhere +\] +\end{teilaufgaben} +\end{loesung} + -- cgit v1.2.1 From 056b373ca1566df65da3f8e04198db2194a8cec9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 5 Apr 2021 09:59:35 +0200 Subject: remove section on numerical eigenvalue methods --- buch/chapters/40-eigenwerte/chapter.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/chapter.tex b/buch/chapters/40-eigenwerte/chapter.tex index 5f8cb83..242a5e5 100644 --- a/buch/chapters/40-eigenwerte/chapter.tex +++ b/buch/chapters/40-eigenwerte/chapter.tex @@ -35,7 +35,7 @@ Dies wird in Abschnitt~\ref{buch:section:spektraltheorie} beschrieben. \input{chapters/40-eigenwerte/normalformen.tex} \input{chapters/40-eigenwerte/spektralradius.tex} \input{chapters/40-eigenwerte/spektraltheorie.tex} -\input{chapters/40-eigenwerte/numerisch.tex} +%\input{chapters/40-eigenwerte/numerisch.tex} \section*{Übungsaufgaben} \rhead{Übungsaufgaben} -- cgit v1.2.1 From c321e5bc7ce152b7509d6f55c0514590f770b22c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 5 Apr 2021 22:08:36 +0200 Subject: new drawings --- buch/chapters/60-gruppen/uebungsaufgaben/6002.tex | 2 +- buch/chapters/70-graphen/images/Makefile | 5 +- buch/chapters/70-graphen/images/fundamental.pdf | Bin 0 -> 25976 bytes buch/chapters/70-graphen/images/fundamental.tex | 54 +++ buch/chapters/70-graphen/spektral.tex | 190 +++++++++ buch/chapters/70-graphen/wavelets.tex | 202 +++++---- buch/chapters/90-crypto/arith.tex | 282 ++++++++++++- buch/chapters/90-crypto/chapter.tex | 2 +- buch/chapters/90-crypto/ff.tex | 2 +- buch/chapters/90-crypto/images/Makefile | 8 +- buch/chapters/90-crypto/images/multiplikation.pdf | Bin 0 -> 25263 bytes buch/chapters/90-crypto/images/multiplikation.tex | 464 +++++++++++++++++++++ buch/chapters/90-crypto/images/schieberegister.pdf | Bin 0 -> 28254 bytes buch/chapters/90-crypto/images/schieberegister.tex | 120 ++++++ buch/chapters/90-crypto/uebungsaufgaben/9001.tex | 2 +- 15 files changed, 1216 insertions(+), 117 deletions(-) create mode 100644 buch/chapters/70-graphen/images/fundamental.pdf create mode 100644 buch/chapters/70-graphen/images/fundamental.tex create mode 100644 buch/chapters/90-crypto/images/multiplikation.pdf create mode 100644 buch/chapters/90-crypto/images/multiplikation.tex create mode 100644 buch/chapters/90-crypto/images/schieberegister.pdf create mode 100644 buch/chapters/90-crypto/images/schieberegister.tex (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex b/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex index 43464d7..14fbe2b 100644 --- a/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex +++ b/buch/chapters/60-gruppen/uebungsaufgaben/6002.tex @@ -108,7 +108,7 @@ g_1g_2g_1^{-1}g_2^{-1} \\ &=(1, t_1+\lambda_1t_2 - t_2 -\lambda_2t_1) = -(1,(1-\lambda_2)(t_1-t_2)) +(1,(1-\lambda_2)(t_1-t_2)). \end{align*} Der Kommutator ist also das neutrale Element, wenn $\lambda_2=1$ ist. \item diff --git a/buch/chapters/70-graphen/images/Makefile b/buch/chapters/70-graphen/images/Makefile index b42cbae..bd77756 100644 --- a/buch/chapters/70-graphen/images/Makefile +++ b/buch/chapters/70-graphen/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: peterson.pdf adjazenzu.pdf adjazenzd.pdf kreis.pdf +all: peterson.pdf adjazenzu.pdf adjazenzd.pdf kreis.pdf fundamental.pdf peterson.pdf: peterson.tex pdflatex peterson.tex @@ -17,3 +17,6 @@ adjazenzd.pdf: adjazenzd.tex kreis.pdf: kreis.tex pdflatex kreis.tex +fundamental.pdf: fundamental.tex + pdflatex fundamental.tex + diff --git a/buch/chapters/70-graphen/images/fundamental.pdf b/buch/chapters/70-graphen/images/fundamental.pdf new file mode 100644 index 0000000..66b82ca Binary files /dev/null and b/buch/chapters/70-graphen/images/fundamental.pdf differ diff --git a/buch/chapters/70-graphen/images/fundamental.tex b/buch/chapters/70-graphen/images/fundamental.tex new file mode 100644 index 0000000..b7fe9c4 --- /dev/null +++ b/buch/chapters/70-graphen/images/fundamental.tex @@ -0,0 +1,54 @@ +% +% fundamental.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] + +\begin{scope}[xshift=-4.6cm] + \draw[color=red,line width=2pt] (1.8,0) -- (1.8,2); + \draw[color=red,line width=2pt] (0,0) -- (4,0); + \node at (1.8,0) [below] {$i$}; + \draw[->] (-0.1,0) -- (4.3,0) coordinate[label={$x$}]; + \draw[->] (0,-2.1) -- (0,2.3) coordinate[label={right:$y$}]; + + \node at (2,-2.3) [below] {Standarbasis}; +\end{scope} + +\begin{scope} + \draw[color=red,line width=1.4pt] + plot[domain=0:360,samples=100] ({\x/90},{2*sin(\x)}); + \draw[color=blue,line width=1.4pt] + plot[domain=0:360,samples=100] ({\x/90},{2*cos(\x)}); + \node[color=blue] at (1,-1) {$\Re f_i$}; + \node[color=red] at (2,1) {$\Im f_i$}; + \draw[->] (-0.1,0) -- (4.3,0) coordinate[label={$x$}]; + \draw[->] (0,-2.1) -- (0,2.3) coordinate[label={right:$y$}]; + \node at (2,-2.3) [below] {Eigenbasis}; +\end{scope} + +\begin{scope}[xshift=4.6cm] + \foreach \t in {0.02,0.05,0.1,0.2,0.5}{ + \draw[color=red,line width=1.0pt] + plot[domain=-1.8:2.2,samples=100] + ({\x+1.8},{exp(-\x*\x/(4*\t))/(sqrt(4*3.1415*\t))}); + } + \fill[color=red] (1.8,0) circle[radius=0.08]; + \node at (1.8,0) [below] {$\xi$}; + \draw[->] (-0.1,0) -- (4.3,0) coordinate[label={$x$}]; + \draw[->] (0,-2.1) -- (0,2.3) coordinate[label={right:$y$}]; + \node at (2,-2.3) [below] {Fundamentallösung}; +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/70-graphen/spektral.tex b/buch/chapters/70-graphen/spektral.tex index 9349f41..f68c814 100644 --- a/buch/chapters/70-graphen/spektral.tex +++ b/buch/chapters/70-graphen/spektral.tex @@ -6,3 +6,193 @@ \section{Spektrale Graphentheorie \label{buch:section:spektrale-graphentheorie}} \rhead{Spektrale Graphentheorie} +Die Laplace-Matrix codiert alle wesentliche Information eines +ungerichteten Graphen. +Sie operiert auf Vektoren, die für jeden Knoten des Graphen eine +Komponente haben. +Dies eröffnet die Möglichkeit, den Graphen über die linearalgebraischen +Eigenschaften der Laplace-Matrix zu studieren. + +\subsection{Grapheigenschaften und Spektrum von $L$ +\label{buch:subsection:grapheigenschaften-und-spektrum-von-l}} +TODO XXX + +\subsection{Wärmeleitung auf einem Graphen +\label{buch:subsection:waermeleitung-auf-einem-graphen}} +Die Vektoren, auf denen die Laplace-Matrix operiert, können betrachtet +werden als Funktionen, die jedem Knoten einen Wert zuordnen. +Eine mögliche physikalische Interpretation davon ist die Temperaturverteilung +auf dem Graphen. +Die Kanten zwischen den Knoten erlauben der Wärmeenergie, von einem Knoten +zu einem anderen zu fliessen. +Je grösser die Temperaturdifferenz zwischen zwei Knoten ist, desto +grösser ist der Wärmefluss und desto schneller ändert sich die Temperatur +der beteiligten Knoten. +Die zeitliche Änderung der Temperatur $T_i$ im Knoten $i$ ist proportional +\[ +\frac{dT_i}{dt} += +\sum_{\text{$j$ Nachbar von $i$}} \kappa (T_j-T_i) += +- +\kappa +\biggl( +d_iT_i +- +\sum_{\text{$j$ Nachbar von $i$}} T_j +\biggr) +\] +Der Term auf der rechten Seite ist genau die Wirkung der +Laplace-Matrix auf dem Vektor $T$ der Temperaturen: +\begin{equation} +\frac{dT}{dt} += +-\kappa L T. +\label{buch:graphen:eqn:waermeleitung} +\end{equation} +Der Wärmefluss, der durch die +Wärmeleitungsgleichung~\eqref{buch:graphen:eqn:waermeleitung} beschrieben +wird, codiert ebenfalls wesentliche Informationen über den Graphen. +Je mehr Kanten es zwischen verschiedenen Teilen eines Graphen gibt, +desto schneller findet der Wärmeaustausch zwischen diesen Teilen +statt. +Die Lösungen der Wärmeleitungsgleichung liefern also Informationen +über den Graphen. + +\subsection{Eigenwerte und Eigenvektoren +\label{buch:subsection:ein-zyklischer-graph}} +Die Wärmeleitungsgleichung~\eqref{buch:graphen:eqn:waermeleitung} +ist eine lineare Differentialgleichung mit konstanten Koeffizienten, +die mit der Matrixexponentialfunktion gelöst werden. +Die Lösung ist +\[ +f(t) = e^{-\kappa Lt}f(0). +\] + +Die Berechnung der Lösung mit der Matrixexponentialreihe ist ziemlich +ineffizient, da grosse Matrizenprodukte berechnet werden müssen. +Da die Matrix $L$ symmetrisch ist, gibt es eine Basis aus +orthonormierten Eigenvektoren und die Eigenwerte sind reell. +Wir bezeichnen die Eigenvektoren mit $f_1,\dots,f_n$ und die +zugehörigen Eigenwerte mit $\lambda_i$. +Die Funktion $f_i(t)= e^{-\kappa\lambda_it}f_i$ ist dann eine Lösung +der Wärmeleitungsgleichung, denn die beiden Seiten +\begin{align*} +\frac{d}{dt}f_i(t) +&= +-\kappa\lambda_ie^{-\kappa\lambda_it}f_i += +-\kappa\lambda_i f_i(t) +\\ +-\kappa Lf_i(t) +&= +-\kappa e^{-\kappa\lambda_it} Lf_i += +-\kappa e^{-\kappa\lambda_it} \lambda_i f_i += +-\kappa \lambda_i f_i(t) +\end{align*} +von \eqref{buch:graphen:eqn:waermeleitung} stimmen überein. + +Eine Lösung der Wärmeleitungsgleichung zu einer beliebigen +Anfangstemperaturverteilung $f$ kann durch Linearkombination aus +den Lösungen $f_i(t)$ zusammengesetzt werden. +Dazu ist nötig, $f$ aus den Vektoren $f_i$ linear zu kombinieren. +Da aber die $f_i$ orthonormiert sind, ist dies besonders einfach, +die Koeffizienten sind die Skalarprodukte mit den Eigenvektoren: +\[ +f=\sum_{i=1}^n \langle f_i,f\rangle f_i. +\] +Daraus kann man die allgmeine Lösungsformel +\begin{equation} +f(t) += +\sum_{i=1}^n \langle f_i,f\rangle f_i(t) += +\sum_{i=1}^n \langle f_i,f\rangle e^{-\kappa\lambda_i t}f_i +\label{buch:graphen:eqn:eigloesung} +\end{equation} +ableiten. + +\subsection{Beispiel: Ein zyklischer Graph} +\begin{figure} +\centering +\includegraphics{chapters/70-graphen/images/kreis.pdf} +\caption{Beispiel Graph zur Illustration der verschiedenen Basen auf einem +Graphen. +\label{buch:graphen:fig:kreis}} +\end{figure} +Wir illustrieren die im folgenden entwickelte Theorie an dem Beispielgraphen +von Abbildung~\ref{buch:graphen:fig:kreis}. +Besonders interessant sind die folgenden Funktionen: +\[ +\left. +\begin{aligned} +s_m(k) +&= +\sin\frac{2\pi mk}{n} +\\ +c_m(k) +&= +\cos\frac{2\pi mk}{n} +\end{aligned} +\; +\right\} +\quad +\Rightarrow +\quad +e_m(k) += +e^{2\pi imk/n} += +c_m(k) + is_m(k). +\] +Das Skalarprodukt dieser Funktionen ist +\[ +\langle e_m, e_{m'}\rangle += +\frac1n +\sum_{k=1}^n +\overline{e^{2\pi i km/n}} +e^{2\pi ikm'/n} += +\frac1n +\sum_{k=1}^n +e^{\frac{2\pi i}{n}(m'-m)k} += +\delta_{mm'} +\] +Die Funktionen bilden daher eine Orthonormalbasis des Raums der +Funktionen auf $G$. +Wegen $\overline{e_m} = e_{-m}$ folgt, dass für gerade $n$ +die Funktionen +\[ +c_0, c_1,s_1,c_2,s_2,\dots c_{\frac{n}2-1},c_{\frac{n}2-1},c_{\frac{n}2} +\] +eine orthonormierte Basis. + + +Die Laplace-Matrix kann mit der folgenden Definition zu einer linearen +Abbildung auf Funktionen auf dem Graphen gemacht werden. +Sei $f\colon V\to \mathbb{R}$ und $L$ die Laplace-Matrix mit +Matrixelementen $l_{vv'}$ wobei $v,v'\in V$ ist. +Dann definieren wir die Funktion $Lf$ durch +\[ +(Lf)(v) += +\sum_{v'\in V} l_{vv'}f(v'). +\] + +\subsection{Standardbasis und Eigenbasis +\label{buch:subsection:standardbasis-und-eigenbasis}} +Die einfachste Basis, aus der siche Funktionen auf dem Graphen linear +kombinieren lassen, ist die Standardbasis. +Sie hat für jeden Knoten $v$ des Graphen eine Basisfunktion mit den Werten +\[ +e_v\colon V\to\mathbb R:v'\mapsto \begin{cases} +1\qquad&v=v'\\ +0\qquad&\text{sonst.} +\end{cases} +\] + + diff --git a/buch/chapters/70-graphen/wavelets.tex b/buch/chapters/70-graphen/wavelets.tex index 0739f14..9c88c08 100644 --- a/buch/chapters/70-graphen/wavelets.tex +++ b/buch/chapters/70-graphen/wavelets.tex @@ -6,126 +6,118 @@ \section{Wavelets auf Graphen \label{buch:section:wavelets-auf-graphen}} \rhead{Wavelets auf Graphen} -Graphen werden oft verwendet um geometrische Objekte zu approximieren. -Funktionen auf einem Graphen können dann Approximationen von physikalischen -Grössen wie zum Beispiel der Temperatur auf dem geometrischen Objekt -interpretiert werden. -Verschiedene Basen für die Beschreibung solcher Funktionen sind im Laufe -der Zeit verwendet worden, doch Wavelets auf einem Graphen sind eine -neuere Idee, mit der man aus der Laplace-Matrix Basen gewinnen kann, -die die Idee von langsam sich ausbreitenden Störungen besonders gut -wiederzugeben in der Lage sind. - -In diesem Abschnitt werden erst Funktionen auf einem Graphen genauer -definiert. -In Abschnitt~\ref{buch:subsection:standardbasis-und-eigenbasis} -wird die Eigenbasis mit dem Laplace-Operator konstruiert und mit -der Standarbasis verglichen. -Schliesslich werden in Abschnitt~\ref{buch:subsection:wavelet-basen} -verschiedene Wavelet-Basen konstruiert. - -\subsection{Funktionen auf einem Graphen und die Laplace-Matrix} -Sei $G$ ein Graph mit der Knotenmenge $V$. -Eine Funktion $f$ auf einem Graphen ist eine Funktion $f\colon V\to\mathbb{R}$. -Funktionen auf $G$ sind also Vektoren, die mit den Knoten $V$ indiziert -sind. - -Es gibt auch ein Skalarprodukt für Funktionen auf dem Graphen. -Sind $f$ und $g$ zwei Funktionen auf $G$, dann ist das Skalarprodukt -definiert durch +In Abschnitt~\ref{buch:subsection:standardbasis-und-eigenbasis} wurde +gezeigt dass die Standardbasis den Zusammenhang zwischen den einzelnen +Teilen des Graphen völlig ignoriert, während die Eigenbasis Wellen +beschreibt, die mit vergleichbarer Amplitude sich über den ganzen +Graphen entsprechen. +Die Eigenbasis unterdrückt also die ``Individualität'' der einzelnen +Knoten fast vollständig. + +Wenn man einen Standardbasisvektor in einem Knoten $i$ +als Anfangstemperaturverteilung verwendet, erwartet man eine Lösung, +die für kleine Zeiten $t$ die Energie immer in der Nähe des Knotens $i$ +konzentriert hat. +Weder die Standardbasis noch die Eigenbasis haben diese Eigenschaft. + +\subsection{Vergleich mit der Wärmeleitung auf $\mathbb{R}$} +Ein ähnliches Phänomen findet man bei der Wärmeausbreitung gemäss +der partiellen Differentialgleichung +\[ +\frac{\partial T}{\partial t} = -\kappa \frac{\partial^2 T}{\partial x^2}. +\] +Die von Fourier erfundene Methode, die Fourier-Theorie, verwendet die +Funktionen $e^{ik x}$, die Eigenvektoren der zweiten Ableitung +$\partial^2/\partial x^2$ sind. +Diese haben das gleiche Problem, der Betrag von $e^{ikx}$ ist $1$, die +Entfernung von einem Punkt spielt überhaupt keine Rolle. +Die Funktion \[ -\langle f,g\rangle +F(x,t) = -\frac{1}{|V|}\sum_{v\in V} \overline{f}(v) g(v) +\frac{1}{\sqrt{4\pi\kappa t}}e^{-x^2/4\kappa t} \] -Dies ist das bekannte Skalarprodukt der Vektoren mit Komponenten $f(v)$. +ist eine Lösung der Wärmeleitungsgleichung mit einem Maximum an +der Stelle $0$. +Sie heisst die Fundamentallösung der Wärmeleitungsgleichung. +Durch Überlagerung von Translaten in eine Funktion +\begin{equation} +f(x,t) += +\int_{-\infty}^\infty f(\xi) F(x-\xi,t)\,d\xi +\label{buch:graphen:eqn:fundamentalueberlagerung} +\end{equation} +kann man die allgemeine Lösung aus Fundamentallösungen zusammensetzen. +Die Fundamentallösungen $f(x-\xi,t)$ sind für kleine Zeiten immer noch +deutlich in einer Umgebung von $\xi$ konzentriert. +% XXX Ausbreitung der Fundamentallösung illustrieren \begin{figure} \centering -\includegraphics{chapters/70-graphen/images/kreis.pdf} -\caption{Beispiel Graph zur Illustration der verschiedenen Basen auf einem -Graphen. -\label{buch:graphen:fig:kreis}} +\includegraphics{chapters/70-graphen/images/fundamental.pdf} +\caption{Vergleich der verschiedenen Funktionenfamilien, mit denen +Lösungenfunktionen durch Linearkombination erzeugt werden können. +In der Standarbasis (links) ist es am einfachsten, die Funktionswerte +abzulesen, in der Eigenbasis (Mitte) kann die zeitliche Entwicklung +besonders leicht berechnet werden. +Dazuwischen liegen die Fundamentallösungen (rechts), die eine einigermassen +übersichtliche Zeitentwicklung haben, die Berechnung der Temperatur an +einer Stelle $x$ zur Zeit $t$ ist aber erst durch das Integral +\eqref{buch:graphen:eqn:fundamentalueberlagerung} gegeben. +\label{buch:graphen:fig:fundamental}} \end{figure} -\begin{beispiel} -Wir illustrieren die im folgenden entwickelte Theorie an dem Beispielgraphen -von Abbildung~\ref{buch:graphen:fig:kreis}. -Besonders interessant sind die folgenden Funktionen: -\[ -\left. -\begin{aligned} -s_m(k) -&= -\sin\frac{2\pi mk}{n} -\\ -c_m(k) -&= -\cos\frac{2\pi mk}{n} -\end{aligned} -\; -\right\} -\quad -\Rightarrow -\quad -e_m(k) -= -e^{2\pi imk/n} -= -c_m(k) + is_m(k). -\] -Das Skalarprodukt dieser Funktionen ist -\[ -\langle e_m, e_{m'}\rangle -= -\frac1n -\sum_{k=1}^n -\overline{e^{2\pi i km/n}} -e^{2\pi ikm'/n} + +\subsection{Fundamentallösungen auf einem Graphen} +Die Wärmeleitungsgleichung auf einem Graphen kann für einen +Standardbasisvektor mit Hilfe der +Lösungsformel~\eqref{buch:graphen:eqn:eigloesung} +gefunden werden. +Aus physikalischen Gründen ist aber offensichtlich, dass die +Wärmeenergie Fundamentallösungen $F_i(t)$ für kurze Zeiten $t$ +in der Nähe des Knoten $i$ konzentriert ist. +Dies ist aber aus der expliziten Formel +\begin{equation} +F_i(t) = -\frac1n -\sum_{k=1}^n -e^{\frac{2\pi i}{n}(m'-m)k} +\sum_{j=1}^n \langle f_j,e_i\rangle e^{-\kappa \lambda_i t} f_j = -\delta_{mm'} -\] -Die Funktionen bilden daher eine Orthonormalbasis des Raums der -Funktionen auf $G$. -Wegen $\overline{e_m} = e_{-m}$ folgt, dass für gerade $n$ -die Funktionen -\[ -c_0, c_1,s_1,c_2,s_2,\dots c_{\frac{n}2-1},c_{\frac{n}2-1},c_{\frac{n}2} -\] -eine orthonormierte Basis. -\end{beispiel} +\sum_{j=1}^n \overline{f}_{ji} e^{-\kappa \lambda_i t}, +\label{buch:graphen:eqn:fundamentalgraph} +\end{equation} +nicht unmittelbar erkennbar. +Man kann aber aus~\eqref{buch:graphen:eqn:fundamentalgraph} ablesen, +dass für zunehmende Zeit die hohen Frequenzen sehr schnell gedämpft +werden. +Die hohen Frequenzen erzeugen also den scharfen Peak für Zeiten nahe +beim Knoten $i$, die zu kleineren $\lambda_i$ beschreiben die Ausbreitung +über grössere Distanzen. +Die Fundamentallösung interpoliert also in einem gewissen Sinne zwischen +den Extremen der Standardbasis und der Eigenbasis. +Die ``Interpolation'' geht von der Differentialgleichung aus, +sie ist nicht einfach nur ein Filter, der die verschiedenen Frequenzen +auf die gleiche Art bearbeitet. -Die Laplace-Matrix kann mit der folgenden Definition zu einer linearen -Abbildung auf Funktionen auf dem Graphen gemacht werden. -Sei $f\colon V\to \mathbb{R}$ und $L$ die Laplace-Matrix mit -Matrixelementen $l_{vv'}$ wobei $v,v'\in V$ ist. -Dann definieren wir die Funktion $Lf$ durch -\[ -(Lf)(v) -= -\sum_{v'\in V} l_{vv'}f(v'). -\] +Gesucht ist eine Methode, eine Familie von Vektoren zu finden, +aus der sich alle Vektoren linear kombinieren lassen, in der aber +auch auf die für die Anwendung interessante Längenskala angepasste +Funktionen gefunden werden können. -\subsection{Standardbasis und Eigenbasis -\label{buch:subsection:standardbasis-und-eigenbasis}} -Die einfachste Basis, aus der siche Funktionen auf dem Graphen linear -kombinieren lassen, ist die Standardbasis. -Sie hat für jeden Knoten $v$ des Graphen eine Basisfunktion mit den Werten -\[ -e_v\colon V\to\mathbb R:v'\mapsto \begin{cases} -1\qquad&v=v'\\ -0\qquad&\text{sonst.} -\end{cases} -\] +\subsection{Wavelets und Frequenzspektrum} +Eine Wavelet-Basis der Funktionen auf $\mathbb{R}$ zerlegt -\subsection{Wavelet-Basen -\label{buch:subsection:wavelet-basen}} +\subsection{Frequenzspektrum +\label{buch:subsection:frequenzspektrum}} +Die Fundamentallösung der Wärmeleitunsgleichung haben ein Spektrum, welches +wie $e^{-k^2}$ gegen $0$ geht. +Die Fundamentallösung entsteht dadurch, dass die hohen Frequenzen +schneller dämpft als die tiefen Frequenzen. + + +\subsection{Wavelet-Basen +\label{buch:subsection:}} diff --git a/buch/chapters/90-crypto/arith.tex b/buch/chapters/90-crypto/arith.tex index b6f2fd8..44eb6bb 100644 --- a/buch/chapters/90-crypto/arith.tex +++ b/buch/chapters/90-crypto/arith.tex @@ -6,20 +6,290 @@ \section{Arithmetik für die Kryptographie \label{buch:section:arithmetik-fuer-kryptographie}} \rhead{Arithmetik für die Kryptographie} +Die Algorithmen der mathematischen Kryptographie basieren +auf den Rechenoperationen in grossen, aber endlichen Körpern. +Für die Division liefert der euklidische Algorithmus eine +Methode, der in so vielen Schritten die Inverse findet, +wie Dividend und Divisor Binärstellen haben. +Dies ist weitgehend optimal. + +Die Division ist umkehrbar, in der Kryptographie strebt man aber an, +Funktionen zu konstruieren, die nur mit grossem Aufwand umkehrbar sind. +Eine solche Funktion ist das Potenzieren in einem endlichen Körper. +Die Berechnung von Potenzen durch wiederholte Multiplikation ist jedoch +prohibitiv aufwendig, daher ist ein schneller Potenzierungsalgorithmus +nötig, der in Abschnitt~\ref{buch:subsection:potenzieren} beschrieben +wird. +Bei der Verschlüsselung grosser Datenmengen wie zum Beispiel bei +der Verschlüsselung ganzer Harddisks mit Hilfe des AES-Algorithmus +kommt es auf die Geschwindigkeit auch der elementarsten Operationen +in den endlichen Körpern an. +Solche Methoden werden in den Abschnitten +\ref{buch:subsection:rechenoperationen-in-fp} +und +\ref{buch:subsection:rechenoperatione-in-f2l} +besprochen. \subsection{Potenzieren \label{buch:subsection:potenzieren}} -% XXX Divide-and-Conquer Algorithmus +Wir gehen davon aus, dass wir einen schnellen Algorithmus zur +Berechnung des Produktes zweier Elemente $a,b$ in einer +beliebigen Gruppe $G$ haben. +Die Gruppe $G$ kann die Multiplikation der ganzen oder reellen Zahlen +sein, dies wird zum Beispiel in Implementation der Potenzfunktion +verwendet. +Für kryptographische Anwendungen ist $G$ die multiplikative Gruppe +eines endlichen Körpers oder eine elliptische Kurve. + +Zur Berechnung von $a^k$ sind bei einer naiven Durchführung des +Algorithmus $k-1$ Multiplikationen nötig, immer sofort gefolgt +von einer Reduktion $\mod p$ um sicherzustellen, dass die Resultate +nicht zu gross werden. +Ist $l$ die Anzahl der Binärstellen von $k$, dann benötigt dieser +naive Algorithmus $O(2^l)$ Multiplikationen, die Laufzeit wächst +also exponentiell mit der Bitlänge von $k$ an. +Der nachfolgend beschriebene Algorithmus reduziert die Laufzeit auf +die $O(l)$. + +Zunächst schreiben wir den Exponenten $k$ in binärer Form als +\[ +k = k_l2^l + k_{l-1}2^{l-1} + \dots k_22^2+k_12^1 k_02^0. +\] +Die Potenz $a^k$ kann dann geschrieben werden als +\[ +a^k += +a^{k_l2^l} \cdot a^{k_{l-1}2^{l-1}} \cdot \dots \cdot +a^{k_22^2} \cdot a^{k_12^1} \cdot a^{k_02^0} +\] +Nur diejenigen Faktoren tragen etwas bei, für die $k_i\ne 0$ ist. +Die Potenz kann man daher auch schreiben als +\[ +a^k += +\prod_{k_i\ne 0} a^{2^i}. +\] +Es sind also nur so viele Faktoren zu berücksichtigen, wie $k$ +Binärstellen $1$ hat. + +Die einzelnen Faktoren $a^{2^i}$ können durch wiederholtes Quadrieren +erhalten werden: +\[ +a^{2^i} = a^{2\cdot 2^{i-1}} = (a^{2^{i-1}})^2, +\] +also durch maximal $l-1$ Multiplikationen. +Wenn $k$ keine Ganzzahl ist sondern binäre Nachkommastellen hat, also +\[ +k=k_l2^l + \dots + k_12^1 + k_02^0 + k_{-1}2^{-1} + k_{-2}2^{-2}+\dots, +\] +dann können die Potenzen $a^{2^{-i}}$ durch wiederholtes Wurzelziehen +\[ +a^{2^{-i}} = a^{\frac12\cdot 2^{-i+1}} = \sqrt{a^{2^{-i+1}}} +\] +gefunden werden. +Die Berechnung der Quadratwurzel lässt sich in Hardware effizient +implementieren. + +\begin{algorithmus} +Der folgende Algorithmsu berechnet $a^k$ in $O(\log_2(k))$ +Multiplikationen +\begin{enumerate} +\item Initialisiere $p=1$ und $q=a$ +\item Falls $k$ ungerade ist, setze $p:=p\cdot q$ +\item Setze $q:=q^2$ und $k := k/2$, wobei die ganzzahlige Division durch $2$ +am effizientesten als Rechtsshift implementiert werden kann. +\item Falls $k>0$, fahre weiter bei 2. +\end{enumerate} +\end{algorithmus} + +\begin{beispiel} +Die Berechnung von $1.1^{17}$ mit diesem Algorithmus ergibt +\begin{enumerate} +\item $p=1$, $q=1.1$ +\item $k$ ist ungerade: $p:=1.1$ +\item $q:=q^2=1.21$, $k := 8$ +\item $k$ ist gerade +\item $q:=q^2=1.4641$, $k := 4$ +\item $k$ ist gerade +\item $q:=q^2=2.14358881$, $k := 2$ +\item $k$ ist gerade +\item $q:=q^2=4.5949729863572161$, $k := 1$ +\item $k$ ist ungerade: $p:=1.1\cdot p = 5.05447028499293771$ +\item $k:=0$ +\end{enumerate} +Multiplikationen sind nur nötig in den Schritten 3, 5, 7, 9, 10, es +werden also genau $5$ Multiplikationen ausgeführt. +\end{beispiel} \subsection{Rechenoperationen in $\mathbb{F}_p$ \label{buch:subsection:rechenoperationen-in-fp}} -% XXX Multiplikation: modulare Reduktion mit jedem Digit -% XXX Divide-and-Conquer +Die Multiplikation macht aus zwei Faktoren $a$ und $b$ ein +Resultat mit Bitlänge $\log_2 a+\log_2 b$, die Bitlänge wird +also typischerweise verdoppelt. +In $\mathbb{F}_p$ muss anschliessend das Resultat $\mod p$ +reduziert werden, so dass die Bitlänge wieder höchstens +$\log_2p$ ist. +In folgenden soll gezeigt werden, dass dieser Speicheraufwand +für eine Binärimplementation deutlich reduziert werden kann, +wenn die Reihenfolge der Operationen modifiziert wird. + +Für die Multiplikation von $41\cdot 47$ rechnet man im Binärsystem +\begin{center} +\begin{tabular}{>{$}r<{$}} +\texttt{{\color{darkgreen}1}0{\color{red}1}001}\cdot\texttt{101111}\\ +\hline +\texttt{101111}\\ +\texttt{{\color{red}101111}\phantom{000}}\\ +\texttt{{\color{darkgreen}101111}\phantom{00000}}\\ +\hline +\texttt{11110000111}\\ +\hline +\end{tabular} +\end{center} +In $\mathbb{F}_{53}$ muss im Anschluss Modulo $p=53$ reduziert werden. + +Der Speicheraufwand entsteht zunächst dadurch, dass durch die Multiplikation +mit $2$ die Summanden immer länger werden. +Man kann den die Sumanden kurz halten, indem man jedesmal, wenn +der Summand nach der Multiplikation mit $2$ grösser als $p$ geworden ist, +$p$ subtrahiert (Abbildung~\ref{buch:crypto:fig:reduktion}). +Ebenso kann bei nach jeder Addition das bereits reduzierten zweiten +Faktors wieder reduziert werden. +Die Anzahl der nötigen Reduktionsoperationen wird durch diese +frühzeitig durchgeführten Reduktionen nicht teurer als bei der Durchführung +des Divisionsalgorithmus. + +\begin{figure} +\begin{center} +\begin{tabular}{>{$}r<{$}>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}>{$}r<{$}} +\text{Multiplikation mit $2$}&\text{Reduktion?}&\text{reduziert} + &\text{Summanden}&\text{Summe}&\text{reduziert} +\\ +\hline +\texttt{101111} & &\texttt{101111} + &\texttt{101111}&\texttt{101111}&\texttt{101111} +\\ +\texttt{101111\phantom{0}} &\texttt{{\color{red}1011110}}&\texttt{101001} + & & & +\\ +\texttt{101111\phantom{00}} &\texttt{0{\color{red}111010}}&\texttt{011101} + & & & +\\ +\texttt{101111\phantom{000}} &\texttt{0001010}&\texttt{000101} + &\texttt{000101}&\texttt{110100}&\texttt{110100} +\\ +\texttt{101111\phantom{0000}} &\texttt{0010100}&\texttt{001010} + & & & +\\ +\texttt{101111\phantom{00000}}&\texttt{0101000}&\texttt{010100} + &\texttt{010100}&\texttt{{\color{red}1001000}}&\texttt{10011}\rlap{$\mathstrut=19$} +\end{tabular} +\end{center} +\caption{Multiplikation von $41=\texttt{101001}_2$ mit $47=\texttt{101111}_2$, +Reduktion nach jeder Multiplikation mit $2$: falls das Resultat +$>p$ ist, wie in den rot markierten Zeilen $p=53=\texttt{110101}_2$ +durchgeführt. +Bei der Bildung der Summe wird ebenfalls in jedem Schritt falls nötig +reduziert, angezeigt durch die roten Zahlen in der zweitletzten +Spalte. +Die Anzahl der Subtraktionen, die für die Reduktionen nötig sind, ist +von der selben Grössenordnung wie bei der Durchführung des +Divisionsalgorithmus. +\label{buch:crypto:fig:reduktion}} +\end{figure} + +Es ist also möglich, mit gleichem Aufwand an Operationen +aber mit halbe Speicherplatzbedarf die Multiplikationen in $\mathbb{F}_p$ +durchzuführen. +Die Platzeinsparung ist besonders bei Implementationen in Hardware +hilfreich, wo on-die Speicherplatz teuer sein kann. \subsection{Rechenoperationen in $\mathbb{F}_{2^l}$ \label{buch:subsection:rechenoperatione-in-f2l}} -% XXX Darstellung eines Körpers der Art F_{2^l} -% XXX Addition (XOR) und Multiplikation -% XXX Beispiel F_{2^8} +Von besonderem praktischem Interesse sind die endlichen Körper +$\mathbb{F}_{2^l}$. +Die arithmetischen Operationen in diesen Körpern lassen sich besonders +effizient in Hardware realisieren. + +\subsubsection{Zahldarstellung} +Ein endlicher Körper $\mathbb{F}_{2^l}$ ist definiert durch ein +irreduzibles Polynom in $\mathbb{F}_2[X]$ vom Grad $2^l$ +\[ +m(X) += +X^l + m_{l-1}X^{l-1} + m_{l-2}X^{l-2} + \dots + m_2X^2 + m_1X + m_0 +\] +gegeben. +Ein Element in $\mathbb{F}_2[X]/(m)$ kann dargestellt werden durch ein +Polynom vom Grad $l-1$, also durch +\[ +a = a_{l-1}X^{l-1} + a_{l-2}X^{l-2} +\dots + a_2X^2 + a_1X + a_0. +\] +In einer Maschine kann eine Zahl also als eine Bitfolge der Länge $l$ +dargestellt werden. + +\subsubsection{Addition} +Die Addition in $\mathbb{F}_2$ ist in Hardware besonders leicht zu +realisieren. +Die Addition ist die XOR-Operation, die Multiplikation ist die UND-Verknüfung. +Ausserdem stimmen in $\mathbb{F}_2$ Addition und Subtraktion überein. + +Die Addition zweier Polynome erfolgt komponentenweise. +Die Addition von zwei Elemente von $\mathbb{F}_{2^l}$ kann also +durch die bitweise XOR-Verknüpfung der Darstellungen der Summanden +erfolgen. +Diese Operation ist in einem einzigen Maschinenzyklus realisierbar. +Die Subtraktion, die für die Reduktionsoperation module $m(X)$ nötig +ist, ist mit der Addition identisch. + +\subsubsection{Multiplikation} +Die Multiplikation zweier Polynome benötigt zunächst die Multiplikation +mit $X$, wodurch der Grad des Polynoms ansteigt und möglicherweise so +gross wird, dass eine Reduktionsoperation modulo $m(X)$ nötig wird. +Die Reduktion wird immer dann nötig, wenn der Koeffizient von $X^l$ +nicht $0$ ist. +Der Koeffizient kann dann zum Verschwinden gebracht werden, indem +$m(X)$ addiert wird. + +\begin{figure} +\centering +\includegraphics{chapters/90-crypto/images/schieberegister.pdf} +\caption{Implementation der Multiplikation mit $X$ in einem +endlichen Körper $\mathbb{F}_{2^l}$ mit dem Minimalpolynom +$m(X) = X^8+X^4+X^3+X^+1$ als Feedback-Schieberegister. +\label{buch:crypto:fig:schieberegister}} +\end{figure} + +In Abbildung~\ref{buch:crypto:fig:schieberegister} wird gezeigt, +wie die Reduktion erfolgt, wenn die Multiplikation mit $X$, also der +Shift nach links, einen Überlauf ergibt. +Das Minimalpolynom $m(X)=X^8+X^4+X^3+X+1$ bedeutet, dass in $\mathbb{F}_{2^l}$ +$X^8=X^4+X^3+X+1$ gilt, so dass man das Überlaufbit durch +$X^4+X^3+X+1$ ersetzen und addieren kann. + +Ein Produktes $p(X)\cdot q(X)$, wobei $p(X)$ und +$q(X)$ Repräsentaten von Elementen $\mathbb{F}_{2^l}$ sind, kann jetzt +wie folgt berechnet werden. +Mit dem Schieberegister werden die Vielfachen $X^k\cdot p(X)$ +für $k=0,\dots,l-1$ berechnet. +Diejenigen Vielfachen, für die der Koeffizient von $X^k$ in $q(X)$ +von $0$ verschieden ist werden aufsummiert und ergeben das Produkt. +Der Prozess in Abbildung~\ref{buch:crypto:fig:multiplikation} +dargestellt. + +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/90-crypto/images/multiplikation.pdf} +\caption{Multiplikation zweier Elemente von $\mathbb{F}_{2^l}$. +Mit Hilfe des Schieberegisters am linken Rand werden die Produkte +$X\cdot p(X)$, $X^2\cdot p(X),\dots,X^7\cdot p(X)$ nach der in +Abbildung~\ref{buch:crypto:fig:schieberegister} dargestellten +Methode berechnet. +Am rechten Rand werden diejenigen $X^k\cdot p(X)$ aufaddiert, +für die der $X^k$-Koeffizient von $q(X)$ von $0$ verschieden ist. +\label{buch:crypto:fig:multiplikation}} +\end{figure} + + % XXX Beispiel F einer Oakley-Gruppe diff --git a/buch/chapters/90-crypto/chapter.tex b/buch/chapters/90-crypto/chapter.tex index 43ac8de..d2fcbbf 100644 --- a/buch/chapters/90-crypto/chapter.tex +++ b/buch/chapters/90-crypto/chapter.tex @@ -20,7 +20,7 @@ In diesem Abschnitt soll dies an einigen Beispielen gezeigt werden. \input{chapters/90-crypto/arith.tex} \input{chapters/90-crypto/ff.tex} \input{chapters/90-crypto/aes.tex} -\input{chapters/90-crypto/rs.tex} +%\input{chapters/90-crypto/rs.tex} \section*{Übungsaufgaben} \rhead{Übungsaufgaben} diff --git a/buch/chapters/90-crypto/ff.tex b/buch/chapters/90-crypto/ff.tex index 4ab9c34..535b359 100644 --- a/buch/chapters/90-crypto/ff.tex +++ b/buch/chapters/90-crypto/ff.tex @@ -26,7 +26,7 @@ In der Praxis werden aber $g$ und $a$ Zahlen mit vielen Binärstellen sein, die die wiederholte Multiplikation ist daher sicher nicht effizient, das Kriterium der einfachen Berechenbarkeit scheint also nicht erfüllt. -Der folgende Algorithmus berechnet die Potenz in $O(\log_2 a$ +Der folgende Algorithmus berechnet die Potenz in $O(\log_2 a)$ Multiplikationen. \begin{algorithmus}[Divide-and-conquer] diff --git a/buch/chapters/90-crypto/images/Makefile b/buch/chapters/90-crypto/images/Makefile index 9480163..bbb960f 100644 --- a/buch/chapters/90-crypto/images/Makefile +++ b/buch/chapters/90-crypto/images/Makefile @@ -3,7 +3,7 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: dh.pdf elliptic.pdf +all: dh.pdf elliptic.pdf schieberegister.pdf multiplikation.pdf dh.pdf: dh.tex pdflatex dh.tex @@ -11,3 +11,9 @@ dh.pdf: dh.tex elliptic.pdf: elliptic.tex pdflatex elliptic.tex +schieberegister.pdf: schieberegister.tex + pdflatex schieberegister.tex + +multiplikation.pdf: multiplikation.tex + pdflatex multiplikation.tex + diff --git a/buch/chapters/90-crypto/images/multiplikation.pdf b/buch/chapters/90-crypto/images/multiplikation.pdf new file mode 100644 index 0000000..86345b8 Binary files /dev/null and b/buch/chapters/90-crypto/images/multiplikation.pdf differ diff --git a/buch/chapters/90-crypto/images/multiplikation.tex b/buch/chapters/90-crypto/images/multiplikation.tex new file mode 100644 index 0000000..27c4329 --- /dev/null +++ b/buch/chapters/90-crypto/images/multiplikation.tex @@ -0,0 +1,464 @@ +% +% multiplikation.tex -- +% +% (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] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\s{0.45} + +\def\punkt#1#2{({#1*\s},{#2*\s})} + +\def\pfeile{ + \foreach \x in {0.5,1.5,...,7.5}{ + \draw[->,color=blue] \punkt{\x}{-2.1} -- \punkt{(\x-1)}{-3.3}; + } +} + +\begin{scope}[yshift=0.1cm] + \node at \punkt{0}{0.5} [left] {$p(X)=\mathstrut$}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node at \punkt{0.5}{0.5} {\texttt{1}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{0}}; + \node at \punkt{3.5}{0.5} {\texttt{1}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{1}}; + \node at \punkt{6.5}{0.5} {\texttt{0}}; + \node at \punkt{7.5}{0.5} {\texttt{1}}; + \foreach \x in {0.5,1.5,...,7.5}{ + \draw[->,color=blue] \punkt{\x}{-0.1} -- \punkt{(\x-1)}{-1.3}; + } +\end{scope} + +\begin{scope}[yshift=-1cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{1}}; + \node at \punkt{0.5}{0.5} {\texttt{0}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{1}}; + \node at \punkt{3.5}{0.5} {\texttt{0}}; + \node at \punkt{4.5}{0.5} {\texttt{1}}; + \node at \punkt{5.5}{0.5} {\texttt{0}}; + \node at \punkt{6.5}{0.5} {\texttt{1}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + + \draw[->,color=darkgreen] + \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; + \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{0}}; + \node at \punkt{1.5}{-1.5} {\texttt{0}}; + \node at \punkt{2.5}{-1.5} {\texttt{1}}; + \node at \punkt{3.5}{-1.5} {\texttt{1}}; + \node at \punkt{4.5}{-1.5} {\texttt{0}}; + \node at \punkt{5.5}{-1.5} {\texttt{0}}; + \node at \punkt{6.5}{-1.5} {\texttt{0}}; + \node at \punkt{7.5}{-1.5} {\texttt{1}}; + + \pfeile +\end{scope} + +\begin{scope}[yshift=-3cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{0}}; + \node at \punkt{0.5}{0.5} {\texttt{0}}; + \node at \punkt{1.5}{0.5} {\texttt{1}}; + \node at \punkt{2.5}{0.5} {\texttt{1}}; + \node at \punkt{3.5}{0.5} {\texttt{0}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{0}}; + \node at \punkt{6.5}{0.5} {\texttt{1}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + +% \draw[->,color=darkgreen] +% \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; +% \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4}{-0.5} {$\|$}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{0}}; + \node at \punkt{1.5}{-1.5} {\texttt{1}}; + \node at \punkt{2.5}{-1.5} {\texttt{1}}; + \node at \punkt{3.5}{-1.5} {\texttt{0}}; + \node at \punkt{4.5}{-1.5} {\texttt{0}}; + \node at \punkt{5.5}{-1.5} {\texttt{0}}; + \node at \punkt{6.5}{-1.5} {\texttt{1}}; + \node at \punkt{7.5}{-1.5} {\texttt{0}}; + + \pfeile +\end{scope} + +\begin{scope}[yshift=-5cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{0}}; + \node at \punkt{0.5}{0.5} {\texttt{1}}; + \node at \punkt{1.5}{0.5} {\texttt{1}}; + \node at \punkt{2.5}{0.5} {\texttt{0}}; + \node at \punkt{3.5}{0.5} {\texttt{0}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{1}}; + \node at \punkt{6.5}{0.5} {\texttt{0}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + +% \draw[->,color=darkgreen] +% \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; +% \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4}{-0.5} {$\|$}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{1}}; + \node at \punkt{1.5}{-1.5} {\texttt{1}}; + \node at \punkt{2.5}{-1.5} {\texttt{0}}; + \node at \punkt{3.5}{-1.5} {\texttt{0}}; + \node at \punkt{4.5}{-1.5} {\texttt{0}}; + \node at \punkt{5.5}{-1.5} {\texttt{1}}; + \node at \punkt{6.5}{-1.5} {\texttt{0}}; + \node at \punkt{7.5}{-1.5} {\texttt{0}}; + + \pfeile +\end{scope} + +\begin{scope}[yshift=-7cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{1}}; + \node at \punkt{0.5}{0.5} {\texttt{1}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{0}}; + \node at \punkt{3.5}{0.5} {\texttt{0}}; + \node at \punkt{4.5}{0.5} {\texttt{1}}; + \node at \punkt{5.5}{0.5} {\texttt{0}}; + \node at \punkt{6.5}{0.5} {\texttt{0}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + + \draw[->,color=darkgreen] + \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; + \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{4}{-0.5} {$\|$}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{1}}; + \node at \punkt{1.5}{-1.5} {\texttt{0}}; + \node at \punkt{2.5}{-1.5} {\texttt{0}}; + \node at \punkt{3.5}{-1.5} {\texttt{1}}; + \node at \punkt{4.5}{-1.5} {\texttt{0}}; + \node at \punkt{5.5}{-1.5} {\texttt{0}}; + \node at \punkt{6.5}{-1.5} {\texttt{1}}; + \node at \punkt{7.5}{-1.5} {\texttt{1}}; + + \pfeile +\end{scope} + +\begin{scope}[yshift=-9cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{1}}; + \node at \punkt{0.5}{0.5} {\texttt{0}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{1}}; + \node at \punkt{3.5}{0.5} {\texttt{0}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{1}}; + \node at \punkt{6.5}{0.5} {\texttt{1}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + + \draw[->,color=darkgreen] + \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; + \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{4}{-0.5} {$\|$}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{0}}; + \node at \punkt{1.5}{-1.5} {\texttt{0}}; + \node at \punkt{2.5}{-1.5} {\texttt{1}}; + \node at \punkt{3.5}{-1.5} {\texttt{1}}; + \node at \punkt{4.5}{-1.5} {\texttt{1}}; + \node at \punkt{5.5}{-1.5} {\texttt{1}}; + \node at \punkt{6.5}{-1.5} {\texttt{0}}; + \node at \punkt{7.5}{-1.5} {\texttt{1}}; + + \pfeile +\end{scope} + +\begin{scope}[yshift=-11cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{0}}; + \node at \punkt{0.5}{0.5} {\texttt{0}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{1}}; + \node at \punkt{3.5}{0.5} {\texttt{1}}; + \node at \punkt{4.5}{0.5} {\texttt{1}}; + \node at \punkt{5.5}{0.5} {\texttt{0}}; + \node at \punkt{6.5}{0.5} {\texttt{1}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + +% \draw[->,color=darkgreen] +% \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; +% \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4}{-0.5} {$\|$}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{0}}; + \node at \punkt{1.5}{-1.5} {\texttt{0}}; + \node at \punkt{2.5}{-1.5} {\texttt{1}}; + \node at \punkt{3.5}{-1.5} {\texttt{1}}; + \node at \punkt{4.5}{-1.5} {\texttt{1}}; + \node at \punkt{5.5}{-1.5} {\texttt{0}}; + \node at \punkt{6.5}{-1.5} {\texttt{1}}; + \node at \punkt{7.5}{-1.5} {\texttt{0}}; + + \pfeile +\end{scope} + +\begin{scope}[yshift=-13cm] + \draw[<-] \punkt{8.2}{-1.3} arc (-30:30:1.8); + \node at \punkt{9.3}{0.6} {$\mathstrut\cdot X$}; + \fill[color=blue!20] \punkt{-1}{0} rectangle \punkt{0}{1}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node[color=darkgreen] at \punkt{-0.5}{0.5} {\texttt{0}}; + \node at \punkt{0.5}{0.5} {\texttt{0}}; + \node at \punkt{1.5}{0.5} {\texttt{1}}; + \node at \punkt{2.5}{0.5} {\texttt{1}}; + \node at \punkt{3.5}{0.5} {\texttt{1}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{1}}; + \node at \punkt{6.5}{0.5} {\texttt{0}}; + \node at \punkt{7.5}{0.5} {\texttt{0}}; + +% \draw[->,color=darkgreen] +% \punkt{-0.5}{0.1} -- \punkt{-0.5}{-0.5} -- \punkt{3.1}{-0.5}; +% \node[color=darkgreen] at \punkt{3.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{4.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{6.5}{-0.5} {\texttt{1}}; +% \node[color=darkgreen] at \punkt{7.5}{-0.5} {\texttt{1}}; + \node[color=darkgreen] at \punkt{4}{-0.5} {$\|$}; + + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + \node at \punkt{0.5}{-1.5} {\texttt{0}}; + \node at \punkt{1.5}{-1.5} {\texttt{1}}; + \node at \punkt{2.5}{-1.5} {\texttt{1}}; + \node at \punkt{3.5}{-1.5} {\texttt{0}}; + \node at \punkt{4.5}{-1.5} {\texttt{1}}; + \node at \punkt{5.5}{-1.5} {\texttt{1}}; + \node at \punkt{6.5}{-1.5} {\texttt{1}}; + \node at \punkt{7.5}{-1.5} {\texttt{1}}; + +% \pfeile +\end{scope} + +\begin{scope}[xshift=9cm] + +\begin{scope}[yshift=0.1cm] + \draw[->] \punkt{-11.8}{0.5} -- \punkt{-0.1}{0.5}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \draw \punkt{4}{-0.1} -- \punkt{4}{-3}; + \node at \punkt{0.5}{0.5} {\texttt{1}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{0}}; + \node at \punkt{3.5}{0.5} {\texttt{1}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{1}}; + \node at \punkt{6.5}{0.5} {\texttt{0}}; + \node at \punkt{7.5}{0.5} {\texttt{1}}; +\end{scope} + +\def\summation#1#2#3#4#5#6#7#8{ + \draw[->] \punkt{4}{2.3} -- \punkt{4}{1}; + + \draw[->] \punkt{-11.8}{0.5} -- \punkt{3.5}{0.5}; + + \draw \punkt{4}{0.5} circle[radius=0.2]; + \draw \punkt{4}{0.20} -- \punkt{4}{0.80}; + \draw \punkt{3.7}{0.5} -- \punkt{4.3}{0.5}; + + \draw[->] \punkt{4}{-0.05} -- \punkt{4}{-0.95}; + \draw \punkt{0}{-2} rectangle \punkt{8}{-1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{-2} -- \punkt{\x}{-1}; + } + + \node at \punkt{0.5}{-1.5} {\texttt{#1}}; + \node at \punkt{1.5}{-1.5} {\texttt{#2}}; + \node at \punkt{2.5}{-1.5} {\texttt{#3}}; + \node at \punkt{3.5}{-1.5} {\texttt{#4}}; + \node at \punkt{4.5}{-1.5} {\texttt{#5}}; + \node at \punkt{5.5}{-1.5} {\texttt{#6}}; + \node at \punkt{6.5}{-1.5} {\texttt{#7}}; + \node at \punkt{7.5}{-1.5} {\texttt{#8}}; +} + +\begin{scope}[yshift=-1.9cm] + \summation{1}{0}{0}{1}{0}{1}{0}{1} +\end{scope} + +\begin{scope}[yshift=-3.9cm] + \summation{1}{1}{1}{1}{0}{1}{1}{1} +\end{scope} + +\begin{scope}[yshift=-5.9cm] + \summation{1}{1}{1}{1}{0}{1}{1}{1} +\end{scope} + +\begin{scope}[yshift=-7.9cm] + \summation{0}{1}{1}{0}{0}{1}{0}{0} +\end{scope} + +\begin{scope}[yshift=-9.9cm] + \summation{0}{1}{0}{1}{1}{0}{0}{1} +\end{scope} + +\begin{scope}[yshift=-11.9cm] + \summation{0}{1}{0}{1}{1}{0}{0}{1} +\end{scope} + +\begin{scope}[yshift=-13.9cm] + \summation{0}{0}{1}{1}{0}{1}{1}{0} + \node at \punkt{0}{-1.5} [left] {$p(X)\cdot q(X)=\mathstrut$}; +\end{scope} + +\end{scope} + +\begin{scope}[xshift=5cm] + +\begin{scope}[yshift=2cm] + \node at \punkt{0}{0.5} [left] {$q(X)=\mathstrut$}; + \draw \punkt{0}{0} rectangle \punkt{8}{1}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; + } + \node at \punkt{0.5}{0.5} {\texttt{1}}; + \node at \punkt{1.5}{0.5} {\texttt{0}}; + \node at \punkt{2.5}{0.5} {\texttt{1}}; + \node at \punkt{3.5}{0.5} {\texttt{1}}; + \node at \punkt{4.5}{0.5} {\texttt{0}}; + \node at \punkt{5.5}{0.5} {\texttt{1}}; + \node at \punkt{6.5}{0.5} {\texttt{0}}; + \node at \punkt{7.5}{0.5} {\texttt{1}}; + + \draw[->] \punkt{7.5}{-0.1} -- ({7.5*\s},{-1.3}); + \node at ({7.5*\s},{-1.2}) [below] {$\mathstrut\cdot\texttt{1}$}; + + \def\y{1.2} + + \draw[->] \punkt{6.5}{-0.1} -- ({6.5*\s},{-1*2-\y-0.1}); + \node at ({6.5*\s},{-1*2-\y}) [below] {$\mathstrut\cdot\texttt{0}$}; + + \draw[->] \punkt{5.5}{-0.1} -- ({5.5*\s},{-2*2-\y-0.1}); + \node at ({5.5*\s},{-2*2-\y}) [below] {$\mathstrut\cdot\texttt{1}$}; + + \draw[->] \punkt{4.5}{-0.1} -- ({4.5*\s},{-3*2-\y-0.1}); + \node at ({4.5*\s},{-3*2-\y}) [below] {$\mathstrut\cdot\texttt{0}$}; + + \draw[->] \punkt{3.5}{-0.1} -- ({3.5*\s},{-4*2-\y-0.1}); + \node at ({3.5*\s},{-4*2-\y}) [below] {$\mathstrut\cdot\texttt{1}$}; + + \draw[->] \punkt{2.5}{-0.1} -- ({2.5*\s},{-5*2-\y-0.1}); + \node at ({2.5*\s},{-5*2-\y}) [below] {$\mathstrut\cdot\texttt{1}$}; + + \draw[->] \punkt{1.5}{-0.1} -- ({1.5*\s},{-6*2-\y-0.1}); + \node at ({1.5*\s},{-6*2-\y}) [below] {$\mathstrut\cdot\texttt{0}$}; + + \draw[->] \punkt{0.5}{-0.1} -- ({0.5*\s},{-7*2-\y-0.1}); + \node at ({0.5*\s},{-7*2-\y}) [below] {$\mathstrut\cdot\texttt{1}$}; +\end{scope} + +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/90-crypto/images/schieberegister.pdf b/buch/chapters/90-crypto/images/schieberegister.pdf new file mode 100644 index 0000000..30b675b Binary files /dev/null and b/buch/chapters/90-crypto/images/schieberegister.pdf differ diff --git a/buch/chapters/90-crypto/images/schieberegister.tex b/buch/chapters/90-crypto/images/schieberegister.tex new file mode 100644 index 0000000..7c24e52 --- /dev/null +++ b/buch/chapters/90-crypto/images/schieberegister.tex @@ -0,0 +1,120 @@ +% +% schieberegister.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] + +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\s{0.8} + +\def\punkt#1#2{({#1*\s},{#2*\s})} + +\fill[color=blue!20] \punkt{0}{0} rectangle \punkt{8}{1}; + +\node at \punkt{0.5}{1} [above] {$X^7\mathstrut$}; +\node at \punkt{3}{1} [above] {$+\mathstrut$}; +\node at \punkt{3.5}{1} [above] {$X^4\mathstrut$}; +\node at \punkt{5}{1} [above] {$+\mathstrut$}; +\node at \punkt{5.5}{1} [above] {$X^2\mathstrut$}; +\node at \punkt{7}{1} [above] {$+\mathstrut$}; +\node at \punkt{7.5}{1} [above] {$1\mathstrut$}; + +\node at \punkt{0}{1} [above left] {\llap{$p(X)=\mathstrut$}}; + +\node at \punkt{0.5}{0.5} {\texttt{1}}; +\node at \punkt{1.5}{0.5} {\texttt{0}}; +\node at \punkt{2.5}{0.5} {\texttt{0}}; +\node at \punkt{3.5}{0.5} {\texttt{1}}; +\node at \punkt{4.5}{0.5} {\texttt{0}}; +\node at \punkt{5.5}{0.5} {\texttt{1}}; +\node at \punkt{6.5}{0.5} {\texttt{0}}; +\node at \punkt{7.5}{0.5} {\texttt{1}}; + +\draw \punkt{0}{0} rectangle \punkt{8}{1}; +\foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{1}; +} + +\fill[color=blue!20] \punkt{-1}{-3} rectangle \punkt{7}{-2}; +\fill[color=darkgreen!20] \punkt{0}{-4} rectangle \punkt{8}{-3}; + +\node[color=darkgreen] at \punkt{-1}{-1.5} [left] + {$m(X) = X^8+X^4+X^3+X+1$}; + +\node[color=darkgreen] at \punkt{-1}{-2.7} [left] + {$\underbrace{X^4+X^3+X+1}_{}= X^8=\mathstrut$}; + +\coordinate (A) at ({-4.15*\s},{-3*\s}); +\coordinate (B) at ({0*\s},{-3.5*\s}); + +\draw[->,color=red,shorten >= 0.1cm] (A) to[out=-90,in=180] (B); +\node[color=red] at \punkt{-3.1}{-3.8} [below] {Feedback}; + +\node at \punkt{-0.5}{-2.5} {\texttt{1}}; +\node at \punkt{0.5}{-2.5} {\texttt{0}}; +\node at \punkt{1.5}{-2.5} {\texttt{0}}; +\node at \punkt{2.5}{-2.5} {\texttt{1}}; +\node at \punkt{3.5}{-2.5} {\texttt{0}}; +\node at \punkt{4.5}{-2.5} {\texttt{1}}; +\node at \punkt{5.5}{-2.5} {\texttt{0}}; +\node at \punkt{6.5}{-2.5} {\texttt{1}}; +\node at \punkt{7.5}{-2.5} {\texttt{0}}; + +\node[color=darkgreen] at \punkt{0.5}{-3.5} {\texttt{0}}; +\node[color=darkgreen] at \punkt{1.5}{-3.5} {\texttt{0}}; +\node[color=darkgreen] at \punkt{2.5}{-3.5} {\texttt{0}}; +\node[color=darkgreen] at \punkt{3.5}{-3.5} {\texttt{1}}; +\node[color=darkgreen] at \punkt{4.5}{-3.5} {\texttt{1}}; +\node[color=darkgreen] at \punkt{5.5}{-3.5} {\texttt{0}}; +\node[color=darkgreen] at \punkt{6.5}{-3.5} {\texttt{1}}; +\node[color=darkgreen] at \punkt{7.5}{-3.5} {\texttt{1}}; + +\draw \punkt{0}{-4} rectangle \punkt{8}{-2}; +\draw \punkt{0}{-3} -- \punkt{8}{-3}; +\foreach \x in {1,...,7}{ + \draw \punkt{\x}{-4} -- \punkt{\x}{-2}; +} + +\foreach \x in {0.5,1.5,...,7.5}{ + \draw[->,color=blue] \punkt{\x}{-0.1} -- \punkt{(\x-1)}{-1.9}; +} + +\draw \punkt{0}{-6} rectangle \punkt{8}{-5}; +\foreach \x in {1,...,7}{ + \draw \punkt{\x}{-6} -- \punkt{\x}{-5}; +} + +\node at \punkt{0.5}{-5.5} {\texttt{0}}; +\node at \punkt{1.5}{-5.5} {\texttt{0}}; +\node at \punkt{2.5}{-5.5} {\texttt{1}}; +\node at \punkt{3.5}{-5.5} {\texttt{1}}; +\node at \punkt{4.5}{-5.5} {\texttt{0}}; +\node at \punkt{5.5}{-5.5} {\texttt{0}}; +\node at \punkt{6.5}{-5.5} {\texttt{0}}; +\node at \punkt{7.5}{-5.5} {\texttt{1}}; + +\node at \punkt{4}{-4.5} {$\|$}; + +\node at \punkt{10.3}{-3} [left] + {$\left.\begin{matrix}\\ \\ \\ \end{matrix}\right\} + = \text{XOR}$}; + +\draw[<-,shorten >= 0.1cm, shorten <= 0.1cm] + \punkt{8.0}{-2.0} arc (-30:30:{2.0*\s}); +\node at \punkt{8.3}{-1} [right] {$\mathstrut \cdot X$}; + +\node at \punkt{8.1}{-5.5} [right] {$=X\cdot p(X)\mathstrut$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/90-crypto/uebungsaufgaben/9001.tex b/buch/chapters/90-crypto/uebungsaufgaben/9001.tex index 5bf4558..7ed1e57 100644 --- a/buch/chapters/90-crypto/uebungsaufgaben/9001.tex +++ b/buch/chapters/90-crypto/uebungsaufgaben/9001.tex @@ -6,7 +6,7 @@ Welchen gemeinsamen Schlüssel verwenden $A$ und $B$? \begin{loesung} Der zu verwendende gemeinsame Schlüssel ist -$g^{ab}=(g^b)^a = y^a\in\mathbb{F}_2027$. +$g^{ab}=(g^b)^a = y^a\in\mathbb{F}_{2027}$. Diese Potenz kann man mit dem Divide-and-Conquer-Algorithmus effizient berechnen. Die Binärdarstellung des privaten Schlüssels von $A$ ist -- cgit v1.2.1 From c4446c32a0fd6e829959ca2bf84bbad211554a87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 6 Apr 2021 16:40:17 +0200 Subject: add new stuff --- buch/chapters/90-crypto/aes.tex | 302 +++++++++++++++++++++++++++++++ buch/chapters/90-crypto/images/Makefile | 9 +- buch/chapters/90-crypto/images/sbox.m | 52 ++++++ buch/chapters/90-crypto/images/sbox.pdf | Bin 0 -> 23568 bytes buch/chapters/90-crypto/images/sbox.tex | 241 ++++++++++++++++++++++++ buch/chapters/90-crypto/images/shift.pdf | Bin 0 -> 1182 bytes buch/chapters/90-crypto/images/shift.tex | 30 +++ 7 files changed, 633 insertions(+), 1 deletion(-) create mode 100644 buch/chapters/90-crypto/images/sbox.m create mode 100644 buch/chapters/90-crypto/images/sbox.pdf create mode 100644 buch/chapters/90-crypto/images/sbox.tex create mode 100644 buch/chapters/90-crypto/images/shift.pdf create mode 100644 buch/chapters/90-crypto/images/shift.tex (limited to 'buch/chapters') diff --git a/buch/chapters/90-crypto/aes.tex b/buch/chapters/90-crypto/aes.tex index 6004dde..4df2e8d 100644 --- a/buch/chapters/90-crypto/aes.tex +++ b/buch/chapters/90-crypto/aes.tex @@ -32,4 +32,306 @@ Sicherheit. In diesem Abschnitt soll gezeigt werde, wie sich die AES spezifizierten Operationen als mit der Arithmetik der endlichen Körper beschreiben lassen. +Im Abschnitt~\ref{buch:subsection:byte-operationen} werden +Bytes als Elemente in einem endlichen Körper $\mathbb{F}_{2^8}$ +interpretiert. +Damit kann dann die sogenannte $S$-Box konstruiert werden und +es ist leicht zu verstehen, dass sie invertierbar ist. +Aus den Byte-Operationen können dann Mischoperationen erzeugt +werden, die Bytes untereinander verknüpfen, die aber auch wieder +als Operationen in einem endlichen Körper verstanden werden können. + +\subsection{Byte-Operationen +\label{buch:subsection:byte-operationen}} +Moderne Prozessoren operieren auf Wörtern, die Vielfache von Bytes sind. +Byte-Operationen sind besonders effizient in Hardware zu realisieren. +AES verwendet daher als Grundelemente Operationen auf Bytes, die als +Elemente eines endlichen Körpers $\mathbb{F}_{2^8}$ interpretiert werden. + +\subsubsection{Bytes als Elemente von $\mathbb{F}_{2^8}$} +Das Polynom $m(X)=X^8+X^4+X^3+X+1\in \mathbb{F}_2[X]$ ist irreduzibel, +somit ist $\mathbb{F}_{2^8} = \mathbb{F}_2[X]/(m)$ ein Körper. +Die Elemente können dargestellt werden als Polynome, das Byte +$\texttt{63}_{16}$ bekommt die Form +\[ +p(X) = p_7X^7 + p_6X^6 + \dots + p_2X^2+p_1X + p_0, +\] +sie bestehen daher aus den $8$ Bits $p_7,\dots,p_0$. + +Die Interpretation der Bytes als Elemente eines Körpers bedeutet, +dass jede Multiplikation mit einem nicht verschwindenden Byte +invertierbar ist. +Ausserdem mischen diese Operationen die einzelnen Bits auf einigermassen +undurchsichtige, aber umkehrbare Art durcheinander, wie dies für ein +Verschlüsselungsverfahren wünschenswert ist. + +\subsubsection{$S$-Box} +Für die Operation der $S$-Box wird wie folgt zusammengesetzt. +Zunächst wird ein Byte $x$ durch das zugehörige multiplikative +inverse Element +\[ +x\mapsto \bar{x} = \begin{cases} +x^{-1}&\qquad \text{für $x\in \mathbb{F}_{2^8}^*$}\\ +0 &\qquad \text{für $x=0$} +\end{cases} +\] +ersetzt. + +Im zweiten Schritt betrachten wir $\mathbb{F}_{2^8}$ als einen +$8$-dimensionalen Vektorraum über $\mathbb{F}_2$. +Einem Polynom $p(X)=p_7X^7 + \dots + p_1X+p_0$ wird der Spaltenvektor +mit den Komponenten $p_0$ bis $p_7$ zugeordnet. + +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/90-crypto/images/sbox.pdf} +\caption{Berechnung der Inversen der Matrix $A$ in der $S$-Box des +AES-Algorithmus mit dem Gauss-Algorithmus +\label{buch:crypto:fig:sbox}} +\end{figure} + +Eine lineare Transformation in diesem Vektorraum kann durch eine +$8\times 8$-Matrix in $M_8(\mathbb{F}_2)$ betrachtet werden. +In der $S$-Box wird die Matrix +\[ +A= +\begin{pmatrix} +1&0&0&0&1&1&1&1\\ +1&1&0&0&0&1&1&1\\ +1&1&1&0&0&0&1&1\\ +1&1&1&1&0&0&0&1\\ +1&1&1&1&1&0&0&0\\ +0&1&1&1&1&1&0&0\\ +0&0&1&1&1&1&1&0\\ +0&0&0&1&1&1&1&1 +\end{pmatrix}, +\qquad +A^{-1} += +\begin{pmatrix} +0&0&1&0&0&1&0&1\\ +1&0&0&1&0&0&1&0\\ +0&1&0&0&1&0&0&1\\ +1&0&1&0&0&1&0&0\\ +0&1&0&1&0&0&1&0\\ +0&0&1&0&1&0&0&1\\ +1&0&0&1&0&1&0&0\\ +0&1&0&0&1&0&1&0 +\end{pmatrix} +\] +verwendet. +Mit dem Gauss-Algorithmus, schematisch dargestellt in +Abbildung~\ref{buch:crypto:fig:sbox}, kann man die Inverse +bestimmen, die Multiplikation mit $A$ ist also eine invertierbare +Abbildung. + +Der letzte Schritt ist dann wieder eine Addition von +$q(X)=X^7+X^6+X+1\in \mathbb{F}_{2^8}$, durch Subtraktion +von $q(X)$ invertiert werden kann. +Die $S$-Box-Operation kann also bektoriell geschrieben werden also +\[ + S(x) = A\overline{x}+q. +\] + +Die Implementation ist möglicherweise mit einer Tabelle am schnellsten, +es sind ja nur 256 Bytes im Definitionsbereich der $S$-Box-Abbildung +und ebenso nur 256 möglich Werte. + +\subsection{Block-Operationen +\label{buch:subsection:block-operationen}} +Die zu verschlüsselnden Daten werden in in Blöcke aufgeteilt, deren +Länge Vielfache von $32$ bit sind. +Die kleinste Blockgrösse ist 128\,Bit, die grösste ist 256\,Bit. +Die Bytes eines Blockes werden dann in einem Rechteck angeordnet +als +\begin{equation} +\begin{tabular}{|>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}>{$}c<{$}|} +\hline + b_{0} & b_{4} & b_{8} & b_{12} & b_{16} & b_{20} & b_{24} & b_{28} \\ + b_{1} & b_{5} & b_{9} & b_{13} & b_{17} & b_{21} & b_{25} & b_{29} \\ + b_{2} & b_{6} & b_{10} & b_{14} & b_{18} & b_{22} & b_{26} & b_{30} \\ + b_{3} & b_{7} & b_{11} & b_{15} & b_{19} & b_{23} & b_{27} & b_{31} \\ +\hline +\end{tabular} +\label{buch:crypto:eqn:block} +\end{equation} +für eine Blocklänge von 256\,Bits. + + + +\subsubsection{Zeilenshift} +Die Verschlüsselung muss sicherstellen, dass die Bytes des Blockes +untereinander gut gemischt werden. +Die bisher beschriebenen Operationen operieren immer nur auf einzelnen +Bytes während +die im nächsten Abschnitt beschriebene Spalten-Mischoperation +nur auf Spalten wird. +Die Zeilenmischoperation permutiert die Zeilen in den vier Zeilen +eines Blocks zyklisch, die erste Zeile bleibt an Ort, die zweite +Zeile wird um ein Byte rotiert, die dritte um zwei und die letzte +um 3 Bytes, wie in Abbildung~\ref{buch:crypto:fig:zeilenshift} +dargestellt. +Diese Operation könnte mit einer Permutationsmatrix beschrieben werden, +dies wäre jedoch keine effiziente Implementation. +Der Zeilenschift hat ansonsten keine elegante algebraische Beschreibung. + +\subsubsection{Spalten mischen} +Jede Spalte von \eqref{buch:crypto:eqn:block} kann als Vektor des +vierdimensionalen Vektorraumes $\mathbb{F}_{2^8}^4$. +Die Zeilenmischoperation wendet ein lineare Abbildung auf jeden +Spaltenvektor von~\eqref{buch:crypto:eqn:block}. +Die Koeffizienten der Matrix sind Elemente von $\mathbb{F}_{2^8}$. +Die Matrix ist +\[ +C=\begin{pmatrix} +\texttt{02}_{16}&\texttt{03}_{16}&\texttt{01}_{16}&\texttt{01}_{16}\\ +\texttt{01}_{16}&\texttt{02}_{16}&\texttt{03}_{16}&\texttt{01}_{16}\\ +\texttt{01}_{16}&\texttt{01}_{16}&\texttt{02}_{16}&\texttt{03}_{16}\\ +\texttt{03}_{16}&\texttt{01}_{16}&\texttt{01}_{16}&\texttt{02}_{16} +\end{pmatrix}. +\] +Um nachzuprüfen, dass die Matrix $C$ invertierbar ist, könnte man den +Gauss-Algorithmus verwenden und damit die Inverse berechnen. +Dazu müsste man die multiplikativen Inversen kennen, was etwas mühsam +ist. +Man kann aber aber auch die Determinante bestimmen, dazu braucht man +nur multiplizieren zu können, was in diesem Fall sehr leicht möglich ist, +weil kein Überlauf entsteht. +Dabei hilft es zu beachten, dass die Multiplikation mit $\texttt{02}_{16}$ +nur eine Einbit-Shiftoperation nach links ist. +Nur die Multiplikation $\texttt{03}_{16}\cdot\texttt{03}_{16}=\text{05}_{16}$ +gibt etwas mehr zu überlegen. +Mit geeigneten Zeilen-Operationen kann man die Berechnung der Determinante +von $C$ mit dem Entwicklungssatz etwas vereinfachen. +Man erhält +\begin{align*} +\det(C) +&= +\left| +\begin{matrix} +\texttt{02}_{16}&\texttt{03}_{16}&\texttt{01}_{16}&\texttt{01}_{16}\\ +\texttt{01}_{16}&\texttt{02}_{16}&\texttt{03}_{16}&\texttt{01}_{16}\\ +\texttt{00}_{16}&\texttt{03}_{16}&\texttt{01}_{16}&\texttt{02}_{16}\\ +\texttt{00}_{16}&\texttt{00}_{16}&\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| +\\ +&= +\texttt{02}_{16} +\left| +\begin{matrix} +\texttt{02}_{16}&\texttt{03}_{16}&\texttt{01}_{16}\\ +\texttt{03}_{16}&\texttt{01}_{16}&\texttt{02}_{16}\\ +\texttt{00}_{16}&\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| ++ +\texttt{01}_{16} +\left| +\begin{matrix} +\texttt{03}_{16}&\texttt{01}_{16}&\texttt{01}_{16}\\ +\texttt{03}_{16}&\texttt{01}_{16}&\texttt{02}_{16}\\ +\texttt{00}_{16}&\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| +\\ +&= +\texttt{02}_{16} +\left| +\begin{matrix} +\texttt{02}_{16}&\texttt{03}_{16}&\texttt{01}_{16}\\ +\texttt{01}_{16}&\texttt{02}_{16}&\texttt{03}_{16}\\ +\texttt{00}_{16}&\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| ++ +\texttt{01}_{16} +\left| +\begin{matrix} +\texttt{03}_{16}&\texttt{01}_{16}&\texttt{01}_{16}\\ +\texttt{00}_{16}&\texttt{00}_{16}&\texttt{01}_{16}\\ +\texttt{00}_{16}&\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| +\\ +&= +\texttt{02}_{16} +\left( +\texttt{02}_{16} +\left| +\begin{matrix} +\texttt{02}_{16}&\texttt{03}_{16}\\ +\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| ++ +\texttt{01}_{16} +\left| +\begin{matrix} +\texttt{03}_{16}&\texttt{01}_{16}\\ +\texttt{03}_{16}&\texttt{02}_{16} +\end{matrix} +\right| +\right) ++ +\texttt{01}_{16} +\left| +\begin{matrix} +\texttt{03}_{16}&\texttt{01}_{16}&\texttt{01}_{16}\\ +\texttt{00}_{16}&\texttt{03}_{16}&\texttt{02}_{16}\\ +\texttt{00}_{16}&\texttt{00}_{16}&\texttt{01}_{16} +\end{matrix} +\right| +\\ +&= +\texttt{02}_{16} +( +\texttt{02}_{16}(\texttt{04}_{16}+\texttt{05}_{16}) ++ +(\texttt{06}_{16}+\texttt{03}_{16}) +) ++ +\texttt{03}_{16}\texttt{03}_{16} +\\ +&= +\texttt{02}_{16} +( +\texttt{02}_{16} ++ +\texttt{05}_{16} +) ++ +\texttt{05}_{16} += +\texttt{0e}_{16}+\texttt{05}_{16} += +\texttt{0a}_{16} +\ne 0. +\end{align*} +Damit ist gezeigt, dass die Matrix $C$ invertierbar auf den +Spaltenvektoren wirkt. +Die Inverse der Matrix kann einmal berechnet und anschliessend +für die Entschlüsselung verwendet werden. + +Alternativ kann man die Multiplikation mit der Matrix $C$ auch +interpretieren als eine Polynommultiplikation. +Dazu interpretiert man die Spalten des Blocks als Polynom vom Grad~3 +mit Koeffizienten in $\mathbb{F}_{2^8}$. +Durch Reduktion mit dem irreduziblen Polynom +$n(Z)=Z^4+1\in\mathbb{F}_{2^8}[X]$ entsteht aus dem Polynomring +wieder ein Körper. +Die Wirkung der Matrix $C$ ist dann nichts anderes als Multiplikation +mit dem Polynom +\[ +c(Z) = \texttt{03}_{16}Z^3 + Z^2+Z^1+\texttt{02}_{16}, +\] +die natürlich ebenfalls umkehrbar ist. + +\subsection{Rundenschlüssel +\label{buch:subsection:rundenschlüssel}} + + + + + diff --git a/buch/chapters/90-crypto/images/Makefile b/buch/chapters/90-crypto/images/Makefile index bbb960f..7d2f375 100644 --- a/buch/chapters/90-crypto/images/Makefile +++ b/buch/chapters/90-crypto/images/Makefile @@ -3,7 +3,8 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: dh.pdf elliptic.pdf schieberegister.pdf multiplikation.pdf +all: dh.pdf elliptic.pdf schieberegister.pdf multiplikation.pdf sbox.pdf \ + shift.pdf dh.pdf: dh.tex pdflatex dh.tex @@ -17,3 +18,9 @@ schieberegister.pdf: schieberegister.tex multiplikation.pdf: multiplikation.tex pdflatex multiplikation.tex +sbox.pdf: sbox.tex + pdflatex sbox.tex + +shift.pdf: shift.tex + pdflatex shift.tex + diff --git a/buch/chapters/90-crypto/images/sbox.m b/buch/chapters/90-crypto/images/sbox.m new file mode 100644 index 0000000..973ffc9 --- /dev/null +++ b/buch/chapters/90-crypto/images/sbox.m @@ -0,0 +1,52 @@ +# +# sbox.m +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +A=[ +1,0,0,0,1,1,1,1; +1,1,0,0,0,1,1,1; +1,1,1,0,0,0,1,1; +1,1,1,1,0,0,0,1; +1,1,1,1,1,0,0,0; +0,1,1,1,1,1,0,0; +0,0,1,1,1,1,1,0; +0,0,0,1,1,1,1,1; +] + +R = zeros(8,16); +R(:,1:8) = A; +R(:,9:16) = eye(8); + +for k = (1:5) + for i=(k+1:8) + pivot = R(i,k); + R(i,:) = R(i,:) + pivot * R(k,:); + end + R = mod(R, 2) +end + +P = [ +1,0,0,0,0,0,0,0; +0,1,0,0,0,0,0,0; +0,0,1,0,0,0,0,0; +0,0,0,1,0,0,0,0; +0,0,0,0,1,0,0,0; +0,0,0,0,0,0,0,1; +0,0,0,0,0,1,0,0; +0,0,0,0,0,0,1,0; +] + +R = P * R + +for k = (8:-1:2) + for i = (1:k-1) + pivot = R(i,k); + R(i,:) = R(i,:) + pivot * R(k,:); + end + R = mod(R, 2) +end + +B = R(:,9:16) + +A * B diff --git a/buch/chapters/90-crypto/images/sbox.pdf b/buch/chapters/90-crypto/images/sbox.pdf new file mode 100644 index 0000000..7a5bdf3 Binary files /dev/null and b/buch/chapters/90-crypto/images/sbox.pdf differ diff --git a/buch/chapters/90-crypto/images/sbox.tex b/buch/chapters/90-crypto/images/sbox.tex new file mode 100644 index 0000000..41f8812 --- /dev/null +++ b/buch/chapters/90-crypto/images/sbox.tex @@ -0,0 +1,241 @@ +% +% sbox.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.2} +\def\punkt#1#2{({#1*\s},{(8-(#2))*\s})} + +\definecolor{b}{rgb}{0,0,0} +\definecolor{w}{rgb}{1,1,1} + +\def\feld#1#2#3{ + \fill[color=#3] \punkt{#1}{#2} rectangle \punkt{(#1+1)}{(#2-1)}; +} + +\def\zeile#1#2#3#4#5#6#7#8#9{ + \feld{0}{#1}{#2} + \feld{1}{#1}{#3} + \feld{2}{#1}{#4} + \feld{3}{#1}{#5} + \feld{4}{#1}{#6} + \feld{5}{#1}{#7} + \feld{6}{#1}{#8} + \feld{7}{#1}{#9} +} +\def\inverse#1#2#3#4#5#6#7#8#9{ + \feld{8}{#1}{#2} + \feld{9}{#1}{#3} + \feld{10}{#1}{#4} + \feld{11}{#1}{#5} + \feld{12}{#1}{#6} + \feld{13}{#1}{#7} + \feld{14}{#1}{#8} + \feld{15}{#1}{#9} +} +\def\rechteck{ + \draw (0,{1*\s}) rectangle ({16*\s},{(8+1)*\s}); + \draw ({8*\s},{1*\s}) -- ({8*\s},{(8+1)*\s}); +} + +\def\pivot#1#2{ + \draw[color=red,line width=1.2pt] + \punkt{(#1+\inset)}{(#2-\inset)} + rectangle + \punkt{(#1+1-\inset)}{(#2-1+\inset)}; +} +\def\inset{0.1} +\def\cleanup#1#2#3{ + \pgfmathparse{(#3-#2)/abs(#3-#2)} + \xdef\signum{\pgfmathresult} + \draw[color=blue!50,line width=1.2pt] + \punkt{(#1+\inset)}{#3} + -- + \punkt{(#1+\inset)}{(#2-1+\inset*\signum)} + -- + \punkt{(#1+1-\inset)}{(#2-1+\inset*\signum)} + -- + \punkt{(#1+1-\inset)}{#3} + ; +} + +\begin{scope} + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1bbwwwbbb \inverse1wbwwwwww + \zeile2bbbwwwbb \inverse2wwbwwwww + \zeile3bbbbwwwb \inverse3wwwbwwww + \zeile4bbbbbwww \inverse4wwwwbwww + \zeile5wbbbbbww \inverse5wwwwwbww + \zeile6wwbbbbbw \inverse6wwwwwwbw + \zeile7wwwbbbbb \inverse7wwwwwwwb + \rechteck + \pivot{0}{0} + \cleanup{0}{1}{7} +\end{scope} + +\begin{scope}[xshift=4cm] + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wbbwbbww \inverse2bwbwwwww + \zeile3wbbbbbbw \inverse3bwwbwwww + \zeile4wbbbwbbb \inverse4bwwwbwww + \zeile5wbbbbbww \inverse5wwwwwbww + \zeile6wwbbbbbw \inverse6wwwwwwbw + \zeile7wwwbbbbb \inverse7wwwwwwwb + \rechteck + \pivot{1}{1} + \cleanup{1}{2}{7} +\end{scope} + +\begin{scope}[xshift=8cm] + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwbbwbbw \inverse3wbwbwwww + \zeile4wwbbbbbb \inverse4wbwwbwww + \zeile5wwbbwbww \inverse5bbwwwbww + \zeile6wwbbbbbw \inverse6wwwwwwbw + \zeile7wwwbbbbb \inverse7wwwwwwwb + \rechteck + \pivot{2}{2} + \cleanup{2}{3}{7} +\end{scope} + +\begin{scope}[xshift=12cm,yshift=0cm] + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwwbwwbw \inverse3wwbbwwww + \zeile4wwwbbwbb \inverse4wwbwbwww + \zeile5wwwbwwww \inverse5bwbwwbww + \zeile6wwwbbwbw \inverse6wbbwwwbw + \zeile7wwwbbbbb \inverse7wwwwwwwb + \rechteck + \pivot{3}{3} + \cleanup{3}{4}{7} + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{8}{7} -- \punkt{8}{11}; +\end{scope} + +\begin{scope}[xshift=12cm,yshift=-2.4cm] + \draw[<-,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwwbwwbw \inverse3wwbbwwww + \zeile4wwwwbwwb \inverse4wwwbbwww + \zeile5wwwwwwbw \inverse5bwwbwbww + \zeile6wwwwbwww \inverse6wbwbwwbw + \zeile7wwwwbbwb \inverse7wwbbwwwb + \rechteck + \pivot{4}{4} + \cleanup{4}{5}{7} +\end{scope} + +\begin{scope}[xshift=8cm,yshift=-2.4cm] + \draw[<-,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwwbwwbw \inverse3wwbbwwww + \zeile4wwwwbwwb \inverse4wwwbbwww + \zeile5wwwwwwbw \inverse5bwwbwbww + \zeile6wwwwwwwb \inverse6wbwwbwbw + \zeile7wwwwwbww \inverse7wwbwbwwb + \rechteck +\end{scope} + +\begin{scope}[xshift=4cm,yshift=-2.4cm] + \draw[<-,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbbbb \inverse0bwwwwwww + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwwbwwbw \inverse3wwbbwwww + \zeile4wwwwbwwb \inverse4wwwbbwww + \zeile5wwwwwbww \inverse5wwbwbwwb + \zeile6wwwwwwbw \inverse6bwwbwbww + \zeile7wwwwwwwb \inverse7wbwwbwbw + \rechteck + \cleanup{7}{7}{-1} +\end{scope} + +\begin{scope}[xshift=0cm,yshift=-2.4cm] + \zeile0bwwwbbbw \inverse0bbwwbwbw + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwwbwwbw \inverse3wwbbwwww + \zeile4wwwwbwww \inverse4wbwbwwbw + \zeile5wwwwwbww \inverse5wwbwbwwb + \zeile6wwwwwwbw \inverse6bwwbwbww + \zeile7wwwwwwwb \inverse7wbwwbwbw + \rechteck + \cleanup{6}{6}{-1} + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{8}{7} -- \punkt{8}{11}; +\end{scope} + +\begin{scope}[xshift=0cm,yshift=-4.8cm] + \zeile0bwwwbbww \inverse0wbwbbbbw + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwbww \inverse2wbbwwwww + \zeile3wwwbwwww \inverse3bwbwwbww + \zeile4wwwwbwww \inverse4wbwbwwbw + \zeile5wwwwwbww \inverse5wwbwbwwb + \zeile6wwwwwwbw \inverse6bwwbwbww + \zeile7wwwwwwwb \inverse7wbwwbwbw + \rechteck + \cleanup{5}{5}{-1} +\end{scope} + +\begin{scope}[xshift=4cm,yshift=-4.8cm] + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwbwww \inverse0wbbbwbbb + \zeile1wbwwbwww \inverse1bbwwwwww + \zeile2wwbwwwww \inverse2wbwwbwwb + \zeile3wwwbwwww \inverse3bwbwwbww + \zeile4wwwwbwww \inverse4wbwbwwbw + \zeile5wwwwwbww \inverse5wwbwbwwb + \zeile6wwwwwwbw \inverse6bwwbwbww + \zeile7wwwwwwwb \inverse7wbwwbwbw + \rechteck + \cleanup{4}{4}{-1} +\end{scope} + +\begin{scope}[xshift=8cm,yshift=-4.8cm] + \draw[->,shorten >= 0.05cm,shorten <= 0.05cm] + \punkt{-4}{3} -- \punkt{0}{3}; + \zeile0bwwwwwww \inverse0wwbwwbwb + \zeile1wbwwwwww \inverse1bwwbwwbw + \zeile2wwbwwwww \inverse2wbwwbwwb + \zeile3wwwbwwww \inverse3bwbwwbww + \zeile4wwwwbwww \inverse4wbwbwwbw + \zeile5wwwwwbww \inverse5wwbwbwwb + \zeile6wwwwwwbw \inverse6bwwbwbww + \zeile7wwwwwwwb \inverse7wbwwbwbw + \rechteck +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/90-crypto/images/shift.pdf b/buch/chapters/90-crypto/images/shift.pdf new file mode 100644 index 0000000..bc229a1 Binary files /dev/null and b/buch/chapters/90-crypto/images/shift.pdf differ diff --git a/buch/chapters/90-crypto/images/shift.tex b/buch/chapters/90-crypto/images/shift.tex new file mode 100644 index 0000000..5cfdd92 --- /dev/null +++ b/buch/chapters/90-crypto/images/shift.tex @@ -0,0 +1,30 @@ +% +% shift.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{1} +\def\punkt#1#2{({#1*\s},{#2*\s})} + +\draw \punkt{0}{0} rectangle \punkt{8}{4}; +\foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{4}; +} +\foreach \y in {1,...,3}{ + \draw \punkt{0}{\y} -- \punkt{8}{\y}; +} + +\end{tikzpicture} +\end{document} + -- cgit v1.2.1 From 8c4ba3a03eb7d0169d7b7ec29fce05840518e1a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 7 Apr 2021 19:59:03 +0200 Subject: add missing files --- buch/chapters/90-crypto/aes.tex | 6 ++ buch/chapters/90-crypto/images/Makefile | 5 +- buch/chapters/90-crypto/images/keys.pdf | Bin 0 -> 11043 bytes buch/chapters/90-crypto/images/keys.tex | 90 ++++++++++++++++++++++++ buch/chapters/90-crypto/images/shift.pdf | Bin 1182 -> 14903 bytes buch/chapters/90-crypto/images/shift.tex | 113 +++++++++++++++++++++++++++++-- 6 files changed, 207 insertions(+), 7 deletions(-) create mode 100644 buch/chapters/90-crypto/images/keys.pdf create mode 100644 buch/chapters/90-crypto/images/keys.tex (limited to 'buch/chapters') diff --git a/buch/chapters/90-crypto/aes.tex b/buch/chapters/90-crypto/aes.tex index 4df2e8d..968b2c6 100644 --- a/buch/chapters/90-crypto/aes.tex +++ b/buch/chapters/90-crypto/aes.tex @@ -160,6 +160,12 @@ für eine Blocklänge von 256\,Bits. \subsubsection{Zeilenshift} +\begin{figure} +\centering +\includegraphics[width=\textwidth]{chapters/90-crypto/images/shift.pdf} +\caption{Zeilenshift in einem Block von 256 bits +\label{buch:crypto:fig:shift}} +\end{figure} Die Verschlüsselung muss sicherstellen, dass die Bytes des Blockes untereinander gut gemischt werden. Die bisher beschriebenen Operationen operieren immer nur auf einzelnen diff --git a/buch/chapters/90-crypto/images/Makefile b/buch/chapters/90-crypto/images/Makefile index 7d2f375..f4bed14 100644 --- a/buch/chapters/90-crypto/images/Makefile +++ b/buch/chapters/90-crypto/images/Makefile @@ -4,7 +4,7 @@ # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # all: dh.pdf elliptic.pdf schieberegister.pdf multiplikation.pdf sbox.pdf \ - shift.pdf + shift.pdf keys.pdf dh.pdf: dh.tex pdflatex dh.tex @@ -24,3 +24,6 @@ sbox.pdf: sbox.tex shift.pdf: shift.tex pdflatex shift.tex +keys.pdf: keys.tex + pdflatex keys.tex + diff --git a/buch/chapters/90-crypto/images/keys.pdf b/buch/chapters/90-crypto/images/keys.pdf new file mode 100644 index 0000000..99f991f Binary files /dev/null and b/buch/chapters/90-crypto/images/keys.pdf differ diff --git a/buch/chapters/90-crypto/images/keys.tex b/buch/chapters/90-crypto/images/keys.tex new file mode 100644 index 0000000..68920a5 --- /dev/null +++ b/buch/chapters/90-crypto/images/keys.tex @@ -0,0 +1,90 @@ +% +% keys.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] +\definecolor{darkgreen}{rgb}{0,0.6,0} +\def\s{0.5} +\def\punkt#1#2{({(#1)*\s},{(#2)*\s})} +\def\wort#1#2#3{ + \fill[color=#3] \punkt{#1}{#2} rectangle \punkt{(#1+1)}{(#2+4)}; + \draw \punkt{#1}{#2} rectangle \punkt{(#1+1)}{(#2+4)}; +} + +\def\summe{ + \foreach \x in {0,3,...,21}{ + \draw[->] \punkt{(\x+0.5)}{-0.1} -- \punkt{(\x+0.5)}{-2.1}; + \draw \punkt{(\x+0.5)}{-2.5} circle[radius={0.3*\s}]; + \draw \punkt{(\x+0.5-0.2)}{-2.5} + -- + \punkt{(\x+0.5+0.2)}{-2.5}; + \draw \punkt{(\x+0.5)}{-2.5+0.2} + -- + \punkt{(\x+0.5)}{-2.5-0.2}; + \draw[->] \punkt{(\x+0.5)}{-2.9} -- \punkt{(\x+0.5)}{-4.9}; + } + \foreach \x in {0,3,...,18}{ + \draw[->] \punkt{(\x+1)}{-7} -- \punkt{(\x+2)}{-7} + -- \punkt{(\x+2)}{-2.5} -- \punkt{(\x+3.1)}{-2.5}; + } + \fill[color=white] + \punkt{(9+1.5)}{-5.25} + rectangle + \punkt{(9+2.5)}{-4.25}; + \draw + \punkt{(9+1.5)}{-5.25} + rectangle + \punkt{(9+2.5)}{-4.25}; + \node at \punkt{(9+2)}{-4.75} {$S$}; +} +\def\blocks#1{ + \foreach \x in {0,3,...,21}{ + \wort{\x}{0}{#1} + } +} + +\def\schlange{ + \draw[->] \punkt{22.1}{2} -- \punkt{23}{2} + -- \punkt{23}{-1.0} -- \punkt{-3}{-1.0} + -- \punkt{-3}{-8} -- \punkt{-1}{-8} -- \punkt{-1}{-2.5} + -- \punkt{0.1}{-2.5}; + ; + \fill[color=white] \punkt{-3.5}{-1.5} rectangle \punkt{-2.5}{-3.5}; + \draw \punkt{-3.5}{-1.5} rectangle \punkt{-2.5}{-3.5}; + \node at \punkt{-3}{-2.5} {$\pi$}; + \fill[color=white] \punkt{-3.5}{-3.5} rectangle \punkt{-2.5}{-5.5}; + \draw \punkt{-3.5}{-3.5} rectangle \punkt{-2.5}{-5.5}; + \node at \punkt{-3}{-4.5} {$S$}; + \fill[color=white] \punkt{-3.5}{-5.5} rectangle \punkt{-2.5}{-7.5}; + \draw \punkt{-3.5}{-5.5} rectangle \punkt{-2.5}{-7.5}; + \node at \punkt{-3}{-6.5} {$r$}; +} + +\begin{scope} + \blocks{blue!20} + \schlange + \summe +\end{scope} + +\begin{scope}[yshift=-4.5cm] + \blocks{darkgreen!20} + \summe +\end{scope} + +\begin{scope}[yshift=-9cm] + \blocks{darkgreen!20} +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/90-crypto/images/shift.pdf b/buch/chapters/90-crypto/images/shift.pdf index bc229a1..b007378 100644 Binary files a/buch/chapters/90-crypto/images/shift.pdf and b/buch/chapters/90-crypto/images/shift.pdf differ diff --git a/buch/chapters/90-crypto/images/shift.tex b/buch/chapters/90-crypto/images/shift.tex index 5cfdd92..bcdf819 100644 --- a/buch/chapters/90-crypto/images/shift.tex +++ b/buch/chapters/90-crypto/images/shift.tex @@ -14,17 +14,118 @@ \def\skala{1} \begin{tikzpicture}[>=latex,thick,scale=\skala] -\def\s{1} +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\s{0.8} \def\punkt#1#2{({#1*\s},{#2*\s})} -\draw \punkt{0}{0} rectangle \punkt{8}{4}; -\foreach \x in {1,...,7}{ - \draw \punkt{\x}{0} -- \punkt{\x}{4}; +\def\feld#1#2#3#4{ + \fill[color=#3] \punkt{#1}{#2} rectangle \punkt{(#1+1)}{(#2+1)}; + \node at \punkt{(#1+0.5)}{(#2+0.5)} {$\mathstrut #4$}; } -\foreach \y in {1,...,3}{ - \draw \punkt{0}{\y} -- \punkt{8}{\y}; +\def\gitter{ + \draw \punkt{0}{0} rectangle \punkt{8}{4}; + \foreach \x in {1,...,7}{ + \draw \punkt{\x}{0} -- \punkt{\x}{4}; + } + \foreach \y in {1,...,3}{ + \draw \punkt{0}{\y} -- \punkt{8}{\y}; + } } +\begin{scope} + \feld{0}{3}{red!20}{b_{0}} + \feld{0}{2}{red!20}{b_{1}} + \feld{0}{1}{red!20}{b_{2}} + \feld{0}{0}{red!20}{b_{3}} + + \feld{1}{3}{red!10}{b_{4}} + \feld{1}{2}{red!10}{b_{5}} + \feld{1}{1}{red!10}{b_{6}} + \feld{1}{0}{red!10}{b_{7}} + + \feld{2}{3}{yellow!20}{b_{8}} + \feld{2}{2}{yellow!20}{b_{9}} + \feld{2}{1}{yellow!20}{b_{10}} + \feld{2}{0}{yellow!20}{b_{11}} + + \feld{3}{3}{yellow!10}{b_{12}} + \feld{3}{2}{yellow!10}{b_{13}} + \feld{3}{1}{yellow!10}{b_{14}} + \feld{3}{0}{yellow!10}{b_{15}} + + \feld{4}{3}{darkgreen!20}{b_{16}} + \feld{4}{2}{darkgreen!20}{b_{17}} + \feld{4}{1}{darkgreen!20}{b_{18}} + \feld{4}{0}{darkgreen!20}{b_{19}} + + \feld{5}{3}{darkgreen!10}{b_{20}} + \feld{5}{2}{darkgreen!10}{b_{21}} + \feld{5}{1}{darkgreen!10}{b_{22}} + \feld{5}{0}{darkgreen!10}{b_{23}} + + \feld{6}{3}{blue!20}{b_{24}} + \feld{6}{2}{blue!20}{b_{25}} + \feld{6}{1}{blue!20}{b_{26}} + \feld{6}{0}{blue!20}{b_{27}} + + \feld{7}{3}{blue!10}{b_{28}} + \feld{7}{2}{blue!10}{b_{29}} + \feld{7}{1}{blue!10}{b_{30}} + \feld{7}{0}{blue!10}{b_{31}} + + \gitter + + \draw[->] \punkt{8.1}{2} -- \punkt{9.3}{2}; +\end{scope} + + +\begin{scope}[xshift=7.5cm] + + \feld{0}{3}{red!20}{b_{0}} + \feld{1}{2}{red!20}{b_{1}} + \feld{2}{1}{red!20}{b_{2}} + \feld{3}{0}{red!20}{b_{3}} + + \feld{1}{3}{red!10}{b_{4}} + \feld{2}{2}{red!10}{b_{5}} + \feld{3}{1}{red!10}{b_{6}} + \feld{4}{0}{red!10}{b_{7}} + + \feld{2}{3}{yellow!20}{b_{8}} + \feld{3}{2}{yellow!20}{b_{9}} + \feld{4}{1}{yellow!20}{b_{10}} + \feld{5}{0}{yellow!20}{b_{11}} + + \feld{3}{3}{yellow!10}{b_{12}} + \feld{4}{2}{yellow!10}{b_{13}} + \feld{5}{1}{yellow!10}{b_{14}} + \feld{6}{0}{yellow!10}{b_{15}} + + \feld{4}{3}{darkgreen!20}{b_{16}} + \feld{5}{2}{darkgreen!20}{b_{17}} + \feld{6}{1}{darkgreen!20}{b_{18}} + \feld{7}{0}{darkgreen!20}{b_{19}} + + \feld{5}{3}{darkgreen!10}{b_{20}} + \feld{6}{2}{darkgreen!10}{b_{21}} + \feld{7}{1}{darkgreen!10}{b_{22}} + \feld{0}{0}{darkgreen!10}{b_{23}} + + \feld{6}{3}{blue!20}{b_{24}} + \feld{7}{2}{blue!20}{b_{25}} + \feld{0}{1}{blue!20}{b_{26}} + \feld{1}{0}{blue!20}{b_{27}} + + \feld{7}{3}{blue!10}{b_{28}} + \feld{0}{2}{blue!10}{b_{29}} + \feld{1}{1}{blue!10}{b_{30}} + \feld{2}{0}{blue!10}{b_{31}} + + \gitter + +\end{scope} + \end{tikzpicture} \end{document} -- cgit v1.2.1 From 48a93a731e67c99c153ceeb13ef5bb978bba3cb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 7 Apr 2021 21:26:53 +0200 Subject: add new stuff about AES --- buch/chapters/90-crypto/aes.tex | 94 +++++++++++++++++++++++++++- buch/chapters/90-crypto/images/dh.pdf | Bin 27689 -> 27689 bytes buch/chapters/90-crypto/images/elliptic.pdf | Bin 21278 -> 21278 bytes buch/chapters/90-crypto/images/keys.pdf | Bin 11043 -> 22934 bytes buch/chapters/90-crypto/images/keys.tex | 59 ++++++++++++----- 5 files changed, 137 insertions(+), 16 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/90-crypto/aes.tex b/buch/chapters/90-crypto/aes.tex index 968b2c6..acdda22 100644 --- a/buch/chapters/90-crypto/aes.tex +++ b/buch/chapters/90-crypto/aes.tex @@ -333,9 +333,99 @@ c(Z) = \texttt{03}_{16}Z^3 + Z^2+Z^1+\texttt{02}_{16}, \] die natürlich ebenfalls umkehrbar ist. -\subsection{Rundenschlüssel -\label{buch:subsection:rundenschlüssel}} +\subsection{Schlüssel +\label{buch:subsection:schlüssel}} +Die von den Byte- und Blockoperationen mischen die einzelnen Bits +der Daten zwar ganz schön durcheinander, aber es wird noch kein +Schlüsselmaterial eingearbeitet, welches den Prozess einzigartig +macht. +\subsubsection{Schlüsseladdition} +Nach jeder Spaltenmischoperation wird ein Rundenschlüssel +zum Blockhinzuaddiert. +Beim ersten Mal wird dazu einfach das Schlüsselmaterial verwendet. +Für die folgenden Runden muss aus diesem Schlüssel neues +Material, die sogenannten Rundenschlüssel, gewonnen werden. + +\subsubsection{Rundenschlüssel} +\begin{figure} +\centering +\includegraphics{chapters/90-crypto/images/keys.pdf} +\caption{Erzeugung der erweiterten Schlüsseldaten aus dem Schlüssel +$K_0,\dots,K_7$ für Schlüssellänge 256\,bit. +Die mit $S$ beschrifteten Blöcke wenden die $S$-Box auf jedes einzelne +Byte an. +$\pi$ ist die zyklische Vertauschung der Bytes eines Wortes. +Die Operation $r_i$ ist eine Addition einer Konstanten, die in jeder +Runde anders ist. +\label{buch:crypto:fig:keys}} +\end{figure} +Die Erzeugung der Rundenschlüssel ist in Abbildung +\ref{buch:crypto:fig:keys} +schematisch dargestellt. +Die Blöcke beschreiben wieder Spaltenvektoren im vierdimensionalen +Raum $\mathbb{F}_{2^8}^4$. +Die Blöcke $K_0$ bis $K_7$ stellen den ursprünglichen Schlüssel dar. +Die Erzeugung eines neuen Blocks Schlüsselmatrial beginnt damit, +dass der letzte Vektor des vorangegangenblocks drei Operationen +unterworfen werden. +\begin{itemize} +\item +Die Operation $\pi$ vertauscht die Bytes des Vektors zyklisch: +\begin{center} +\begin{tikzpicture}[>=latex,thick] +\def\s{0.6} +\begin{scope} +\draw (0,0) rectangle (\s,{4*\s}); +\foreach \y in {1,...,3}{ + \draw (0,{\y*\s}) (\s,{\y*\s}); +} +\node at ({0.5*\s},{0.5*\s}) {$b_3$}; +\node at ({0.5*\s},{1.5*\s}) {$b_2$}; +\node at ({0.5*\s},{2.5*\s}) {$b_1$}; +\node at ({0.5*\s},{3.5*\s}) {$b_0$}; +\end{scope} +\draw[->] ({1.1*\s},{2*\s}) -- ({4.9*\s},{2*\s}); +\node at ({3*\s},{2*\s}) [above] {$\pi$}; +\begin{scope}[xshift=3cm] +\draw (0,0) rectangle (\s,{4*\s}); +\foreach \y in {1,...,3}{ + \draw (0,{\y*\s}) (\s,{\y*\s}); +} +\node at ({0.5*\s},{0.5*\s}) {$b_0$}; +\node at ({0.5*\s},{1.5*\s}) {$b_3$}; +\node at ({0.5*\s},{2.5*\s}) {$b_2$}; +\node at ({0.5*\s},{3.5*\s}) {$b_1$}; +\end{scope} +\end{tikzpicture} +\end{center} +\item +Die $S$-Operation wendet die $S$-Box auf alle Bytes eines Vektors an. +\item +Die $r_i$ Operation addiert in Runde eine Konstante $r_i$ zur $0$-Komponente. +\end{itemize} +Die Konstante $r_i$ ist wieder ein einzelnes Byte und es ist daher +naheliegend, diese Bytes mit Hilfe der Arithmetik in $\mathbb{F}_{2^8}$ +zu erzeugen. +Man kann daher $r_i$ definieren als +$(\texttt{02}_{16})^{i-1}\in\mathbb{F}_{2^8}$. + +\subsection{Runden} +Der AES-Verschlüsselungsalgorithmus besteht jetzt darin, die bisher +definierten Operationen wiederholt anzuwenden. +Eine einzelne Runde besteht dabei aus folgenden Schritten: +\begin{enumerate} +\item Wende die $S$-Box auf alle Bytes des Blocks an. +\item Führe den Zeilenshift durch. +\item Mische die Spalten (wird in der letzten Runde) +\item Erzeuge den nächsten Rundenschlüssel +\item Addiere den Rundenschlüssel +\end{enumerate} +Der AES-Verschlüsselungsalgorithmus beginnt damit, dass der Schlüssel +zum Datenblock addiert wird. +Anschliessend werden je nach Blocklänge verschiedene Anzahlen von +Runden durchgeführt, 10 Runden für 128\,bit, 12 Runden für 192\,bit und +14 Runden für 256\,bit. diff --git a/buch/chapters/90-crypto/images/dh.pdf b/buch/chapters/90-crypto/images/dh.pdf index 67b95a5..eede4bd 100644 Binary files a/buch/chapters/90-crypto/images/dh.pdf and b/buch/chapters/90-crypto/images/dh.pdf differ diff --git a/buch/chapters/90-crypto/images/elliptic.pdf b/buch/chapters/90-crypto/images/elliptic.pdf index d408f1e..e58639f 100644 Binary files a/buch/chapters/90-crypto/images/elliptic.pdf and b/buch/chapters/90-crypto/images/elliptic.pdf differ diff --git a/buch/chapters/90-crypto/images/keys.pdf b/buch/chapters/90-crypto/images/keys.pdf index 99f991f..2c6b4b9 100644 Binary files a/buch/chapters/90-crypto/images/keys.pdf and b/buch/chapters/90-crypto/images/keys.pdf differ diff --git a/buch/chapters/90-crypto/images/keys.tex b/buch/chapters/90-crypto/images/keys.tex index 68920a5..d556b7c 100644 --- a/buch/chapters/90-crypto/images/keys.tex +++ b/buch/chapters/90-crypto/images/keys.tex @@ -34,55 +34,86 @@ \draw[->] \punkt{(\x+0.5)}{-2.9} -- \punkt{(\x+0.5)}{-4.9}; } \foreach \x in {0,3,...,18}{ - \draw[->] \punkt{(\x+1)}{-7} -- \punkt{(\x+2)}{-7} + \draw[->] \punkt{(\x+1.1)}{-7} -- \punkt{(\x+2)}{-7} -- \punkt{(\x+2)}{-2.5} -- \punkt{(\x+3.1)}{-2.5}; } \fill[color=white] - \punkt{(9+1.5)}{-5.25} + \punkt{(9+1.25)}{-5.5} rectangle - \punkt{(9+2.5)}{-4.25}; + \punkt{(9+2.75)}{-4.00}; \draw - \punkt{(9+1.5)}{-5.25} + \punkt{(9+1.25)}{-5.5} rectangle - \punkt{(9+2.5)}{-4.25}; + \punkt{(9+2.75)}{-4.00}; \node at \punkt{(9+2)}{-4.75} {$S$}; } + \def\blocks#1{ \foreach \x in {0,3,...,21}{ \wort{\x}{0}{#1} } } -\def\schlange{ +\def\schlange#1{ \draw[->] \punkt{22.1}{2} -- \punkt{23}{2} -- \punkt{23}{-1.0} -- \punkt{-3}{-1.0} -- \punkt{-3}{-8} -- \punkt{-1}{-8} -- \punkt{-1}{-2.5} -- \punkt{0.1}{-2.5}; ; - \fill[color=white] \punkt{-3.5}{-1.5} rectangle \punkt{-2.5}{-3.5}; - \draw \punkt{-3.5}{-1.5} rectangle \punkt{-2.5}{-3.5}; + \fill[color=white] \punkt{-3.75}{-1.75} rectangle \punkt{-2.25}{-3.25}; + \draw \punkt{-3.75}{-1.75} rectangle \punkt{-2.25}{-3.25}; \node at \punkt{-3}{-2.5} {$\pi$}; - \fill[color=white] \punkt{-3.5}{-3.5} rectangle \punkt{-2.5}{-5.5}; - \draw \punkt{-3.5}{-3.5} rectangle \punkt{-2.5}{-5.5}; + + \fill[color=white] \punkt{-3.75}{-3.75} rectangle \punkt{-2.25}{-5.25}; + \draw \punkt{-3.75}{-3.75} rectangle \punkt{-2.25}{-5.25}; \node at \punkt{-3}{-4.5} {$S$}; - \fill[color=white] \punkt{-3.5}{-5.5} rectangle \punkt{-2.5}{-7.5}; - \draw \punkt{-3.5}{-5.5} rectangle \punkt{-2.5}{-7.5}; - \node at \punkt{-3}{-6.5} {$r$}; + + \fill[color=white] \punkt{-3.75}{-5.75} rectangle \punkt{-2.25}{-7.25}; + \draw \punkt{-3.75}{-5.75} rectangle \punkt{-2.25}{-7.25}; + \node at \punkt{-3}{-6.5} {$r_{#1}$}; } \begin{scope} \blocks{blue!20} - \schlange + \foreach \x in {0,...,7}{ + \node at \punkt{(3*\x+0.5)}{2} {$K_\x$}; + } + \schlange{1} \summe \end{scope} \begin{scope}[yshift=-4.5cm] \blocks{darkgreen!20} + \foreach \x in {8,...,15}{ + \node at \punkt{(3*(\x-8)+0.5)}{2} {$K_{\x}$}; + } + \schlange{2} \summe \end{scope} \begin{scope}[yshift=-9cm] \blocks{darkgreen!20} + \foreach \x in {16,...,23}{ + \node at \punkt{(3*(\x-16)+0.5)}{2} {$K_{\x}$}; + } + \schlange{3} + \summe +\end{scope} + +\begin{scope}[yshift=-13.5cm] + \blocks{darkgreen!20} + \foreach \x in {24,...,31}{ + \node at \punkt{(3*(\x-24)+0.5)}{2} {$K_{\x}$}; + } + \foreach \x in {0,3,...,21}{ + \draw[->,color=gray] + \punkt{(\x+0.5)}{-0.1} -- \punkt{(\x+0.5)}{-2.1}; + \node[color=gray] at \punkt{(\x+0.5)}{-2.1} [below] {$\vdots$}; + } + \draw[color=gray] \punkt{22.1}{2} -- \punkt{23}{2} + -- \punkt{23}{-1.0} -- \punkt{-3}{-1.0} + -- \punkt{-3}{-2.1}; + \node[color=gray] at \punkt{-3}{-2.1} [below] {$\vdots$}; \end{scope} \end{tikzpicture} -- cgit v1.2.1 From 47354a0dd46c84826157a474ba2560156de509ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 8 Apr 2021 08:52:45 +0200 Subject: binomial images improved --- .../30-endlichekoerper/images/binomial2.pdf | Bin 19246 -> 19417 bytes .../30-endlichekoerper/images/binomial2.tex | 19 +++++++ .../30-endlichekoerper/images/binomial5.pdf | Bin 26050 -> 27894 bytes .../30-endlichekoerper/images/binomial5.tex | 58 +++++++++++++++++++++ 4 files changed, 77 insertions(+) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/images/binomial2.pdf b/buch/chapters/30-endlichekoerper/images/binomial2.pdf index 92be742..0a07c92 100644 Binary files a/buch/chapters/30-endlichekoerper/images/binomial2.pdf and b/buch/chapters/30-endlichekoerper/images/binomial2.pdf differ diff --git a/buch/chapters/30-endlichekoerper/images/binomial2.tex b/buch/chapters/30-endlichekoerper/images/binomial2.tex index 77ccb57..1856844 100644 --- a/buch/chapters/30-endlichekoerper/images/binomial2.tex +++ b/buch/chapters/30-endlichekoerper/images/binomial2.tex @@ -279,6 +279,25 @@ \dreieck{32}{0} \dreieck{32}{32} +\dreieck{33}{0} +\dreieck{33}{1} +\dreieck{33}{32} +\dreieck{33}{33} + +\dreieck{34}{0} +\dreieck{34}{2} +\dreieck{34}{32} +\dreieck{34}{34} + +\dreieck{35}{0} +\dreieck{35}{1} +\dreieck{35}{2} +\dreieck{35}{3} +\dreieck{35}{32} +\dreieck{35}{33} +\dreieck{35}{34} +\dreieck{35}{35} + \def\etikett#1#2#3{ \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) {$#3$}; } diff --git a/buch/chapters/30-endlichekoerper/images/binomial5.pdf b/buch/chapters/30-endlichekoerper/images/binomial5.pdf index 1b2a813..a4bdf51 100644 Binary files a/buch/chapters/30-endlichekoerper/images/binomial5.pdf and b/buch/chapters/30-endlichekoerper/images/binomial5.pdf differ diff --git a/buch/chapters/30-endlichekoerper/images/binomial5.tex b/buch/chapters/30-endlichekoerper/images/binomial5.tex index 750b7e0..815e611 100644 --- a/buch/chapters/30-endlichekoerper/images/binomial5.tex +++ b/buch/chapters/30-endlichekoerper/images/binomial5.tex @@ -358,6 +358,64 @@ \dreieck{32}{31}{2} \dreieck{32}{32}{1} +\dreieck{33}{0}{1} +\dreieck{33}{1}{3} +\dreieck{33}{2}{3} +\dreieck{33}{3}{1} +\dreieck{33}{5}{1} +\dreieck{33}{6}{3} +\dreieck{33}{7}{3} +\dreieck{33}{8}{1} +\dreieck{33}{25}{1} +\dreieck{33}{26}{3} +\dreieck{33}{27}{3} +\dreieck{33}{28}{1} +\dreieck{33}{30}{1} +\dreieck{33}{31}{3} +\dreieck{33}{32}{3} +\dreieck{33}{33}{1} + +\dreieck{34}{0}{1} +\dreieck{34}{1}{4} +\dreieck{34}{2}{1} +\dreieck{34}{3}{4} +\dreieck{34}{4}{1} +\dreieck{34}{5}{1} +\dreieck{34}{6}{4} +\dreieck{34}{7}{1} +\dreieck{34}{8}{4} +\dreieck{34}{9}{1} +\dreieck{34}{25}{1} +\dreieck{34}{26}{4} +\dreieck{34}{27}{1} +\dreieck{34}{28}{4} +\dreieck{34}{29}{1} +\dreieck{34}{30}{1} +\dreieck{34}{31}{4} +\dreieck{34}{32}{1} +\dreieck{34}{33}{4} +\dreieck{34}{34}{1} + +\dreieck{35}{0}{1} +\dreieck{35}{5}{2} +\dreieck{35}{10}{1} +\dreieck{35}{25}{1} +\dreieck{35}{30}{2} +\dreieck{35}{35}{1} + +\dreieck{36}{0}{1} +\dreieck{36}{1}{1} +\dreieck{36}{5}{2} +\dreieck{36}{6}{2} +\dreieck{36}{10}{1} +\dreieck{36}{11}{1} +\dreieck{36}{25}{1} +\dreieck{36}{26}{1} +\dreieck{36}{30}{2} +\dreieck{36}{31}{2} +\dreieck{36}{35}{1} +\dreieck{36}{36}{1} + \def\etikett#1#2#3{ \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) {$#3$}; } -- cgit v1.2.1 From ee33b6de909df12cdd757abcb5db04fc9d2b5a56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 13 Apr 2021 15:46:41 +0200 Subject: kgV --- buch/chapters/30-endlichekoerper/euklid.tex | 236 ++++++++++++++++++++++++++++ 1 file changed, 236 insertions(+) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/euklid.tex b/buch/chapters/30-endlichekoerper/euklid.tex index db326f8..9bc36a6 100644 --- a/buch/chapters/30-endlichekoerper/euklid.tex +++ b/buch/chapters/30-endlichekoerper/euklid.tex @@ -431,6 +431,7 @@ zur Bestimmung des grössten gemeinsamen Teilers von $76415$ und $23205$ zur Berechnung der Koeffizienten $c_k$ und $d_k$ Wir schreiben die gefundenen Zahlen in eine Tabelle: \begin{center} +\label{buch:endlichekoerper:beispiel1erweitert} \renewcommand{\arraystretch}{1.1} \begin{tabular}{|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}>{$}r<{$}|} \hline @@ -614,4 +615,239 @@ Aus den letzten zwei Zeilen folgt $ua-vb = ab/g - ab/g = 0$, wie erwartet. \end{beispiel} +% +% Das kleinste gemeinsame Vielfache +% +\subsection{Das kleinste gemeinsame Vielfache +\label{buch:subsection:daskgv}} +Das kleinste gemeinsame Vielfache zweier Zahlen $a$ und $b$ ist +\[ +\operatorname{kgV}(a,b) += +\frac{ab}{\operatorname{ggT}(a,b)}. +\] +Wir suchen nach einen Algorithmus, mit dem man das kleinste gemeinsame +Vielfache effizient berechnen kann. + +Die Zahlen $a$ und $b$ sind beide Vielfache des grössten gemeinsamen +Teilers $g=\operatorname{ggT}(a,b)$, es gibt also Zahlen $u$ und $v$ derart, +dass $a=ug$ und $b=vg$. +Wenn $t$ ein gemeinsamer Teiler von $u$ und $v$ ist, dann ist $tg$ ein +grösserer gemeinsamer Teiler von $a$ und $b$. +Dies kann nicht sein, also müssen $u$ und $v$ teilerfremd sein. +Das kleinste gemeinsame Vielfache von $a$ und $b$ ist dann $ugv=av=ub$. +Die Bestimmung des kleinsten gemeinsamen Vielfachen ist also gleichbedeutend +mit der Bestimmung der Zahle $u$ und $v$. + +Die definierende Eigenschaften von $u$ und $v$ kann man in Matrixform als +\begin{equation} +\begin{pmatrix} +a\\b +\end{pmatrix} += +\underbrace{ +\begin{pmatrix} +u&?\\ +v&? +\end{pmatrix}}_{\displaystyle =K} +\begin{pmatrix} +\operatorname{ggT}(a,b)\\ 0 +\end{pmatrix} +\label{buch:eindlichekoerper:eqn:uvmatrix} +\end{equation} +geschrieben werden, wobei wir die Matrixelemente $?$ nicht kennen. +Diese Elemente müssen wir auch nicht kennen, um $u$ und $v$ zu bestimmen. + +Bei der Bestimmung des grössten gemeinsamen Teilers wurde der Vektor auf +der rechten Seite von~\eqref{buch:eindlichekoerper:eqn:uvmatrix} bereits +gefunden. +Die Matrizen $Q(q_i)$, die die einzelne Schritte des euklidischen +Algorithmus beschreiben, ergeben ihn als +\[ +\begin{pmatrix} +\operatorname{ggT}(a,b)\\0 +\end{pmatrix} += +Q(q_n)Q(q_{n-1}) \dots Q(q_1)Q(q_0) +\begin{pmatrix}a\\b\end{pmatrix}. +\] +Indem wir die Matrizen $Q(q_n)$ bis $Q(q_0)$ auf die linke Seite der +Gleichung schaffen, erhalten wir +\[ +\begin{pmatrix}a\\b\end{pmatrix} += +Q(q_0)^{-1} +Q(q_1)^{-1} +\dots +Q(q_{n-1})^{-1} +Q(q_n) +\begin{pmatrix}\operatorname{ggT}(a,b)\\0\end{pmatrix}. +\] +Eine mögliche Lösung für die Matrix $K$ in +\eqref{buch:eindlichekoerper:eqn:uvmatrix} +ist der die Matrix +\[ +K += +Q(q_0)^{-1} +Q(q_1)^{-1} +\dots +Q(q_{n-1})^{-1} +Q(q_n). +\] +Insbesondere ist die Matrix $K$ die Inverse der früher gefundenen +Matrix $Q$. + +Die Berechnung der Matrix $K$ als Inverse von $Q$ ist nicht sehr +effizient. +Genauso wie es möglich war, das Produkt $Q$ der Matrizen +$Q(q_k)$ iterativ zu bestimmen, muss es auch eine Rekursionsformel +für das Produkt der inversen Matrizen $Q(q_k)^{-1}$ geben. + +Schreiben wir die die gesuchte Matrix +\[ +K_k += +Q(q_0)^{-1}\dots Q(q_{k-1})^{-1} += +\begin{pmatrix} +e_k & e_{k-1}\\ +f_k & f_{k-1} +\end{pmatrix}, +\] +dann kann, kann $K_k$ durch die Rekursion +\[ +K_{k+1} += +K_{k} Q(q_k)^{-1} += +K_k K(q_k) +\qquad\text{mit}\qquad +K_0 = \begin{pmatrix}1&0\\0&1\end{pmatrix} = I +\] +berechnen. +Die Inverse von $Q(q)$ ist +\[ +K(q) += +Q(q)^{-1} += +\frac{1}{\det Q(q)} +\begin{pmatrix} +q&1\\ +1&0 +\end{pmatrix} +\quad\text{denn}\quad +K(q)Q(q) += +\begin{pmatrix} +q&1\\ +1&0 +\end{pmatrix} +\begin{pmatrix} +0&1\\ +1&-q +\end{pmatrix} += +\begin{pmatrix} +1&0\\ +0&1 +\end{pmatrix}. +\] +Da die zweite Spalte von $K(q)$ die erste Spalte einer Einheitsmatrix +ist, wird die zweite Spalte des Produktes $AK(q)$ immer die erste Spalte +von $A$ sein. +In $K_{k+1}$ ist daher nur die erste Spalte neu, die zweite Spalte ist +die erste Spalte von $K_k$. + +Wenn $K_k$ die Matrixelemente +\[ +K_k += +\begin{pmatrix} +e_k & e_{k-1} \\ +f_k & f_{k-1} +\end{pmatrix} +\qquad\text{und}\qquad +K_0 = +\begin{pmatrix} +1&0\\ +0&1 +\end{pmatrix} +\Rightarrow +\left\{ +\begin{aligned} +e_0 &= 1 & e_{-1} &= 0\\ +f_0 &= 0 & f_{-1} &= 1 +\end{aligned} +\right. +\] +Daraus kann man Rekursionsformeln für die Folgen $e_k$ und $f_k$ +ablesen, es gilt +\begin{align*} +e_{k+1} &= q_ke_k + e_{k-1} \\ +f_{k+1} &= q_kf_k + f_{k-1} +\end{align*} +für $k=0,1,\dots ,n$. +Damit können $e_k$ und $f_k$ gleichzeitig mit den Zahlen $c_k$ und $d_k$ +in einer Tabelle berechnen. + +\begin{beispiel} +Wir erweitern das Beispiel von +Seite~\pageref{buch:endlichekoerper:beispiel1erweitert} +um die beiden Spalten zur Berechnung von $e_k$ und $f_k$: +\begin{center} +\renewcommand{\arraystretch}{1.1} +\begin{tabular}{|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}>{$}r<{$}|>{$}r<{$}>{$}r<{$}|} +\hline +k& a_k& b_k& q_k& r_k& c_k& d_k& e_k& f_k\\ +\hline + & & & & & 1& 0& 0& 1\\ +0& 76415& 23205& 3& 6800& 0& 1& 1& 0\\ +1& 23205& 6800& 3& 2805& 1& -3& 3& 1\\ +2& 6800& 2805& 2& 1190& -3& 10& 10& 3\\ +3& 2805& 1190& 2& 425& 7& -23& 23& 7\\ +4& 1190& 425& 2& 340& -17& 56& 56& 17\\ +5& 425& 340& 1& 85& 41& -135& 135& 41\\ +6& 340& 85& 4& 0& -58& 191& 191& 58\\ +7& 85& 0& & & 273& -899& 899& 273\\ +\hline +\end{tabular} +\end{center} +Der grösste gemeinsame Teiler ist $\operatorname{ggT}(a,b)=85$. +Aus der letzten Zeile der Tabelle kann man jetzt die Zahlen $u=e_7=899$ +und $v=f_7=273$ ablesen, und tatsächlich ist +\[ +a=76415 = 899\cdot 85 +\qquad\text{und}\qquad +b=23205 = 273 \cdot 85. +\] +Daraus kann man dann auch das kleinste gemeinsame Vielfache ablesen, es ist +\[ +\operatorname{kgV}(a,b) += +\operatorname{kgV}(76415,23205) += +\left\{ +\begin{aligned} +ub +&= +899\cdot 23205\\ +va +&= +273\cdot 76415 +\end{aligned} +\right\} += +20861295. +\qedhere +\] +\end{beispiel} + +Der erweiterte Algorithmus kann auch dazu verwendet werden, +das kleinste gemeinsame Vielfache zweier Polynome zu berechnen. +Dies wird zum Beispiel bei der Decodierung des Reed-Solomon-Codes in +Kapitel~\ref{chapter:reedsolomon} verwendet. + + -- cgit v1.2.1 From b94b4240a20b40871b914ddd7ae5df14f020e112 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 13 Apr 2021 15:58:59 +0200 Subject: typos --- buch/chapters/30-endlichekoerper/euklid.tex | 38 +++++++---------------------- 1 file changed, 9 insertions(+), 29 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/euklid.tex b/buch/chapters/30-endlichekoerper/euklid.tex index 9bc36a6..8aa2f71 100644 --- a/buch/chapters/30-endlichekoerper/euklid.tex +++ b/buch/chapters/30-endlichekoerper/euklid.tex @@ -637,7 +637,7 @@ grösserer gemeinsamer Teiler von $a$ und $b$. Dies kann nicht sein, also müssen $u$ und $v$ teilerfremd sein. Das kleinste gemeinsame Vielfache von $a$ und $b$ ist dann $ugv=av=ub$. Die Bestimmung des kleinsten gemeinsamen Vielfachen ist also gleichbedeutend -mit der Bestimmung der Zahle $u$ und $v$. +mit der Bestimmung der Zahlen $u$ und $v$. Die definierende Eigenschaften von $u$ und $v$ kann man in Matrixform als \begin{equation} @@ -704,7 +704,7 @@ Genauso wie es möglich war, das Produkt $Q$ der Matrizen $Q(q_k)$ iterativ zu bestimmen, muss es auch eine Rekursionsformel für das Produkt der inversen Matrizen $Q(q_k)^{-1}$ geben. -Schreiben wir die die gesuchte Matrix +Schreiben wir die gesuchte Matrix \[ K_k = @@ -715,8 +715,8 @@ e_k & e_{k-1}\\ f_k & f_{k-1} \end{pmatrix}, \] -dann kann, kann $K_k$ durch die Rekursion -\[ +dann kann man $K_k$ durch die Rekursion +\begin{equation} K_{k+1} = K_{k} Q(q_k)^{-1} @@ -724,7 +724,8 @@ K_{k} Q(q_k)^{-1} K_k K(q_k) \qquad\text{mit}\qquad K_0 = \begin{pmatrix}1&0\\0&1\end{pmatrix} = I -\] +\label{buch:endlichekoerper:eqn:kgvrekursion} +\end{equation} berechnen. Die Inverse von $Q(q)$ ist \[ @@ -760,30 +761,9 @@ von $A$ sein. In $K_{k+1}$ ist daher nur die erste Spalte neu, die zweite Spalte ist die erste Spalte von $K_k$. -Wenn $K_k$ die Matrixelemente -\[ -K_k -= -\begin{pmatrix} -e_k & e_{k-1} \\ -f_k & f_{k-1} -\end{pmatrix} -\qquad\text{und}\qquad -K_0 = -\begin{pmatrix} -1&0\\ -0&1 -\end{pmatrix} -\Rightarrow -\left\{ -\begin{aligned} -e_0 &= 1 & e_{-1} &= 0\\ -f_0 &= 0 & f_{-1} &= 1 -\end{aligned} -\right. -\] -Daraus kann man Rekursionsformeln für die Folgen $e_k$ und $f_k$ -ablesen, es gilt +Aus der Rekursionsformel \eqref{buch:endlichekoerper:eqn:kgvrekursion} +für die Matrizen $K_k$ kann man jetzt eine Rekursionsbeziehung +für die Folgen $e_k$ und $f_k$ ablesen, es gilt \begin{align*} e_{k+1} &= q_ke_k + e_{k-1} \\ f_{k+1} &= q_kf_k + f_{k-1} -- cgit v1.2.1 From 2e2b334e97f9054732a99db70b9f279c56eaa1c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 13 Apr 2021 21:16:46 +0200 Subject: add example from Weitz --- buch/chapters/30-endlichekoerper/euklid.tex | 150 ++++++++++++++++++++++++++++ 1 file changed, 150 insertions(+) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/euklid.tex b/buch/chapters/30-endlichekoerper/euklid.tex index 8aa2f71..15fd88c 100644 --- a/buch/chapters/30-endlichekoerper/euklid.tex +++ b/buch/chapters/30-endlichekoerper/euklid.tex @@ -519,6 +519,7 @@ Insbesondere ist der euklidische Algorithmus genauso wie die Matrixschreibweise auch für Polynome durchführbar. \begin{beispiel} +\label{buch:endlichekoerper:eqn:polynomggt} Wir berechnen als Beispiel den grössten gemeinsamen Teiler der Polynome \[ @@ -829,5 +830,154 @@ das kleinste gemeinsame Vielfache zweier Polynome zu berechnen. Dies wird zum Beispiel bei der Decodierung des Reed-Solomon-Codes in Kapitel~\ref{chapter:reedsolomon} verwendet. +\subsubsection{Polynome +\label{buch:endlichekoerper:eqn:polynomkgv}} +Im Beispiel auf Seite~\pageref{buch:endlichekoerper:eqn:polynomggt} +wird der grösste gemeinsame Teiler der Polynome +\[ +a += +X^4 - 2X^3 -7 X^2 + 8X + 12, +\qquad +b = X^4 + X^3 -7X^2 -X + 6 +\] +berechnet. +Dies kann jetzt erweitert werden für die Berechnung des kleinsten +gemeinsamen Vielfachen. + +\begin{beispiel} +Die Berechnungstabelle nur für die Spalten $e_k$ und $f_k$ ergibt +\begin{center} +\renewcommand{\arraystretch}{1.4} +\begin{tabular}{|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}>{$}r<{$}|} +\hline +k& q_k& e_k& f_k\\ +\hline + & & 0& 1\\ +0& 1& 1& 0\\ +1&-\frac13X-\frac13& 1& 1\\ +2& \frac34X+\frac34& -\frac13X+\frac23& -\frac13X-\frac13\\ + & &-\frac14X^2+\frac14X+\frac32&-\frac14X^2-\frac12X+\frac34\\ +\hline +\end{tabular} +\end{center} +Daraus kann man ablesen, dass +\[ +u += +-\frac14X^2+\frac14X+\frac32 +\qquad\text{und}\qquad +v += +-\frac14X^2-\frac12X+\frac34. +\] +Daraus ergibt sich das kleinste gemeinsame Vielfache auf zwei verschiedene Weisen: +\[ +\operatorname{ggT}(a,b) += +\left\{ +\begin{aligned} +\textstyle +(-\frac14X^2+\frac14X+\frac32)&\cdot(X^4 - 2X^3 -7 X^2 + 8X + 12) +\\ +\textstyle +(-\frac14X^2-\frac12X+\frac34)&\cdot(X^4 + X^3 -7X^2 -X + 6) +\end{aligned} +\right\} += +-\frac14X^6+\frac72X^4-\frac{49}4X^2+9. +\] +Die beiden Berechnungsmöglichkeiten stimmen wie erwartet überein. +\end{beispiel} + +\subsubsection{Anwendung: Decodierung des Reed-Solomon-Codes} +Der Reed-Solomon-Code verwendet Polynome zur Codierung der Daten, +dies wird in Kapitel~\ref{chapter:reedsolomon} im Detail beschrieben. +Bei der Decodierung muss der Faktor $u$ für zwei gegebene Polynome +$n(X)$ und $r(X)$ bestimmt werden. +Allerdings ist das Polynom $r(X)$ nicht vollständig bekannt, nur die +ersten paar Koeffizienten sind gegeben. +Dafür weiss man zusätzlich, wieviele Schritte genau der Euklidische +Algorithmus braucht. +Daraus lässt sich genügend Information gewinnen, um die Faktoren $u$ +und $v$ zu bestimmen. +Das Video \url{https://youtu.be/uOLW43OIZJ0} von Edmund Weitz +erklärt die Theorie hinter dieser Teilaufgabe anhand von Beispielen. + +\begin{beispiel} +Wir berechnen also die Faktoren $u$ und $v$ für die beiden Polynome +\begin{align*} +n(X) +&= +X^12+12 +\\ +r(X) +&= +7 X^{11} + 4 X^{10} + X^9 + 12 X^8 + 2 X^7 + 12 X^6 + w(X) +\end{align*} +in $\mathbb{F}_13[X]$, wobei $w(X)$ ein unbekanntes Polynom vom Grad $5$ ist. +Man weiss zusätzlich noch, dass der euklidische Algorithmus genau drei +Schritte braucht, es gibt also genau drei Quotienten, die in die +Berechnung der Zahlen $e_k$ und $f_k$ einfliessen. +Im ersten Schritt des euklidischen Algorithmus ist der Quotient +$n(X) / r(X)$ zu bestimmen, der Grad $1$ haben muss. +\begin{align*} +a_0=n(X) &= X^12+12 +\\ +b_0=r(X) &= 7 X^{11} + 4 X^{10} + X^9 + 12 X^8 + 2 X^7 + 12 X^6 + \dots +\\ +q_0 &= 2X+10 +\\ +r_0 = a_0-b_0\cdot q_0 &= 10X^{10} + 5X^9 + 6X^8 + 8X^7 + \dots +\\ +a_1 &= 7 X^{11} + 4 X^{10} + X^9 + 12 X^8 + 2 X^7 + 12 X^6 + \dots +\\ +b_1 &= 10X^{10} + 5X^9 + 6X^8 + 8X^7 + \dots +\\ +q_1 &= 2X+2 +\\ +r_1 = a_1 - b_1q_1 &= 5X^9 + 10 X^8 + \dots +\\ +a_2 &= 10X^{10} + 5X^9 + 6X^8 + 8X^7 + \dots +\\ +b_2 &= 5X^9 + 10 X^8 + \dots +\\ +q_2 &= 2X+10 +\end{align*} +Aus den Polynomen $q_k$ können jetzt die Faktoren $u$ und $v$ +bestimmt werden: +\begin{center} +\begin{tabular}{|>{$}c<{$}|>{$}r<{$}|>{$}r<{$}|>{$}r<{$}|} +\hline +k& q_k& e_k& f_k\\ +\hline + & & 0& 1\\ +0& 2X+10& 1& 0\\ +1& 2X+2 & 2X+10& 1\\ +2& 2X+10& 4X^2+11X+8& 2X+2\\ + & & 8X^3+10X^2+11X+12& 4X^2+11X+8\\ +\hline +\end{tabular} +\end{center} +Die Faktorisierung des Polynoms +\[ +u += +8X^3+10X^2+11X+12 +\] +kann bestimmt werden, indem man alle Zahlen $1,2,\dots,12\in\mathbb{F}_{13}$ +einsetzt. +Man findet so die Nullstellen $3$, $4$ und $8$, also muss das Polynom +$u$ faktorisiert werden können als +\[ +u= +8(X-3)(X-4)(X-8) += +8X^3 - 120X^2+544X-768 += +8X^3 +10X^2+11X+12. +\qedhere +\] +\end{beispiel} -- cgit v1.2.1 From 1fda316d0aacd6d068b3af4281871bee5b8e72cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 13 Apr 2021 21:21:25 +0200 Subject: add rs example --- .../30-endlichekoerper/rechnungen/rs.maxima | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 buch/chapters/30-endlichekoerper/rechnungen/rs.maxima (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima b/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima new file mode 100644 index 0000000..9116023 --- /dev/null +++ b/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima @@ -0,0 +1,29 @@ +n: X^12 + 12; +r: 7*X^11 + 4*X^10 + X^9 + 12*X^8 + 2*X^7 + 12*X^6; + +q0: 2*X+10; +q1: 2*X+2; +q2: 2*X+10; + +a0: n; +b0: r; +r0: expand(a0 - q0 * b0); + +a1: b0; +b1: r0; +r1: expand(a1 - q1 * b1); + +a2: b1; +b2: r1; +r2: expand(a2 - q2 * b2); + +K: matrix([1,0],[0,1]); + +K: expand(K . matrix([q0,1],[1,0])); +K: expand(K . matrix([q1,1],[1,0])); +K: expand(K . matrix([q2,1],[1,0])); + +u: 8*X^3+10*X^2+11*X+12; +v: 4*X^2+11*X+8; + +factor(u), modulus:13; -- cgit v1.2.1 From b41e50e636a895ad3c425896ef4b3fb7c89dbb3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 14 Apr 2021 10:16:15 +0200 Subject: typo --- buch/chapters/30-endlichekoerper/euklid.tex | 6 +++--- buch/chapters/30-endlichekoerper/galois.tex | 6 +++--- buch/chapters/30-endlichekoerper/wurzeln.tex | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/euklid.tex b/buch/chapters/30-endlichekoerper/euklid.tex index 15fd88c..094a07a 100644 --- a/buch/chapters/30-endlichekoerper/euklid.tex +++ b/buch/chapters/30-endlichekoerper/euklid.tex @@ -909,13 +909,13 @@ Wir berechnen also die Faktoren $u$ und $v$ für die beiden Polynome \begin{align*} n(X) &= -X^12+12 +X^{12}+12 \\ r(X) &= 7 X^{11} + 4 X^{10} + X^9 + 12 X^8 + 2 X^7 + 12 X^6 + w(X) \end{align*} -in $\mathbb{F}_13[X]$, wobei $w(X)$ ein unbekanntes Polynom vom Grad $5$ ist. +in $\mathbb{F}_{13}[X]$, wobei $w(X)$ ein unbekanntes Polynom vom Grad $5$ ist. Man weiss zusätzlich noch, dass der euklidische Algorithmus genau drei Schritte braucht, es gibt also genau drei Quotienten, die in die Berechnung der Zahlen $e_k$ und $f_k$ einfliessen. @@ -923,7 +923,7 @@ Berechnung der Zahlen $e_k$ und $f_k$ einfliessen. Im ersten Schritt des euklidischen Algorithmus ist der Quotient $n(X) / r(X)$ zu bestimmen, der Grad $1$ haben muss. \begin{align*} -a_0=n(X) &= X^12+12 +a_0=n(X) &= X^{12}+12 \\ b_0=r(X) &= 7 X^{11} + 4 X^{10} + X^9 + 12 X^8 + 2 X^7 + 12 X^6 + \dots \\ diff --git a/buch/chapters/30-endlichekoerper/galois.tex b/buch/chapters/30-endlichekoerper/galois.tex index fbacba6..2f8117e 100644 --- a/buch/chapters/30-endlichekoerper/galois.tex +++ b/buch/chapters/30-endlichekoerper/galois.tex @@ -27,7 +27,7 @@ Primzahlpotenz $p^n$ von Elementen haben und die die Basis wichtiger kryptographischer Algorithmen sind. % -% Arithmetik module $o$ +% Arithmetik modulo $o$ % \subsection{Arithmetik modulo $p$ \label{buch:subsection:arithmetik-modulo-p}} @@ -413,7 +413,7 @@ Elemente. \begin{figure} \centering \includegraphics{chapters/30-endlichekoerper/images/binomial2.pdf} -\caption{Binomialkoeffizienten module $2$ im Pascal-Dreieck. +\caption{Binomialkoeffizienten modulo $2$ im Pascal-Dreieck. Auf den rot hinterlegten Zeilen, die zu Exponenten der Form $2^k$ gehören, sind alle Koeffizienten ausser dem ersten und letzten durch $2$ teilbar. \label{buch:endliche-koerper:fig:binomial2}} @@ -423,7 +423,7 @@ sind alle Koeffizienten ausser dem ersten und letzten durch $2$ teilbar. \begin{figure} \centering \includegraphics{chapters/30-endlichekoerper/images/binomial5.pdf} -\caption{Binomialkoeffizienten module $5$ im Pascal-Dreieck. +\caption{Binomialkoeffizienten modulo $5$ im Pascal-Dreieck. Die von $0$ verschiedenen Reste werden durch Farben dargestellt: $1=\text{schwarz}$, $2=\text{\color{farbe2}rot}$, diff --git a/buch/chapters/30-endlichekoerper/wurzeln.tex b/buch/chapters/30-endlichekoerper/wurzeln.tex index 02429dc..600336c 100644 --- a/buch/chapters/30-endlichekoerper/wurzeln.tex +++ b/buch/chapters/30-endlichekoerper/wurzeln.tex @@ -731,7 +731,7 @@ dass sf+tm=1. \] Reduzieren wir modulo $m$, wird daraus $af=1$ in $\Bbbk[X]/m\Bbbk[X]$. -Das Polynom $a$, reduziert module $m$, ist also die multiplikative +Das Polynom $a$, reduziert modulo $m$, ist also die multiplikative Inverse von $f$. Bei der praktischen Durchführung des euklidischen Algorithmus ist der -- cgit v1.2.1 From 509a497c5f138723762ff76e8291e29a897b8ea2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 14 Apr 2021 13:57:56 +0200 Subject: typos --- buch/chapters/90-crypto/arith.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/90-crypto/arith.tex b/buch/chapters/90-crypto/arith.tex index 44eb6bb..dcc31b8 100644 --- a/buch/chapters/90-crypto/arith.tex +++ b/buch/chapters/90-crypto/arith.tex @@ -91,7 +91,7 @@ Die Berechnung der Quadratwurzel lässt sich in Hardware effizient implementieren. \begin{algorithmus} -Der folgende Algorithmsu berechnet $a^k$ in $O(\log_2(k))$ +Der folgende Algorithmus berechnet $a^k$ in $O(\log_2(k))$ Multiplikationen \begin{enumerate} \item Initialisiere $p=1$ und $q=a$ -- cgit v1.2.1 From 432c3bebedb451bae53eb37e2078eb7de28ece79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Tue, 20 Apr 2021 12:42:49 +0200 Subject: typos --- buch/chapters/30-endlichekoerper/euklid.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/30-endlichekoerper/euklid.tex b/buch/chapters/30-endlichekoerper/euklid.tex index 094a07a..0bf3016 100644 --- a/buch/chapters/30-endlichekoerper/euklid.tex +++ b/buch/chapters/30-endlichekoerper/euklid.tex @@ -681,7 +681,7 @@ Q(q_0)^{-1} Q(q_1)^{-1} \dots Q(q_{n-1})^{-1} -Q(q_n) +Q(q_n)^{-1} \begin{pmatrix}\operatorname{ggT}(a,b)\\0\end{pmatrix}. \] Eine mögliche Lösung für die Matrix $K$ in -- cgit v1.2.1 From cc8f0ed8ae04a2814f2564f723262416bb15b4b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 11:21:37 +0200 Subject: reelle Normalform --- buch/chapters/40-eigenwerte/normalformen.tex | 254 ++++++++++++++++++++++++++- 1 file changed, 252 insertions(+), 2 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/normalformen.tex b/buch/chapters/40-eigenwerte/normalformen.tex index c21c403..ffce61d 100644 --- a/buch/chapters/40-eigenwerte/normalformen.tex +++ b/buch/chapters/40-eigenwerte/normalformen.tex @@ -330,9 +330,259 @@ Es ist das Polynom geringsten Grades über $\Bbbk'$, welches $m(A)=0$ erfüllt. \subsection{Reelle Normalform \label{buch:subsection:reelle-normalform}} +Wenn eine reelle Matrix $A$ komplexe Eigenwerte hat, ist die Jordansche +Normalform zwar möglich, aber die zugehörigen Basisvektoren werden ebenfalls +komplexe Komponenten haben. +Für eine rein reelle Rechnung ist dies nachteilig, da der Speicheraufwand +dadurch verdoppelt und der Rechenaufwand für Multiplikationen vervierfacht +wird. -\subsection{Obere Hessenberg-Form -\label{buch:subsection:obere-hessenberg-form}} +Die nicht reellen Eigenwerte von $A$ treten in konjugiert komplexen Paaren +$\lambda_i$ und $\overline{\lambda}_i$ auf. +Wir betrachten im Folgenden nur ein einziges Paar $\lambda=a+ib$ und +$\overline{\lambda}=a-ib$ von konjugiert komplexen Eigenwerten mit +nur je einem einzigen $n\times n$-Jordan-Block $J$ und $\overline{J}$. +Ist $\mathcal{B}=\{b_1,\dots,b_n\}$ die Basis für den Jordan-Block $J$, +dann kann man die Vektoren +$\overline{\mathcal{B}}=\{\overline{b}_1,\dots,\overline{b}_n\}$ als Basis für +$\overline{J}$ verwenden. +Die vereinigte Basis +$\mathcal{C} = \mathcal{B}\cup\overline{\mathcal{B}} += \{b_1,\dots,b_n,\overline{b}_1,\dots,\overline{b}_n\}$ +erzeugen einen $2n$-dimensionalen Vektorraum, +der direkte Summe der beiden von $\mathcal{B}$ und $\overline{\mathcal{B}}$ +erzeugen Vektorräume $V=\langle\mathcal{B}\rangle$ und +$\overline{V}=\langle\overline{\mathcal{B}}\rangle$ ist. +Es ist also +\[ +U=\langle \mathcal{C}\rangle += +V\oplus \overline{V}. +\] +Wir bezeichnen die lineare Abbildung mit den Jordan-Blöcken +$J$ und $\overline{J}$ wieder mit $A$. + +Auf dem Vektorraum $U$ hat die lineare Abbildung in der Basis +$\mathcal{C}$ die Matrix +\[ +A= +\begin{pmatrix} +J&0\\ +0&\overline{J} +\end{pmatrix} += +\begin{pmatrix} +\lambda& 1 & & & &&&&&\\ + &\lambda& 1 & & &&&&&\\ + & &\lambda&\ddots& &&&&&\\ + & & &\ddots& 1 &&&&&\\ + & & & &\lambda&&&&&\\ +&&&& &\overline{\lambda}&1&& & \\ +&&&& &&\overline{\lambda}&1& & \\ +&&&& &&&\overline{\lambda} &\dots& \\ +&&&& &&& &\dots&1\\ +&&&& &&& &&\overline{\lambda}\\ +\end{pmatrix}. +\] + +Die Jordan-Normalform bedeutet, dass +\[ +\begin{aligned} +Ab_1&=\lambda b_1 & + A\overline{b}_1 &= \overline{\lambda} \overline{b}_1 \\ +Ab_2&=\lambda b_2 + b_1 & + A\overline{b}_2 &= \overline{\lambda} \overline{b}_2 +\overline{b_1}\\ +Ab_3&=\lambda b_3 + b_2 & + A\overline{b}_3 &= \overline{\lambda} \overline{b}_3 +\overline{b_2}\\ + &\;\vdots & + &\;\vdots \\ +Ab_n&=\lambda b_n + b_{n-1} & + A\overline{b}_n &= \overline{\lambda} \overline{b}_n +\overline{b_{n-1}} +\end{aligned} +\] +Für die Linearkombinationen +\begin{equation} +\begin{aligned} +c_i &= \frac{b_i+\overline{b}_i}{\sqrt{2}}, +& +d_i &= \frac{b_i-\overline{b}_i}{i\sqrt{2}} +\end{aligned} +\label{buch:eigenwerte:eqn:reellenormalformumrechnung} +\end{equation} +folgt dann für $k>1$ +\begin{align*} +Ac_k +&= +\frac{Ab_k+A\overline{b}_k}{2} +& +Ad_k +&= +\frac{Ab_k-A\overline{b}_k}{2i} +\\ +&= +\frac1{\sqrt{2}}(\lambda b_k + b_{k-1} ++ \overline{\lambda}\overline{b}_k + \overline{b}_{k-1}) +& +&= +\frac1{i\sqrt{2}}(\lambda b_k + b_{k-1} +- \overline{\lambda}\overline{b}_k - \overline{b}_{k-1}) +\\ +&= +\frac1{\sqrt{2}}(\alpha b_k + i\beta b_k + \alpha \overline{b}_k -i\beta \overline{b}_k) ++ +c_{k-1} +& +&= +\frac1{i\sqrt{2}}( +\alpha b_k + i\beta b_k - \alpha \overline{b}_k +i\beta \overline{b}_k) ++ +d_{k-1} +\\ +&= +\alpha +\frac{b_k+\overline{b}_k}{\sqrt{2}} ++ +i \beta \frac{b_k-\overline{b}_k}{\sqrt{2}} ++ +c_{k-1} +& +&= +\alpha +\frac{b_k-\overline{b}_k}{i\sqrt{2}} ++ +i \beta \frac{b_k+\overline{b}_k}{i\sqrt{2}} ++ +d_{k-1} +\\ +&= \alpha c_k -\beta d_k ++ +c_{k-1} +& +&= \alpha d_k + \beta c_k ++ +d_{k-1}. +\end{align*} +Für $k=1$ fallen die Terme $c_{k-1}$ und $d_{k-1}$ weg. +In der Basis $\mathcal{D}=\{c_1,d_1,\dots,c_n,d_n\}$ hat die Matrix +also die {\em reelle Normalform} +\begin{equation} +\def\temp#1{\multicolumn{1}{|c}{#1\mathstrut}} +\def\semp#1{\multicolumn{1}{c|}{#1\mathstrut}} +A_{\text{reell}} += +\left( +\begin{array}{cccccccccccc} +\cline{1-4} +\temp{\alpha}& \beta&\temp{ 1}& 0&\temp{} & & & & & &&\\ +\temp{-\beta}&\alpha&\temp{ 0}& 1&\temp{} & & & & & &&\\ +\cline{1-6} + & &\temp{\alpha}& \beta&\temp{ 1}& 0&\temp{} & & & &&\\ + & &\temp{-\beta}&\alpha&\temp{ 0}& 1&\temp{} & & & &&\\ +\cline{3-6} + & & & &\temp{\alpha}& \beta&\temp{} & & & &&\\ + & & & &\temp{-\beta}&\alpha&\temp{} & & & &&\\ +\cline{5-8} + & & & & & &\temp{\phantom{0}}&\phantom{0}&\temp{ }& &&\\ + & & & & & &\temp{\phantom{0}}&\phantom{0}&\temp{ }& &&\\ +\cline{7-12} + & & & & & & & &\temp{\alpha}& \beta&\temp{ 1}&\semp{ 0}\\ + & & & & & & & &\temp{-\beta}&\alpha&\temp{ 0}&\semp{ 1}\\ +\cline{9-12} + & & & & & & & & & &\temp{\alpha}&\semp{ \beta}\\ + & & & & & & & & & &\temp{-\beta}&\semp{\alpha}\\ +\cline{11-12} +\end{array}\right). +\label{buch:eigenwerte:eqn:reellenormalform} +\end{equation} + +Wir bestimmen noch die Transformationsmatrix, die $A$ in die reelle +Normalform bringt. +Dazu beachten wir, dass die Vektoren $c_k$ und $d_k$ in der Basis +$\mathcal{B}$ nur in den Komponenten $k$ und $n+k$ von $0$ verschiedene +Koordinaten haben, nämlich +\[ +c_k += +\frac1{\sqrt{2}} +\left( +\begin{array}{c} +\vdots\\ 1 \\ \vdots\\\hline \vdots\\ 1\\\vdots +\end{array}\right) +\qquad\text{und}\qquad +d_k += +\frac1{i\sqrt{2}} +\left(\begin{array}{c} +\vdots\\ 1 \\ \vdots\\\hline\vdots\\-1\\\vdots +\end{array}\right) += +\frac1{\sqrt{2}} +\left(\begin{array}{c} +\vdots\\-i \\ \vdots\\\hline \vdots\\ i\\\vdots +\end{array}\right) +\] +gemäss \eqref{buch:eigenwerte:eqn:reellenormalformumrechnung}. +Die Umrechnung der Koordinaten von der Basis $\mathcal{B}$ in die Basis +$\mathcal{D}$ +wird daher durch die Matrix +\[ +S += +\frac{1}{\sqrt{2}} +\left(\begin{array}{cccccccccc} +1&-i& & & & & & & & \\ + & &1&-i& & & & & & \\ + & & & &1&-i& & & & \\ + & & & & & &\dots&\dots& & \\ + & & & & & & & &1&-i\\ +\hline +1& i& & & & & & & & \\ + & &1& i& & & & & & \\ + & & & &1& i& & & & \\ + & & & & & &\dots&\dots& & \\ + & & & & & & & &1& i\\ +\end{array}\right) +\] +vermittelt. +Der Nenner $\sqrt{2}$ wurde so gewählt, dass die +Zeilenvektoren der Matrix $S$ als komplexe Vektoren orthonormiert sind, +die Matrix $S$ ist daher unitär und hat die Inverse +\[ +S^{-1} += +S^* += +\frac{1}{\sqrt{2}} +\left(\begin{array}{ccccc|ccccc} + 1& & & & &1& & & & \\ +-i& & & & &i& & & & \\ + & 1& & & & &1& & & \\ + &-i& & & & &i& & & \\ + & & 1& & & & &1& & \\ + & &-i& & & & &i& & \\ + & & &\dots& & & & &\dots& \\ + & & &\dots& & & & &\dots& \\ + & & & & 1& & & & &1\\ + & & & &-i& & & & &i\\ +\end{array}\right). +\] +Insbesondere folgt jetzt +\[ +A += +S^{-1}A_{\text{reell}}S += +S^*A_{\text{reell}}S +\qquad\text{und}\qquad +A_{\text{reell}} += +SAS^{-1} += +SAS^*. +\] + +%\subsection{Obere Hessenberg-Form +%\label{buch:subsection:obere-hessenberg-form}} -- cgit v1.2.1 From d9f3811cb2b6c0b73d4b4b712bd713f5eab77007 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 11:23:21 +0200 Subject: fix problem with missing file --- buch/chapters/50-permutationen/transpositionen.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/50-permutationen/transpositionen.tex b/buch/chapters/50-permutationen/transpositionen.tex index 604e010..748b2e9 100644 --- a/buch/chapters/50-permutationen/transpositionen.tex +++ b/buch/chapters/50-permutationen/transpositionen.tex @@ -111,7 +111,7 @@ Permutationen. \end{definition} Die alternierende Gruppe $A_n$ ist tatsächlich eine Untergruppe. -Zunächst ist $\operatorname{sign}(e)=(-1)^0=1$, also ist $e\in A_n$. +Zunächst ist $\operatorname{sgn}(e)=(-1)^0=1$, also ist $e\in A_n$. Es wurde schon gezeigt, dass mit jedem Element $\sigma\in A_n$ auch das inverse Element $\sigma^{-1}\in A_n$ ist. Es muss aber noch sichergestellt werden, dass das Produkt von zwei @@ -120,17 +120,17 @@ geraden Transpositionen wieder gerade ist: \begin{aligned} \sigma_1,\sigma_2&\in A_n &\Rightarrow&& -\operatorname{sign}(\sigma_1) +\operatorname{sgn}(\sigma_1) &= -\operatorname{sign}(\sigma_2) +\operatorname{sgn}(\sigma_2) = 1 \\ &&\Rightarrow&& -\operatorname{sign}(\sigma_1\sigma_2) +\operatorname{sgn}(\sigma_1\sigma_2) &= -\operatorname{sign}(\sigma_1) -\operatorname{sign}(\sigma_2) +\operatorname{sgn}(\sigma_1) +\operatorname{sgn}(\sigma_2) = 1\cdot 1=1 &&\Rightarrow& -- cgit v1.2.1 From e95824395ac596ef6f6741df7bb7f439af1e0eb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 15:33:20 +0200 Subject: =?UTF-8?q?F=C3=BCge=20erdbeben/teil1.tex=20wieder=20zum=20Makefil?= =?UTF-8?q?e=20hinzu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/chapters/40-eigenwerte/chapter.tex | 1 + buch/chapters/40-eigenwerte/normalformen.tex | 20 ++++++------- .../40-eigenwerte/uebungsaufgaben/4006.tex | 33 ++++++++++++++++++++++ 3 files changed, 44 insertions(+), 10 deletions(-) create mode 100644 buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/chapter.tex b/buch/chapters/40-eigenwerte/chapter.tex index 242a5e5..24ea57d 100644 --- a/buch/chapters/40-eigenwerte/chapter.tex +++ b/buch/chapters/40-eigenwerte/chapter.tex @@ -46,5 +46,6 @@ Dies wird in Abschnitt~\ref{buch:section:spektraltheorie} beschrieben. \uebungsaufgabe{4003} \uebungsaufgabe{4004} \uebungsaufgabe{4005} +\uebungsaufgabe{4006} \end{uebungsaufgaben} diff --git a/buch/chapters/40-eigenwerte/normalformen.tex b/buch/chapters/40-eigenwerte/normalformen.tex index ffce61d..9169f65 100644 --- a/buch/chapters/40-eigenwerte/normalformen.tex +++ b/buch/chapters/40-eigenwerte/normalformen.tex @@ -554,16 +554,16 @@ S^* = \frac{1}{\sqrt{2}} \left(\begin{array}{ccccc|ccccc} - 1& & & & &1& & & & \\ --i& & & & &i& & & & \\ - & 1& & & & &1& & & \\ - &-i& & & & &i& & & \\ - & & 1& & & & &1& & \\ - & &-i& & & & &i& & \\ - & & &\dots& & & & &\dots& \\ - & & &\dots& & & & &\dots& \\ - & & & & 1& & & & &1\\ - & & & &-i& & & & &i\\ + 1& & & & & 1& & & & \\ + i& & & & &-i& & & & \\ + & 1& & & & & 1& & & \\ + & i& & & & &-i& & & \\ + & & 1& & & & & 1& & \\ + & & i& & & & &-i& & \\ + & & &\dots& & & & &\dots& \\ + & & &\dots& & & & &\dots& \\ + & & & & 1& & & & & 1\\ + & & & & i& & & & &-i\\ \end{array}\right). \] Insbesondere folgt jetzt diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex new file mode 100644 index 0000000..63858b7 --- /dev/null +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex @@ -0,0 +1,33 @@ +Man findet eine Basis, in der die Matrix +\[ +A=\begin{pmatrix} + -5& 2& 6& 0\\ +-11& 12& -3& -15\\ + -7& 0& 9& 4\\ + 0& 5& -7& -8 +\end{pmatrix} +\] +die relle Normalform bekommt. + +\begin{loesung} +Das charakteristische Polynom der Matrix ist +\[ +\chi_{A}(\lambda) += +\lambda^4-8\lambda^3+42\lambda^2-104\lambda+169 += +(\lambda^2-4\lambda+13)^2. +\] +Es hat die doppelten Nullstellen +\[ +\lambda += +2\pm \sqrt{4-13} += +2\pm \sqrt{-9} += +2\pm 3i. +\] +Zur Bestimmung +\end{loesung} + -- cgit v1.2.1 From 23181dd294a16f4b30ce0531b23a4d0fc1abeca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 20:53:09 +0200 Subject: new problem --- .../40-eigenwerte/uebungsaufgaben/4006.maxima | 121 +++++++++++++++++++++ .../40-eigenwerte/uebungsaufgaben/4006.tex | 68 +++++++++++- 2 files changed, 187 insertions(+), 2 deletions(-) create mode 100644 buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima new file mode 100644 index 0000000..9c97a2b --- /dev/null +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.maxima @@ -0,0 +1,121 @@ +/* + * 4006.maxima + * + * (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ + +A: matrix([ a+b*%i, 1, 0, 0 ], + [ 0, a+b*%i, 0, 0 ], + [ 0, 0, a-b*%i, 1 ], + [ 0, 0, 0, a-b*%i ]); + +expand(charpoly(A, x)); + +S: (1/sqrt(2)) * matrix([ 1, -%i, 0, 0 ], + [ 0, 0, 1, -%i ], + [ 1, %i, 0, 0 ], + [ 0, 0, 1, %i ]); + +B: expand(invert(S).A.S); + + +C: subst(2, a, B); +C: subst(3, b, C); +A: subst(2, a, A); +A: subst(3, b, A); + +U: matrix([ 1, 0, 1, 0 ], + [ 0, 1, 1, 2 ], + [ 0, 0, 1, 0 ], + [ 0, 0, 0, 1 ]); +V: matrix([ 1, 0, 0, 0 ], + [ 0, 1, 0, 0 ], + [ 0, 1, 1, 0 ], + [ 1, 0, 0, 1 ]); +T: U.V; +invert(T); + +D: T.C.invert(T); + +p: expand(charpoly(D, x)); + +factor(p); + +lambda: 2+3*%i; + +Dlambda: ratsimp(expand(D - lambda * identfor(D))); +rank(Dlambda); +/* D2: expand(Dlambda.Dlambda); */ +/* rank(D2); */ + +load(functs); + +/* +E: Dlambda; +E[1]: (rational(1/E[1,1]))*E[1]$ +E[2]: E[2] - E[2,1] * E[1]$ +E[3]: E[3] - E[3,1] * E[1]$ +E[4]: E[4] - E[4,1] * E[1]$ +E: ratsimp(E)$ + +E[2]: (rational(1/E[2,2])) * E[2]$ +E[3]: E[3] - E[3,2] * E[2]$ +E[4]: E[4] - E[4,2] * E[2]$ +E: ratsimp(E)$ + +E[3]: (rational(1/E[3,3])) * E[3]$ +E[4]: E[4] - E[4,3] * E[3]$ +E: ratsimp(E)$ + +E[2]: E[2] - E[2,3] * E[3]$ +E[1]: E[1] - E[1,3] * E[3]$ +E: ratsimp(E)$ + +E[1]: E[1] - E[1,2] * E[2]$ +E: ratsimp(E)$ + +E; +*/ + +b1: matrix([1+%i],[2+2*%i],[%i],[1]); +ratsimp(D.b1 - lambda*b1); + +G: Dlambda; +G: addcol(G, b1); +G[1]: (rational(1/G[1,1]))*G[1]$ +G[2]: G[2] - G[2,1] * G[1]$ +G[3]: G[3] - G[3,1] * G[1]$ +G[4]: G[4] - G[4,1] * G[1]$ +G: ratsimp(G)$ + +G[2]: (rational(1/G[2,2])) * G[2]$ +G[3]: G[3] - G[3,2] * G[2]$ +G[4]: G[4] - G[4,2] * G[2]$ +G: ratsimp(G)$ + +G[3]: (rational(1/G[3,3])) * G[3]$ +G[4]: G[4] - G[4,3] * G[3]$ +G: ratsimp(G)$ + +G[2]: G[2] - G[2,3] * G[3]$ +G[1]: G[1] - G[1,3] * G[3]$ +G: ratsimp(G)$ + +G[1]: G[1] - G[1,2] * G[2]$ +G: ratsimp(G)$ + +G; + +b2: matrix([ G[1,5] ], [ G[2,5] ], [ G[3,5] ], [ G[4,5] ]); + +expand(D.b2 - lambda * b2 - b1); + +c1: 2 * realpart(b1); +d1: 2 * imagpart(b1); +c2: 2 * realpart(b2); +d2: 2 * imagpart(b2); + +D.c1 - 2 * c1 + 3 * d1; +D.d1 - 3 * c1 - 2 * d1; +D.c2 - 2 * c2 + 3 * d2 - c1; +D.d2 - 3 * c2 - 2 * d2 - d1; diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex index 63858b7..9152ede 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex @@ -20,7 +20,7 @@ Das charakteristische Polynom der Matrix ist \] Es hat die doppelten Nullstellen \[ -\lambda +\lambda_\pm = 2\pm \sqrt{4-13} = @@ -28,6 +28,70 @@ Es hat die doppelten Nullstellen = 2\pm 3i. \] -Zur Bestimmung +Zur Bestimmung der Basis muss man jetzt zunächst den Kern von +$A_+=A-\lambda_+I$ bestimmen, zum Beispiel mit Hilfe des Gauss-Algorithmus, +man findet +\[ +b_1 += +\begin{pmatrix} +1+i\\ +2+2i\\ +i\\ +1 +\end{pmatrix} +\] +Als nächstes braucht man einen Vektor $b_1\in \ker A_+^2$, der +$b_1$ auf $b_1+\lambda_+b_2$ abbildet. +Durch Lösen des Gleichungssystems $Ab_2-\lambda b_2=b_1$ findet man +\[ +b_2 += +\begin{pmatrix} +2-i\\3\\2\\0 +\end{pmatrix} +\qquad\text{und damit weiter}\qquad +\overline{b}_1 += +\begin{pmatrix} +1-i\\ +2-2i\\ +-i\\ +1 +\end{pmatrix},\quad +\overline{b}_2 += +\begin{pmatrix} +2+i\\3\\2\\0 +\end{pmatrix}. +\] +Als Basis für die reelle Normalform von $A$ kann man jetzt die Vektoren +\begin{align*} +c_1 +&= +b_1+\overline{b}_1 = \begin{pmatrix}2\\4\\0\\2\end{pmatrix},& +d_1 +&= +\frac{1}{i}(b_1-\overline{b}_1) = \begin{pmatrix}2\\4\\2\\0\end{pmatrix},& +c_2 +&= +b_2+\overline{b}_2 = \begin{pmatrix}4\\6\\4\\0\end{pmatrix},& +d_2 +&= +\frac{1}{i}(b_2-\overline{b}_2) = \begin{pmatrix}-2\\0\\0\\0\end{pmatrix}. +\end{align*} +verwenden. +In dieser Basis hat $A$ die Matrix +\[ +A' += +\begin{pmatrix} + 2& 3& 1& 0\\ +-3& 2& 0& 1\\ + 0& 0& 2& 3\\ + 0& 0&-3& 2 +\end{pmatrix}, +\] +wie man einfach nachrechnen kann. \end{loesung} -- cgit v1.2.1 From 07c9ffa51ec328b1a344970bb8b875b5bbe58be2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 20:56:49 +0200 Subject: typo --- buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex index 9152ede..b162f0f 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex @@ -78,7 +78,7 @@ c_2 b_2+\overline{b}_2 = \begin{pmatrix}4\\6\\4\\0\end{pmatrix},& d_2 &= -\frac{1}{i}(b_2-\overline{b}_2) = \begin{pmatrix}-2\\0\\0\\0\end{pmatrix}. +\frac{1}{i}(b_2-\overline{b}_2) = \begin{pmatrix}-2\\0\\0\\0\end{pmatrix} \end{align*} verwenden. In dieser Basis hat $A$ die Matrix -- cgit v1.2.1 From 2140a3c82f6c531a6b2a2f837a03788f519eb0f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 20:58:07 +0200 Subject: typo --- buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex index b162f0f..a2fcca1 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex @@ -39,7 +39,7 @@ b_1 2+2i\\ i\\ 1 -\end{pmatrix} +\end{pmatrix}. \] Als nächstes braucht man einen Vektor $b_1\in \ker A_+^2$, der $b_1$ auf $b_1+\lambda_+b_2$ abbildet. -- cgit v1.2.1 From 1209527c93f5696af0c5192c89e1736c84a3f54a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 20:59:24 +0200 Subject: typo --- buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex index a2fcca1..d3dd0f6 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex @@ -43,7 +43,7 @@ i\\ \] Als nächstes braucht man einen Vektor $b_1\in \ker A_+^2$, der $b_1$ auf $b_1+\lambda_+b_2$ abbildet. -Durch Lösen des Gleichungssystems $Ab_2-\lambda b_2=b_1$ findet man +Durch Lösen des Gleichungssystems $Ab_2-\lambda_+ b_2=b_1$ findet man \[ b_2 = -- cgit v1.2.1 From fa40b4ee94125720a16f24f291de941a3f6ca4d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 3 May 2021 21:02:02 +0200 Subject: typos --- buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex index d3dd0f6..7ccc065 100644 --- a/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex +++ b/buch/chapters/40-eigenwerte/uebungsaufgaben/4006.tex @@ -1,11 +1,11 @@ Man findet eine Basis, in der die Matrix \[ -A=\begin{pmatrix} +A=\begin{pmatrix*}[r] -5& 2& 6& 0\\ -11& 12& -3& -15\\ -7& 0& 9& 4\\ 0& 5& -7& -8 -\end{pmatrix} +\end{pmatrix*} \] die relle Normalform bekommt. @@ -85,12 +85,12 @@ In dieser Basis hat $A$ die Matrix \[ A' = -\begin{pmatrix} +\begin{pmatrix*}[r] 2& 3& 1& 0\\ -3& 2& 0& 1\\ 0& 0& 2& 3\\ 0& 0&-3& 2 -\end{pmatrix}, +\end{pmatrix*}, \] wie man einfach nachrechnen kann. \end{loesung} -- cgit v1.2.1 From 80416f0ab893f2b80a01be4acc13bd03c7a03682 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 20 May 2021 10:09:26 +0200 Subject: add new slides --- buch/chapters/80-wahrscheinlichkeit/parrondo.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/80-wahrscheinlichkeit/parrondo.tex b/buch/chapters/80-wahrscheinlichkeit/parrondo.tex index a62d813..688414c 100644 --- a/buch/chapters/80-wahrscheinlichkeit/parrondo.tex +++ b/buch/chapters/80-wahrscheinlichkeit/parrondo.tex @@ -24,15 +24,15 @@ Je nach Ausgang gewinnt oder verliert der Spieler eine Einheit. Sei $X$ die Zufallsvariable, die den gewonnen Betrag beschreibt. Für eine faire Münze ist die Gewinnerwartung in diesem Spiel natürlich $E(X)=0$. -Wenn die Wahrscheinlichkeit für einen Gewinn $1+e$ ist, dann muss -die Wahrscheinlichkeit für einen Verlust $1-e$ sein, und die +Wenn die Wahrscheinlichkeit für einen Gewinn $\frac12+e$ ist, dann muss +die Wahrscheinlichkeit für einen Verlust $\frac12-e$ sein, und die Gewinnerwartung ist \( E(X) = 1\cdot P(X=1) + (-1)\cdot P(X=-1) = -1+e + (-1)(1-e) +\frac12+e + (-1)\biggl(\frac12-e\biggr) = 2e. \) -- cgit v1.2.1 From afde1752bdb1adfec3fd1c369ecc69833ea6c2c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 20 May 2021 13:17:08 +0200 Subject: add new slides --- buch/chapters/80-wahrscheinlichkeit/parrondo.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/80-wahrscheinlichkeit/parrondo.tex b/buch/chapters/80-wahrscheinlichkeit/parrondo.tex index 688414c..50e7fda 100644 --- a/buch/chapters/80-wahrscheinlichkeit/parrondo.tex +++ b/buch/chapters/80-wahrscheinlichkeit/parrondo.tex @@ -763,7 +763,7 @@ Eigenwert $1$ finden, die Rechnung mit dem Gauss-Algorithmus liefert p= \frac{1}{709} \begin{pmatrix} -245\\180\\84 +245\\180\\284 \end{pmatrix}. \] Damit kann man jetzt die Gewinnwahrscheinlichkeit im iterierten Spiel -- cgit v1.2.1 From 8c5d6d7b31f052bd90010a0ed182ac6468c10bc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 24 May 2021 09:41:46 +0200 Subject: abschnitt spektrale Graphentheorie --- buch/chapters/70-graphen/Makefile.inc | 1 + buch/chapters/70-graphen/chapter.tex | 1 + buch/chapters/70-graphen/images/Makefile | 5 +- buch/chapters/70-graphen/images/petersonchrind.pdf | Bin 0 -> 15217 bytes buch/chapters/70-graphen/images/petersonchrind.tex | 142 +++++++++++ buch/chapters/70-graphen/spektral.tex | 269 ++++++++------------- buch/chapters/70-graphen/waerme.tex | 184 ++++++++++++++ 7 files changed, 434 insertions(+), 168 deletions(-) create mode 100644 buch/chapters/70-graphen/images/petersonchrind.pdf create mode 100644 buch/chapters/70-graphen/images/petersonchrind.tex create mode 100644 buch/chapters/70-graphen/waerme.tex (limited to 'buch/chapters') diff --git a/buch/chapters/70-graphen/Makefile.inc b/buch/chapters/70-graphen/Makefile.inc index d8fe742..2a7d9a6 100644 --- a/buch/chapters/70-graphen/Makefile.inc +++ b/buch/chapters/70-graphen/Makefile.inc @@ -7,5 +7,6 @@ CHAPTERFILES = $(CHAPTERFILES) \ chapters/70-graphen/beschreibung.tex \ chapters/70-graphen/spektral.tex \ + chapters/70-graphen/waerme.tex \ chapters/70-graphen/wavelets.tex \ chapters/70-graphen/chapter.tex diff --git a/buch/chapters/70-graphen/chapter.tex b/buch/chapters/70-graphen/chapter.tex index b6e02c9..6def393 100644 --- a/buch/chapters/70-graphen/chapter.tex +++ b/buch/chapters/70-graphen/chapter.tex @@ -65,5 +65,6 @@ Basis zur Beschreibung von Funktionen auf dem Graphen. \input{chapters/70-graphen/beschreibung.tex} \input{chapters/70-graphen/spektral.tex} +\input{chapters/70-graphen/waerme.tex} \input{chapters/70-graphen/wavelets.tex} diff --git a/buch/chapters/70-graphen/images/Makefile b/buch/chapters/70-graphen/images/Makefile index bd77756..8f98134 100644 --- a/buch/chapters/70-graphen/images/Makefile +++ b/buch/chapters/70-graphen/images/Makefile @@ -3,11 +3,14 @@ # # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # -all: peterson.pdf adjazenzu.pdf adjazenzd.pdf kreis.pdf fundamental.pdf +all: peterson.pdf adjazenzu.pdf adjazenzd.pdf kreis.pdf fundamental.pdf \ + petersonchrind.pdf peterson.pdf: peterson.tex pdflatex peterson.tex +petersonchrind.pdf: petersonchrind.tex + pdflatex petersonchrind.tex adjazenzu.pdf: adjazenzu.tex pdflatex adjazenzu.tex diff --git a/buch/chapters/70-graphen/images/petersonchrind.pdf b/buch/chapters/70-graphen/images/petersonchrind.pdf new file mode 100644 index 0000000..23ef6e9 Binary files /dev/null and b/buch/chapters/70-graphen/images/petersonchrind.pdf differ diff --git a/buch/chapters/70-graphen/images/petersonchrind.tex b/buch/chapters/70-graphen/images/petersonchrind.tex new file mode 100644 index 0000000..4ae9f39 --- /dev/null +++ b/buch/chapters/70-graphen/images/petersonchrind.tex @@ -0,0 +1,142 @@ +% +% 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\Ra{2} +\def\Ri{1} +\def\e{1.0} +\def\r{0.2} + +\begin{scope}[xshift=-3.5cm] + +\definecolor{rot}{rgb}{0.8,0,0.8} +\definecolor{gruen}{rgb}{0.2,0.6,0.2} +\definecolor{blau}{rgb}{1,0.6,0.2} + +\coordinate (PA) at ({\Ri*sin(0*72)},{\e*\Ri*cos(0*72)}); +\coordinate (PB) at ({\Ri*sin(1*72)},{\e*\Ri*cos(1*72)}); +\coordinate (PC) at ({\Ri*sin(2*72)},{\e*\Ri*cos(2*72)}); +\coordinate (PD) at ({\Ri*sin(3*72)},{\e*\Ri*cos(3*72)}); +\coordinate (PE) at ({\Ri*sin(4*72)},{\e*\Ri*cos(4*72)}); + +\coordinate (QA) at ({\Ra*sin(0*72)},{\e*\Ra*cos(0*72)}); +\coordinate (QB) at ({\Ra*sin(1*72)},{\e*\Ra*cos(1*72)}); +\coordinate (QC) at ({\Ra*sin(2*72)},{\e*\Ra*cos(2*72)}); +\coordinate (QD) at ({\Ra*sin(3*72)},{\e*\Ra*cos(3*72)}); +\coordinate (QE) at ({\Ra*sin(4*72)},{\e*\Ra*cos(4*72)}); + +\draw (PA)--(PC)--(PE)--(PB)--(PD)--cycle; +\draw (QA)--(QB)--(QC)--(QD)--(QE)--cycle; +\draw (PA)--(QA); +\draw (PB)--(QB); +\draw (PC)--(QC); +\draw (PD)--(QD); +\draw (PE)--(QE); + +\fill[color=blau] (PA) circle[radius=\r]; +\fill[color=rot] (PB) circle[radius=\r]; +\fill[color=rot] (PC) circle[radius=\r]; +\fill[color=gruen] (PD) circle[radius=\r]; +\fill[color=gruen] (PE) circle[radius=\r]; + +\fill[color=rot] (QA) circle[radius=\r]; +\fill[color=blau] (QB) circle[radius=\r]; +\fill[color=gruen] (QC) circle[radius=\r]; +\fill[color=rot] (QD) circle[radius=\r]; +\fill[color=blau] (QE) circle[radius=\r]; + +\draw (PA) circle[radius=\r]; +\draw (PB) circle[radius=\r]; +\draw (PC) circle[radius=\r]; +\draw (PD) circle[radius=\r]; +\draw (PE) circle[radius=\r]; + +\draw (QA) circle[radius=\r]; +\draw (QB) circle[radius=\r]; +\draw (QC) circle[radius=\r]; +\draw (QD) circle[radius=\r]; +\draw (QE) circle[radius=\r]; + +\node at (0,{-\Ra}) [below] {$\operatorname{chr}P=3\mathstrut$}; + +\end{scope} + +\begin{scope}[xshift=3.5cm] +\definecolor{rot}{rgb}{0.8,0,0.8} +\definecolor{gruen}{rgb}{0.2,0.6,0.2} +\definecolor{blau}{rgb}{1,0.6,0.2} +\definecolor{gelb}{rgb}{0,0,1} + +\coordinate (PA) at ({\Ri*sin(0*72)},{\e*\Ri*cos(0*72)}); +\coordinate (PB) at ({\Ri*sin(1*72)},{\e*\Ri*cos(1*72)}); +\coordinate (PC) at ({\Ri*sin(2*72)},{\e*\Ri*cos(2*72)}); +\coordinate (PD) at ({\Ri*sin(3*72)},{\e*\Ri*cos(3*72)}); +\coordinate (PE) at ({\Ri*sin(4*72)},{\e*\Ri*cos(4*72)}); + +\coordinate (QA) at ({\Ra*sin(0*72)},{\e*\Ra*cos(0*72)}); +\coordinate (QB) at ({\Ra*sin(1*72)},{\e*\Ra*cos(1*72)}); +\coordinate (QC) at ({\Ra*sin(2*72)},{\e*\Ra*cos(2*72)}); +\coordinate (QD) at ({\Ra*sin(3*72)},{\e*\Ra*cos(3*72)}); +\coordinate (QE) at ({\Ra*sin(4*72)},{\e*\Ra*cos(4*72)}); + +\draw (PA)--(PC)--(PE)--(PB)--(PD)--cycle; +\draw (QA)--(QB)--(QC)--(QD)--(QE)--cycle; +\draw (PA)--(QA); +\draw (PB)--(QB); +\draw (PC)--(QC); +\draw (PD)--(QD); +\draw (PE)--(QE); + +\fill[color=rot] (QA) circle[radius={1.5*\r}]; +\fill[color=rot!40] (QB) circle[radius=\r]; +\fill[color=rot!40] (QE) circle[radius=\r]; +\fill[color=rot!40] (PA) circle[radius=\r]; + +\fill[color=blau] (PB) circle[radius={1.5*\r}]; +\fill[color=blau!40] (PD) circle[radius=\r]; +\fill[color=blau!40] (PE) circle[radius=\r]; +\fill[color=blau!80,opacity=0.5] (QB) circle[radius=\r]; + +\fill[color=gruen] (PC) circle[radius={1.5*\r}]; +\fill[color=gruen!40] (QC) circle[radius=\r]; +\fill[color=gruen!80,opacity=0.5] (PA) circle[radius=\r]; +\fill[color=gruen!80,opacity=0.5] (PE) circle[radius=\r]; + +\fill[color=gelb] (QD) circle[radius={1.5*\r}]; +\fill[color=gelb!80,opacity=0.5] (QC) circle[radius=\r]; +\fill[color=gelb!80,opacity=0.5] (QE) circle[radius=\r]; +\fill[color=gelb!80,opacity=0.5] (PD) circle[radius=\r]; + +\draw (PA) circle[radius=\r]; +\draw (PB) circle[radius={1.5*\r}]; +\draw (PC) circle[radius={1.5*\r}]; +\draw (PD) circle[radius=\r]; +\draw (PE) circle[radius=\r]; + +\draw (QA) circle[radius={1.5*\r}]; +\draw (QB) circle[radius=\r]; +\draw (QC) circle[radius=\r]; +\draw (QD) circle[radius={1.5*\r}]; +\draw (QE) circle[radius=\r]; + +\node at (0,{-\Ra}) [below] {$\operatorname{ind}P=4\mathstrut$}; + +\end{scope} + + + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/70-graphen/spektral.tex b/buch/chapters/70-graphen/spektral.tex index f68c814..bc5c425 100644 --- a/buch/chapters/70-graphen/spektral.tex +++ b/buch/chapters/70-graphen/spektral.tex @@ -1,198 +1,133 @@ % -% spektral.tex +% spektral.tex -- spektrale Graphentheorie % % (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil % \section{Spektrale Graphentheorie \label{buch:section:spektrale-graphentheorie}} \rhead{Spektrale Graphentheorie} -Die Laplace-Matrix codiert alle wesentliche Information eines +Die Adjazenz-Matrix, die Grad-Matrix und damit natürlich auch +die Laplace-Matrix codieren alle wesentliche Information eines ungerichteten Graphen. Sie operiert auf Vektoren, die für jeden Knoten des Graphen eine Komponente haben. Dies eröffnet die Möglichkeit, den Graphen über die linearalgebraischen -Eigenschaften der Laplace-Matrix zu studieren. +Eigenschaften dieser Matrizen zu studieren. +Dieser Abschnitt soll diese Idee an dem ziemlich übersichtlichen Beispiel +der chromatischen Zahl eines Graphen illustrieren. -\subsection{Grapheigenschaften und Spektrum von $L$ -\label{buch:subsection:grapheigenschaften-und-spektrum-von-l}} -TODO XXX +\subsection{Chromatische Zahl und Unabhängigkeitszahl +\label{buch:subsection:chromatische-zahl}} +Der Grad eines Knotens ist ein mass dafür, wie stark ein Graph +``vernetzt'' ist. +Je höher der Grad, desto mehr direkte Verbindungen zwischen Knoten gibt es. +Noch etwas präziser können diese Idee die beiden mit Hilfe der +chromatischen zahl und der Unabhängigkeitszahl erfasst werden. -\subsection{Wärmeleitung auf einem Graphen -\label{buch:subsection:waermeleitung-auf-einem-graphen}} -Die Vektoren, auf denen die Laplace-Matrix operiert, können betrachtet -werden als Funktionen, die jedem Knoten einen Wert zuordnen. -Eine mögliche physikalische Interpretation davon ist die Temperaturverteilung -auf dem Graphen. -Die Kanten zwischen den Knoten erlauben der Wärmeenergie, von einem Knoten -zu einem anderen zu fliessen. -Je grösser die Temperaturdifferenz zwischen zwei Knoten ist, desto -grösser ist der Wärmefluss und desto schneller ändert sich die Temperatur -der beteiligten Knoten. -Die zeitliche Änderung der Temperatur $T_i$ im Knoten $i$ ist proportional -\[ -\frac{dT_i}{dt} -= -\sum_{\text{$j$ Nachbar von $i$}} \kappa (T_j-T_i) -= -- -\kappa -\biggl( -d_iT_i -- -\sum_{\text{$j$ Nachbar von $i$}} T_j -\biggr) -\] -Der Term auf der rechten Seite ist genau die Wirkung der -Laplace-Matrix auf dem Vektor $T$ der Temperaturen: -\begin{equation} -\frac{dT}{dt} -= --\kappa L T. -\label{buch:graphen:eqn:waermeleitung} -\end{equation} -Der Wärmefluss, der durch die -Wärmeleitungsgleichung~\eqref{buch:graphen:eqn:waermeleitung} beschrieben -wird, codiert ebenfalls wesentliche Informationen über den Graphen. -Je mehr Kanten es zwischen verschiedenen Teilen eines Graphen gibt, -desto schneller findet der Wärmeaustausch zwischen diesen Teilen -statt. -Die Lösungen der Wärmeleitungsgleichung liefern also Informationen -über den Graphen. +\begin{definition} +Die {\em chromatische Zahl} $\operatorname{chr}G$ eines Graphen $G$ ist +die minimale Anzahl von Farben, die Einfärben der Knoten eines Graphen +nötig sind, sodass benachbarte Knoten verschiedene Farben haben. +\index{chromatische Zahl} +\end{definition} -\subsection{Eigenwerte und Eigenvektoren -\label{buch:subsection:ein-zyklischer-graph}} -Die Wärmeleitungsgleichung~\eqref{buch:graphen:eqn:waermeleitung} -ist eine lineare Differentialgleichung mit konstanten Koeffizienten, -die mit der Matrixexponentialfunktion gelöst werden. -Die Lösung ist -\[ -f(t) = e^{-\kappa Lt}f(0). -\] +\begin{definition} +Eine Menge von Knoten eines Graphen heisst {\em unabhängig}, wenn +keine zwei Knoten im Graphen verbunden sind. +Die {\em Unabhängigkeitszahl} $\operatorname{ind}G$ eines Graphen $G$ +ist die maximale Anzahl Knoten einer unabhängigen Menge. +\index{Unabhängigkeitszahl} +\end{definition} -Die Berechnung der Lösung mit der Matrixexponentialreihe ist ziemlich -ineffizient, da grosse Matrizenprodukte berechnet werden müssen. -Da die Matrix $L$ symmetrisch ist, gibt es eine Basis aus -orthonormierten Eigenvektoren und die Eigenwerte sind reell. -Wir bezeichnen die Eigenvektoren mit $f_1,\dots,f_n$ und die -zugehörigen Eigenwerte mit $\lambda_i$. -Die Funktion $f_i(t)= e^{-\kappa\lambda_it}f_i$ ist dann eine Lösung -der Wärmeleitungsgleichung, denn die beiden Seiten +Zwischen der chromatischen Zahl und der Unabhängigkeitszahl eines Graphen +muss es einen Zusammenhang geben. +Je mehr Verbingungen es im Graphen gibt, desto grösser wird die chromatische +Zahl. +Gleichzeitig wird es schwieriger für Mengen von Knoten, unabhängig zu sein. + +\begin{satz} +\label{buch:satz:chrind} +Ist $G$ ein Graph mit $n$ Knoten, dann gilt +$\operatorname{chr}G\cdot\operatorname{ind}G\ge n$. +\end{satz} + +\begin{proof}[Beweis] +Eine minimale Färbung des Graphen mit $\operatorname{chr}G$ Farben +teilt die Knoten in $\operatorname{chr}G$ Mengen $V_f$ von Knoten mit +gleicher Farbe $f$ ein. +Da diese Mengen einfarbig sind, sind sie unabhängig, enthalten also +höchstens so viele Knoten, wie die Unabhängigkeitszahl erlaubt. +Die Gesamtzahl der Knoten ist also \begin{align*} -\frac{d}{dt}f_i(t) +V +&= +\bigcup_{\text{$f$ eine Farbe}} V_f +&&\Rightarrow& +n &= --\kappa\lambda_ie^{-\kappa\lambda_it}f_i +\sum_{\text{$f$ eine Farbe}} |V_f| +\le +\sum_{\text{$f$ eine Farbe}} \operatorname{ind}G = --\kappa\lambda_i f_i(t) +(\text{Anzahl Farben})\cdot \operatorname{ind}G \\ --\kappa Lf_i(t) +& +&&& &= --\kappa e^{-\kappa\lambda_it} Lf_i -= --\kappa e^{-\kappa\lambda_it} \lambda_i f_i -= --\kappa \lambda_i f_i(t) +\operatorname{chr}G \cdot \operatorname{ind}G \end{align*} -von \eqref{buch:graphen:eqn:waermeleitung} stimmen überein. +Damit ist $n\le \operatorname{chr}G\cdot\operatorname{ind}G$ gezeigt. +\qedhere +\end{proof} -Eine Lösung der Wärmeleitungsgleichung zu einer beliebigen -Anfangstemperaturverteilung $f$ kann durch Linearkombination aus -den Lösungen $f_i(t)$ zusammengesetzt werden. -Dazu ist nötig, $f$ aus den Vektoren $f_i$ linear zu kombinieren. -Da aber die $f_i$ orthonormiert sind, ist dies besonders einfach, -die Koeffizienten sind die Skalarprodukte mit den Eigenvektoren: -\[ -f=\sum_{i=1}^n \langle f_i,f\rangle f_i. -\] -Daraus kann man die allgmeine Lösungsformel -\begin{equation} -f(t) -= -\sum_{i=1}^n \langle f_i,f\rangle f_i(t) -= -\sum_{i=1}^n \langle f_i,f\rangle e^{-\kappa\lambda_i t}f_i -\label{buch:graphen:eqn:eigloesung} -\end{equation} -ableiten. +\begin{beispiel} +In einem vollständigen Graphen ist jeder Knoten mit jedem anderen verbunden. +Jede Menge mit zwei oder mehr Knoten kann daher nicht unabhängig sein, die +Unabhängigkeitszahl ist daher $\operatorname{ind}G=1$. +Andererseits ist für jeden Knoten eine eigene Farbe nötig, daher ist die +chromatische Zahl $\operatorname{chr}G=n$. +Die Ungleichung von Satz~\ref{buch:satz:chrind} ist erfüllt, sogar mit +Gleichheit. +Das Beispiel zeigt, dass die Ungleichung nicht ohne zusätzliche Annahmen +verbessert werden kann. +\end{beispiel} -\subsection{Beispiel: Ein zyklischer Graph} \begin{figure} \centering -\includegraphics{chapters/70-graphen/images/kreis.pdf} -\caption{Beispiel Graph zur Illustration der verschiedenen Basen auf einem -Graphen. -\label{buch:graphen:fig:kreis}} +\includegraphics{chapters/70-graphen/images/petersonchrind.pdf} +\caption{Chromatische Zahl und Unabhängigkeitszahl des Peterson-Graphen. +Die chromatische Zahl ist $3$, da der Graph sich mit drei Farben einfärben +lässt (links). +Die Unabhängigkeitszahl ist $4$, die vier grösseren Knoten im rechten +Graphen sind unabhängig. +Die Farben der kleinen Knoten sind die additive Mischung der Farben +der grossen Knoten, mit denen sie verbunden sind. +\label{buch:graphen:fig:chrindpeterson}} \end{figure} -Wir illustrieren die im folgenden entwickelte Theorie an dem Beispielgraphen -von Abbildung~\ref{buch:graphen:fig:kreis}. -Besonders interessant sind die folgenden Funktionen: -\[ -\left. -\begin{aligned} -s_m(k) -&= -\sin\frac{2\pi mk}{n} -\\ -c_m(k) -&= -\cos\frac{2\pi mk}{n} -\end{aligned} -\; -\right\} -\quad -\Rightarrow -\quad -e_m(k) -= -e^{2\pi imk/n} -= -c_m(k) + is_m(k). -\] -Das Skalarprodukt dieser Funktionen ist -\[ -\langle e_m, e_{m'}\rangle -= -\frac1n -\sum_{k=1}^n -\overline{e^{2\pi i km/n}} -e^{2\pi ikm'/n} -= -\frac1n -\sum_{k=1}^n -e^{\frac{2\pi i}{n}(m'-m)k} -= -\delta_{mm'} -\] -Die Funktionen bilden daher eine Orthonormalbasis des Raums der -Funktionen auf $G$. -Wegen $\overline{e_m} = e_{-m}$ folgt, dass für gerade $n$ -die Funktionen -\[ -c_0, c_1,s_1,c_2,s_2,\dots c_{\frac{n}2-1},c_{\frac{n}2-1},c_{\frac{n}2} -\] -eine orthonormierte Basis. +\begin{beispiel} +Der Peterson-Graph $P$ von Abbildung~\ref{buch:graphen:fig:chrindpeterson} +hat chromatische Zahl $\operatorname{chr}P=3$ und unabhängigkeitszahl +$\operatorname{ind}P=4$. +Die Ungleichung von Satz~\ref{buch:satz:chrind} ist erfüllt, sogar als +Ungleichung: $\operatorname{chr}P\cdot\operatorname{ind}P=3\cdot 4=12>10=n$. +\end{beispiel} -Die Laplace-Matrix kann mit der folgenden Definition zu einer linearen -Abbildung auf Funktionen auf dem Graphen gemacht werden. -Sei $f\colon V\to \mathbb{R}$ und $L$ die Laplace-Matrix mit -Matrixelementen $l_{vv'}$ wobei $v,v'\in V$ ist. -Dann definieren wir die Funktion $Lf$ durch -\[ -(Lf)(v) -= -\sum_{v'\in V} l_{vv'}f(v'). -\] +Nach Definition ist Unabhängigkeitszahl ein Mass für die Grösse einer +unabhängigen Menge von Punkten. +Der Beweis von Satz~\ref{buch:satz:chrind} zeigt, dass man sich die +chromatische Zahl als ein Mass dafür, wieviele solche anabhängige +Mengen in einem Grapehn untergebracht werden können. + +\subsection{Chromatische Zahl und maximaler Grad +\label{buch:subsection:chr-und-maximaler-grad}} + +\subsection{Maximaler Eigenwert von $A(G)$ maximaler Grad +\label{buch:subsection:maximaler-eigenwert}} -\subsection{Standardbasis und Eigenbasis -\label{buch:subsection:standardbasis-und-eigenbasis}} -Die einfachste Basis, aus der siche Funktionen auf dem Graphen linear -kombinieren lassen, ist die Standardbasis. -Sie hat für jeden Knoten $v$ des Graphen eine Basisfunktion mit den Werten -\[ -e_v\colon V\to\mathbb R:v'\mapsto \begin{cases} -1\qquad&v=v'\\ -0\qquad&\text{sonst.} -\end{cases} -\] +\subsection{$\alpha_{\text{max}}$ eines Untegraphen +\label{buch:subsection:alphamax-eines-untergraphen}} +\subsection{Chromatische Zahl und $\alpha_{\text{max}}$ +\label{buch:subsection:chr-und-alpha-max}} diff --git a/buch/chapters/70-graphen/waerme.tex b/buch/chapters/70-graphen/waerme.tex new file mode 100644 index 0000000..e7fc023 --- /dev/null +++ b/buch/chapters/70-graphen/waerme.tex @@ -0,0 +1,184 @@ +% +% waerme.tex +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Wärmeleitung auf einem Graphen +\label{buch:section:waermeleitung-auf-einem-graphen}} +Die Vektoren, auf denen die Laplace-Matrix operiert, können betrachtet +werden als Funktionen, die jedem Knoten einen Wert zuordnen. +Eine mögliche physikalische Interpretation davon ist die Temperaturverteilung +auf dem Graphen. +Die Kanten zwischen den Knoten erlauben der Wärmeenergie, von einem Knoten +zu einem anderen zu fliessen. +Je grösser die Temperaturdifferenz zwischen zwei Knoten ist, desto +grösser ist der Wärmefluss und desto schneller ändert sich die Temperatur +der beteiligten Knoten. +Die zeitliche Änderung der Temperatur $T_i$ im Knoten $i$ ist proportional +\[ +\frac{dT_i}{dt} += +\sum_{\text{$j$ Nachbar von $i$}} \kappa (T_j-T_i) += +- +\kappa +\biggl( +d_iT_i +- +\sum_{\text{$j$ Nachbar von $i$}} T_j +\biggr) +\] +Der Term auf der rechten Seite ist genau die Wirkung der +Laplace-Matrix auf dem Vektor $T$ der Temperaturen: +\begin{equation} +\frac{dT}{dt} += +-\kappa L T. +\label{buch:graphen:eqn:waermeleitung} +\end{equation} +Der Wärmefluss, der durch die +Wärmeleitungsgleichung~\eqref{buch:graphen:eqn:waermeleitung} beschrieben +wird, codiert ebenfalls wesentliche Informationen über den Graphen. +Je mehr Kanten es zwischen verschiedenen Teilen eines Graphen gibt, +desto schneller findet der Wärmeaustausch zwischen diesen Teilen +statt. +Die Lösungen der Wärmeleitungsgleichung liefern also Informationen +über den Graphen. + +\subsection{Eigenwerte und Eigenvektoren +\label{buch:subsection:ein-zyklischer-graph}} +Die Wärmeleitungsgleichung~\eqref{buch:graphen:eqn:waermeleitung} +ist eine lineare Differentialgleichung mit konstanten Koeffizienten, +die mit der Matrixexponentialfunktion gelöst werden. +Die Lösung ist +\[ +f(t) = e^{-\kappa Lt}f(0). +\] + +Die Berechnung der Lösung mit der Matrixexponentialreihe ist ziemlich +ineffizient, da grosse Matrizenprodukte berechnet werden müssen. +Da die Matrix $L$ symmetrisch ist, gibt es eine Basis aus +orthonormierten Eigenvektoren und die Eigenwerte sind reell. +Wir bezeichnen die Eigenvektoren mit $f_1,\dots,f_n$ und die +zugehörigen Eigenwerte mit $\lambda_i$. +Die Funktion $f_i(t)= e^{-\kappa\lambda_it}f_i$ ist dann eine Lösung +der Wärmeleitungsgleichung, denn die beiden Seiten +\begin{align*} +\frac{d}{dt}f_i(t) +&= +-\kappa\lambda_ie^{-\kappa\lambda_it}f_i += +-\kappa\lambda_i f_i(t) +\\ +-\kappa Lf_i(t) +&= +-\kappa e^{-\kappa\lambda_it} Lf_i += +-\kappa e^{-\kappa\lambda_it} \lambda_i f_i += +-\kappa \lambda_i f_i(t) +\end{align*} +von \eqref{buch:graphen:eqn:waermeleitung} stimmen überein. + +Eine Lösung der Wärmeleitungsgleichung zu einer beliebigen +Anfangstemperaturverteilung $f$ kann durch Linearkombination aus +den Lösungen $f_i(t)$ zusammengesetzt werden. +Dazu ist nötig, $f$ aus den Vektoren $f_i$ linear zu kombinieren. +Da aber die $f_i$ orthonormiert sind, ist dies besonders einfach, +die Koeffizienten sind die Skalarprodukte mit den Eigenvektoren: +\[ +f=\sum_{i=1}^n \langle f_i,f\rangle f_i. +\] +Daraus kann man die allgmeine Lösungsformel +\begin{equation} +f(t) += +\sum_{i=1}^n \langle f_i,f\rangle f_i(t) += +\sum_{i=1}^n \langle f_i,f\rangle e^{-\kappa\lambda_i t}f_i +\label{buch:graphen:eqn:eigloesung} +\end{equation} +ableiten. + +\subsection{Beispiel: Ein zyklischer Graph} +\begin{figure} +\centering +\includegraphics{chapters/70-graphen/images/kreis.pdf} +\caption{Beispiel Graph zur Illustration der verschiedenen Basen auf einem +Graphen. +\label{buch:graphen:fig:kreis}} +\end{figure} +Wir illustrieren die im folgenden entwickelte Theorie an dem Beispielgraphen +von Abbildung~\ref{buch:graphen:fig:kreis}. +Besonders interessant sind die folgenden Funktionen: +\[ +\left. +\begin{aligned} +s_m(k) +&= +\sin\frac{2\pi mk}{n} +\\ +c_m(k) +&= +\cos\frac{2\pi mk}{n} +\end{aligned} +\; +\right\} +\quad +\Rightarrow +\quad +e_m(k) += +e^{2\pi imk/n} += +c_m(k) + is_m(k). +\] +Das Skalarprodukt dieser Funktionen ist +\[ +\langle e_m, e_{m'}\rangle += +\frac1n +\sum_{k=1}^n +\overline{e^{2\pi i km/n}} +e^{2\pi ikm'/n} += +\frac1n +\sum_{k=1}^n +e^{\frac{2\pi i}{n}(m'-m)k} += +\delta_{mm'} +\] +Die Funktionen bilden daher eine Orthonormalbasis des Raums der +Funktionen auf $G$. +Wegen $\overline{e_m} = e_{-m}$ folgt, dass für gerade $n$ +die Funktionen +\[ +c_0, c_1,s_1,c_2,s_2,\dots c_{\frac{n}2-1},c_{\frac{n}2-1},c_{\frac{n}2} +\] +eine orthonormierte Basis. + + +Die Laplace-Matrix kann mit der folgenden Definition zu einer linearen +Abbildung auf Funktionen auf dem Graphen gemacht werden. +Sei $f\colon V\to \mathbb{R}$ und $L$ die Laplace-Matrix mit +Matrixelementen $l_{vv'}$ wobei $v,v'\in V$ ist. +Dann definieren wir die Funktion $Lf$ durch +\[ +(Lf)(v) += +\sum_{v'\in V} l_{vv'}f(v'). +\] + +\subsection{Standardbasis und Eigenbasis +\label{buch:subsection:standardbasis-und-eigenbasis}} +Die einfachste Basis, aus der siche Funktionen auf dem Graphen linear +kombinieren lassen, ist die Standardbasis. +Sie hat für jeden Knoten $v$ des Graphen eine Basisfunktion mit den Werten +\[ +e_v\colon V\to\mathbb R:v'\mapsto \begin{cases} +1\qquad&v=v'\\ +0\qquad&\text{sonst.} +\end{cases} +\] + + -- cgit v1.2.1 From 18fb6543de96f23cfa254005a045e1595f48cff2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 24 May 2021 13:58:26 +0200 Subject: =?UTF-8?q?Kapitel=20=C3=BCber=20spektrale=20Graphentheorie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buch/chapters/70-graphen/images/Makefile | 5 +- buch/chapters/70-graphen/images/nine.pdf | Bin 0 -> 2136 bytes buch/chapters/70-graphen/images/nine.tex | 67 +++++++ buch/chapters/70-graphen/spektral.tex | 335 ++++++++++++++++++++++++++++++- 4 files changed, 403 insertions(+), 4 deletions(-) create mode 100644 buch/chapters/70-graphen/images/nine.pdf create mode 100644 buch/chapters/70-graphen/images/nine.tex (limited to 'buch/chapters') diff --git a/buch/chapters/70-graphen/images/Makefile b/buch/chapters/70-graphen/images/Makefile index 8f98134..d34247b 100644 --- a/buch/chapters/70-graphen/images/Makefile +++ b/buch/chapters/70-graphen/images/Makefile @@ -4,7 +4,7 @@ # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # all: peterson.pdf adjazenzu.pdf adjazenzd.pdf kreis.pdf fundamental.pdf \ - petersonchrind.pdf + petersonchrind.pdf nine.pdf peterson.pdf: peterson.tex pdflatex peterson.tex @@ -23,3 +23,6 @@ kreis.pdf: kreis.tex fundamental.pdf: fundamental.tex pdflatex fundamental.tex +nine.pdf: nine.tex + pdflatex nine.tex + diff --git a/buch/chapters/70-graphen/images/nine.pdf b/buch/chapters/70-graphen/images/nine.pdf new file mode 100644 index 0000000..2ae9f68 Binary files /dev/null and b/buch/chapters/70-graphen/images/nine.pdf differ diff --git a/buch/chapters/70-graphen/images/nine.tex b/buch/chapters/70-graphen/images/nine.tex new file mode 100644 index 0000000..f214c1e --- /dev/null +++ b/buch/chapters/70-graphen/images/nine.tex @@ -0,0 +1,67 @@ +% +% nine.tex -- Nine node graph to illustrate Wilf's theorem +% +% (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} +\def\kante#1#2{ + \draw[shorten >= 0.2cm,shorten <= 0.2cm] (#1) -- (#2); +} +\def\knoten#1#2{ + \fill[color=#2!30] (#1) circle[radius=0.2]; + \draw[color=#2] (#1) circle[radius=0.2]; + \draw (#1) circle[radius=0.2]; +} +\def\R{1.5} +\definecolor{rot}{rgb}{1,0,0} +\definecolor{gruen}{rgb}{0,0.6,0} +\definecolor{blau}{rgb}{0,0,1} + +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\coordinate (A) at (0:\R); +\coordinate (B) at (40:\R); +\coordinate (C) at (80:\R); +\coordinate (D) at (120:\R); +\coordinate (E) at (160:\R); +\coordinate (F) at (200:\R); +\coordinate (G) at (240:\R); +\coordinate (H) at (280:\R); +\coordinate (I) at (320:\R); + +\knoten{A}{rot} +\knoten{B}{blau} +\knoten{C}{gruen} +\knoten{D}{blau} +\knoten{E}{rot} +\knoten{F}{blau} +\knoten{G}{rot} +\knoten{H}{gruen} +\knoten{I}{blau} + +\kante{A}{B} +\kante{B}{C} +\kante{C}{D} +\kante{D}{E} +\kante{E}{F} +\kante{F}{G} +\kante{G}{H} +\kante{H}{I} +\kante{I}{A} + +\kante{A}{C} +\kante{A}{D} +\kante{D}{G} + + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/70-graphen/spektral.tex b/buch/chapters/70-graphen/spektral.tex index bc5c425..571b7e1 100644 --- a/buch/chapters/70-graphen/spektral.tex +++ b/buch/chapters/70-graphen/spektral.tex @@ -119,15 +119,344 @@ Der Beweis von Satz~\ref{buch:satz:chrind} zeigt, dass man sich die chromatische Zahl als ein Mass dafür, wieviele solche anabhängige Mengen in einem Grapehn untergebracht werden können. +% +% Chromatische Zahl und maximaler Grad +% \subsection{Chromatische Zahl und maximaler Grad \label{buch:subsection:chr-und-maximaler-grad}} +Wenn kein Knoten mehr als $d$ Nachbarn hat, dann reichen +$d+1$ Farben immer, um diesen Knoten und seine Nachbarn einzufärben. +Das heisst aber noch nicht, dass dann auch $d+1$ Farben zur +Einfärbung des ganzen Graphen reichen. +Genau dies garantiert jedoch der folgende Satz. + +\begin{definition} +Der {\em maximale Grad} +\( +\max_{v\in V} \deg(v) +\) +wird mit $d$ bezeichnet. +\end{definition} + +\begin{satz} +\label{buch:graphen:satz:chrmaxgrad} +Ist $G$ ein Graph mit maximalem Grad $d$, dann gilt +$\operatorname{chr}G \le d+1$. +\end{satz} + +\begin{proof}[Beweis] +Wir führen den Beweis mit Hilfe von vollständiger Induktion nach der +Anzahl Knoten eines Graphen. +Ein Graph mit nur einem Knoten hat keine Kanten, der maximale Grad ist +daher $0$ und $d+1=1$ Farbe reicht auch tatsächlich zur Einfärbung des +einen Knotens. -\subsection{Maximaler Eigenwert von $A(G)$ maximaler Grad +Wir nehmen jetzt an, die Behaupt sei für Graphen mit $n-1$ Knoten bereits +bewiesen, ein Graph $G'$ mit $n-1$ Knoten und maximalem Grad $d'$ erfüllt +also die Ungleichung $\operatorname{chr}G'\le d'+1$. + +Wir wählen jetzt einen beleibigen Knoten $v$ des Graphen $G$ und bilden +den Graphen $G'$, der aus $G$ entsteht, indem man den Knoten $v$ +entfernt: $G'=G\setminus\{v\}$. +Der maximale Grad $d'$ von $G'$ kann dabei nicht grösser werden, es ist +also $d'\le d$. +Da $G'$ genau $n-1$ Knoten hat, lässt er sich mit höchstens $d'+1\le d+1$ +Farben einfärben. +Es muss jetzt also nur noch eine Farbe für den Knoten $v$ gefunden werden. +Da $d$ der maximale Grad ist, hat $v$ höchstens $d$ Nachbarn, die höchstens +$d$ verschiedene Farben haben können. +Von den $d+1$ zur Verfügung stehenden Farben bleibt also mindestens eine +übrig, mit der man den Knoten $v$ einfärben kann. +Damit ist der Induktionsschritt gelungen und somit der Satz bewiesen. +\end{proof} + +Das Argument im Beweis von Satz~\ref{buch:graphen:satz:chrmaxgrad} +ist für alle Begriffe anwendbar, die sich bei der Bildung eines +Untergraphen auf ``monotone'' Art ändern. +Die chromatische Zahl eines Untergraphen ist höchstens so gross wie die +des ganzen Graphen. +Dann kann man eine Ungleichung für grosse Graphen schrittweise aus +entsprechenden Ungleichungen für die kleineren Teilgraphen gewinnen. +Ziel der folgenden Abschnitte ist zu zeigen, dass sich eine Grösse +mit ähnlichen Eigenschaften aus dem Eigenwertspektrum der Adjazenzmatrix +ablesen lässt. +Daraus ergibt sich dann eine bessere Abschätzung der chromatischen Zahl +eines Graphen. + +% +% maximaler Eigenwert und maximaler Grad +% +\subsection{Maximaler Eigenwert von $A(G)$ und maximaler Grad \label{buch:subsection:maximaler-eigenwert}} +Die Adjazenzmatrix $A(G)$ eines Graphen $G$ mit $n$ Knoten enthält unter +anderem auch die Information über den Grad eines Knotens. +Die Summe der Elemente einer Zeile oder einer Spalte ergibt einen Vektor, +der die Grade der Knoten als Komponenten enthält. +Ist $U$ ein $n$-dimensionaler Vektor aus lauter Einsen, dann ist +ist $A(G)U$ ein Spaltenvektor bestehend aus den Zeilensummen der Matrix +$A(G)$ und +$U^tA(G)$ ein Zeilenvektor bestehend aus den Spaltensummen. +$A(G)U$ ist also der Vektor der Grade der Knoten. + +Das Skalarprodukt von $A(G)U$ mit $U$ ist die Summe der Grade. +Somit ist +\begin{equation} +\frac{\langle A(G)U,U\rangle}{\langle U,U\rangle} += +\frac{1}{\langle U,U\rangle}\sum_{v\in V}\deg(v) += +\frac{1}{n}(d_1+\dots+d_n) +\label{buch:graphen:eqn:AUdavg} +\end{equation} +der mittlere Grad, der mit $\overline{d}$ bezeichnet werden soll. -\subsection{$\alpha_{\text{max}}$ eines Untegraphen +Da $A(G)$ eine symmetrische Matrix ist, ist $A(G)$ diagonalisierbar, +die Eigenwerte sind also alle reell. +Es ist ausserdem bekannt, dass der Eigenvektor $f$ zum grössten Eigenwert +$\alpha_{\text{max}}$ von $A(G)$ +den Bruch +\[ +\frac{\langle A(G)f,f\rangle}{\langle f,f\rangle} +\] +für Vektoren $f\ne 0$ maximiert. +Aus~\eqref{buch:graphen:eqn:AUdavg} folgt damit, dass +\begin{equation} +\overline{d} +\le +\alpha_{\text{max}} +\label{buch:graphen:eqn:dqueramax} +\end{equation} +ist. + +In Abschnitt~\ref{buch:section:positive-vektoren-und-matrizen} +des nächsten Kapitels wird die Perron-Frobenius-Theorie positiver +Matrizen vorgestellt, welche einer Reihe interessanter Aussagen +über den betragsgrössten Eigenwert und den zugehörigen Eigenvektor +macht. +Die Adjazenz-Matrix ist eine nichtnegative Matrix und $\alpha_{\text{max}}$ +ist der grösste Eigenwert, also genau die Grösse, auf die die +Sätze~\ref{buch:wahrscheinlichkeit:satz:perron-frobenius} +und \label{buch:wahrscheinlichkeit:satz:perron-frobenius2} +anwendbar sind. +Dazu muss die Matrix allerdings primitiv sein, was gleichbedeutend +ist damit, dass der Graph zusammenhängend ist. +Im folgenden soll dies daher jeweils angenommen werden. + +\begin{satz} +Ist $G$ ein zusammenhänger Graph mit $n$ Knoten und maximalem Grad $d$, +dann gilt +\[ +\frac1n\sum_{v\in V} \deg(v) += +\overline{d} +\le \alpha_{\text{max}} \le d. +\] +\end{satz} + +\begin{proof}[Beweis] +Wir wissen aus \eqref{buch:graphen:eqn:dqueramax} bereits, dass +$\overline{d}\le\alpha_{\text{max}}$ gilt, es bleibt also nur noch +$\alpha_{\text{max}}\le d$ zu beweisen. + +Sei $f$ der Eigenvektor zum Eigenwert $\alpha_{\text{max}}$. +Nach Satz~\label{buch:wahrscheinlichkeit:satz:perron-frobenius2} +ist $f$ ein positiver Vektor mit der Eigenschaft $A(G)f=\alpha_{\text{max}}f$. +Der Eigenvektor $f$ ist eine Funktion auf den Knoten des Graphen, +die $v$-Komponente des Vektors $f$ für einen Vertex $v\in V$ ist $f(v)$. +Die Eigenvektoreigenschaft bedeutet $(A(G)f)(v)=\alpha_{\text{max}} f(v)$. +Die Adjazenzmatrix $A(G)$ enthält in Zeile $v$ Einsen genau für diejenigen +Knoten $u\in V$, die zu $v$ benachbart sind. +Schreiben wir $u\sim v$ für die Nachbarschaftsrelation, dann ist +\[ +(A(G)f)(v) += +\sum_{u\sim v} f(u). +\] +Die Summe der Komponenten $A(G)f$ kann man erhalten durch Multiplikation +von $A(G)f$ mit einem Zeilenvektor $U^t$ aus lauter Einsen, also +\begin{equation} +\begin{aligned} +\sum_{v\in V}\sum_{u\sim v}f(v) +&= +U^tA(G)f += +(U^tA(G))f += +\begin{pmatrix}d_1&d_2&\dots&d_n\end{pmatrix} f +\\ +&= +\sum_{v\in V}\deg (v) f(v) +\le +\sum_{v\in V}df(v) += +d +\sum_{v\in V}f(v). +\end{aligned} +\label{buch:graphen:eqn:sumkomp} +\end{equation} +Andererseits ist $A(G)f=\alpha_{\text{max}}f$, die linke Seite +von~\eqref{buch:graphen:eqn:sumkomp} ist daher +\begin{equation} +\sum_{v\in V}\sum_{u\sim v}f(v) += +U^tA(G)f += +\alpha_{\text{max}} +U^tf += +\alpha_{\text{max}} \sum_{v\in V}f(v). +\label{buch:graphen:eqn:sumkomp2} +\end{equation} +Die Ungleichung~\eqref{buch:graphen:eqn:sumkomp} +und die Gleichung~\eqref{buch:graphen:eqn:sumkomp2} ergeben zusammen +die Ungleichung +\[ +\alpha_{\text{max}} \sum_{v\in V}f(v) +\le d\sum_{v\in V}f(v) +\qquad\Rightarrow\qquad +\alpha_{\text{max}} \le d, +\] +da die Summe der Komponenten des positiven Vektors $f$ nicht verschwinden +kann. +Damit ist die Ungleichung bewiesen. +\end{proof} + +% +% alpha_max eines Untergraphen +% +\subsection{$\alpha_{\text{max}}$ eines Untergraphen \label{buch:subsection:alphamax-eines-untergraphen}} +Der grösste Eigenwert $\alpha_{\text{max}}$ ist ein potentieller +Anwärter für eine bessere Abschätzung der chromatischen Zahl. +Bereits früher wurde bemerkt, dass dies auch bedeutet, dass man +das Verhalten des grössten Eigenwerts bei einem Übergang zu einem +Untergraphen verstehen muss. -\subsection{Chromatische Zahl und $\alpha_{\text{max}}$ +\begin{satz} +\label{buch:graphen:satz:amaxuntergraph} +Sei $G'$ ein echter Untergraph von $G$ mit Adjazenzmatrix $A(G')$ und +grösstem Eigenwert $\alpha_{\text{max}}'=\varrho(A(G'))$, dann ist +$\alpha_{\text{max}}' \le \alpha_{\text{max}}$. +\end{satz} + +\begin{proof}[Beweis] +Sei $f'$ der positive Eigenvektor zum Eigenwert $\alpha_{\text{max}}'$ +der Matrix $A(G')$. +$f'$ ist definiert auf der Menge $V'$ der Knoten von $G'$. +Aus $f'$ lässt sich ein Vektor $g$ mit den Werten +\[ +g(v) += +\begin{cases} +f'(v)&\qquad v\in V'\\ + 0&\qquad\text{sonst} +\end{cases} +\] +konstruieren, der auf ganz $V$ definiert ist. + +Die Vektoren $f'$ und $g$ haben die gleichen Komponenten, also ist auch +$\langle f',f'\rangle = \langle g,g\rangle$. +Die Matrixelemente von $A(G')$ und $A(G)$ auf gemeinsamen Knoten $u,v\in V'$ +erfüllen $A(G')_{uv}\le A(G)_{uv}$, da jede Kante von $G'$ auch in $G$ ist. +Daher gilt +\[ +\langle A(G')f',f'\rangle +\le +\langle A(G)g,g\rangle, +\] +woraus sich die Ungleichung +\[ +\alpha_{\text{max}}' += +\frac{\langle A(G')f',f'\rangle}{\langle f',f'\rangle} += +\frac{\langle A(G)g,g\rangle}{\langle g,g\rangle} +\le +\alpha_{\text{max}} +\] +ergibt, da $\alpha_{\text{max}}$ das Maximum von +$\langle A(G)h,h\rangle/\langle h,h\rangle$ für alle Vektoren $h\ne 0$ ist. +\end{proof} + +% +% Der Satz von Wilf +% +\subsection{Chromatische Zahl und $\alpha_{\text{max}}$: Der Satz von Wilf \label{buch:subsection:chr-und-alpha-max}} +Die in Satz~\ref{buch:graphen:satz:amaxuntergraph} beschriebene +Eigenschaft von $\alpha_{\text{max}}$ beim Übergang zu einem Untergraphen +ermöglich jetzt, eine besser Abschätzung für die chromatische Zahl +zu finden. + +\begin{satz}[Wilf] +\label{buch:graphen:satz:wilf} +Sie $G$ ein zusammenhängder Graph und $\alpha_{\text{max}}$ der grösste +Eigenwert seiner Adjazenzmatrix. Dann gilt +\[ +\operatorname{chr}G\le \alpha_{\text{max}}+1. +\] +\end{satz} + +\begin{proof}[Beweis] +Wie der Satz~\ref{buch:graphen:satz:chrmaxgrad} kann auch der Satz von Wilf +mit Hilfe von vollständiger Induktion über die Anzahl $n$ der Knoten +bewiesen werden. + +Ein Graph mit nur einem Knoten hat die $0$-Matrix als Adjazenzmatrix, +der maximale Eigenwert ist $\alpha_{\text{max}}=0$, und tatsächlich reicht +$\alpha_{\text{max}}+1=1$ Farbe, um den einen Knoten einzufärben. + +Wir nehmen jetzt an, der Satz sei für Graphen mit $n-1$ Knoten bereits +beweisen. +Wir müssen dann zeigen, dass der Satz dann auch für Graphen mit $n$ Knoten +gilt. + +Sei $v\in V$ ein Knoten minimalen Grades und $G'=G\setminus{v}$ der +Untergraph, der entsteht, wenn der Knoten $v$ entfernt wird. +Da $G'$ genau $n-1$ Knoten hat, gilt der Satz von Wilf für $G'$ +und daher kann $G'$ mit höchstens +\[ +\operatorname{chr}G' \le 1 + \alpha_{\text{max}}' +\] +Farben eingefärbt werden. +Nach Satz~\ref{buch:graphen:satz:amaxuntergraph} ist +$\alpha_{\text{max}}'\le \alpha_{\text{max}}$, +Also kann $G'$ mit höchstens $\alpha_{\text{max}}+1$ Farben eingefärbt werden. + +Da $v$ ein Knoten minimalen Grades ist, ist sein Grad +$d(v)\le \overline{d}\le \alpha_{\text{max}}$. +Die Nachbarn von $v$ haben also hächstens $\alpha_{\text{max}}$ verschiedene +Farben, mit einer weiteren Farbe lässt sich also auch $G$ einfärben. +Daraus folgt $\operatorname{chr}G\le \alpha_{\text{max}}+1$. +\end{proof} + +\begin{figure} +\centering +\includegraphics{chapters/70-graphen/images/nine.pdf} +\caption{Beispiel für einen Graphen, für den der +Satz~\ref{buch:graphen:satz:wilf} von Wilf die bessere +Abschätzung für die chromatische Zahl eines Graphen gibt als der +maximale Grad. +\label{buch:graphen:fig:wilfexample}} +\end{figure} + +\begin{beispiel} +Der Graph in Abbildung~\ref{buch:graphen:fig:wilfexample} 12 Kanten und 9 +Knoten, daher ist $\overline{d}\le \frac{24}{9}$. +Der maximale Grad ist $4$ und durch explizite Rechnung mit Hilfe zum Beispiel +von Octave ergibt, dass $\alpha_{\text{max}}\approx 2.9565$. +Aus dem Satz von Wilf folgt, dass +$\operatorname{chr}G\le \alpha_{\text{max}}+1$, und daraus ergibt sich +$\operatorname{chr}G\le 3$. +Tatsächlich ist die chromatische Zahl $\operatorname{chr}G=3$, da +der Graph mindestens ein Dreieck enthält. +Der maximale Grad ist 4, somit gibt der +Satz~\ref{buch:graphen:satz:chrmaxgrad} +die Schranke +$\operatorname{chr}G\le 4+1=5$ +für die chromatische Zahl. +Der Satz von Wilf ist also eine wesentliche Verbesserung. +\end{beispiel} + + -- cgit v1.2.1 From 7e4a7b847c63064a40fd7a4d3829eddb4191aa9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 24 May 2021 20:36:06 +0200 Subject: Wavelets auf einem Graphen --- buch/chapters/70-graphen/beschreibung.tex | 2 +- buch/chapters/70-graphen/images/Makefile | 5 +- buch/chapters/70-graphen/images/gh.pdf | Bin 0 -> 26177 bytes buch/chapters/70-graphen/images/gh.tex | 55 +++++++ buch/chapters/70-graphen/spektral.tex | 25 ++-- buch/chapters/70-graphen/wavelets.tex | 228 ++++++++++++++++++++++++++++-- buch/chapters/references.bib | 6 + 7 files changed, 298 insertions(+), 23 deletions(-) create mode 100644 buch/chapters/70-graphen/images/gh.pdf create mode 100644 buch/chapters/70-graphen/images/gh.tex (limited to 'buch/chapters') diff --git a/buch/chapters/70-graphen/beschreibung.tex b/buch/chapters/70-graphen/beschreibung.tex index 25cfcc0..a0f46da 100644 --- a/buch/chapters/70-graphen/beschreibung.tex +++ b/buch/chapters/70-graphen/beschreibung.tex @@ -401,7 +401,7 @@ Sie hat für $i\ne j$ die Einträge \\ &=\text{Anzahl der Kanten, die $i$ mit $j$ verbinden} \\ -&=a_{ij} +&=a_{ij}. \end{align*} Die Adjazenzmatrix eines Graphen lässt sich also aus der Inzidenzmatrix berechnen. diff --git a/buch/chapters/70-graphen/images/Makefile b/buch/chapters/70-graphen/images/Makefile index d34247b..5db54c8 100644 --- a/buch/chapters/70-graphen/images/Makefile +++ b/buch/chapters/70-graphen/images/Makefile @@ -4,7 +4,7 @@ # (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule # all: peterson.pdf adjazenzu.pdf adjazenzd.pdf kreis.pdf fundamental.pdf \ - petersonchrind.pdf nine.pdf + petersonchrind.pdf nine.pdf gh.pdf peterson.pdf: peterson.tex pdflatex peterson.tex @@ -26,3 +26,6 @@ fundamental.pdf: fundamental.tex nine.pdf: nine.tex pdflatex nine.tex +gh.pdf: gh.tex + pdflatex gh.tex + diff --git a/buch/chapters/70-graphen/images/gh.pdf b/buch/chapters/70-graphen/images/gh.pdf new file mode 100644 index 0000000..c6e48d7 Binary files /dev/null and b/buch/chapters/70-graphen/images/gh.pdf differ diff --git a/buch/chapters/70-graphen/images/gh.tex b/buch/chapters/70-graphen/images/gh.tex new file mode 100644 index 0000000..fcceb5f --- /dev/null +++ b/buch/chapters/70-graphen/images/gh.tex @@ -0,0 +1,55 @@ +% +% gh.tex -- Lokalsierungsfunktionen für Wavelets auf einem Graphen +% +% (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] +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\kurve#1#2{ + \draw[color=#2,line width=1.4pt] + plot[domain=0:6.3,samples=400] + ({\x},{7*\x*exp(-(\x/#1)*(\x/#1))/#1}); +} + +\begin{scope} + +\draw[->] (-0.1,0) -- (6.6,0) coordinate[label={$\lambda$}]; + +\kurve{1}{red} +\foreach \k in {0,...,4}{ + \pgfmathparse{0.30*exp(ln(2)*\k)} + \xdef\l{\pgfmathresult} + \kurve{\l}{blue} +} + +\node[color=red] at ({0.7*1},3) [above] {$g(\lambda)$}; +\node[color=blue] at ({0.7*0.3*16},3) [above] {$g_i(\lambda)$}; + +\draw[->] (0,-0.1) -- (0,3.3); +\end{scope} + +\begin{scope}[xshift=7cm] + +\draw[->] (-0.1,0) -- (6.6,0) coordinate[label={$\lambda$}]; + +\draw[color=darkgreen,line width=1.4pt] + plot[domain=0:6.3,samples=100] + ({\x},{3*exp(-(\x/0.5)*(\x/0.5)}); + +\draw[->] (0,-0.1) -- (0,3.3) coordinate[label={right:$\color{darkgreen}h(\lambda)$}]; + +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/70-graphen/spektral.tex b/buch/chapters/70-graphen/spektral.tex index 571b7e1..5fb3056 100644 --- a/buch/chapters/70-graphen/spektral.tex +++ b/buch/chapters/70-graphen/spektral.tex @@ -56,8 +56,10 @@ Eine minimale Färbung des Graphen mit $\operatorname{chr}G$ Farben teilt die Knoten in $\operatorname{chr}G$ Mengen $V_f$ von Knoten mit gleicher Farbe $f$ ein. Da diese Mengen einfarbig sind, sind sie unabhängig, enthalten also -höchstens so viele Knoten, wie die Unabhängigkeitszahl erlaubt. -Die Gesamtzahl der Knoten ist also +höchstens so viele Knoten, wie die Unabhängigkeitszahl erlaubt, +also $|V_f|\le \operatorname{ind}G$. +Da die Menge aller Knoten die Vereinigung der Mengen $V_f$ ist, +ist die Gesamtzahl der Knoten \begin{align*} V &= @@ -66,15 +68,15 @@ V n &= \sum_{\text{$f$ eine Farbe}} |V_f| -\le -\sum_{\text{$f$ eine Farbe}} \operatorname{ind}G -= -(\text{Anzahl Farben})\cdot \operatorname{ind}G \\ & &&& -&= -\operatorname{chr}G \cdot \operatorname{ind}G +&\le +\sum_{\text{$f$ eine Farbe}} \operatorname{ind}G += +(\text{Anzahl Farben})\cdot \operatorname{ind}G += +\operatorname{chr}G \cdot \operatorname{ind}G. \end{align*} Damit ist $n\le \operatorname{chr}G\cdot\operatorname{ind}G$ gezeigt. \qedhere @@ -117,7 +119,7 @@ Nach Definition ist Unabhängigkeitszahl ein Mass für die Grösse einer unabhängigen Menge von Punkten. Der Beweis von Satz~\ref{buch:satz:chrind} zeigt, dass man sich die chromatische Zahl als ein Mass dafür, wieviele solche anabhängige -Mengen in einem Grapehn untergebracht werden können. +Mengen in einem Graphen untergebracht werden können. % % Chromatische Zahl und maximaler Grad @@ -131,7 +133,7 @@ Einfärbung des ganzen Graphen reichen. Genau dies garantiert jedoch der folgende Satz. \begin{definition} -Der {\em maximale Grad} +Der maximale Grad \( \max_{v\in V} \deg(v) \) @@ -455,7 +457,8 @@ Satz~\ref{buch:graphen:satz:chrmaxgrad} die Schranke $\operatorname{chr}G\le 4+1=5$ für die chromatische Zahl. -Der Satz von Wilf ist also eine wesentliche Verbesserung. +Der Satz von Wilf ist also eine wesentliche Verbesserung, er liefert in +diesem Fall den exakten Wert der chromatischen Zahl. \end{beispiel} diff --git a/buch/chapters/70-graphen/wavelets.tex b/buch/chapters/70-graphen/wavelets.tex index 9c88c08..ae065bc 100644 --- a/buch/chapters/70-graphen/wavelets.tex +++ b/buch/chapters/70-graphen/wavelets.tex @@ -103,22 +103,230 @@ aus der sich alle Vektoren linear kombinieren lassen, in der aber auch auf die für die Anwendung interessante Längenskala angepasste Funktionen gefunden werden können. -\subsection{Wavelets und Frequenzspektrum} -Eine Wavelet-Basis der Funktionen auf $\mathbb{R}$ zerlegt +\subsection{Wavelets auf einem Graphen} +Die Fourier-Theorie analysiert Funktionen nach Frequenzen, wobei die +zeitliche Position von interessanten Stellen der Funktion in der Phase +der einzelnen Komponenten verschwindet. +Die Lokalisierung geht also für viele praktische Zwecke verloren. +Umgekehrt haben einzelne Ereignisse wie eine $\delta$-Funktion keine +charakteristische Frequenz, sie sind daher im Frequenzraum überhaupt +nicht lokalisierbar. +Die Darstellung im Frequenzraum und in der Zeit sind also extreme +Darstellungen, entweder Frequenzlokalisierung oder zeitliche Lokalisierung +ermöglichen, sich aber gegenseitig ausschliessen. +\subsubsection{Dilatation} +Eine Wavelet-Basis für die $L^2$-Funktionen auf $\mathbb{R}$ erlaubt +eine Funktion auf $\mathbb{R}$ auf eine Art zu analysieren, die eine +ungenaue zeitliche Lokalisierung bei entsprechend ungenauer +Frequenzbestimmung ermöglicht. +Ausserdem entstehen die Wavelet-Funktionen aus einer einzigen Funktion +$\psi(t)$ durch Translation um $b$ und Dilatation mit dem Faktor $a$: +\[ +\psi_{a,b}(t) += +\frac{1}{\sqrt{|a|}} \psi\biggl(\frac{t-b}a\biggr) += +T_bD_a\psi(t) +\] +in der Notation von \cite{buch:mathsem-wavelets}. +Auf einem Graphen ist so eine Konstruktion grundsätzlich nicht möglich, +da es darauf weder eine Translations- noch eine Streckungsoperation gibt. + +In der Theorie der diskreten Wavelet-Transformation ist es üblich, sich +auf Zweierpotenzen als Streckungsfaktoren zu beschränken. +Ein Gitter wird dadurch auf sich selbst abgebildet, aber auf einem +Graphen gibt es keine Rechtfertigung für diese spezielle Wahl von +Streckungsfaktoren mehr. +Es stellt sich daher die Frage, ob man für eine beliebige Menge +\( +T= \{ t_1,t_2,\dots\} \} +\) +von Streckungsfaktoren eine Familie von Funktionen $\chi_j$ zu finden +derart, dass man sich die $\chi_j$ in einem gewissen Sinn als aus +$\chi_0$ durch Dilatation entstanden vorstellen kann. -\subsection{Frequenzspektrum -\label{buch:subsection:frequenzspektrum}} -Die Fundamentallösung der Wärmeleitunsgleichung haben ein Spektrum, welches -wie $e^{-k^2}$ gegen $0$ geht. +Die Dilatation kann natürlich nicht von einer echten +Dilatation im Ortsraum herstammen, aber man kann wenigstens versuchen, die +Dilatation im Frequenzraum nachzubilden. +Für Funktionen in $L^2(\mathbb{R})$ entspricht die Dilatation mit dem +Faktor $a$ im Ortsraum der Dilatation mit dem Faktor $1/a$ im Frequenzraum: +\[ +\widehat{D_af}(\omega) = D_{1/a}\hat{f}(\omega). +\] +\cite[Satz~3.14]{buch:mathsem-wavelets}. +Es bleibt aber das Problem, dass sich auch die Skalierung im Frequenzraum +nicht durchführen lässt, da auch das Frequenzspektrum des Graphen nur eine +Menge von reellen Zahlen ohne innere algebraische Struktur ist. + +\subsubsection{Mutterwavelets} +\begin{figure} +\centering +\includegraphics{chapters/70-graphen/images/gh.pdf} +\caption{Lokalisierungsfunktion $g(\lambda)$ für die Dilatation (links). +Die Dilatierten Funktionen $g_i=\tilde{D}_{1/a_i}g$ lokalisieren +die Frequenzen jeweils um die Frequenzen $a_i$ im Frequenzraum. +Der Konstante Vektor ist vollständig delokalisiert, die Funktion $h$ +in der rechten Abbildung entfernt die hohen Frequenzen und liefert Funktionen, +die in der Umgebung eines Knotens wie die Konstante Funktion aussehen. +\label{buch:graphs:fig:lokalisierung}} +\end{figure} +Das Mutter-Wavelet einer Wavelet-Analyse zeichnet definiert, in welchem Mass +sich Funktionen im Orts- und im Frequenzraum lokalisieren lassen. +Die Standardbasis der Funktionen auf einem Graphen repräsentieren die +perfekte örtliche Lokalisierung, Eigenbasis der Laplace-Matrix repräsentiert +die perfekte Lokalisierung im Frequenzraum. +Sei $g(\lambda)\ge 0$ eine Funktion im Frequenzraum, die für $\lambda\to0$ und +$\lambda\to\infty$ rasch abfällt mit einem Maximum irgendwo dazwischen +(Abbildung~\ref{buch:graphs:fig:lokalisierung}). +Sie kann als eine Lokalisierungsfunktion im Frequenzraum betrachtet werden. -Die Fundamentallösung entsteht dadurch, dass die hohen Frequenzen -schneller dämpft als die tiefen Frequenzen. +Die Matrix $g(I)$ bildet entfernt aus einer Funktion die ganz hohen und +die ganz tiefen Frequenz, lokalisiert also die Funktionen im Frequenzraum. +Die Standardbasisvektoren werden dabei zu Funktionen, die nicht mehr nur +auf einem Knoten von $0$ verschieden sind, aber immer noch einigermassen +auf dem Graphen lokalisiert sind. +Natürlich sind vor allem die Werte auf den Eigenwerten +$\lambda_0 < \lambda_1\le \dots\le \lambda_n$ der Laplace-Matrix +von Interesse. +Die Matrix $g(I)$ kann mit Hilfe der Spektraltheorie berechnet werden, +was im vorliegenden Fall naheliegend ist, weil ja die Eigenvektoren von +der Laplace-Matrix bereits bekannt sind. +Die Matrix $\chi^t$ bildet die Standardbasisvektoren in die +Eigenbasis-Vektoren ab, also in eine Zerlegung im Frequenzraum ab, +$\chi$ vermittelt die Umkehrabbildung. +Mit der Spektraltheorie findet man für die Abbildung $g(I)$ die Matrix +\begin{equation} +g(I) += +\chi +\begin{pmatrix} +g(\lambda_0)&0&\dots&0\\ +0&g(\lambda_1)&\dots&0\\ +\vdots&\vdots&\ddots&\vdots\\ +0&0&\dots&g(\lambda_n) +\end{pmatrix} +\chi^t. +\label{buch:graphen:eqn:mutterwavelet} +\end{equation} -\subsection{Wavelet-Basen -\label{buch:subsection:}} +\subsubsection{Dilatation} +Die Dilatation um $a$ im Ortsraum wird zu einer Dilatation um $1/a$ im +Frequenzraum. +Statt also nach einer echten Dilatation der Spaltenvektoren in $g(I)$ +zu suchen, kann man sich darauf verlegen, Funktionen zu finden, deren +Spektrum von einer Funktionen lokalisiert worden ist, die eine Dilatation +von $g$ ist. +Man wählt daher eine ansteigende Folge $A=(a_1,\dots)$ von Streckungsfaktoren +und betrachtet anstelle von $g$ die dilatierten Funktionen +$g_i=\tilde{D}_{1/a_i}g$. +Die zugehörigen Wavelet-Funktionen auf dem Graphen können wieder mit +der Formel~\eqref{buch:graphen:eqn:mutterwavelet} berechnet werden, +man erhält +\begin{equation} +\tilde{D}_{1/a_i}g(I) += +g_i(I) += +\chi +\begin{pmatrix} +g(a_i\lambda_0)&0&\dots&0\\ +0&g(a_i\lambda_1)&\dots&0\\ +\vdots&\vdots&\ddots&\vdots\\ +0&0&\dots&g(a_i\lambda_n) +\end{pmatrix} +\chi^t . +\end{equation} +Die Spalten von $g_i(I)$ bilden wieder eine Menge von Funktionen, die +eine gemäss $g_i$ lokalisiertes Spektrum haben. +\subsubsection{Vater-Wavelet} +Wegen $g(0)=0$ wird die konstante Funktion, die Eigenvektor zum Eigenwert +$\lambda_0=0$ ist, von den Abbildungen $g_i(I)$ auf $0$ abgebildet. +Andererseits ist diese Funktion nicht lokalisiert, man möchte Sie also +für die Analyse nicht unbedingt verwenden. +Man wählt daher eine Funktion $h(\lambda)$ mit $h(0)=1$ so, dass +für $\lambda\to \infty$ der Wert $h(\lambda)$ genügend rasch gegen $0$ +geht. +Die Matrix $h(I)$ bildet daher den konstanten Vektor nicht auf $0$ ab, +sondern lokalisiert ihn im Ortsraum. +Wir erhalten daher in den Spalten von $h(I)$ Vektoren, die um die +einzelnen Knoten lokalisiert sind. + +\subsubsection{Rekonstruktion} +Die Operatoren $h(I)$ und $g_i(I)$ erzeugen analysieren eine Funktion +nach den verschiedenen Frequenzen mit den Skalierungsfaktoren $a_i$, +aber die Rekonstruktion ist noch nicht klar. +Diese wäre einfacher, wenn die Operatoren zusammen die identische +Abbildung ergäben, wenn also +\[ +h(I) + \sum_{i}g_i(I)=I +\] +gelten würde. +Nach der Spektraltheorie gilt das nur, wenn für alle Eigenwerte +$\lambda_k$, $k=1,\dots,n$ +\[ +h(\lambda_k) + \sum_ig(a_i\lambda_k)=1 +\] +gilt. +Für beleibige Funktionen $g$ und $h$ kann man nicht davon ausgehen, +aber man kann erwarten. +Man muss daher zusätzlich verlangen, dass +\[ +h(\lambda_k) + \sum_{i} g(a_i\lambda_k) > 0 +\] +ist für alle Eigenwerte $\lambda_k$. + +\subsubsection{Frame} +Die Menge von Vektoren, die in der vorangegangenen Konstruktion gefunden +wurden, ist zu gross, um eine Basis zu sein. +Vektoren lassen sich darin auf verschiedene Art darstellen. +Wir verlangen aber auch keine eindeutige Darstellung, nur eine +Darstellung, in der wir die ``dominierenden'' Komponenten in jeder +Frequenzskala identifizieren können. + +\begin{definition} +\label{buch:graphen:def:frame} +Ein Frame des Vektorraumes $\mathbb{R}^n$ ist eine Menge +$F=\{e_k\;|\; k=1,\dots,N\}$ von Vektoren mit der Eigenschaft +\begin{equation} +A\|v\|^2 +\le +\sum_{k=1}^N |\langle v,e_k\rangle|^2 +\le +B\|v\|^2 +\label{buch:graphen:eqn:frame} +\end{equation} +Die Zahlen $A$ und $B$ heissen die {\em Frame-Konstanten} des Frames. +\end{definition} + +Die oben gefundenen Vektoren, die Spalten Vektoren von $h(I)$ und $g_i(I)$ +bilden daher ein Frame. +Die Frame-Konstanten kann man unmittelbar ausrechnen. +Der mittlere Term von \eqref{buch:graphen:eqn:frame} ist +\[ +\|h(I) v\|^2 ++ +\sum_{i} \|g_i(I)v\|^2, +\] +die durch die Funktion +\[ +f(\lambda) += +h(\lambda)^2 + \sum_i g_i(\lambda)^2 +\] +abgeschätzt werden kann. +Die Frame-Konstanten sind daher +\begin{align*} +A&=\min_{k} f(\lambda_k) +& +&\text{und}& +B&=\max_{k} f(\lambda_k). +\end{align*} +Die Konstruktion hat also ein Frame für die Funktionen auf dem Graphen +etabliert, die viele Eigenschaften einer Multiskalenanalyse in diese +wesentlich weniger symmetrische Situation rettet. diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib index a4579e7..a5d0201 100644 --- a/buch/chapters/references.bib +++ b/buch/chapters/references.bib @@ -21,6 +21,12 @@ abstract = "In this paper, we present Google, a prototype of a large-scale searc } +@book{buch:mathsem-wavelets, + title = {Mathematisches Seminar Wavelets}, + author = { Andreas M"uller and others }, + year = {2019}, +} + @book{buch:mathsem-dgl, title = {Mathematisches Seminar Differentialgleichungen}, author = { Andreas M"uller and others }, -- cgit v1.2.1 From 40db89ca6efb1a6b962fe237c5641c939b18dde6 Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Tue, 25 May 2021 00:47:51 +0200 Subject: Add book reference, fix typos --- buch/chapters/10-vektorenmatrizen/gruppen.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/10-vektorenmatrizen/gruppen.tex b/buch/chapters/10-vektorenmatrizen/gruppen.tex index 9848469..7628942 100644 --- a/buch/chapters/10-vektorenmatrizen/gruppen.tex +++ b/buch/chapters/10-vektorenmatrizen/gruppen.tex @@ -182,7 +182,7 @@ begegnet, wo wir nur gezeigt haben, dass $AA^{-1}=E$ ist. Da aber die invertierbaren Matrizen eine Gruppe bilden, folgt jetzt aus dem Satz automatisch, dass auch $A^{-1}A=E$. -\subsubsection{Homomorphismen} +\subsubsection{Homomorphismen} \label{buch:gruppen:subsection:homomorphismen} Lineare Abbildung zwischen Vektorräumen zeichnen sich dadurch aus, dass sie die algebraische Struktur des Vektorraumes respektieren. Für eine Abbildung zwischen Gruppen heisst dies, dass die Verknüpfung, -- cgit v1.2.1 From c4cd9d1d746d382c4afe67078cb31997db1a5f9c Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Tue, 25 May 2021 00:53:59 +0200 Subject: Typos in chapter Vectore und Matrizen --- buch/chapters/10-vektorenmatrizen/gruppen.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/10-vektorenmatrizen/gruppen.tex b/buch/chapters/10-vektorenmatrizen/gruppen.tex index 9848469..6453566 100644 --- a/buch/chapters/10-vektorenmatrizen/gruppen.tex +++ b/buch/chapters/10-vektorenmatrizen/gruppen.tex @@ -313,14 +313,14 @@ auf einem geeigneten Vektorraum. \begin{definition} \label{buch:vektorenmatrizen:def:darstellung} Eine Darstellung einer Gruppe $G$ ist ein Homomorphismus -$G\to\operatorname{GL}_(\mathbb{R})$. +$G\to\operatorname{GL}_n(\mathbb{R})$. \index{Darstellung} \end{definition} \begin{beispiel} Die Gruppen $\operatorname{GL}_n(\mathbb{Z})$, $\operatorname{SL}_n(\mathbb{Z})$ oder $\operatorname{SO}(n)$ -sind alle Teilmengen von $\operatorname{GL}_n(\mathbb{R}$. + sind alle Teilmengen von $\operatorname{GL}_n(\mathbb{R})$. Die Einbettungsabbildung $G\hookrightarrow \operatorname{GL}_n(\mathbb{R})$ ist damit automatisch eine Darstellung, sie heisst auch die {\em reguläre Darstellung} der Gruppe $G$. -- cgit v1.2.1 From f1229a2d10f67eaefa4903a1e94d8259517bdd1c Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Tue, 25 May 2021 00:56:22 +0200 Subject: Remove whitespace Made a typo while fixing one ... --- buch/chapters/10-vektorenmatrizen/gruppen.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/10-vektorenmatrizen/gruppen.tex b/buch/chapters/10-vektorenmatrizen/gruppen.tex index 6453566..dfa7ab9 100644 --- a/buch/chapters/10-vektorenmatrizen/gruppen.tex +++ b/buch/chapters/10-vektorenmatrizen/gruppen.tex @@ -320,7 +320,7 @@ $G\to\operatorname{GL}_n(\mathbb{R})$. \begin{beispiel} Die Gruppen $\operatorname{GL}_n(\mathbb{Z})$, $\operatorname{SL}_n(\mathbb{Z})$ oder $\operatorname{SO}(n)$ - sind alle Teilmengen von $\operatorname{GL}_n(\mathbb{R})$. +sind alle Teilmengen von $\operatorname{GL}_n(\mathbb{R})$. Die Einbettungsabbildung $G\hookrightarrow \operatorname{GL}_n(\mathbb{R})$ ist damit automatisch eine Darstellung, sie heisst auch die {\em reguläre Darstellung} der Gruppe $G$. -- cgit v1.2.1 From 0c790bc7f4a0e39efc45b5aa007a4e0d94ae5b74 Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Wed, 26 May 2021 15:48:00 +0200 Subject: Typo in lie groups --- buch/chapters/60-gruppen/lie-gruppen.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/chapters') diff --git a/buch/chapters/60-gruppen/lie-gruppen.tex b/buch/chapters/60-gruppen/lie-gruppen.tex index d6fc007..e92c254 100644 --- a/buch/chapters/60-gruppen/lie-gruppen.tex +++ b/buch/chapters/60-gruppen/lie-gruppen.tex @@ -29,7 +29,7 @@ wenn es gelingt, eine Karte für eine Umgebung des neutralen Elements zu finden. Dazu muss gezeigt werden, dass sich aus einer solchen Karte für jedes andere Gruppenelement eine Karte für eine Umgebung ableiten lässt. -Sei also $\varphi_e\colon U_e\mathbb{R}^N$ eine Karte für die Umgebung +Sei also $\varphi_e\colon U_e \to \mathbb{R}^N$ eine Karte für die Umgebung $U_e\subset G$ von $e\in G$. Für $g\in G$ ist dann die Abbildung \[ -- cgit v1.2.1 From 9771c90a2643fc790dec3fb66741b969a379682e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Fri, 28 May 2021 08:27:18 +0200 Subject: wavelets, slides --- buch/chapters/70-graphen/wavelets.tex | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'buch/chapters') diff --git a/buch/chapters/70-graphen/wavelets.tex b/buch/chapters/70-graphen/wavelets.tex index ae065bc..ef1520e 100644 --- a/buch/chapters/70-graphen/wavelets.tex +++ b/buch/chapters/70-graphen/wavelets.tex @@ -174,14 +174,14 @@ die in der Umgebung eines Knotens wie die Konstante Funktion aussehen. Das Mutter-Wavelet einer Wavelet-Analyse zeichnet definiert, in welchem Mass sich Funktionen im Orts- und im Frequenzraum lokalisieren lassen. Die Standardbasis der Funktionen auf einem Graphen repräsentieren die -perfekte örtliche Lokalisierung, Eigenbasis der Laplace-Matrix repräsentiert +perfekte örtliche Lokalisierung, Eigenbasis der Laplace-Matrix $L$ repräsentiert die perfekte Lokalisierung im Frequenzraum. Sei $g(\lambda)\ge 0$ eine Funktion im Frequenzraum, die für $\lambda\to0$ und $\lambda\to\infty$ rasch abfällt mit einem Maximum irgendwo dazwischen (Abbildung~\ref{buch:graphs:fig:lokalisierung}). Sie kann als eine Lokalisierungsfunktion im Frequenzraum betrachtet werden. -Die Matrix $g(I)$ bildet entfernt aus einer Funktion die ganz hohen und +Die Matrix $g(L)$ bildet entfernt aus einer Funktion die ganz hohen und die ganz tiefen Frequenz, lokalisiert also die Funktionen im Frequenzraum. Die Standardbasisvektoren werden dabei zu Funktionen, die nicht mehr nur auf einem Knoten von $0$ verschieden sind, aber immer noch einigermassen @@ -190,15 +190,15 @@ Natürlich sind vor allem die Werte auf den Eigenwerten $\lambda_0 < \lambda_1\le \dots\le \lambda_n$ der Laplace-Matrix von Interesse. -Die Matrix $g(I)$ kann mit Hilfe der Spektraltheorie berechnet werden, +Die Matrix $g(L)$ kann mit Hilfe der Spektraltheorie berechnet werden, was im vorliegenden Fall naheliegend ist, weil ja die Eigenvektoren von der Laplace-Matrix bereits bekannt sind. Die Matrix $\chi^t$ bildet die Standardbasisvektoren in die Eigenbasis-Vektoren ab, also in eine Zerlegung im Frequenzraum ab, $\chi$ vermittelt die Umkehrabbildung. -Mit der Spektraltheorie findet man für die Abbildung $g(I)$ die Matrix +Mit der Spektraltheorie findet man für die Abbildung $g(L)$ die Matrix \begin{equation} -g(I) +g(L) = \chi \begin{pmatrix} @@ -214,7 +214,7 @@ g(\lambda_0)&0&\dots&0\\ \subsubsection{Dilatation} Die Dilatation um $a$ im Ortsraum wird zu einer Dilatation um $1/a$ im Frequenzraum. -Statt also nach einer echten Dilatation der Spaltenvektoren in $g(I)$ +Statt also nach einer echten Dilatation der Spaltenvektoren in $g(L)$ zu suchen, kann man sich darauf verlegen, Funktionen zu finden, deren Spektrum von einer Funktionen lokalisiert worden ist, die eine Dilatation von $g$ ist. @@ -225,9 +225,9 @@ Die zugehörigen Wavelet-Funktionen auf dem Graphen können wieder mit der Formel~\eqref{buch:graphen:eqn:mutterwavelet} berechnet werden, man erhält \begin{equation} -\tilde{D}_{1/a_i}g(I) +\tilde{D}_{1/a_i}g(L) = -g_i(I) +g_i(L) = \chi \begin{pmatrix} @@ -238,30 +238,30 @@ g(a_i\lambda_0)&0&\dots&0\\ \end{pmatrix} \chi^t . \end{equation} -Die Spalten von $g_i(I)$ bilden wieder eine Menge von Funktionen, die +Die Spalten von $g_i(L)$ bilden wieder eine Menge von Funktionen, die eine gemäss $g_i$ lokalisiertes Spektrum haben. \subsubsection{Vater-Wavelet} Wegen $g(0)=0$ wird die konstante Funktion, die Eigenvektor zum Eigenwert -$\lambda_0=0$ ist, von den Abbildungen $g_i(I)$ auf $0$ abgebildet. +$\lambda_0=0$ ist, von den Abbildungen $g_i(L)$ auf $0$ abgebildet. Andererseits ist diese Funktion nicht lokalisiert, man möchte Sie also für die Analyse nicht unbedingt verwenden. Man wählt daher eine Funktion $h(\lambda)$ mit $h(0)=1$ so, dass für $\lambda\to \infty$ der Wert $h(\lambda)$ genügend rasch gegen $0$ geht. -Die Matrix $h(I)$ bildet daher den konstanten Vektor nicht auf $0$ ab, +Die Matrix $h(L)$ bildet daher den konstanten Vektor nicht auf $0$ ab, sondern lokalisiert ihn im Ortsraum. -Wir erhalten daher in den Spalten von $h(I)$ Vektoren, die um die +Wir erhalten daher in den Spalten von $h(L)$ Vektoren, die um die einzelnen Knoten lokalisiert sind. \subsubsection{Rekonstruktion} -Die Operatoren $h(I)$ und $g_i(I)$ erzeugen analysieren eine Funktion +Die Operatoren $h(L)$ und $g_i(L)$ erzeugen analysieren eine Funktion nach den verschiedenen Frequenzen mit den Skalierungsfaktoren $a_i$, aber die Rekonstruktion ist noch nicht klar. Diese wäre einfacher, wenn die Operatoren zusammen die identische Abbildung ergäben, wenn also \[ -h(I) + \sum_{i}g_i(I)=I +h(L) + \sum_{i}g_i(L)=I \] gelten würde. Nach der Spektraltheorie gilt das nur, wenn für alle Eigenwerte @@ -301,14 +301,14 @@ B\|v\|^2 Die Zahlen $A$ und $B$ heissen die {\em Frame-Konstanten} des Frames. \end{definition} -Die oben gefundenen Vektoren, die Spalten Vektoren von $h(I)$ und $g_i(I)$ +Die oben gefundenen Vektoren, die Spalten Vektoren von $h(L)$ und $g_i(L)$ bilden daher ein Frame. Die Frame-Konstanten kann man unmittelbar ausrechnen. Der mittlere Term von \eqref{buch:graphen:eqn:frame} ist \[ -\|h(I) v\|^2 +\|h(L) v\|^2 + -\sum_{i} \|g_i(I)v\|^2, +\sum_{i} \|g_i(L)v\|^2, \] die durch die Funktion \[ -- cgit v1.2.1