Sage-Tutorium zur Zahlentheorie 2008
Termin erste Gruppe: | Donnerstags 12:15-13:45 |
Termin zweite Gruppe: | Freitags 12:00-13:30 |
Raum: | EN-B 222 (CIP-Pool ENC) |
Kursleiter: | Lars Fischer |
EMail: |
|
Sprechstunde: |
Donnerstags: 14:45-15:15, ab 17:30 in Raum B-230 oder
B-229; oder jederzeit per EMail |
Vorlesung: |
Elementare Zahlentheorie im SoSe 2008,
Übungsblätter
|
Sage-Server: |
Login |
Öffentliche Worksheets: |
(als
Gast) |
1.) Der Zugriff auf Sage über das Netzwerk
Hier geht es
zum Sage-Notebook-Server.
Dort könnt Ihr Euch einen
Account anlegen und dann Worksheets anlegen oder
bearbeiten. Alternativ könnt Ihr Euch auch Sage von der
Sage-Homepage herunterladen und auch Eurem eigenen PC
installieren. Beachtet dazu die Hinweise in dem unten
aufgeführten Buch von William Stein in Kapitel 1.1 Installing
and Using Sage.
Für den Zugriff auf Sage über das Internet müsst Ihr
Javascript und Cookies
für die URL sage.mathematik.uni-siegen.de
erlauben, sonst
geht es nicht. Desweiteren empfehle ich unter
Ansicht,Zeichenkodierung den Eintrag "Unicode (UTF-8)" zu wählen (zumindest
für meine Worksheets unten).
Falls Ihr einen lokalen Web-Proxy, wie Squid, benutzt und unter
der obigen URL nur eine Fehlermeldung eures lokalen Proxies
erhaltet, etwa
ERROR
The requested URL could not be retrieved
The following error was encountered:
So müsst Ihr in den Netzwerk-Einstellungen
eures Browsers bei den
Proxy-Einstellungen
eine Ausnahme definieren für:
- sage.mathematik.uni-siegen.de oder
- sage.mathematik.uni-siegen.de:8000
If you encounter the above error message from your local proxy,
please modify the proxy-settings inside your
browser's network-settings to
have an exception for:
- sage.mathematik.uni-siegen.de or
- sage.mathematik.uni-siegen.de:8000
Das Tutorium richtet sich an die Teilnehmer der Zahlentheorie
Veranstaltung. Es wird eine Übersicht über die Handhabung des
Computer-Algebra-Systems
Sage gegeben.
- Was ist eine Variable?
- Was ist eine Verzweigung?
- Was ist eine Schleife?
- Was ist eine Funktion?
- Und wie und wo
fange ich überhaupt an....?
- Anschließend vertiefen wir Beispiele und Aufgabenstellungen aus
der Vorlesung und den Übungen.
Zum Selbststudium, falls Ihr nicht zu dem vereinbarten Termin
kommen könnt, so könnt Ihr die Veranstaltung trotzdem verfolgen,
mittels der Worksheets, die
ich hier zeitnah
bereitstelle.
Ansonsten kann ich auf die nachfolgenden Links verweisen, die
sich alle mit Sage und den Einstieg in Sage beschäftigen:
Weiterführende Informationen zu Python und Sage
Nähere Information zu Python: im Python Tutorial oder in dem
Python
Buch (Galileo Computing / <openbook> / Python )
und zu Sage in
der Sage-Dokumentation.
Eine schöne Zusammenstellung von typischen Python-Stolperfallen gibt
10 Python pitfalls.
3.1.) Die Veranstaltung vom 11. April 2008
Wir haben kennengelernt:
- die generelle Handhabung
- Variablen
- einige Funktionen von Sage
- die if Verzweigung
- for und while Schleifen
- Listen
- einige der häufigsten Fehler
Link zum Worksheet (Rechts-Klick, Speichern unter... wählen)
3.2.) Die Veranstaltung vom 17. bzw. 18. April 2008
Wir haben kennengelernt:
- Restklassenringe und Kongruenzrechnen
- Funktionen und Rekursion
- List- und Generator-Comprehensions
- Unterschied zwischen Listen und Iteratoren
- Dictionaries
Link zum Worksheet (Rechts-Klick, Speichern unter... wählen)
3.3.) Die Veranstaltung vom 24. bzw. 25. April 2008
Wir haben kennengelernt:
- Default-Argumente bei Funktionen
- Stolperfallen wegen globalen und lokalen Variablen
- Stolperfallen wegen Call By Object Reference
Aufgaben:
- Chinesischer Restsatz
- Primitivwurzeln und Restklassen
-
(die erste Gruppe:)
Effektivere Berechnung der Fibonacci-Zahlen durch
Zwischenspeichern der Werte (die Mathematiker sagen dazu
Wertetabelle, die Informatiker nennen
es Memoization)
Link zum Worksheet (Rechts-Klick, Speichern unter... wählen)
3.4.) Die Veranstaltung vom 2. bzw. 8. Mai 2008
Wir haben kennengelernt:
- pickle und urllib
- Verfahren der schnellen Exponentiation: sukzessives
Quadrieren und Multiplizieren, wie es die binäre Darstellung des
Exponenten nahelegt
Aufgaben:
- Primitivwurzeln und Restklassen
-
Verteilung der Primitivwurzeln modulo der ersten Primzahlen
- (die erste Gruppe:) RSA
-
(die zweite Gruppe:)
Effektivere Berechnung der Fibonacci-Zahlen durch
Zwischenspeichern der Werte (die Mathematiker sagen dazu
Wertetabelle, die Informatiker nennen
es Memoization)
Link zum Worksheet (Rechts-Klick, Speichern unter... wählen)
3.5.) Die Veranstaltung vom 15. bzw. 16. Mai 2008
Wir haben kennengelernt:
- @interact, um interaktive Worksheets zu
gestalten
- Caesar und Vigenere Verschlüsselungsverfahren
Aufgaben:
- Quadratische Reste
- Legendre- und Jacobi-Symbol
- Berechnung von Legendre- bzw. Jacobi-Symbol
Link zum Worksheet (Rechts-Klick, Speichern unter... wählen)
3.6.) Die Veranstaltung vom 23. bzw. 5. Juni 2008
Wir haben kennengelernt:
- das lambda Schlüsselwort, um anonyme Funktionen zu
erzeugen
- Berechnung von Funktionsobjekte, in der funktionalen
Programmierung spricht man von Funktionen höherer
Ordnung
- Arithmetische Funktionen
- Summatorische Funktion
- Beispiele für die Summatorischen Funktionen
verschiedener arithmetischer Funktionen
Aufgabe:
- Tabelle von Summatorischen Funktionen ergänzen
Link zum Worksheet (Rechts-Klick, Speichern unter... wählen)
Letzte Änderung: 03.08.2009
© Lars Fischer