Aufgabe 1 Schreiben Sie ein Programm, das über den reellen sowie

Werbung
Aufgabe 1
Schreiben Sie ein Programm, das über den reellen sowie über den komplexen
Zahlen quadratische Matrizen der Größe n zufällig erzeugt und von diesen Matrizen das charakteristische Polynom bestimmt. Das charakteristische Polynom
soll faktorisiert werden. Es soll entschieden werden, ob die Matrizen diagonalisierbar sind.
Untersuchen Sie mit Ihrem Programm viele verschiedene zufällig erzeugte Matrizen. Folgende Fragen sollen Sie dabei untersuchen:
• Wie groß ist der Anteil der diagonalisierbaren Matrizen.
• Wie groß ist der Anteil der Matrizen, deren charakteristisches Polynom in
Linearfaktoren zerfällt.
Ihre Ergebnisse hängen natürlich von n ab und davon, wie Sie die Matrizen
zufällig erzeugen.
Aufgabe 2
Implementieren Sie das Gauß-Jordan-Verfahren zum Lösen linearer Gleichungssysteme über den reellen Zahlen. Ihre Implementierung soll auch die Anazhl
Schritte zählen (wieviele Umformungen [E1], [E2] und [E3]), die notwendig sind,
um die Matrix in zeilenreduzierte Normalform zu transformieren.
Wenden Sie Ihr Programm auf viele verschiedene, zufällig erzeugte Probleme
an. Zählen Sie jeweils die Anzahl Schritte, die benötigt werden, und stellen Sie
diese Anzahlen grafisch dar (d.h. Sie sollten z.B. auf der x-Achse die Anzahl
der benötigten Schritte, und auf der y Achse die entsprechenden Häufigkeiten
auftragen).
Aufgabe 3
Implementieren Sie das Gauß-Jordan-Verfahren und das Gauß-Verfahren zum
Lösen linearer Gleichungssysteme über endlichen Körpern Fp . Testen Sie die
Laufzeiten für verschiedene zufällig erzeugte Probleme.
Aufgabe 4
Sie lernen zu Beginn des zweiten Semesters, dass jede reelle symmetrische Matrix
diagonalisierbar ist. Bestimmen Sie für zufällig erzeugte symmetrische Matrizen,
die nur die Einträge 0 und 1 haben, jeweils den betragsgrößten und betragskleinsten Eigenwert. Bestimmen Sie auch die Determinanten dieser Matrizen.
Aufgabe 5
Erzeugen Sie zufällig (n × m)-Matrizen über Fp und bestimmen deren Rang
(Sie dürfen die in MAPLE eingebaute Routine zur Rangbestimmung benutzen).
Stellen Sie Ihre Ergebnisse grafisch dar: Mich würde interessieren, wie gross
jeweils der Anteil der Matrizen vom Rang i = 1, . . . , n (für feste n, m und p)
ist.
1
Aufgabe 6
Implementieren Sie das RSA-Verfahren! Implementieren Sie auch eine Attacke,
wie man (durch Probieren!) den geheimen Schlüssel finden kann. Bis zu welcher
Größe von n gelingt Ihnen das? Mit welchem Aufwand?
Aufgabe 7
Das Gewicht eines Vektors v ∈ F2n ist die Anzahl der Koordinaten 6= 0. Ist U ein
Unterraum
in F2n , so sei ai := |{v ∈ U : Gewicht von v ist i}|. Das Polynom
Pn
i
i=0 ai x heißt das Gewichtspolynom von U . Bestimmen Sie die Gewichtspolynome von zufällig erzeugten Unterräumen. Bestimmen Sie insbesondere
das kleinste Gewicht 6= 0.
Aufgabe 8
Implementieren Sie den Euklidischen Algroithmus zur ggT-Bestimmung ganzer
Zahlen. Ihr Verfahren soll auch die Anzahl Schritte zählen, die der Algorithmus
benötigt. Testen Sie Ihr Verfahren für zufällig erzeugte (große) Zahlen.
Aufgabe 9
Implementieren Sie den Euklidischen Algroithmus zur ggT-Bestimmung von
Polynomen in Fp [x]. Sie dürfen die Division von Polynomen mit Rest, die
in MAPLE implementiert ist, benutzen. Ihr Verfahren soll auch die Anzahl
Schritte zählen, die der Algorithmus benötigt. Testen Sie Ihr Verfahren für
zufällig erzeugte (große) Polynome.
Aufgabe 10
Für eine Funktion f : Fpn → Fpn definieren wir für v ∈ Fpn
δ(v) = |{f (x + v) − f (x) : x ∈ Fpn }|.
Ferner definieren wir die Multimenge (d.h. wir zählen auch die Vielfachheiten,
wie oft ein Element auftritt)
∆(f ) := {δ(v) : v ∈ Fpn }
Bestimmen Sie für verschiedene p, n und zufällig gewählte f die Mengen ∆(f ),
insbesondere den Maximalwert in ∆(f ).
Aufgabe 11
Implementieren Sie die beiden in der Vorlesung behandelten Verfahren zur Inversenbestimmung einer Matrix. Zählen Sie auch die Rechenoperationen, die
jeweils notwendig sind. Vergleichen Sie die Laufzeiten anhand zufällig erzeugter
Probleme.
2
Aufgabe 12
Implementieren Sie zwei Verfahren zur Determinantenbestimmung, einmal basierend
auf der Leibniz-Formel, und einmal basierend auf dem Laplace’schen Entwicklungssatz. Vergleichen Sie die Laufzeiten Ihrer Verfahren anhand zufällig erzeugter
Matrizen.
Aufgabe 13
Implementieren Sie das Gram-Schmidt’sche Orthonormalisierungsverfahren.
Aufgabe 14
Implementieren Sie die “Cramer’sche Regel” und das Gauß-Verfahren zur Lösung
linearer Gleichungssysteme. Vergleichen Sie die Laufzeiten anhand zufällig erzeugter
Gleichungssysteme.
3
Herunterladen