Über die Anzahl von Sudokus und lateinischen Quadraten

Transcription

Über die Anzahl von Sudokus und lateinischen Quadraten
Julius-Maximilians-Universität Würzburg
Fakultät für Mathematik und
Informatik
Bachelorarbeit in Mathematischer Physik
Über die Anzahl von Sudokus
und Lateinischen Quadraten
1
Bearbeiter:
Damian Zawadka
Betreuer:
Prof. Jörn Steuding1
Abgabedatum:
16. August 2012
Institut für Mathematik und Informatik, Universität Würzburg
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Inhaltsverzeichnis
1 Einleitung
3
2 Etwas Graphentheorie
5
2.1
Erste graphentheoretische Definitionen . . . . . . . . . . . . . . . . . . . . . . . . .
5
2.2
Sudokus als Färbeprobleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.3
Das chromatische Polynom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
3 Färbungen von n-Sudokus
10
3.1
Die chromatische Zahl eines n-Sudokus . . . . . . . . . . . . . . . . . . . . . . . . .
3.2
Eindeutigkeit von n-Problemen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4 Brute Force Methode zur Bestimmung der Anzahl von n-Sudokus
4.1
4.2
10
13
Gesamtzahl der 3-Sudokus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
4.1.1
Umbenennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
4.1.2
Permutationen in einem Stapel . . . . . . . . . . . . . . . . . . . . . . . . .
15
4.1.3
Vertauschung der Stapel . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
4.1.4
Vertauschung aller Stapel . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
4.1.5
Vertauschungen der Zeilen und Bänder . . . . . . . . . . . . . . . . . . . . .
17
Anzahl der 2-Sudokus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
5 Permanenten und Systeme von unterschiedlichen Repräsentanten
19
5.1
Permanenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
5.2
Systeme von unterschiedlichen Repräsentanten . . . . . . . . . . . . . . . . . . . .
20
6 n-Sudokus und Lateinische Quadrate
21
7 Schluss
27
2
Über die Anzahl von Sudokus und Lateinischen Quadraten
1
Damian Zawadka
Einleitung
Was ist ein Sudoku?
Die populärsten Sudokurätsel sind 9 × 9 große Gitter, bei denen manche Zellen Einträge von
{1, 2, . . . , 9} haben. Bei einem Sudokurätsel besteht das Ziel darin, dass in jeder Zeile, in jeder
Spalte und in jedem der neun (3 × 3)-Untergitter jede Zahl der Menge {1, 2, . . . , 9} genau einmal
vorkommt. Die Untergitter sind in Bild 1 dunkel umrandet.
Dabei soll man die Lösungen meistens nur durch logische Betrachtungen erhalten. Wichtig bei
diesen Rätseln ist, dass genau eine Lösung existiert. Durch die einfachen und wenigen Regeln sind
Sudokurätsel leicht zu verstehen, wogegen der Schwierigkeitsgrad von ganz einfach bis höllisch
schwer reicht. Es gibt einerseits Sudokus mit 36 Einträgen, die sehr schwer zu lösen sind, andererseits
gibt es auch Sudokus, die 17 Einträge haben und trotzdem vergleichsweise recht einfach zu lösen
sind. Das Sudoku rechts unten mit 17 Einträgen ist entnommen aus [4].
2 3
5 4
3
2
4 7
1 2
3 5
4
7 3
8 6
5 7
2 4 5 3 6
6 5
7 2
1 3
7
2
7 5
3
9 7
1 2
6
7
4
7
3
8
1
1 2
8
5
4
6
Meistens lassen sich die ersten Zahlen sehr schnell eintragen, so dass sich erste Erfolgserlebnisse
einstellen und man nicht sofort aufgeben will, falls sich erste Probleme auftun. Das anfängliche
Tempo, mit der immer weitere Zahlen eingetragen werden, sinkt dann meistens rapide. Hat man die
schwierigen Felder aber überstanden, so nimmt das Tempo wieder rasant zu, bis sich das Sudoku
wie von selbst löst. Dieser Verlauf ist wahrscheinlich einer der Hauptgründe, warum Sudokus derart
beliebt geworden sind.
Die Entwicklungsgeschichte der Sudokos ist ebenfalls sehr interessant. 1979 wurde das erste Su”
doku“ von Howard Garns in der Zeitschrift Pell Pencil Puzzles and Word Games“ als Number
”
”
3
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Place“ abgedruckt. Fünf Jahre später kamen dann die Sudokus nach Japan, wo sie auch ihren
Namen bekommen haben. Sudoku ist eigentlich eine Abkürzung von Suji wa dokushin ni kagiru
und bedeutet soviel wie Isolieren Sie die Zahlen“. In Japan lernte Wayne Gould weitere 13 Jahre
”
später, also 1997, die Rätselform kennen und brachte die Sudokus nach Europa zurück. Dafür
schrieb er ganze sechs Jahre an einem Programm, mit dem neue Sudokurätsel generiert werden
konnten und überzeugte die Times in London, die Rätsel in ihre Tageszeitung mit einzubinden. Von
da aus verbreiteten sich die Sudokus in ganz Europa. In den letzten Jahren sind zudem viele neue
Varianten dieses Rätsels aufgetaucht, aber keines davon kommt an die Popularität der originalen
Sudokus heran.
Eng verwandt mit den Sudokus sind die Lateinischen Quadrate. Der einzige Unterschied zu Sudokus
besteht darin, dass es keine Einschränkungen durch (3×3)-Untergitter gibt. Es ist nur wichtig, dass in
jeder Zeile und in jeder Spalte jede Zahl von 1 bis 9 genau einmal vorkommt. Somit ist jedes Sudoku
ein Lateinisches Quadrat, aber nicht jedes Lateinische Quadrat ein Sudoku. Lateinische Quadrate sind aber um vieles älter als Sudokus. Schon Albrecht Dürer (1471 - 1528) befasste sich mit diesen!
Interessiert man sich für Sudokus, so stellen sich zwangsläufig ein paar Fragen ein: Ist das Sudoku
lösbar? Wenn ja, ist es eindeutig lösbar und wenn nicht, wie viele Lösungen gibt es? Falls das
Sudokurätsel nicht eindeutig ist, wie muss man es modifizieren, dass es eindeutig wird? Eine
weitere Frage wäre, wie viele Felder ausgefüllt und wie viele verschiedene Zahlen vorgegeben sein
müssen, dass es eindeutige Lösungen gibt. Mit Hilfe einer gewaltigen Rechenleistung von 7 Millionen
Prozessoren und fast einem Jahr Rechenzeit konnten G. McGuire, B. Tugemann und G. Civario
Anfang 2012 in [6] beweisen, dass es keine Sudokus mit 16 vorgegebenen Feldern gibt, die eindeutig
lösbar sind. Demgegenüber sind viele Rätsel bekannt, bei denen 17 vorgegebenen Felder ausreichen,
dass sie eindeutige Lösungen haben.
In dieser Arbeit wollen wir einige der Fragen und einige grundlegende Eigenschaften von Sudokus untersuchen. Wir zeigen, dass wir Sudokus als mathematische Graphen auffassen können
und dass das Lösen eines Sudokus ein Färbeproblem darstellt. Da die Eindeutigkeit der Lösung das
zentrale Konzept jedes Sudokurätsels ist, werden wir auch hierzu ein paar Betrachtungen anstellen.
Felgenhauer und Jarvis haben in [3] untersucht, wie viele vollständig ausgefüllte Sudokus existieren.
In unserer Arbeit wollen wir den Weg, den die beiden eingeschlagen haben, skizzieren und dem
Leser dadurch die hohe Zahl an Symmetrien eines Sudokus aufzeigen.
Zum Schluss werden wir eine nicht-triviale obere Schranke für die maximale Anzahl von n-Sudokus,
also Sudokus mit n2 × n2 Feldern, und eine nicht-triviale untere Schranke für die maximale Anzahl
von n2 × n2 großen Lateinischen Quadraten angeben. Interessanterweise können wir daraufhin
4
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
beweisen, dass es im Vergleich zu Lateinischen Quadraten kaum Sudokus gibt. Dabei werden wir
primär die Arbeit [4] von Herzberg und Murty aufgreifen und die grobe Struktur ihrer Arbeit
beibehalten.
2
2.1
Etwas Graphentheorie
Erste graphentheoretische Definitionen
Ein endlicher Graph ist eine Menge von endlich vielen Knoten und Kanten. Dabei können Knoten
als unterscheidbare Punkte und Kanten als die Verbindungen zweier Knoten symbolisiert werden.
Ein Untergraph von G ist eine Teilmenge der Knoten des Graphens G mit allen Kanten zwischen
diesen Knoten. Zwei Knoten heißen benachbart zueinander genau dann, wenn sie durch eine Kante
verbunden sind.
Hat jeder Knoten eines Graphens die selbe Anzahl k an Nachbarn, so nennt man ihn regulär vom
Grad k. Eine λ-Färbung eines Graphen ist eine Abbildung f , die jedem Knoten eine natürliche
Zahl zwischen 1 und λ zuordnet. Gilt f (x) 6= f (y) für je zwei benachbarte Knoten x und y, so
sprechen wir im weiteren Verlauf von einer exakten Färbung. Ist ϕ eine exakte Färbung des
Graphens G, so schreiben wir Gϕ für den exakt gefärbten Graphen und nennen ihn exakt. Wenn
keine Verwechslungsgefahr zwischen Gϕ und G besteht, so wollen wir statt Gϕ nur G schreiben und
G exakt nennen. Die minimale Zahl λ, für die eine exakte Färbung des Graphens G existiert, heiße
chromatische Zahl und werde mit χ(G) bezeichnet. Für jeden endlichen Graphen G existiert
χ(G) (da man einerseits jeden Graphen mit k Knoten durch k Farben exakt färben kann, aber
andererseits mindestens eine Farbe zum Färben braucht. Folglich muss es eine kleinste Anzahl von
Farben geben, die den Graphen exakt färbt).
Um den ersten Satz zu beweisen, werden wir noch einige Begriffe aus der Graphentheorie verwenden,
weswegen wir diese jetzt schon einmal einführen wollen: Sei G ein endlicher Graph und e eine
Kante von G, die die Knoten x und y verbindet. Dann bezeichne G/e eine Kontraktion, d.h.
wir ersetzen x und y durch einen neuen Knoten, dessen Nachbarn genau die Nachbarn von x und
y sind. Allgemein heißt ein Graph G0 eine Kontraktion von G, falls man G0 durch endlich viele
Kontraktionen von G erhalten kann.
Mit G − e bezeichnen wir den Graph, den wir erhalten, wenn wir in G die Kante e, aber nicht die
Endpunkte x und y löschen.
5
Über die Anzahl von Sudokus und Lateinischen Quadraten
2.2
Damian Zawadka
Sudokus als Färbeprobleme
Nun können wir Sudokus als Färbeprobleme betrachten. Dazu sei jedes Sudokufeld als Knoten
aufgefasst und zwei Knoten sind genau dann benachbart, falls sie in einer Reihe, einer Zeile oder
einem Untergitter liegen. Jedes vollständige Sudokus ist dann eine exakte Färbung dieses Graphens.
Im weiteren Verlauf beschränken wir uns nicht mehr nur auf Sudokus mit (9 × 9)-Feldern, sondern
betrachten ein (n2 × n2 )-Gitter S. Jeder Zelle ordnen wir nun ein Paar (i, j) mit 0 ≤ i, j ≤ n2 − 1
zu und nennen zwei Zellen (i, j) und (i0 , j 0 ) benachbart, falls i = i0 , oder j = j 0 , oder bi/nc = bi0 /nc
und bj/nc = bj 0 /nc gilt. Dabei ist für x ∈ R mit bxc die größte ganze Zahl ≤ x gemeint.
Ein n-Sudoku ist dann eine exakte n2 -Färbung von S. Sind nicht alle Knoten von S gefärbt,
aber S lässt sich zu einer exakten n2 -Färbung erweitern, so nennen wir S ein n-Problem. Ein
n-Sudoku bezeichnen wir ab jetzt mit Xn . Wir nennen Xn Lösung zum n-Problem P , falls P zu
Xn erweitert werden kann und nennen P ein zu Xn zugehöriges n-Problem. Gibt es nur eine
Lösung zu P , so nennen wir P eindeutig lösbar.
Ein Sudokurätsel zu lösen bedeutet in der Sprache der Graphentheorie dann, dass wir einen teilweise
gefärbten Graphen vorgeben und diesen zu einer exakten Färbung des Graphens erweitern, oder
genauer, dass wir ein eindeutig lösbares n-Problem haben und die Lösung kennen.
Lemma 1. Ein n-Sudoku ist ein regulärer Graph vom Grad 3n2 − 2n − 1 = (3n + 1)(n − 1).
Beweis. Es sei (i, j) mit 0 ≤ i, j ≤ n2 − 1 beliebig, aber fest gewählt. Für alle 0 ≤ j 0 ≤ n2 − 1 und
j 6= j 0 ist (i, j 0 ) benachbart zu (i, j). Also gibt es in diesem Fall n2 − 1 Nachbarn zu (i, j). Analog
für (i, j) und (i0 , j) und 0 ≤ i0 ≤ n2 − 1.
Es sei nun bi/nc =: k ∈ N0 . Für jedes α ∈ N0 mit 0 ≤ α < n gibt es ein α0 ∈ Q mit α = α0 n und 0 ≤
0
nk+α n
α0 < 1 und ein i0 ∈ N0 mit i0 = kn + α, für das bi0 /nc = b nk+α
c = bk + α0 c = k = bi/nc
n c=b
n
nk+n
gilt. Ist α ≥ n und i0 = nk + α, so ist bi0 /nc = b nk+α
n c ≥ b n c = bk + 1c = k + 1 > k = bi/nc.
Folglich erhalten wir k = bi/nc = bi0 /nc genau dann, wenn i0 = kn + α mit α ∈ {0, 1, . . . , n − 1},
wodurch wir n Möglichkeiten haben ein i0 ∈ {0, 1, . . . , n2 − 1} zu finden, so dass (i, j) und (i0 , j 0 )
benachbart sind.
Allerdings sind auch die Fälle i = i0 und j = j 0 mitgezählt. Somit gibt es (n − 1)2 Fälle, dass
bi/nc = bi0 /nc oder bj/nc = bj 0 /nc und i 6= i0 oder j 6= j 0 gilt.
Damit gibt es 2(n2 − 1) + (n − 1)2 = 2n2 − 2 + 22 − 2n + 1 = 3n2 − 2n − 1 Nachbarn für jedes feste
(i, j).
2.3
Das chromatische Polynom
Bevor wir den ersten Satz beweisen, müssen wir noch kurz die Begriffe der Halbordnung und der
Möbiusfunktion einführen.
6
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Definition 1. Es sei M eine Menge und ≤ eine Verknüpfung auf M . Das Paar (M, ≤) nennen wir
eine halbgeordnete Menge, falls ≤ und M folgende Eigenschaften erfüllen: Für x, y, z ∈ M gilt:
(a) x ≤ x für alle x ∈ M ; (b) aus x ≤ y und y ≤ x folgt x = y; (c) aus x ≤ y und y ≤ z folgt x ≤ z.
Definition 2. Sei (M, ≤) eine endliche, halbgeordnete Menge. Dann ist die Möbiusfunktion
rekursiv definiert durch
X
µ : M × M → Z µ(x, x) = 1,
µ(x, y) = 0 für x 6= z.
x≤y≤z
Lemma 2. Es sei (M, ≤) eine halbgeordnete Menge und f : M → C eine beliebige, komplexwertige
P
Funktion. Definieren wir g(y) := x≤y f (x), so gilt
X
f (y) =
µ(x, y)g(x).
x≤y
Beweis. Der Beweis ist sehr geradlinig. Setzen wir die Definition von g(x) ein, so ist:
X
µ(x, y)g(x) =
x≤y
X
µ(x, y)
x≤y
X
f (z)
z≤x
Sortieren wir die Summanden nun um, so erhalten wir:
X
x≤y
µ(x, y)
X
z≤x
f (z) =
X
X
f (z)
z≤y
µ(x, y) = f (y)
z≤x≤y
|
{z
=0 f ür z6=y
}
Jetzt haben wir genug Vorarbeit geleistet, um den folgenden Satz zu beweisen:
Satz 1. Sei G ein endlicher Graph mit k Knoten und T ein Untergraph von G mit t Knoten und
einer exakten d0 -Färbung. Sei pG,T (λ) die Anzahl der Möglichkeiten eine exakte λ-Färbung von G
zu bekommen, wobei die d0 -Färbung von T vorgegeben ist.
Für λ ≥ d0 ist dann pG,T (λ) ein normiertes Polynom in λ mit ganzen Koeffizienten vom Grad k − t
und wir nennen pG,T (λ) das chromatische Polynom.
Wir werden den Satz auf zwei Arten beweisen:
Beweis a. Wir definieren für zwei endliche Graphen A, B:
A ≤ B :⇐⇒ A ist eine Kontraktion von B.
Wir schreiben (G, T ), wenn G und T zwei endliche Graphen sind, mit T Untergraph von G und
T exakt. Wir nennen (G0 , T ) eine Kontraktion von (G, T ), falls G0 aus Kontraktionen von G
entsteht, wobei jeweils maximal ein Endpunkt der kontrahierenden Kante in T liegt. Die minimale
Kontraktion von (G, T ) ist (T 0 , T ), wobei T 0 der Graph T mit einer gewissen Anzahl an Knoten,
7
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
die keine Nachbarn haben, ist. So erhalten wir eine Halbordnung auf der Menge der Kontraktionen
von (G, T ). Sei pG0 ,T (λ) die Anzahl der exakten λ-Färbungen der Kontraktionen (G0 , T ) mit der
vorgegebenen Färbung von T und sei qG0 ,T (λ) die Anzahl der Möglichkeiten G0 mit λ Farben zu
färben, wobei wiederum die Färbung von T vorgegeben ist.
Ohne die Restriktion der exakten Färbung kann jeder nicht gefärbte Knoten einen von λ Farben
0
bekommen. Somit ist qG0 ,T (λ) = λk −t , wobei k 0 die Anzahl der Knoten in G0 und t die Anzahl der
Knoten in T ist.
Sei nun λ ≥ d0 . Haben wir eine beliebige λ-Färbung von (G, T ), so führen wir jedes Mal, wenn
zwei benachbarte Knoten die selbe Farbe haben, eine Kontraktion mit der Kante dieser zwei
Punkte durch. So erhalten wir eine eindeutige, exakte Kontraktion (G0 , T ). Folglich gibt es zu jeder
möglichen Färbung von (G, T ) eine exakte Kontraktion (G0 , T ) und jede exakte Kontraktion (G0 , T )
kann zu einer Färbung von (G, T ) erweitert werden. So erhalten wir:
qG,T (λ) = λk−t =
X
pG0 ,T (λ).
T 0 ≤G0
Ist nun λ ≥ d0 fest und T vorgegeben, so definieren wir uns g(G) :=
P
T 0 ≤G0 ≤G
pG0 ,T (λ) und
f (G0 ) := pG0 ,T (λ) mit T 0 ≤ G0 ≤ G. Durch die Möbiusinversion erhalten wir dann:
pG,T (λ) = f (G) =
X
µ(G0 , G)g(G0 ) =
T 0 ≤G0 ≤G
X
0
µ(G0 , G)λk −t
T 0 ≤G0 ≤G
Wie man sieht, haben wir auf der rechten Seite ein ganzzahliges Polynom. Da µ(G, G) = 1 nach
Voraussetzung gilt, ist das Polynom normiert und vom Grad k − t.
Beweis b. Anstatt den Beweis über Möbiusfunktionen zu führen, können wir den Satz auch per
Induktion über die Anzahl der Kanten des Graphens (G, T ) herleiten.
1. Angenommen, die Anzahl der Kanten von G ist gleich der Anzahl von T . Dann gibt es k − t
Knoten in G, die keine Nachbarn haben und nicht in T liegen. Wir benennen diese Knoten als
vj mit j ∈ {1, . . . , (k − t)}. Da vj zu keinem Knoten benachbart ist, ist G für jede Färbung
der vj exakt. Jeder Knoten kann eine von λ Farben bekommen, so dass pG,T (λ) = λk−t gilt.
2. Angenommen, unser Satz ist für k − 1 Kanten bewiesen, wobei k die Anzahl der Kanten von
G ist.
3. Sei nun e eine Kante von G, von der maximal ein Endpunkt in T liegt. Ist G exakt, so auch
G − e. Andererseits folgt aus der Exaktheit von G − e genau dann eine exakte Färbung von
G, wenn sie den beiden Endpunkten x, y der Kante e unterschiedliche Farben zuweist. Die
Anzahl der exakten Färbungen von G − e, für die x und y die gleiche Farben haben, ist dabei
die Anzahl der exakten Färbungen von G/e. Dies ist offensichtlich, indem man den Punkt
8
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
y entfernt und alle Nachbarn von y mit x verbindet. Da x und y die selben Farben haben,
ist G/e genau dann exakt, wenn G − e exakt ist. Die Sachverhalte zusammen genommen,
erhalten wir:
pG,T (λ) = pG−e,T (λ) − pG/e,T (λ)
Da sowohl G/e als auch G − e beide jeweils k − 1 Kanten haben, können wir unsere Induktionsvoraussetzung anwenden. Folglich ist pG−e,T (λ) ein normiertes, ganzzahliges Polynom
in λ vom Grad k − t und pG/e,T (λ) ein normiertes, ganzzahliges Polynom in λ vom Grad
k − t − 1.
In Beweis a. haben Herzberg und Murty in [4] einen Fehler gemacht. Sie haben angenommen, dass
die minimale Kontraktion von (G, T ) der Graph (T, T ) sei. Dies ist im Allgemeinen nicht der Fall.
Um ein Gegenbeispiel zu erhalten betrachten wir einen beliebigen Graphen T mit einer d0 -Färbung
und konstruieren uns einen neuen Graphen G, indem wir zu T einen weiteren Knoten hinzufügen,
der keine Nachbarn hat. Dadurch hat jede Kante von G beide Endpunkte in T . Da wir keine Kante
finden, die maximal einen Endpunkt in T hat, können wir keine Kontraktion (G0 , T ) von (G, T )
mit G 6= G0 finden. Insbesondere kann (T, T ) keine Kontraktion von (G, T ) sein.
An sich ist dies kein gravierender Fehler, das Lösungsverfahren lässt sich leicht modifiziert weiter
verwenden. Anstatt die Menge der Graphen G0 mit T ≤ G0 , muss die Menge der Graphen G00
mit T 0 ≤ G00 betrachtet werden. Möglicherweise ist dies der Grund, weswegen die resultierenden
Möbiusfunktionen für pG,T (λ), in unserem und dem von Herzberg und Murty in [4] gegebenen
Beweis verschieden sind.
Korollar 1. Seien die selben Voraussetzungen wie in Satz 1 gegeben. Falls ein Knoten v0 existiert
mit d Nachbarn in T , die d0 Farben haben, so gilt pG,T (λ) = 0 für λ < d0 .
Beweis. Da λ < d0 ist, finden wir für jede der λ Farben einen Nachbarn von v0 in T , der schon
diese Farbe hat. Also können wir keine exakte Färbung von G finden.
Satz 2. Sei G ein Graph mit der chromatischen Zahl χ(G) und T eine teilweise Färbung von G
mit χ(G) − 2 Farben. Falls G exakt gefärbt werden kann, gibt es mindestens zwei Möglichkeiten die
Färbung von G zu einer exakten Färbung zu erweitern.
Beweis. Herzberg und Murty beweisen den Satz in [4] intuitiv, nämlich folgendermaßen: Da
mindestens χ(G) Farben benötigt werden um G exakt zu färben, können die beiden, in der
anfänglichen Situation fehlenden Farben, bei der exakten Färbung getauscht werden und man erhält
eine zweite exakte Färbung von G.
Rigoros lässt sich der Satz folgendermaßen beweisen:
Nach Satz 1 ist pG,T (λ) ein normiertes Polynom mit ganzzahligen Koeffizienten. Es muss gelten,
9
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
dass pG,T (λ) = 0 für λ ∈ {d0 , d0 + 1 . . . χ(G) − 1} ist. Daher können wir auch schreiben:
χ(G)−1
Q
pG,T (λ) = q(λ)
(λ − j) mit einem ganzzahligen Polynom q(λ). Für λ = χ(G) erhalten wir
j=d0
χ(G)−1
Y
pG,T χ(G) = q χ(G)
χ(G) − j = q χ(G) · χ(G) − d0 !
| {z } |
{z
}
j=d
0
∈Z
≥ 2 für d0 < χ(G) − 1
und da |pG,T χ(G) > 1| und pG,T (λ) die Anzahl der exakten λ-Färbungen von G angibt, gibt es
nie genau eine exakte Färbung von G mit χ(G) − 2 Farben.
3
3.1
Färbungen von n-Sudokus
Die chromatische Zahl eines n-Sudokus
In diesem Abschnitt wollen wir nun die chromatische Zahl eines n-Sudokus bestimmen, so dass wir
erste Eigenschaften aus den vorherigen Ergebnissen herleiten können.
Definition 3. Mit Kn bezeichnen wir einen n knotigen, regulären Graphen vom Grad n − 1. Dann
nennen wir Kn einen vollständigen Graphen.
Lemma 3. Für die chromatische Zahl χ(Kn ) eines vollständigen Graphens Kn gilt
χ(Kn ) = n.
Beweis. Angenommen, es gelte χ(Kn ) < n. Dann gäbe es mindestens zwei Knoten x, y mit derselben
Farbe. Da Kn ein regulärer Graph vom Grad n − 1 ist, sind insbesondere auch x und y benachbart
im Widerspruch dazu, dass χ(Kn ) die kleinste Anzahl an Farben ist, für die Kn exakt ist. Aber da
Kn genau n Knoten hat, ist χ(Kn ) ≤ n. Somit ist χ(Kn ) = n.
Satz 3. Für jede natürliche Zahl n existiert eine exakte Färbung des n-Sudokus Xn mit n2 Farben.
Die chromatische Zahl von Xn ist χ(Xn ) = n2 .
Beweis. Die Knoten des (n × n)-Gitters an der oberen linken Ecke sind bei einem Sudoku alle
zueinander benachbart. Folglich ist der Untergraph des (n × n)-Gitters der vollständige Graph Kn2 .
Nach Lemma 3 ist also χ(Xn ) ≥ n2 . Jetzt zeigen wir, dass n2 Farben ausreichen, um ein exaktes
Xn zu bekommen. Wir bezeichnen die Zellen von Xn wie zuvor mit (i, j), wobei 0 ≤ i, j ≤ n2 − 1
gelte. Für jedes i finden wir natürliche Zahlen ti , di mit 0 ≤ ti , di ≤ n − 1 und i = ti n + di . Analog
für j.
Der Zelle (i, j) des Graphens Xn ordnen wir nun die ”Farbe”
c(i, j) := di n + ti + ntj + dj = di n + ti + j
10
mod n2
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
zu. Um zu zeigen, dass wir eine exakte Färbung erhalten haben, müssen wir noch zeigen, dass für
zwei benachbarte Zellen (i, j) und (i0 , j 0 ) folgt, dass c(i, j) 6= c(i0 , j 0 ) ist. Sei also i = i0 . Dann ist
ti n + di = ti0 n + di0 genau dann, wenn n(ti − ti0 ) = di0 − di .
Wegen −n < −n + 1 ≤ di0 − di ≤ n − 1 < n ist −1 < ti − ti0 < 1 und da ti , ti0 ∈ N0 ist ti = ti0 und
somit auch di = di0 . Nehmen wir weiterhin an, dass c(i, j) = c(i0 , j 0 ) gilt, so bekommen wir
di n + ti + j = di0 n + ti0 + j 0 ⇔ di n + ti + j = di n + ti + j 0 ⇔ j = j 0 .
Also muss (i, j) = (i0 , j 0 ) gelten. Analog verläuft die Argumentation, wenn wir zuerst c(i, j) = c(i0 , j 0 )
annehmen und wegen j = j 0 auf di n + ti = di0 n + ti0 schließen. Wie oben folgern wir daraus, dass
di = di0 und ti = ti0 gilt.
i
Sei nun bi/nc = bi0 /nc und bj/nc = bj 0 /nc. Wegen ti = b ti n+d
c = bi/nc = bi0 /nc = b
n
0
t0i n+di0
n
c = ti0
0
und analog tj = tj 0 , folgt aus c(i, j) = c(i , j ) die Gleichung di n + dj = di0 n + dj 0 die genau dann
erfüllt ist, wenn n(di − di0 ) = dj 0 − dj gilt. Hier können wir wie oben schließen und erhalten dj 0 = dj
und di = di0 . Also ist (i, j) = (i0 , j 0 ).
3.2
Eindeutigkeit von n-Problemen
Nachdem wir etwas über exakte Färbungen von Graphen und die chromatische Zahl von n-Sudokus
erfahren haben, wollen wir uns ein paar Gedanken zur eindeutigen Lösbarkeit von n-Problemen
machen.
Da nach Satz 3 für die chromatische Zahl χ(Xn ) = n2 gilt, müssen bei einem n-Problem mindestens
n2 − 1 Zahlen vorgegeben sein, dass es eindeutig lösbar ist. Allerdings sind das nicht die einzigen
notwendigen Bedingungen. Anhand dreier fast vollständig ausgefüllter 3-Probleme wollen wir
Beispiele angeben, die nicht eindeutig lösbar sind.
Andererseits gibt es 3-Probleme, bei denen 17 Einträge und 8 verschiedene Zahlen ausreichen, dass
sie eindeutig lösbar sind, wie zum Beispiel:
1
3
2
5
6
7
7
3
4
8
1
1
2
8
4
5
6
Im Beispiel (a) kann man ein (2 × 2)-Untergitter der Form
11
2 7
7 2
oder
7 2
2 7
einsetzt. Im zweiten
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
5
6
8
4
3
2
7
1
9
1
2
3
4
5
6
7
8
9
3
4
1
9
7
8
2
6
5
7
8
9
1
2
3
4
5
6
9
5
6
1
8
4
3
4
5
6
7
8
9
1
2
3
3
6
9
5
4
8
1
2
1
4
3
6
5
8
9
7
6
8
4
7
1
3
9
5
2
3
6
5
8
9
7
2
1
4
9
1
5
2
8
4
6
3
7
8
9
7
2
1
4
3
6
5
4
5
3
8
2
9
1
7
6
5
3
1
4
2
7
8
1
7
9
3
4
6
5
2
8
4
2
7
8
3
1
8
2
6
1
5
7
3
9
4
7
8
3
1
4
2
5
(a)
5
(b)
1
2
3
4
5
6
7
8
9
7
8
9
1
2
3
4
5
6
4
5
6
7
8
9
1
2
3
2
1
4
3
6
5
8
9
7
3
6
5
8
9
7
2
1
4
8
9
7
2
1
4
3
6
5
5
3
1
6
4
2
9
7
8
4
2
7
8
3
1
7
8
3
1
4
2
(c)
Beispiel (b) gibt es ein (3 × 3)-Untergitter, mit
5
. Wir können in das Untergitter sowohl
5
5
5 6 9
9 5 6
6 9 5
als auch
5 9 6
6 5 9
9 6 5
einsetzen.
Im dritten Fall (c) können wir ein (2 × 3)-Untergitter mit
6 9 5
9 5 6
oder
9 5 6
6 9 5
einsetzen, wodurch
wir bei allen drei Beispielen zwei verschiedene 3-Sudokus erhalten.
Satz 4. Sei Xn ein n-Sudoku. Es gebe einen (k × k)-Block Bk , k ∈ (2, 3, . . . , n), der durch k
verschiedene Zahlen gefüllt ist, wobei jeweils k Zahlen in einem Block liegen. Sind die zugehörigen
n-Probleme eindeutig lösbar,
a) so sind mindestens k − 1 Zahlen in Bk vorgegeben.
b) so sind Zahlen in mindestens je k − 1 Zeilen und Spalten von Bk vorgegeben.
c) gibt es für k > 3 mindestens eine Zeile oder Spalte von Bk , bei der zwei Zahlen vorgegeben sind.
Beweis. Wir beweisen den Satz durch Kontraposition.
a) Angenommen, Xn erfülle die Voraussetzungen des Satzes. Betrachte ein n-Problem P n , bei dem
12
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
weniger als k − 1 Zahlen in Bk vorgegeben sind. Dann finden wir zwei Zeilen oder Spalten in
Bk , in denen keine Zahlen vorgegeben sind. O.B.d.A. finden wir zwei solche Zeilen
a1
...
ak
a01
...
a0k
a01
...
a0k
a1
...
ak
Vertauschen wir sie zu
so erhalten wir einen weiteren (k × k)-Block Bk0 mit dem wir P n lösen können, also ist P n nicht
eindeutig lösbar.
b) Sind in weniger als k − 1 Zeilen oder Spalten Zahlen vorgegeben, so finden wir ebenfalls zwei
Zeilen oder Spalten die keine Einträge haben und schließen wie bei a).
0
c) Ist k > 3 und P n ein n-Problem, bei dem in jeder Zeile und Spalte maximal eine Zahl vorgegeben
0
ist, so gibt es einen Block Bk , der P n löst. Wir finden eine Permutation σ der Zeilen von Bk ,
0
so dass die vorgegebenen Zahlen von P n auf der Hauptdiagonalen liegen. Wenden wir σ auf Bk
an, spiegeln den neuen Block an der Hauptdiagonalen und wenden anschließend σ −1 auf die
Zeilen an, so erhalten wir einen neuen Block Bk0 , der das n-Problem löst.
4
Brute Force Methode zur Bestimmung der Anzahl von
n-Sudokus
4.1
Gesamtzahl der 3-Sudokus
Wie zu Beginn ordnen wir jeder Zelle unseres n-Sudokus ein Paar (i, j) mit 0 ≤ i, j ≤ n2 − 1 zu.
Die Box Bk, mit k ∈ {1, . . . , n2 }, sei die Menge der Zellen, für die k = bi/nc + bj/nc + 1 gilt.
Die Menge aller Zellen (i, j) mit festem i, sei die (i + 1)-te Zeile; mit festem j die (j + 1)-te Spalte.
Die Menge, für die bi/nc konstant ist, bezeichnen wir als Stapel und für die bj/nc konstant ist,
als Band.
13
Über die Anzahl von Sudokus und Lateinischen Quadraten
B1
B2
B3
B4
B5
B6
B7
B8
B9
Damian Zawadka
Haben wir ein Sudoku gegeben, so gibt es gewisse Operationen die wir durchführen können, um ein
neues Sudoku zu erhalten. Wir nennen zwei Sudokus ähnlich, falls sie sich durch eine der folgenden
Operationen ineinander überführen lassen:
1. Umbenennung
2. Vertauschung zweier Spalten eines Stapels
3. Vertauschung zweier Zeilen eines Bandes
4. Drehung um 90◦ , 180◦ oder 270◦
5. Reflexion an einer der Mittelsenkrechten oder an den Hauptdiagonalen
ansonsten nennen wir sie wesentlich verschieden.
Felgenhauer und Jarvis konnten in [3] zeigen, dass es zwar 6.670.903.752.021.072.936.960 ≈ 6.7×1021
3-Sudokus gibt, aber in einem weiteren Artikel [7] zeigten Russel und Jarvis, dass davon nur
5.472.730.538 ≈ 5.5 × 109 wesentlich verschieden sind. Im Durchschnitt kann man also aus einem
Sudoku 1.2 × 1012 ähnliche Sudokus bekommen!
Wir wollen jetzt für 3-Sudokus die Operationen etwas verdeutlichen und den Weg skizzieren,
wie Felgenhauer und Jarvis in [3] die Anzahl der 3-Sudokus berechnet haben. Im Nachfolgenden
bezeichnen wir mit Sudokus ausschließlich 3-Sudokus.
4.1.1
Umbenennung
Hat man ein beliebiges Sudoku, z.B.
14
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
5
6
8
7
1
9
4
3
2
3
4
1
2
6
5
9
7
8
2
9
7
8
4
3
5
6
1
7
3
2
4
8
1
6
9
5
6
8
4
9
5
2
7
1
3
9
1
5
6
3
7
2
8
4
4
5
3
1
7
6
8
2
9
1
7
9
5
2
8
3
4
6
8
2
6
3
9
4
1
5
7
so kann man für jede beliebige Permutation σ ∈ S9 ein neues Sudoku erhalten. Insbesondere kann
jedes Sudoku auf die Standardform gebracht werden, d.h. die Box B1 hat die Form:
1
2
3
4
5
6
7
8
9
Gibt es N1 Sudokus in der Standardform, so gibt es also ingesamt N0 = 9! × N1 Sudokus. Für unser
Beispiel wäre die Permutation die folgende: 1 → 6 → 2 → 7 → 9 → 8 → 3 → 4 → 5 → 1 und wir
erhalten folgendes Sudoku:
4.1.2
1
2
3
9
6
8
5
4
7
4
5
6
7
2
1
8
9
3
7
8
9
3
5
4
1
2
6
9
4
7
5
3
6
2
8
1
2
3
5
8
1
7
9
6
4
8
6
1
2
4
9
7
3
5
5
1
4
6
9
2
3
7
8
6
9
8
1
7
3
4
5
2
3
7
2
4
8
5
6
1
9
Permutationen in einem Stapel
Vertauscht man die Spalten in einem Stapel, so bekommt man ein neues Sudoku. Dabei kann man
die Spalten insbesondere so vertauschen, dass die Einträge der Zellen in der ersten Zeile jedes
Stapels aufsteigend angeordnet sind.
Da wir den ersten Stapel unverändert ließen und nur Permutationen im zweiten und dritten
durchgeführt haben, ist mit N2 als Anzahl solcher geordneten Sudokus in Standardform N1 =
3! × 3! N2 = 36 N2 . Also ist N0 = 9! × 3! × 3! N2
Führen wir diese Operation an unserem Sudoku durch, so erhalten wir:
15
Über die Anzahl von Sudokus und Lateinischen Quadraten
4.1.3
Damian Zawadka
1
2
3
6
8
9
4
5
7
4
5
6
2
1
7
9
8
3
7
8
9
5
4
3
2
1
6
9
4
7
3
6
5
8
2
1
2
3
5
1
7
8
6
9
4
8
6
1
4
9
2
3
7
5
5
1
4
9
2
6
7
3
8
6
9
8
7
3
1
5
4
2
3
7
2
8
5
4
1
6
9
Vertauschung der Stapel
Da nicht nur die Vertauschungen der Spalten in einem Stapel neue Sudokus ergeben, sondern auch
das Vertauschen des zweiten und dritten Stapels untereinander, können wir insbesondere die Stapel
nach dem ersten und zweiten Schritt so anordnen, dass die Zahl in Zelle (3, 0) kleiner ist als in Zelle
(6, 0). Diese Form nennen wir nun lexikographisch. Für unser Beispiel also:
1
2
3
4
5
7
6
8
9
4
5
6
9
8
3
2
1
7
7
8
9
2
1
6
5
4
3
8
4
7
8
2
1
3
6
5
2
3
5
6
9
4
1
7
8
9
6
1
3
7
5
4
9
2
5
1
4
7
3
8
9
2
6
6
9
8
5
4
2
7
3
1
3
7
2
1
6
9
8
5
4
Ist N3 die Anzahl der Sudokus in lexikographischer Form, so ist N2 = 2N3 und folglich N0 =
9! × 3! × 3! × 2 N3 = 26.127.360 N3 .
4.1.4
Vertauschung aller Stapel
Bisher haben wir die Sudokus immer in Standardform gelassen. Natürlich können wir aber auch im
ersten Stapel die Spalten vertauschen, genauso wie die drei Stapel untereinander. Wenn wir nun
wieder die Schritte 1 bis 3 durchführen, so gilt leider nicht, dass wir die Gesamtanzahl der Sudokus
um einen Faktor von 3! × 3! × 2! = 72 reduziert haben. Denn durch den letzten Schritt erhalten wir
nicht zwangsläufig neue Sudokus.
16
Über die Anzahl von Sudokus und Lateinischen Quadraten
4.1.5
Damian Zawadka
Vertauschungen der Zeilen und Bänder
Man kann nicht nur die Spalten in einem Stapel oder die Stapel untereinander vertauschen, sondern
die selben Operationen sind auch für die Bänder und die Zeilen in den Bändern möglich. Auch
hierdurch müssen nicht zwangsläufig neue Sudokus entstehen. Unser Sudoku wäre nach allen
Schritten dann in folgender Form:
1
2
3
4
5
7
6
8
9
4
5
6
8
9
3
2
7
1
7
8
9
2
1
6
5
3
4
2
3
5
6
9
4
1
7
8
8
6
1
3
7
5
4
9
2
9
4
7
8
2
1
3
6
5
3
7
2
1
6
9
8
5
4
5
1
4
7
3
8
9
2
6
6
9
8
5
4
2
7
3
1
Felgenhauer und Jarvis behelfen sich in [3] damit, dass sie nur das erste Band in Standardform
betrachten. Durch einfache Überlegungen bestimmen sie dann die Anzahl der Möglichkeiten, die
beiden Blöcke B2 und B3 zu beschriften. Diese beträgt 2.612.736. Aufgrund der lexikographischen
Sortierung müssen sie letztlich nur noch 2.612.736/72 = 36288 Konfigurationen untersuchen. Durch
Schritt 4 (Vertauschung aller Stapel) verringern sie die Anzahl der zu betrachtenden Konfigurationen
auf nur noch 2051 und durch Schritt 5 (Vertauschung der Zeilen und Bänder), sinkt diese Zahl auf
nur noch 416. Untersucht man diese 416 Konfigurationen, so finden sich weitere Möglichkeiten der
Reduktion, wie z.B. bei folgenden Konfigurationen:
1
2
3
4
5
8
6
7
9
4
5
6
1
7
9
2
3
8
7
8
9
2
3
6
1
4
5
Man sieht sofort, dass die Anzahl von Sudokus mit dieser Konfiguration des ersten Bandes dieselbe
ist wie für die folgende:
1
2
3
4
5
9
6
7
8
4
5
6
1
7
8
2
3
9
7
8
9
2
3
6
1
4
5
Durch solche Überlegungen (in der oberen Konfiguration sind noch weitere derartige Paare vorhanden) haben Felgenhauer und Jarvis die Anzahl der Konfigurationen auf 44 gesenkt. Per Computer
haben die beiden anschließend überprüft, wie viele Sudokus mit einer dieser 44 Konfigurationen
möglich sind und bewiesen, dass es insgesamt 6.670.903.752.021.072.936.960 verschiedene Sudokus
gibt.
17
Über die Anzahl von Sudokus und Lateinischen Quadraten
4.2
Damian Zawadka
Anzahl der 2-Sudokus
Für 2-Sudokus kann man die vorherigen Überlegungen ebenfalls anstellen. Um ein besseres Gefühl
für die hohe Anzahl von Symmetrien zu bekommen, die ein n-Sudoku hat, wollen wir die Anzahl
der wesentlich verschiedenen und die Gesamtzahl der 2-Sudokus bestimmen. Im Gegensatz zum
Beginn wollen wir die Zelle in der i-ten Spalte und j-ten Zeile mit (i, j) beschriften. Zuerst bringen
wir unser Sudoku wieder in Standardform:
1
2
3
4
Durch die lexikographische Sortierung der Zeilen und Spalten müssen wir nur noch folgende 2-Sudoku
betrachten:
1
2
3
4
3
4
2
4
Die einzigen möglichen Zahlen in der Zelle (3, 3) sind die 1 und 4. Setzt man dort eine 1 ein, so
ergibt sich ein Widerspruch:
1
2
3
4
2
3
4
1
3
4
1
4
Setzen wir eine 4 in Zelle (3, 3) so gibt es drei Möglichkeiten die Zelle (1, 4) zu beschriften:
1
2
3
4
2
3
4
4
4
1
2
3
4
3
2
1
4
4
4
1
2
3
4
2
2
3
4
4
4
3
Diese 3 Konfigurationen können wir nun lösen und wir erhalten die 2-Sudokus:
1
2
3
4
1
2
3
4
1
2
3
4
3
4
1
2
3
4
2
1
3
4
1
2
2
1
4
3
2
1
4
3
2
3
4
1
4
3
2
1
4
3
1
2
4
1
2
3
18
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Allerdings sind das erste und dritte 2-Sudoku ähnlich. Transponiert man das dritte 2-Sudoku und
permutiert 2 → 3, so erhält man das erste. Folglich gibt es zwar 4! × 2 × 2 × 3 = 288 verschiedene,
aber nur 2 wesentlich verschiedene 2-Sudokus.
Weiterhin ist die Frage interessant, wie viele Einträge in den Zellen vorgegeben sein müssen, dass
das 2-Sudoku eine eindeutige Lösung besitzt. Nach Satz 2 hat ein 2-Sudoku die chromatische Zahl
χ(X2 ) = 3. Ein eindeutig lösbares 2-Sudoku mit 4 Einträgen wäre z.B.:
1
2
4
1
Um zu beweisen, dass 4 die minimale Anzahl an vorgegeben Einträgen ist, müssen wir nur zeigen, dass
für 3 vorgegebene Einträge keine eindeutige Lösung existiert. Am einfachsten und schnellsten macht
man dies, indem man die beiden wesentlichen verschiedenen 2-Sudokus untersucht und ausnutzt, dass
man 3 unterschiedliche Ziffern vorgeben muss. Allerdings gibt es immernoch 4 × 4 × 4 × 4 × 2 = 512
2-Probleme, die untersucht werden müssen.
5
Permanenten und Systeme von unterschiedlichen Repräsentanten
In diesem Teil werden wir eine nichttriviale obere Schranke für die Anzahl von n-Sudokus und eine
nichttriviale untere Schranke für die Anzahl von Lateinischen Quadraten der Größe n herleiten,
wobei n nur genügend groß sein muss.
Dafür werden wir vor allem die Permanente einer Matrix A verwenden. Für weitere Details verweisen
wir auf [5].
5.1
Permanenten
Definition 4. Ist A eine (n × n)-Matrix, mit aij als dem (i, j)-ten Eintrag, so ist die Permanente
von A, bezeichnet mit per A, definiert durch
X
a1σ(1) a2σ(2) . . . anσ(n) .
σ∈Sn
Pn
Dabei ist Sn die Symmetrische Gruppe auf {1, 2, . . . , n}. Ist weiterhin j 0 =1 aij 0 = 1 für alle
Pn
1 ≤ i ≤ n und i0 =1 ai0 j = 1 für alle 1 ≤ j ≤ n, so nennen wir A doppelt stochastisch.
Sind die Einträge einer Matrix A ausschließlich 0 und 1, so nennen wir A eine (0, 1)-Matrix.
1981 wurden zwei verschiedene Beweise von D. I. Falikman und von G. P. Egoritsjev geliefert, dass
per A ≥
19
n!
nn
(1)
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
für jede doppelt stochastische (n × n)-Matrix A gilt. Diese Schranke ist optimal, da für die (n × n)Matrix A mit aij =
1
n
gilt:
X
a1σ(1) a2σ(2) · · · anσ(n) =
X 1 n
n!
= n
n
n
σ∈Sn
σ∈Sn
Bis dahin wurde die Ungleichung als die ”van der Waerden Vermutung”bezeichnet, da van der
Waerden 1926 die Frage aufwarf, welche Matrix die kleinste Permanente habe. Für eine obere
Schranke stellte H. Minc 1967 die Vermutung auf, dass für eine (0, 1)-Matrix A mit ri als die Summe
der Einträge der i-ten Zeile, gilt:
per A ≤
n
Y
(ri !)1/ri
(2)
i=1
Bewiesen wurde diese Vermutung 1973 von L. M. Brégman (siehe Seite 82 in [5]). Beide Ungleichungen werden wir verwenden, um die Schranken für unsere n-Sudokus und Lateinische Quadrate
zu bestimmen.
Definition 5. Es sei S ein (n × n)-Gitter. Jeder Zelle ordnen wir ein Paar (i, j) mit 0 ≤ i, j ≤ n − 1
zu und nennen zwei Zellen (i, j) und (i0 , j 0 ) benachbart, falls i = i0 oder j = j 0 . Eine exakte
n-Färbung von S heißt dann Lateinisches Quadrat der Größe n.
Eine etwas anschaulichere Definition wäre:
Wir betrachten ein Quadrat mit n2 kleineren, gleichgroßen Quadraten. Wenn in jeder Zeile und
Spalte jede Zahl aus {1, 2, . . . , n} genau einmal vorkommt, dann nennt man dies ein Lateinisches
Quadrat.
Ein Beispiel für ein Lateinisches Quadrat wäre:
5.2
1
2
3
4
4
1
2
3
3
4
1
2
2
3
4
1
Systeme von unterschiedlichen Repräsentanten
Definition 6. Es seien A1 , A2 , . . . , An Teilmengen der Menge I := {1, 2, . . . , n}. Können wir n
paarweise verschiedene Elemente ai ∈ Ai für i ∈ I finden, so nennen wir die Menge {a1 , a2 , . . . , an }
ein System von unterschiedlichen Repräsentanten.
Lemma 4. Seien A1 , A2 , . . . , An Teilmengen von I := {1, 2, . . . , n}. Sei N (S) :=
S
Aj . Existiert
j∈S
ein System von unterschiedlichen Repräsentanten, so gilt für jede Teilmenge S von I, dass |N (S)| ≥
|S| ist, wobei |S| die Anzahl der Elemente in S bezeichnet.
20
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Beweis. Angenommen es gäbe eine Teilmenge S von I := {1, 2, . . . , n} für die N (S) < |S| gilt. Da
N (S) weniger Elemente als {Aj }j∈S hat |S| = |{Aj }j∈S | , ist es uns nicht möglich |S| paarweise
verschiedene Elemente aus N (S) zu wählen. Insbesondere finden wir keine paarweise verschiedenen
aj ∈ Aj mit j ∈ S und wegen S ⊆ I finden wir kein System von unterschiedlichen Repräsentanten
von A1 , A2 , . . . , An .
Die Kontraposition von Lemma 4 wird auch die Hall-Bedingung genannt. Ohne Beweis wollen wir
noch einen Satz anführen, den wir im weiteren Verlauf benutzen werden. Den Beweis kann man in
[5] nachlesen.
Lemma 5 (Halls-Theorem). Mit den Bezeichnungen aus Lemma 4 folgt:
Gilt für alle S ⊆ I, dass |N (S)| ≥ |S| ist, so finden wir ein System von unterschiedlichen Repräsentanten von A1 , A2 , . . . , An .
Definition 7. Seien A1 , A2 , . . . , An Teilmengen von I := {1, 2, . . . , n} und A eine (n × n) − (0, 1)Matrix bei der der (i, j)-te Eintrag genau dann 1 ist, wenn i ∈ Aj ist. Dann bezeichnen wir A als
die zu A1 , A2 , . . . , An zugehörige Hall-Matrix.
Satz 5. Seien A1 , A2 , . . . , An Teilmengen von I := {1, 2, . . . , n} und A die zugehörige Hall-Matrix.
Dann gibt per A die Anzahl der Systeme von unterschiedlichen Repräsentanten von A1 , A2 , . . . , An
an.
Beweis. Wir bezeichnen mit aij den (i, j)-ten Eintrag der Hall-Matrix A. Es ist also aij = 1 genau
dann, wenn i ∈ Aj . Dann gilt für σ ∈ Sn
n
Y
aiσ(1) = 1 ⇐⇒ aiσ(i) = 1 ∀i ∈ {1, 2, . . . , n} ⇐⇒ i ∈ Aσ(i) ∀i ∈ {1, 2, . . . , n}.
i=1
Ist nur ein aiσ(i) 6= 1, so ist aiσ(i) = 0, also
n
Q
aiσ(i) = 0. Damit gelten folgende Gleichungen:
i=1
per A =
n
X Y
ajσ(j) =
σ∈Sn j=1
n
X Y
σ∈Sn ,
i∈Aσ(i)
ajσ(j) =
j=1
X
1
σ∈Sn ,
i∈Aσ(i)
Die rechte Seite zählt die Anzahl der σ ∈ Sn für die i ∈ Aσ(i) für alle i ∈ I ist. Dies ist gleichbedeutend
damit, dass ai := σ −1 (i) ∈ Ai ist. Daher bilden a1 , a2 , . . . , an ein System von unterschiedlichen
Repräsentanten.
6
n-Sudokus und Lateinische Quadrate
Nun haben wir genug Erkenntnisse gesammelt, so dass wir eine untere Schranke für die Anzahl von
Lateinischen Quadraten angeben können.
21
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Satz 6. Die Anzahl der Lateinischen Quadrate mit n × n Einträgen, ist von unten durch (n!)2n /nn
2
beschränkt.
Beweis. Für jedes Lateinische Quadrat der Größe n gibt es n! Möglichkeiten die erste Zeile zu
beschriften. Angenommen, wir haben bereits k Zeilen des Lateinisches Quadrates und wollen die
(k + 1)-te Zeile beschriften. Für jede Zelle i der (k + 1)-ten Zeile definieren wir Ai als die Menge aller
Zeilen, die noch nicht in der i-ten Spalte verwendet wurden. Also ist die Anzahl von Elementen in
Ai genau n − k. Die (k + 1)-te Zeile des Lateinischen Quadrates zu beschriften ist äquivalent dazu,
dass wir ein System von unterschiedlichen Repräsentanten von A1 , . . . , An haben. Nach Satz 5 ist
die Anzahl der Möglichkeiten, so ein System zu finden, die Permanente der zugehörigen Hall-Matrix
A. Weil (n − k)−1 A doppelt stochastisch ist, erhalten wir mit (1), dass es mindestens
(n − k)n n!
nn
Möglichkeiten gibt, die (k+1)-te Zeile zu beschriften. Multiplizieren wir die Anzahl der Möglichkeiten
von k = 0 bis n − 1, so folgt schließlich
n−1
Y
k=0
n−1
n
(n!)n Y
(n!)n Y n
n! · n!
(n − k)n n!
(n!)2n
n
=
(n
−
k)
=
k
=
=
.
nn
(nn )n
nn2
n n2
n n2
k=0
k=1
Korollar 2. Die Anzahl der Lateinischen Quadrate mit n2 × n2 Einträgen ist mindestens
4
n2n e−2n
4
+O(n2 log n)
.
2
4
Beweis. Nach Satz 6 ist die Anzahl der Lateinischen Quadrate der Größe n2 mindestens (n2 !)2n /n2n .
Mit Hilfe der Stirlingschen Formel
log n! = n log n − n +
1
log n + O(1),
2
folgt:
(n2 !)2n
log
n2n4
2
= 2n2 log(n2 !) − 2n4 log n
= 2n2 n2 log n2 − n2 + log n + O(1) − 2n4 log n
= 4n4 log n − 2n4 + 2n2 log n + O(n2 ) − 2n4 log n
= 2n4 log n − 2n4 + O(n2 log n)
4
= log n2n − 2n4 + O(n2 log n)
und wir erhalten
2
4
4
2
(n2 !)2n
= n2n e−2n +O(n log n) .
n2n4
22
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Ein n-Sudoku hat n2 Boxen. Für jede Box gibt es (n2 )! Möglichkeiten sie genau mit den Zahlen
{1, 2, . . . , n2 } auszufüllen. Bei n2 Boxen ist eine obere Schranke für die Anzahl der n-Sudokus
n2
folglich (n2 )! . Dies ist aber eine sehr triviale Schranke. Wenden wir die Stirlingsche Formel an,
so erhalten wir
n2
(n2 )!
= elog
n2
(n2 )!
= en
2
log (n2 )!
= en
4
log n2 −n4 +n2 log n+O(1)
4
= n2n e−n
4
+O(n2 )
.
Für große n können wir den Verlauf dieser Schranke etwas besser approximieren, wie wir das im
folgenden Satz zeigen wollen:
Satz 7. Die Anzahl der n-Sudokus ist von oben beschränkt und zwar durch
4
n2n e−2.5n
4
+O(n3 log n)
,
für n genügend groß.
Beweis. Analog zu früher wollen wir die Begriffe Stapel, Spalte, Zeile, Band und Box eines n-Sudokus
verwenden. Im weiteren Verlauf definieren wir uns eine Hilfsgröße
ν(j, k) := n2 − (j − 1)n − (k − 1).
Im ersten Schritt schauen wir uns das erste Band an und bestimmen eine obere Schranke für die
Möglichkeiten es auszufüllen.
Um die erste Zeile zu füllen, haben wir (n2 )! = ν(1, 1) ! Möglichkeiten. Betrachten wir jetzt die 2.
Zeile, so können wir jede Zahl i ∈ I := {1, 2, . . . , n2 } in eine von n2 − n = ν(2, 1) Zellen eintragen,
da i bereits in einer der n Boxen liegt und wir i in die Zellen dieser Box nicht mehr eintragen
dürfen.
Sei Aj die Menge der Zahlen, die in die j-te Spalte der 2. Zeile eingetragen werden dürfen und
A die zugehörige Hall-Matrix. Nach Satz 5 ist per A die Anzahl der Möglichkeiten ein System
von unterschiedlichen Repräsentanten zu finden. Nach unserer Definition von Aj und A ist per A
also die Anzahl von Möglichkeiten die 2. Zeile auszufüllen. Die Zeilensumme von A ist jeweils
n2 − n = ν(2, 1) und nach Ungleichung (2) ist
2
per A ≤
n
Y
(n2 − n)1/(n
2
−n)
= (n2 − n)n
2
/(n2 −n)
= ν(2, 1)
n2 /ν(2,1)
.
j=1
Analog verläuft die Argumentation für die 3. Zeile und wir erhalten als obere Schranke
2
n
(n2 − 2n)! n−2 = ν(3, 1) !n /ν(3,1) .
Führen wir die Argumentation nun für jede Zeile des ersten Bandes durch, so erhalten wir als
maximale Anzahl von Möglichkeiten das erste Band eines n-Sudokus auszufüllen
n−1
Y
n
(n2 − kn)! n−k =
k=0
n−1
Y
n
n2 /ν(k+1,1) Y
n2 /ν(k,1)
ν(k + 1, 1)!
=
ν(k, 1)!
.
k=0
k=1
23
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Jetzt nehmen wir an, dass wir j − 1 Bänder ausgefüllt haben. Dann können wir jede Zahl i ∈ I
in eine von ν(j, 1) = n2 − (j − 1)n Zellen der 1. Zeile eintragen, da i bereits in (j − 1)n Spalten
eingetragen ist. Daher ist, mit der selben Argumentation wie zuvor, die maximale Anzahl der
Möglichkeiten die erste Zeile auszufüllen
n2
2
n2 − (j − 1)n ! n2 −(j−1)n = ν(j, 1) !n /ν(j,1) ,
und für die Anzahl der Möglichkeiten die 2. Zeile
n2
2
n − (j − 1)n + 1
!
n2 − (j−1)n+1
n2 /ν(j,2)
= ν(j, 2)!
.
So gehen wir weiter vor, bis wir die j-te Zeile ausgefüllt haben. Dagegen ändern wir unsere
Betrachtungsweise ab der (j + 1)-Zeile, da dann jede Zahl i ∈ I bereits in einer von j Boxen des
j-ten Bandes liegt und nur noch in n − j Boxen eingetragen werden kann. Folglich kann jede Zahl
i ∈ I nur in n2 − jn Zellen der (j + 1)-ten Zeile des j-ten Bandes eingetragen werden. Also ist die
maximal Anzahl, die (j + 1)-te Zeile des j-ten Bandes auszufüllen:
n2
n2 /ν(j+1,1)
(n2 − jn)! n2 −jn = ν(j + 1, 1)!
.
Schauen wir uns jetzt die (j + 2)-te Zeile des j-ten Bandes an, so ist jedes i ∈ I bereits in j + 1
Boxen eingetragen und kann nur noch in eine von n2 − n(j + 1) Zellen der (j + 2)-ten Zeile des
j-ten Bandes eingetragen werden.
Also ist die maximal Anzahl, die (j + 2)-te Zeile des j-ten Bandes auszufüllen
n2
n2 /ν(j+2,1)
(n2 − n(j + 1))! n2 −n(j+1) = ν(j + 2, 1)!
.
Diese Betrachtungen führen wir bis zur n-ten Zeile im n-ten Band durch und können jetzt ν(j, k)
interpretieren. Ist 1 ≤ k ≤ j ≤ n, so darf jedes i ∈ I in ν(j, k) und ist 1 ≤ j ≤ k ≤ n, so darf jedes
j ∈ I in ν(k, 1) Zellen der k-ten Zeile im j-ten Band liegen, falls alle vorherigen Zeilen ausgefüllt
sind.
Folglich ist die Anzahl Sn der n-Sudokus beschränkt durch:
n
i−1
Y
Y
i=1
=
ν(i, k + 1)!
n2
ν(i,k+1)
k=0
n
i
Y
Y
i=1
k=1
·
n−1
Y
n2
ν(l + 1, 1)! ν(l+1,1)
!
l=i
n
Y
n2
n2
ν(i, k)! ν(i,k) ·
ν(l, 1)! ν(l,1)
!
l=i+1
Dabei werden wir verwenden, dass folgende Ungleichungen für alle 1 ≤ i, k ≤ n gelten:
ν(i, k) = n2 − (i − 1)n − (k − 1) > n2 − in − (k − 1) = ν(i + 1, k)
ν(i, k) = n2 − (i − 1)n − (k − 1) > n2 − (i − 1)n − k = ν(i, k + 1)
24
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Insbesondere gilt
1 = ν(n, n) ≤ ν(n − 1, n − 1) ≤ ν(i, k) ≤ ν(1, 1) = n2 für alle 1 ≤ i, k ≤ n − 1.
Anstatt Sn schätzen wir erstmal
log Sn
n2
ab:
n
i
n
X
n2
n2
ν(l,1)
ν(i,k)
log Sn
1 X X
log
≤
+
log
ν(l,
1)!
ν(i,
k)!
n2
n2 i=1
k=1
l=i+1
!
n
i
n
X X log ν(i, k) !
X log ν(l, 1)!
=
+
ν(i, k)
ν(l, 1)
i=1
k=1
!
l=i+1
Die Logarithmen schätzen wir mit der Stirlingschen Formel ab und erhalten
log ν(i, k)!
log ν(i, k)
1
≤ log ν(i, k) − 1 +
+O 2 .
ν(i, k)
2ν(i, k)
n
Mit den Abschätzungen
! X
!
n
n
i
n−1 n−1
X
X
log ν(n, k) X X log ν(i, k)
log ν(i, k)
1
1
=
+O 2
+
+O 2
2ν(i,
k)
n
2ν(n,
k)
2ν(i,
k)
n
i=1 k=1
i=1 k=1
k=1
!
n
n
n
X
X
X
log ν(1, 1)
log ν(1, 1)
1
≤
+
+O 2
2ν(n, n)
2ν(n − 1, n − 1)
n
i=1
k=1
k=1
log n2
= 0.5n log n2 + 0.5n2
+ O(1) ≤ 2n log n + O(1) = O(n log n)
n+1
und
! n−1
!
n
X X
log ν(l, 1)
log ν(i, k)
1
1
+O 2
+O 2
=
2ν(l, 1)
n
2ν(l, 1)
n
i=1 l=i+1
i=1 l=i+1
!
n−1
n
X X
log ν(1, 1)
1
n2 log n2
+O 2
+ O(1)
≤
≤
2ν(n, 1)
n
2 n
i=1
n X
n
X
l=i+1
= n log n + O(1) = O(n log n)
erhalten wir als ersten Zwischenschritt
n
i n X
X
X
log Sn
2
+
n
≤
log
ν(i,
k)
−
1
+
log ν(l, 1) − 1
2
n
i=1 k=1
l=i+1
!
n
i
n
X X
X
≤
log ν(i, 1) +
log ν(l, 1) + O(n log n)
=
=
i=1
k=1
n
X
i
X
i=1
k=1
n
X
+ n2 + O(n log n)
l=i+1
2
log n − (i − 1)n +
n
X
!
2
log n − (l − 1)n
i log n + i log(n − i + 1) + (n − i) log n +
= n log n +
+ O(n log n)
l=i+1
i=1
2
!
n
X
!
log(n − l + 1)
l=i+1
n
X
i=1
i log(n − i + 1) +
n
X
!
log(n − l + 1)
l=i+1
25
+ O(n log n).
+ O(n log n)
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
Um weiter abschätzen zu können, benötigen wir noch folgendes
n X
n
X
log(n − l + 1) =
i=1 l=i+1
n X
≤
n X
n X
log (n − i)! =
(n − i) log(n − i) − (n − i) + O(log n)
i=1
i=1
(n − i) log(n − i + 1) − (n − i) + O(n log n)
i=1
≤
n X
(n − i) log(n − i + 1) − n2 + 0.5n2 + 0.5n + O(n log n)
i=1
≤
n X
(n − i) log(n − i + 1) − 0.5n2 + O(n log n).
i=1
Daher gilt
n
X
log Sn
2
2
+
1.5n
−
n
log
n
≤
i
log(n
−
i
+
1)
+
(n
−
i)
log(n
−
i
+
1)
+ O(n log n)
n2
i=1
=
n
X
n log(n − i + 1) + O(n log n) = n log(n!) + O(n log n)
i=1
= n2 log n − n2 + O(n log n).
Es folgt also
log Sn
= 2n2 log n − 2.5n2 + O(n log n),
n2
woraus wir die gesuchte Ungleichung erhalten:
4
4
Sn ≤ n2n e−2.5n
+O(n3 log n)
Korollar 3. Sei pn die Wahrscheinlichkeit, dass ein zufällig gewähltes Lateinisches Quadrat der
Größe n2 ein n-Sudoku ist. Dann ist
pn ≤ e−0.5n
4
+O(n3 log n)
Insbesondere ist pn → 0 für n → ∞.
Beweis. Nach Satz 7 ist die Anzahl der n-Sudokus von oben durch
4
n2n e−2.5n
4
+O(n3 log n)
und nach Satz 6 die der Lateinischen Quadrate der Größe n2 nach unten durch
4
n2n e−2n
4
+O(n2 log n)
beschränkt. Daher ist
4
4
3
4
3
n2n e−2.5n +O(n log n)
pn ≤ 2n4 −2n4 +O(n2 log n) = e−0.5n +O(n log n) .
n e
26
Über die Anzahl von Sudokus und Lateinischen Quadraten
7
Damian Zawadka
Schluss
Wie in der Einleitung erwähnt, wurde Anfang 2012 gezeigt, dass bei einem 3-Sudoku mindestens 17
Zahlen vorgegeben sein müssen, dass es eindeutig lösbar ist. Wie viele Zahlen bei einem n-Problem
mindestens vorgegeben sein müssen, ist eine Frage, die man weiter verfolgen könnte. Bisher haben
wir gezeigt, dass mindestens n2 − 1 Zahlen vorgegeben sein müssen. Aber bei 2-Sudokus brauchen
wir schon 4 statt 3 Zahlen und bei 3-Sudokus eben 17 statt 8. Folglich ist unsere untere Grenze sehr
schwach! Weiterhin lässt sich die obere Abschätzung für die Anzahl der n-Sudokus noch verbessern.
Herzberg und Murty stellen in [4] die Vermutung auf, dass limn→∞
log Sn
2n4 log n
= 1 gilt.
Wie wir in dem Artikel versucht haben darzulegen, kann man aus einem Sudoku viele neue herstellen.
Man kann die Operationen, die ähnliche Sudokus herstellen, zu einer mathematischen Gruppe
zusammenfassen und dann diese mit gruppentheoretischen Ansätzen untersuchen. Weiterhin kann
man die Frage aufwerfen, wie viele wesentlich verschiedene n-Sudokus existieren, bzw. wie der
asymptotische Verlauf der Anzahl von wesentlich verschiedenen n-Sudokus aussieht.
In Satz 4 haben wir einige notwendige Bedingungen angegeben, die erfüllt sein müssen, dass ein
n-Problem eindeutig ist. Vermutlich kann man den Satz noch stärker fassen und es müssen in
einem (k × k)-Block wie in Satz 4 nicht nur k − 1 Zahlen vorgegeben sein, sondern sogar k + 1. Die
notwendigen Bedingungen lassen sich noch besser bestimmen, wenn man Lateinische Quadrate
genauer untersucht. Schließlich ist so ein (k × k)-Block nichts anderes als ein (k × k)- Lateinisches
Quadrat. Folglich sind die notwendigen Bedingungen um lateinische Quadrate eindeutig ausfüllen
zu können ebenfalls notwendig um eindeutige n-Probleme zu erhalten.
Literatur
[1] Bammel, S. ; Rothstein, J.: The number of 9 × 9 Latin squares. In: Discrete Math. 11 (1975),
S. 93–95
[2] Elsholtz, C. ; Mütze, A.: Sudoku im Mathematikunterricht. In: Mathematische Semesterberichte. Berlin, Heidelberg : Springer Verlag, 2007
[3] Felgenhauer, B. ; Jarvis, A. F.: Mathematics of Sudoku I. In: Mathematical Spectrum 39
(2006), S. 15–22
[4] Herzberg, Agnes M. ; Murty, M. R.: Sudoku Squares and Chromatic Polynomials. In: Notices
of the AMS, Volume 54, Number 6
[5] Lint, J. H. V. ; Wilson, R. M.: A Course in Combinatorics. Cambridge University Press, 1992
27
Über die Anzahl von Sudokus und Lateinischen Quadraten
Damian Zawadka
[6] McGuire, G. ; Tugemann, B. ; Civario, G.: There is no 16-Clue Sudoku: Solving the Sudoku
Minimum Number of Clues Problem. http://www.arxiv.org/pdf/1201.0749v1.pdf: , January
2012
[7] Russell, E. ; Jarvis, A. F.: Mathematics of Sudoku II. In: Mathematical Spectrum 39 (2006),
S. 54–58
28