aboutsummaryrefslogtreecommitdiffstats
path: root/buch/chapters/30-endlichekoerper
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--buch/chapters/30-endlichekoerper/euklid.tex366
-rw-r--r--buch/chapters/30-endlichekoerper/galois.tex6
-rw-r--r--buch/chapters/30-endlichekoerper/images/binomial2.pdfbin19246 -> 19417 bytes
-rw-r--r--buch/chapters/30-endlichekoerper/images/binomial2.tex631
-rw-r--r--buch/chapters/30-endlichekoerper/images/binomial5.pdfbin26050 -> 27894 bytes
-rw-r--r--buch/chapters/30-endlichekoerper/images/binomial5.tex816
-rw-r--r--buch/chapters/30-endlichekoerper/rechnungen/rs.maxima29
-rw-r--r--buch/chapters/30-endlichekoerper/wurzeln.tex2
8 files changed, 1161 insertions, 689 deletions
diff --git a/buch/chapters/30-endlichekoerper/euklid.tex b/buch/chapters/30-endlichekoerper/euklid.tex
index db326f8..0bf3016 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
@@ -518,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
\[
@@ -614,4 +616,368 @@ 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 Zahlen $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)^{-1}
+\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 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 man $K_k$ durch die Rekursion
+\begin{equation}
+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
+\label{buch:endlichekoerper:eqn:kgvrekursion}
+\end{equation}
+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$.
+
+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}
+\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.
+
+\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}
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/images/binomial2.pdf b/buch/chapters/30-endlichekoerper/images/binomial2.pdf
index 92be742..0a07c92 100644
--- a/buch/chapters/30-endlichekoerper/images/binomial2.pdf
+++ b/buch/chapters/30-endlichekoerper/images/binomial2.pdf
Binary files differ
diff --git a/buch/chapters/30-endlichekoerper/images/binomial2.tex b/buch/chapters/30-endlichekoerper/images/binomial2.tex
index 77ccb57..e816b36 100644
--- a/buch/chapters/30-endlichekoerper/images/binomial2.tex
+++ b/buch/chapters/30-endlichekoerper/images/binomial2.tex
@@ -1,306 +1,325 @@
-%
-% binomial2.tex -- Parität der Binomialkoeffizienten
-%
-% (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.37}
-\pgfmathparse{\s*sqrt(3)/2}
-\xdef\ys{\pgfmathresult}
-\pgfmathparse{\s/2}
-\xdef\xs{\pgfmathresult}
-
-%
-% #1 = n
-% #2 = k
-%
-\def\dreieck#1#2{
- \fill[color=black] ({\xs*(-#1+2*#2)},{-\ys*#1})
- -- ({\xs*(-#1+2*#2-1)},{-\ys*(#1+1)})
- -- ({\xs*(-#1+2*#2+1)},{-\ys*(#1+1)}) -- cycle;
-}
-\def\zeile#1{
- \fill[color=red!40]
- ({\xs*(-#1)},{-\ys*#1})
- -- ({\xs*(-#1-1)},{-\ys*(#1+1)})
- -- ({\xs*(#1+1)},{-\ys*(#1+1)})
- -- ({\xs*(#1)},{-\ys*#1}) -- cycle;
-}
-
-\zeile{2}
-\zeile{4}
-\zeile{8}
-\zeile{16}
-\zeile{32}
-
-\dreieck{0}{0}
-
-\dreieck{1}{0}
-\dreieck{1}{1}
-
-\dreieck{2}{0}
-\dreieck{2}{2}
-
-\dreieck{3}{0}
-\dreieck{3}{1}
-\dreieck{3}{2}
-\dreieck{3}{3}
-
-\dreieck{4}{0}
-\dreieck{4}{4}
-
-\dreieck{5}{0}
-\dreieck{5}{1}
-\dreieck{5}{4}
-\dreieck{5}{5}
-
-\dreieck{6}{0}
-\dreieck{6}{2}
-\dreieck{6}{4}
-\dreieck{6}{6}
-
-\dreieck{7}{0}
-\dreieck{7}{1}
-\dreieck{7}{2}
-\dreieck{7}{3}
-\dreieck{7}{4}
-\dreieck{7}{5}
-\dreieck{7}{6}
-\dreieck{7}{7}
-
-\dreieck{8}{0}
-\dreieck{8}{8}
-
-\dreieck{9}{0}
-\dreieck{9}{1}
-\dreieck{9}{8}
-\dreieck{9}{9}
-
-\dreieck{10}{0}
-\dreieck{10}{2}
-\dreieck{10}{8}
-\dreieck{10}{10}
-
-\dreieck{11}{0}
-\dreieck{11}{1}
-\dreieck{11}{2}
-\dreieck{11}{3}
-\dreieck{11}{8}
-\dreieck{11}{9}
-\dreieck{11}{10}
-\dreieck{11}{11}
-
-\dreieck{12}{0}
-\dreieck{12}{4}
-\dreieck{12}{8}
-\dreieck{12}{12}
-
-\dreieck{13}{0}
-\dreieck{13}{1}
-\dreieck{13}{4}
-\dreieck{13}{5}
-\dreieck{13}{8}
-\dreieck{13}{9}
-\dreieck{13}{12}
-\dreieck{13}{13}
-
-\dreieck{14}{0}
-\dreieck{14}{2}
-\dreieck{14}{4}
-\dreieck{14}{6}
-\dreieck{14}{8}
-\dreieck{14}{10}
-\dreieck{14}{12}
-\dreieck{14}{14}
-
-\dreieck{15}{0}
-\dreieck{15}{1}
-\dreieck{15}{2}
-\dreieck{15}{3}
-\dreieck{15}{4}
-\dreieck{15}{5}
-\dreieck{15}{6}
-\dreieck{15}{7}
-\dreieck{15}{8}
-\dreieck{15}{9}
-\dreieck{15}{10}
-\dreieck{15}{11}
-\dreieck{15}{12}
-\dreieck{15}{13}
-\dreieck{15}{14}
-\dreieck{15}{15}
-
-\dreieck{16}{0}
-\dreieck{16}{16}
-
-\dreieck{17}{0}
-\dreieck{17}{1}
-\dreieck{17}{16}
-\dreieck{17}{17}
-
-\dreieck{18}{0}
-\dreieck{18}{2}
-\dreieck{18}{16}
-\dreieck{18}{18}
-
-\dreieck{19}{0}
-\dreieck{19}{1}
-\dreieck{19}{2}
-\dreieck{19}{3}
-\dreieck{19}{16}
-\dreieck{19}{17}
-\dreieck{19}{18}
-\dreieck{19}{19}
-
-\dreieck{20}{0}
-\dreieck{20}{4}
-\dreieck{20}{16}
-\dreieck{20}{20}
-
-\dreieck{21}{0}
-\dreieck{21}{1}
-\dreieck{21}{4}
-\dreieck{21}{5}
-\dreieck{21}{16}
-\dreieck{21}{17}
-\dreieck{21}{20}
-\dreieck{21}{21}
-
-\dreieck{22}{0}
-\dreieck{22}{2}
-\dreieck{22}{4}
-\dreieck{22}{6}
-\dreieck{22}{16}
-\dreieck{22}{18}
-\dreieck{22}{20}
-\dreieck{22}{22}
-
-\dreieck{23}{0}
-\dreieck{23}{1}
-\dreieck{23}{2}
-\dreieck{23}{3}
-\dreieck{23}{4}
-\dreieck{23}{5}
-\dreieck{23}{6}
-\dreieck{23}{7}
-\dreieck{23}{16}
-\dreieck{23}{17}
-\dreieck{23}{18}
-\dreieck{23}{19}
-\dreieck{23}{20}
-\dreieck{23}{21}
-\dreieck{23}{22}
-\dreieck{23}{23}
-
-\dreieck{24}{0}
-\dreieck{24}{8}
-\dreieck{24}{16}
-\dreieck{24}{24}
-
-\dreieck{25}{0}
-\dreieck{25}{1}
-\dreieck{25}{8}
-\dreieck{25}{9}
-\dreieck{25}{16}
-\dreieck{25}{17}
-\dreieck{25}{24}
-\dreieck{25}{25}
-
-\dreieck{26}{0}
-\dreieck{26}{2}
-\dreieck{26}{8}
-\dreieck{26}{10}
-\dreieck{26}{16}
-\dreieck{26}{18}
-\dreieck{26}{24}
-\dreieck{26}{26}
-
-\dreieck{27}{0}
-\dreieck{27}{1}
-\dreieck{27}{2}
-\dreieck{27}{3}
-\dreieck{27}{8}
-\dreieck{27}{9}
-\dreieck{27}{10}
-\dreieck{27}{11}
-\dreieck{27}{16}
-\dreieck{27}{17}
-\dreieck{27}{18}
-\dreieck{27}{19}
-\dreieck{27}{24}
-\dreieck{27}{25}
-\dreieck{27}{26}
-\dreieck{27}{27}
-
-\dreieck{28}{0}
-\dreieck{28}{4}
-\dreieck{28}{8}
-\dreieck{28}{12}
-\dreieck{28}{16}
-\dreieck{28}{20}
-\dreieck{28}{24}
-\dreieck{28}{28}
-
-\dreieck{29}{0}
-\dreieck{29}{1}
-\dreieck{29}{4}
-\dreieck{29}{5}
-\dreieck{29}{8}
-\dreieck{29}{9}
-\dreieck{29}{12}
-\dreieck{29}{13}
-\dreieck{29}{16}
-\dreieck{29}{17}
-\dreieck{29}{20}
-\dreieck{29}{21}
-\dreieck{29}{24}
-\dreieck{29}{25}
-\dreieck{29}{28}
-\dreieck{29}{29}
-
-\foreach \k in {0,2,...,30}{
- \dreieck{30}{\k}
-}
-
-\foreach \k in {0,...,31}{
- \dreieck{31}{\k}
-}
-
-\dreieck{32}{0}
-\dreieck{32}{32}
-
-\def\etikett#1#2#3{
- \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) {$#3$};
-}
-
-\etikett{0}{-2}{n=0}
-\etikett{2}{-2}{n=2}
-\etikett{4}{-2}{n=4}
-\etikett{8}{-2}{n=8}
-\etikett{16}{-2}{n=16}
-\etikett{32}{-2}{n=32}
-
-\def\exponent#1#2#3{
- \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) [rotate=60] {$#3$};
-}
-
-\exponent{-2}{0}{k=0}
-\exponent{0}{2}{k=2}
-\exponent{2}{4}{k=4}
-\exponent{6}{8}{k=8}
-\exponent{14}{16}{k=16}
-\exponent{30}{32}{k=32}
-
-\end{tikzpicture}
-\end{document}
-
+%
+% binomial2.tex -- Parität der Binomialkoeffizienten
+%
+% (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.37}
+\pgfmathparse{\s*sqrt(3)/2}
+\xdef\ys{\pgfmathresult}
+\pgfmathparse{\s/2}
+\xdef\xs{\pgfmathresult}
+
+%
+% #1 = n
+% #2 = k
+%
+\def\dreieck#1#2{
+ \fill[color=black] ({\xs*(-#1+2*#2)},{-\ys*#1})
+ -- ({\xs*(-#1+2*#2-1)},{-\ys*(#1+1)})
+ -- ({\xs*(-#1+2*#2+1)},{-\ys*(#1+1)}) -- cycle;
+}
+\def\zeile#1{
+ \fill[color=red!40]
+ ({\xs*(-#1)},{-\ys*#1})
+ -- ({\xs*(-#1-1)},{-\ys*(#1+1)})
+ -- ({\xs*(#1+1)},{-\ys*(#1+1)})
+ -- ({\xs*(#1)},{-\ys*#1}) -- cycle;
+}
+
+\zeile{2}
+\zeile{4}
+\zeile{8}
+\zeile{16}
+\zeile{32}
+
+\dreieck{0}{0}
+
+\dreieck{1}{0}
+\dreieck{1}{1}
+
+\dreieck{2}{0}
+\dreieck{2}{2}
+
+\dreieck{3}{0}
+\dreieck{3}{1}
+\dreieck{3}{2}
+\dreieck{3}{3}
+
+\dreieck{4}{0}
+\dreieck{4}{4}
+
+\dreieck{5}{0}
+\dreieck{5}{1}
+\dreieck{5}{4}
+\dreieck{5}{5}
+
+\dreieck{6}{0}
+\dreieck{6}{2}
+\dreieck{6}{4}
+\dreieck{6}{6}
+
+\dreieck{7}{0}
+\dreieck{7}{1}
+\dreieck{7}{2}
+\dreieck{7}{3}
+\dreieck{7}{4}
+\dreieck{7}{5}
+\dreieck{7}{6}
+\dreieck{7}{7}
+
+\dreieck{8}{0}
+\dreieck{8}{8}
+
+\dreieck{9}{0}
+\dreieck{9}{1}
+\dreieck{9}{8}
+\dreieck{9}{9}
+
+\dreieck{10}{0}
+\dreieck{10}{2}
+\dreieck{10}{8}
+\dreieck{10}{10}
+
+\dreieck{11}{0}
+\dreieck{11}{1}
+\dreieck{11}{2}
+\dreieck{11}{3}
+\dreieck{11}{8}
+\dreieck{11}{9}
+\dreieck{11}{10}
+\dreieck{11}{11}
+
+\dreieck{12}{0}
+\dreieck{12}{4}
+\dreieck{12}{8}
+\dreieck{12}{12}
+
+\dreieck{13}{0}
+\dreieck{13}{1}
+\dreieck{13}{4}
+\dreieck{13}{5}
+\dreieck{13}{8}
+\dreieck{13}{9}
+\dreieck{13}{12}
+\dreieck{13}{13}
+
+\dreieck{14}{0}
+\dreieck{14}{2}
+\dreieck{14}{4}
+\dreieck{14}{6}
+\dreieck{14}{8}
+\dreieck{14}{10}
+\dreieck{14}{12}
+\dreieck{14}{14}
+
+\dreieck{15}{0}
+\dreieck{15}{1}
+\dreieck{15}{2}
+\dreieck{15}{3}
+\dreieck{15}{4}
+\dreieck{15}{5}
+\dreieck{15}{6}
+\dreieck{15}{7}
+\dreieck{15}{8}
+\dreieck{15}{9}
+\dreieck{15}{10}
+\dreieck{15}{11}
+\dreieck{15}{12}
+\dreieck{15}{13}
+\dreieck{15}{14}
+\dreieck{15}{15}
+
+\dreieck{16}{0}
+\dreieck{16}{16}
+
+\dreieck{17}{0}
+\dreieck{17}{1}
+\dreieck{17}{16}
+\dreieck{17}{17}
+
+\dreieck{18}{0}
+\dreieck{18}{2}
+\dreieck{18}{16}
+\dreieck{18}{18}
+
+\dreieck{19}{0}
+\dreieck{19}{1}
+\dreieck{19}{2}
+\dreieck{19}{3}
+\dreieck{19}{16}
+\dreieck{19}{17}
+\dreieck{19}{18}
+\dreieck{19}{19}
+
+\dreieck{20}{0}
+\dreieck{20}{4}
+\dreieck{20}{16}
+\dreieck{20}{20}
+
+\dreieck{21}{0}
+\dreieck{21}{1}
+\dreieck{21}{4}
+\dreieck{21}{5}
+\dreieck{21}{16}
+\dreieck{21}{17}
+\dreieck{21}{20}
+\dreieck{21}{21}
+
+\dreieck{22}{0}
+\dreieck{22}{2}
+\dreieck{22}{4}
+\dreieck{22}{6}
+\dreieck{22}{16}
+\dreieck{22}{18}
+\dreieck{22}{20}
+\dreieck{22}{22}
+
+\dreieck{23}{0}
+\dreieck{23}{1}
+\dreieck{23}{2}
+\dreieck{23}{3}
+\dreieck{23}{4}
+\dreieck{23}{5}
+\dreieck{23}{6}
+\dreieck{23}{7}
+\dreieck{23}{16}
+\dreieck{23}{17}
+\dreieck{23}{18}
+\dreieck{23}{19}
+\dreieck{23}{20}
+\dreieck{23}{21}
+\dreieck{23}{22}
+\dreieck{23}{23}
+
+\dreieck{24}{0}
+\dreieck{24}{8}
+\dreieck{24}{16}
+\dreieck{24}{24}
+
+\dreieck{25}{0}
+\dreieck{25}{1}
+\dreieck{25}{8}
+\dreieck{25}{9}
+\dreieck{25}{16}
+\dreieck{25}{17}
+\dreieck{25}{24}
+\dreieck{25}{25}
+
+\dreieck{26}{0}
+\dreieck{26}{2}
+\dreieck{26}{8}
+\dreieck{26}{10}
+\dreieck{26}{16}
+\dreieck{26}{18}
+\dreieck{26}{24}
+\dreieck{26}{26}
+
+\dreieck{27}{0}
+\dreieck{27}{1}
+\dreieck{27}{2}
+\dreieck{27}{3}
+\dreieck{27}{8}
+\dreieck{27}{9}
+\dreieck{27}{10}
+\dreieck{27}{11}
+\dreieck{27}{16}
+\dreieck{27}{17}
+\dreieck{27}{18}
+\dreieck{27}{19}
+\dreieck{27}{24}
+\dreieck{27}{25}
+\dreieck{27}{26}
+\dreieck{27}{27}
+
+\dreieck{28}{0}
+\dreieck{28}{4}
+\dreieck{28}{8}
+\dreieck{28}{12}
+\dreieck{28}{16}
+\dreieck{28}{20}
+\dreieck{28}{24}
+\dreieck{28}{28}
+
+\dreieck{29}{0}
+\dreieck{29}{1}
+\dreieck{29}{4}
+\dreieck{29}{5}
+\dreieck{29}{8}
+\dreieck{29}{9}
+\dreieck{29}{12}
+\dreieck{29}{13}
+\dreieck{29}{16}
+\dreieck{29}{17}
+\dreieck{29}{20}
+\dreieck{29}{21}
+\dreieck{29}{24}
+\dreieck{29}{25}
+\dreieck{29}{28}
+\dreieck{29}{29}
+
+\foreach \k in {0,2,...,30}{
+ \dreieck{30}{\k}
+}
+
+\foreach \k in {0,...,31}{
+ \dreieck{31}{\k}
+}
+
+\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$};
+}
+
+\etikett{0}{-2}{n=0}
+\etikett{2}{-2}{n=2}
+\etikett{4}{-2}{n=4}
+\etikett{8}{-2}{n=8}
+\etikett{16}{-2}{n=16}
+\etikett{32}{-2}{n=32}
+
+\def\exponent#1#2#3{
+ \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) [rotate=60] {$#3$};
+}
+
+\exponent{-2}{0}{k=0}
+\exponent{0}{2}{k=2}
+\exponent{2}{4}{k=4}
+\exponent{6}{8}{k=8}
+\exponent{14}{16}{k=16}
+\exponent{30}{32}{k=32}
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/30-endlichekoerper/images/binomial5.pdf b/buch/chapters/30-endlichekoerper/images/binomial5.pdf
index 1b2a813..a4bdf51 100644
--- a/buch/chapters/30-endlichekoerper/images/binomial5.pdf
+++ b/buch/chapters/30-endlichekoerper/images/binomial5.pdf
Binary files differ
diff --git a/buch/chapters/30-endlichekoerper/images/binomial5.tex b/buch/chapters/30-endlichekoerper/images/binomial5.tex
index 750b7e0..f5aac0a 100644
--- a/buch/chapters/30-endlichekoerper/images/binomial5.tex
+++ b/buch/chapters/30-endlichekoerper/images/binomial5.tex
@@ -1,379 +1,437 @@
-%
-% binomial2.tex -- Parität der Binomialkoeffizienten
-%
-% (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{farbe0}{rgb}{1,1,1}
-\input{farben.tex}
-
-\def\s{0.37}
-\pgfmathparse{\s*sqrt(3)/2}
-\xdef\ys{\pgfmathresult}
-\pgfmathparse{\s/2}
-\xdef\xs{\pgfmathresult}
-
-%
-% #1 = n
-% #2 = k
-%
-\def\dreieck#1#2#3{
- \fill[color=farbe#3] ({\xs*(-#1+2*#2)},{-\ys*#1})
- -- ({\xs*(-#1+2*#2-1)},{-\ys*(#1+1)})
- -- ({\xs*(-#1+2*#2+1)},{-\ys*(#1+1)}) -- cycle;
- \node[color=white] at ( ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)-0.03}) {$\scriptstyle #3$};
-}
-
-\definecolor{gelb}{rgb}{1,0.8,0.2}
-\def\zeile#1{
- \fill[color=gelb]
- ({\xs*(-#1)},{-\ys*#1})
- -- ({\xs*(-#1-1)},{-\ys*(#1+1)})
- -- ({\xs*(#1+1)},{-\ys*(#1+1)})
- -- ({\xs*(#1)},{-\ys*#1}) -- cycle;
-}
-
-\zeile{5}
-\zeile{25}
-
-\dreieck{0}{0}{1}
-
-\dreieck{1}{0}{1}
-\dreieck{1}{1}{1}
-
-\dreieck{2}{0}{1}
-\dreieck{2}{1}{2}
-\dreieck{2}{2}{1}
-
-\dreieck{3}{0}{1}
-\dreieck{3}{1}{3}
-\dreieck{3}{2}{3}
-\dreieck{3}{3}{1}
-
-\dreieck{4}{0}{1}
-\dreieck{4}{1}{4}
-\dreieck{4}{2}{1}
-\dreieck{4}{3}{4}
-\dreieck{4}{4}{1}
-
-\dreieck{5}{0}{1}
-\dreieck{5}{5}{1}
-
-\dreieck{6}{0}{1}
-\dreieck{6}{1}{1}
-\dreieck{6}{5}{1}
-\dreieck{6}{6}{1}
-
-\dreieck{7}{0}{1}
-\dreieck{7}{1}{2}
-\dreieck{7}{2}{1}
-\dreieck{7}{5}{1}
-\dreieck{7}{6}{2}
-\dreieck{7}{7}{1}
-
-\dreieck{8}{0}{1}
-\dreieck{8}{1}{3}
-\dreieck{8}{2}{3}
-\dreieck{8}{3}{1}
-\dreieck{8}{5}{1}
-\dreieck{8}{6}{3}
-\dreieck{8}{7}{3}
-\dreieck{8}{8}{1}
-
-\dreieck{9}{0}{1}
-\dreieck{9}{1}{4}
-\dreieck{9}{2}{1}
-\dreieck{9}{3}{4}
-\dreieck{9}{4}{1}
-\dreieck{9}{5}{1}
-\dreieck{9}{6}{4}
-\dreieck{9}{7}{1}
-\dreieck{9}{8}{4}
-\dreieck{9}{9}{1}
-
-\dreieck{10}{0}{1}
-\dreieck{10}{5}{2}
-\dreieck{10}{10}{1}
-
-\dreieck{11}{0}{1}
-\dreieck{11}{1}{1}
-\dreieck{11}{5}{2}
-\dreieck{11}{6}{2}
-\dreieck{11}{10}{1}
-\dreieck{11}{11}{1}
-
-\dreieck{12}{0}{1}
-\dreieck{12}{1}{2}
-\dreieck{12}{2}{1}
-\dreieck{12}{5}{2}
-\dreieck{12}{6}{4}
-\dreieck{12}{7}{2}
-\dreieck{12}{10}{1}
-\dreieck{12}{11}{2}
-\dreieck{12}{12}{1}
-
-\dreieck{13}{0}{1}
-\dreieck{13}{1}{3}
-\dreieck{13}{2}{3}
-\dreieck{13}{3}{1}
-\dreieck{13}{5}{2}
-\dreieck{13}{6}{1}
-\dreieck{13}{7}{1}
-\dreieck{13}{8}{2}
-\dreieck{13}{10}{1}
-\dreieck{13}{11}{3}
-\dreieck{13}{12}{3}
-\dreieck{13}{13}{1}
-
-\dreieck{14}{0}{1}
-\dreieck{14}{1}{4}
-\dreieck{14}{2}{1}
-\dreieck{14}{3}{4}
-\dreieck{14}{4}{1}
-\dreieck{14}{5}{2}
-\dreieck{14}{6}{3}
-\dreieck{14}{7}{2}
-\dreieck{14}{8}{3}
-\dreieck{14}{9}{2}
-\dreieck{14}{10}{1}
-\dreieck{14}{11}{4}
-\dreieck{14}{12}{1}
-\dreieck{14}{13}{4}
-\dreieck{14}{14}{1}
-
-\dreieck{15}{0}{1}
-\dreieck{15}{5}{3}
-\dreieck{15}{10}{3}
-\dreieck{15}{15}{1}
-
-\dreieck{16}{0}{1}
-\dreieck{16}{1}{1}
-\dreieck{16}{5}{3}
-\dreieck{16}{6}{3}
-\dreieck{16}{10}{3}
-\dreieck{16}{11}{3}
-\dreieck{16}{15}{1}
-\dreieck{16}{16}{3}
-
-\dreieck{17}{0}{1}
-\dreieck{17}{1}{2}
-\dreieck{17}{2}{1}
-\dreieck{17}{5}{3}
-\dreieck{17}{6}{1}
-\dreieck{17}{7}{3}
-\dreieck{17}{10}{3}
-\dreieck{17}{11}{1}
-\dreieck{17}{12}{3}
-\dreieck{17}{15}{1}
-\dreieck{17}{16}{2}
-\dreieck{17}{17}{1}
-
-\dreieck{18}{0}{1}
-\dreieck{18}{1}{3}
-\dreieck{18}{2}{3}
-\dreieck{18}{3}{1}
-\dreieck{18}{5}{3}
-\dreieck{18}{6}{4}
-\dreieck{18}{7}{4}
-\dreieck{18}{8}{3}
-\dreieck{18}{10}{3}
-\dreieck{18}{11}{4}
-\dreieck{18}{12}{4}
-\dreieck{18}{13}{3}
-\dreieck{18}{15}{1}
-\dreieck{18}{16}{3}
-\dreieck{18}{17}{3}
-\dreieck{18}{18}{1}
-
-\dreieck{19}{0}{1}
-\dreieck{19}{1}{4}
-\dreieck{19}{2}{1}
-\dreieck{19}{3}{4}
-\dreieck{19}{4}{1}
-\dreieck{19}{5}{3}
-\dreieck{19}{6}{2}
-\dreieck{19}{7}{3}
-\dreieck{19}{8}{2}
-\dreieck{19}{9}{3}
-\dreieck{19}{10}{3}
-\dreieck{19}{11}{2}
-\dreieck{19}{12}{3}
-\dreieck{19}{13}{2}
-\dreieck{19}{14}{3}
-\dreieck{19}{15}{1}
-\dreieck{19}{16}{4}
-\dreieck{19}{17}{1}
-\dreieck{19}{18}{4}
-\dreieck{19}{19}{1}
-
-\dreieck{20}{0}{1}
-\dreieck{20}{5}{4}
-\dreieck{20}{10}{1}
-\dreieck{20}{15}{4}
-\dreieck{20}{20}{1}
-
-\dreieck{21}{0}{1}
-\dreieck{21}{1}{1}
-\dreieck{21}{5}{4}
-\dreieck{21}{6}{4}
-\dreieck{21}{10}{1}
-\dreieck{21}{11}{1}
-\dreieck{21}{15}{4}
-\dreieck{21}{16}{4}
-\dreieck{21}{20}{1}
-\dreieck{21}{21}{1}
-
-\dreieck{22}{0}{1}
-\dreieck{22}{1}{2}
-\dreieck{22}{2}{1}
-\dreieck{22}{5}{4}
-\dreieck{22}{6}{3}
-\dreieck{22}{7}{4}
-\dreieck{22}{10}{1}
-\dreieck{22}{11}{2}
-\dreieck{22}{12}{1}
-\dreieck{22}{15}{4}
-\dreieck{22}{16}{3}
-\dreieck{22}{17}{4}
-\dreieck{22}{20}{1}
-\dreieck{22}{21}{2}
-\dreieck{22}{22}{1}
-
-\dreieck{23}{0}{1}
-\dreieck{23}{1}{3}
-\dreieck{23}{2}{3}
-\dreieck{23}{3}{1}
-\dreieck{23}{5}{4}
-\dreieck{23}{6}{2}
-\dreieck{23}{7}{2}
-\dreieck{23}{8}{4}
-\dreieck{23}{10}{1}
-\dreieck{23}{11}{3}
-\dreieck{23}{12}{3}
-\dreieck{23}{13}{1}
-\dreieck{23}{15}{4}
-\dreieck{23}{16}{2}
-\dreieck{23}{17}{2}
-\dreieck{23}{18}{4}
-\dreieck{23}{20}{1}
-\dreieck{23}{21}{3}
-\dreieck{23}{22}{3}
-\dreieck{23}{23}{1}
-
-\dreieck{24}{0}{1}
-\dreieck{24}{1}{4}
-\dreieck{24}{2}{1}
-\dreieck{24}{3}{4}
-\dreieck{24}{4}{1}
-\dreieck{24}{5}{4}
-\dreieck{24}{6}{1}
-\dreieck{24}{7}{4}
-\dreieck{24}{8}{1}
-\dreieck{24}{9}{4}
-\dreieck{24}{10}{1}
-\dreieck{24}{11}{4}
-\dreieck{24}{12}{1}
-\dreieck{24}{13}{4}
-\dreieck{24}{14}{1}
-\dreieck{24}{15}{4}
-\dreieck{24}{16}{1}
-\dreieck{24}{17}{4}
-\dreieck{24}{18}{1}
-\dreieck{24}{19}{4}
-\dreieck{24}{20}{1}
-\dreieck{24}{21}{4}
-\dreieck{24}{22}{1}
-\dreieck{24}{23}{4}
-\dreieck{24}{24}{1}
-
-\dreieck{25}{0}{1}
-\dreieck{25}{25}{1}
-
-\dreieck{26}{0}{1}
-\dreieck{26}{1}{1}
-\dreieck{26}{25}{1}
-\dreieck{26}{26}{1}
-
-\dreieck{27}{0}{1}
-\dreieck{27}{1}{2}
-\dreieck{27}{2}{1}
-\dreieck{27}{25}{1}
-\dreieck{27}{26}{2}
-\dreieck{27}{27}{1}
-
-\dreieck{28}{0}{1}
-\dreieck{28}{1}{3}
-\dreieck{28}{2}{3}
-\dreieck{28}{3}{1}
-\dreieck{28}{25}{1}
-\dreieck{28}{26}{3}
-\dreieck{28}{27}{3}
-\dreieck{28}{28}{1}
-
-\dreieck{29}{0}{1}
-\dreieck{29}{1}{4}
-\dreieck{29}{2}{1}
-\dreieck{29}{3}{4}
-\dreieck{29}{4}{1}
-\dreieck{29}{25}{1}
-\dreieck{29}{26}{4}
-\dreieck{29}{27}{1}
-\dreieck{29}{28}{4}
-\dreieck{29}{29}{1}
-
-\dreieck{30}{0}{1}
-\dreieck{30}{5}{1}
-\dreieck{30}{25}{1}
-\dreieck{30}{30}{1}
-
-\dreieck{31}{0}{1}
-\dreieck{31}{1}{1}
-\dreieck{31}{5}{1}
-\dreieck{31}{6}{1}
-\dreieck{31}{25}{1}
-\dreieck{31}{26}{1}
-\dreieck{31}{30}{1}
-\dreieck{31}{31}{1}
-
-\dreieck{32}{0}{1}
-\dreieck{32}{1}{2}
-\dreieck{32}{2}{1}
-\dreieck{32}{5}{1}
-\dreieck{32}{6}{2}
-\dreieck{32}{7}{1}
-\dreieck{32}{25}{1}
-\dreieck{32}{26}{2}
-\dreieck{32}{27}{1}
-\dreieck{32}{30}{1}
-\dreieck{32}{31}{2}
-\dreieck{32}{32}{1}
-
-\def\etikett#1#2#3{
- \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) {$#3$};
-}
-
-\etikett{0}{-2}{n=0}
-\etikett{5}{-2}{n=5}
-\etikett{25}{-2}{n=25}
-
-\def\exponent#1#2#3{
- \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) [rotate=60] {$#3$};
-}
-
-\exponent{-2}{0}{k=0}
-\exponent{3}{5}{k=5}
-\exponent{23}{25}{k=25}
-
-\end{tikzpicture}
-\end{document}
-
+%
+% binomial2.tex -- Parität der Binomialkoeffizienten
+%
+% (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{farbe0}{rgb}{1,1,1}
+\input{farben.tex}
+
+\def\s{0.37}
+\pgfmathparse{\s*sqrt(3)/2}
+\xdef\ys{\pgfmathresult}
+\pgfmathparse{\s/2}
+\xdef\xs{\pgfmathresult}
+
+%
+% #1 = n
+% #2 = k
+%
+\def\dreieck#1#2#3{
+ \fill[color=farbe#3] ({\xs*(-#1+2*#2)},{-\ys*#1})
+ -- ({\xs*(-#1+2*#2-1)},{-\ys*(#1+1)})
+ -- ({\xs*(-#1+2*#2+1)},{-\ys*(#1+1)}) -- cycle;
+ \node[color=white] at ( ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)-0.03}) {$\scriptstyle #3$};
+}
+
+\definecolor{gelb}{rgb}{1,0.8,0.2}
+\def\zeile#1{
+ \fill[color=gelb]
+ ({\xs*(-#1)},{-\ys*#1})
+ -- ({\xs*(-#1-1)},{-\ys*(#1+1)})
+ -- ({\xs*(#1+1)},{-\ys*(#1+1)})
+ -- ({\xs*(#1)},{-\ys*#1}) -- cycle;
+}
+
+\zeile{5}
+\zeile{25}
+
+\dreieck{0}{0}{1}
+
+\dreieck{1}{0}{1}
+\dreieck{1}{1}{1}
+
+\dreieck{2}{0}{1}
+\dreieck{2}{1}{2}
+\dreieck{2}{2}{1}
+
+\dreieck{3}{0}{1}
+\dreieck{3}{1}{3}
+\dreieck{3}{2}{3}
+\dreieck{3}{3}{1}
+
+\dreieck{4}{0}{1}
+\dreieck{4}{1}{4}
+\dreieck{4}{2}{1}
+\dreieck{4}{3}{4}
+\dreieck{4}{4}{1}
+
+\dreieck{5}{0}{1}
+\dreieck{5}{5}{1}
+
+\dreieck{6}{0}{1}
+\dreieck{6}{1}{1}
+\dreieck{6}{5}{1}
+\dreieck{6}{6}{1}
+
+\dreieck{7}{0}{1}
+\dreieck{7}{1}{2}
+\dreieck{7}{2}{1}
+\dreieck{7}{5}{1}
+\dreieck{7}{6}{2}
+\dreieck{7}{7}{1}
+
+\dreieck{8}{0}{1}
+\dreieck{8}{1}{3}
+\dreieck{8}{2}{3}
+\dreieck{8}{3}{1}
+\dreieck{8}{5}{1}
+\dreieck{8}{6}{3}
+\dreieck{8}{7}{3}
+\dreieck{8}{8}{1}
+
+\dreieck{9}{0}{1}
+\dreieck{9}{1}{4}
+\dreieck{9}{2}{1}
+\dreieck{9}{3}{4}
+\dreieck{9}{4}{1}
+\dreieck{9}{5}{1}
+\dreieck{9}{6}{4}
+\dreieck{9}{7}{1}
+\dreieck{9}{8}{4}
+\dreieck{9}{9}{1}
+
+\dreieck{10}{0}{1}
+\dreieck{10}{5}{2}
+\dreieck{10}{10}{1}
+
+\dreieck{11}{0}{1}
+\dreieck{11}{1}{1}
+\dreieck{11}{5}{2}
+\dreieck{11}{6}{2}
+\dreieck{11}{10}{1}
+\dreieck{11}{11}{1}
+
+\dreieck{12}{0}{1}
+\dreieck{12}{1}{2}
+\dreieck{12}{2}{1}
+\dreieck{12}{5}{2}
+\dreieck{12}{6}{4}
+\dreieck{12}{7}{2}
+\dreieck{12}{10}{1}
+\dreieck{12}{11}{2}
+\dreieck{12}{12}{1}
+
+\dreieck{13}{0}{1}
+\dreieck{13}{1}{3}
+\dreieck{13}{2}{3}
+\dreieck{13}{3}{1}
+\dreieck{13}{5}{2}
+\dreieck{13}{6}{1}
+\dreieck{13}{7}{1}
+\dreieck{13}{8}{2}
+\dreieck{13}{10}{1}
+\dreieck{13}{11}{3}
+\dreieck{13}{12}{3}
+\dreieck{13}{13}{1}
+
+\dreieck{14}{0}{1}
+\dreieck{14}{1}{4}
+\dreieck{14}{2}{1}
+\dreieck{14}{3}{4}
+\dreieck{14}{4}{1}
+\dreieck{14}{5}{2}
+\dreieck{14}{6}{3}
+\dreieck{14}{7}{2}
+\dreieck{14}{8}{3}
+\dreieck{14}{9}{2}
+\dreieck{14}{10}{1}
+\dreieck{14}{11}{4}
+\dreieck{14}{12}{1}
+\dreieck{14}{13}{4}
+\dreieck{14}{14}{1}
+
+\dreieck{15}{0}{1}
+\dreieck{15}{5}{3}
+\dreieck{15}{10}{3}
+\dreieck{15}{15}{1}
+
+\dreieck{16}{0}{1}
+\dreieck{16}{1}{1}
+\dreieck{16}{5}{3}
+\dreieck{16}{6}{3}
+\dreieck{16}{10}{3}
+\dreieck{16}{11}{3}
+\dreieck{16}{15}{1}
+\dreieck{16}{16}{3}
+
+\dreieck{17}{0}{1}
+\dreieck{17}{1}{2}
+\dreieck{17}{2}{1}
+\dreieck{17}{5}{3}
+\dreieck{17}{6}{1}
+\dreieck{17}{7}{3}
+\dreieck{17}{10}{3}
+\dreieck{17}{11}{1}
+\dreieck{17}{12}{3}
+\dreieck{17}{15}{1}
+\dreieck{17}{16}{2}
+\dreieck{17}{17}{1}
+
+\dreieck{18}{0}{1}
+\dreieck{18}{1}{3}
+\dreieck{18}{2}{3}
+\dreieck{18}{3}{1}
+\dreieck{18}{5}{3}
+\dreieck{18}{6}{4}
+\dreieck{18}{7}{4}
+\dreieck{18}{8}{3}
+\dreieck{18}{10}{3}
+\dreieck{18}{11}{4}
+\dreieck{18}{12}{4}
+\dreieck{18}{13}{3}
+\dreieck{18}{15}{1}
+\dreieck{18}{16}{3}
+\dreieck{18}{17}{3}
+\dreieck{18}{18}{1}
+
+\dreieck{19}{0}{1}
+\dreieck{19}{1}{4}
+\dreieck{19}{2}{1}
+\dreieck{19}{3}{4}
+\dreieck{19}{4}{1}
+\dreieck{19}{5}{3}
+\dreieck{19}{6}{2}
+\dreieck{19}{7}{3}
+\dreieck{19}{8}{2}
+\dreieck{19}{9}{3}
+\dreieck{19}{10}{3}
+\dreieck{19}{11}{2}
+\dreieck{19}{12}{3}
+\dreieck{19}{13}{2}
+\dreieck{19}{14}{3}
+\dreieck{19}{15}{1}
+\dreieck{19}{16}{4}
+\dreieck{19}{17}{1}
+\dreieck{19}{18}{4}
+\dreieck{19}{19}{1}
+
+\dreieck{20}{0}{1}
+\dreieck{20}{5}{4}
+\dreieck{20}{10}{1}
+\dreieck{20}{15}{4}
+\dreieck{20}{20}{1}
+
+\dreieck{21}{0}{1}
+\dreieck{21}{1}{1}
+\dreieck{21}{5}{4}
+\dreieck{21}{6}{4}
+\dreieck{21}{10}{1}
+\dreieck{21}{11}{1}
+\dreieck{21}{15}{4}
+\dreieck{21}{16}{4}
+\dreieck{21}{20}{1}
+\dreieck{21}{21}{1}
+
+\dreieck{22}{0}{1}
+\dreieck{22}{1}{2}
+\dreieck{22}{2}{1}
+\dreieck{22}{5}{4}
+\dreieck{22}{6}{3}
+\dreieck{22}{7}{4}
+\dreieck{22}{10}{1}
+\dreieck{22}{11}{2}
+\dreieck{22}{12}{1}
+\dreieck{22}{15}{4}
+\dreieck{22}{16}{3}
+\dreieck{22}{17}{4}
+\dreieck{22}{20}{1}
+\dreieck{22}{21}{2}
+\dreieck{22}{22}{1}
+
+\dreieck{23}{0}{1}
+\dreieck{23}{1}{3}
+\dreieck{23}{2}{3}
+\dreieck{23}{3}{1}
+\dreieck{23}{5}{4}
+\dreieck{23}{6}{2}
+\dreieck{23}{7}{2}
+\dreieck{23}{8}{4}
+\dreieck{23}{10}{1}
+\dreieck{23}{11}{3}
+\dreieck{23}{12}{3}
+\dreieck{23}{13}{1}
+\dreieck{23}{15}{4}
+\dreieck{23}{16}{2}
+\dreieck{23}{17}{2}
+\dreieck{23}{18}{4}
+\dreieck{23}{20}{1}
+\dreieck{23}{21}{3}
+\dreieck{23}{22}{3}
+\dreieck{23}{23}{1}
+
+\dreieck{24}{0}{1}
+\dreieck{24}{1}{4}
+\dreieck{24}{2}{1}
+\dreieck{24}{3}{4}
+\dreieck{24}{4}{1}
+\dreieck{24}{5}{4}
+\dreieck{24}{6}{1}
+\dreieck{24}{7}{4}
+\dreieck{24}{8}{1}
+\dreieck{24}{9}{4}
+\dreieck{24}{10}{1}
+\dreieck{24}{11}{4}
+\dreieck{24}{12}{1}
+\dreieck{24}{13}{4}
+\dreieck{24}{14}{1}
+\dreieck{24}{15}{4}
+\dreieck{24}{16}{1}
+\dreieck{24}{17}{4}
+\dreieck{24}{18}{1}
+\dreieck{24}{19}{4}
+\dreieck{24}{20}{1}
+\dreieck{24}{21}{4}
+\dreieck{24}{22}{1}
+\dreieck{24}{23}{4}
+\dreieck{24}{24}{1}
+
+\dreieck{25}{0}{1}
+\dreieck{25}{25}{1}
+
+\dreieck{26}{0}{1}
+\dreieck{26}{1}{1}
+\dreieck{26}{25}{1}
+\dreieck{26}{26}{1}
+
+\dreieck{27}{0}{1}
+\dreieck{27}{1}{2}
+\dreieck{27}{2}{1}
+\dreieck{27}{25}{1}
+\dreieck{27}{26}{2}
+\dreieck{27}{27}{1}
+
+\dreieck{28}{0}{1}
+\dreieck{28}{1}{3}
+\dreieck{28}{2}{3}
+\dreieck{28}{3}{1}
+\dreieck{28}{25}{1}
+\dreieck{28}{26}{3}
+\dreieck{28}{27}{3}
+\dreieck{28}{28}{1}
+
+\dreieck{29}{0}{1}
+\dreieck{29}{1}{4}
+\dreieck{29}{2}{1}
+\dreieck{29}{3}{4}
+\dreieck{29}{4}{1}
+\dreieck{29}{25}{1}
+\dreieck{29}{26}{4}
+\dreieck{29}{27}{1}
+\dreieck{29}{28}{4}
+\dreieck{29}{29}{1}
+
+\dreieck{30}{0}{1}
+\dreieck{30}{5}{1}
+\dreieck{30}{25}{1}
+\dreieck{30}{30}{1}
+
+\dreieck{31}{0}{1}
+\dreieck{31}{1}{1}
+\dreieck{31}{5}{1}
+\dreieck{31}{6}{1}
+\dreieck{31}{25}{1}
+\dreieck{31}{26}{1}
+\dreieck{31}{30}{1}
+\dreieck{31}{31}{1}
+
+\dreieck{32}{0}{1}
+\dreieck{32}{1}{2}
+\dreieck{32}{2}{1}
+\dreieck{32}{5}{1}
+\dreieck{32}{6}{2}
+\dreieck{32}{7}{1}
+\dreieck{32}{25}{1}
+\dreieck{32}{26}{2}
+\dreieck{32}{27}{1}
+\dreieck{32}{30}{1}
+\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$};
+}
+
+\etikett{0}{-2}{n=0}
+\etikett{5}{-2}{n=5}
+\etikett{25}{-2}{n=25}
+
+\def\exponent#1#2#3{
+ \node at ({\xs*(-#1+2*#2)},{-\ys*(#1+0.5)}) [rotate=60] {$#3$};
+}
+
+\exponent{-2}{0}{k=0}
+\exponent{3}{5}{k=5}
+\exponent{23}{25}{k=25}
+
+\end{tikzpicture}
+\end{document}
+
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;
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