Einführung in die Computeralgebra Übungsblatt 1 Sommersemester 2016 Michael Stoll 15. April 2016 Abgabe: Donnerstag, 21. April, bis 10:00 Uhr im Briefkasten (NW II, 2. Stockwerk rechts). Übungsaufgaben bitte handschriftlich bearbeiten (außer Programmieraufgaben); nur ein Name pro Blatt! — Schnellhefter und Deckblatt nicht vergessen! (1) Ergänzen Sie im Additionsalgorithmus auf Seite 7f des Skripts den dort weggelassenen Teil für die Subtraktion der Beträge. Achten Sie darauf, dass das Resultat normalisiert ist (also ohne führende Nullen). (30) (2) Der Polynomring Q[x, y] werde als (Q[x])[y] interpretiert. Skizzieren Sie, wie das Polynom 17 2 f (x, y) = x2 y − 2100 y 2 + x3 ∈ Q[x, y] 3 25 im Speicher abgelegt würde, entsprechend der in der Vorlesung beschriebenen Darstellung. (25) (3) Für diese Programmieraufgabe sollen Polynome (mit z.B. ganzzahligen Koeffizienten) in MAGMA als Arrays ( Sequences“ in MAGMA-Terminologie) f = [a0 , a1 , . . . , an ] ” dargestellt werden. (Die Länge (= n+1) kann via #f abgefragt werden und muss nicht extra codiert werden.) (a) Schreiben Sie eine Funktion normalize, die ein Polynom in obiger Darstellung normalisiert. (Die MAGMA-Funktion Prune könnte dafür nützlich sein.) (b) Schreiben Sie eine Funktion negate, die die Abbildung f 7→ −f realisiert. (c) Schreiben Sie eine Funktion add, die zwei Polynome addiert und das Ergebnis in normalisierter Form zurückgibt. (15+10+20) (4) Bonus Problem. Beweisen Sie, dass das Polynom g(X) in Beispiel 1.1 tatsächlich die behauptete Eigenschaft hat. (25 extra points)
© Copyright 2024 ExpyDoc