Eine kurze Einleitung in SAGE: Software für Algebra und Geometrie Experimente

["SAGE"] ist eine mathematische Software für die Zahlentheorie, sowie Algebra- und Geometrieberechnungen. Die Implementierung geht im wesentlichen auf William Stein und weitere 30 anderen Mitwirkende aus der ganzen Welt zurück. SAGE ist freie Software und verfügbar unter den Bedingungen der GNU General Public License (GPL). SAGE ist

SAGE wird in Python, C++ und C (über ["Pyrex"]) geschrieben. Python ist eine quelloffene, objektorientierte, interpretierte Sprache, mit vielen Bibliotheken z.B. für numerische Mathematik, die für SAGE Benutzer ebenfalls zugänglich sind. Python kann ebenso als Library von C/C++ Programmen verwendet werden.

SAGE beinhaltet einige wichtige Open-Source Bibliotheken und bietet eine vereinheitlichte Schnittstelle zu ihnen an: ["Singluar"] (für kommutative Algebra), ["GAP"] (für Gruppentheorie), John Cremona's ["MWRANK"] Bibliothek (für elliptische Kurven), die ["PARI"] Bibliothek für Zahlentheorie, Shoup's Zahlentheorie Bibliothek ["NTL"] und ["Maxima"] (für symbolische Berechnungen). SAGE bietet ebenso Schnittstellen zu vielen kommerziellen, propritären oder anderen quelloffenen mathematischen Softwarepaketen an, wie MAPLE, MATLAB, Mathematica, KASH/KANT, MAGMA, Axiom sowie viele anderen. Zur Darstellung von Graphiken nutzt SAGE [:matplotlib:Matplotlib] (für 2D und 3D Graphiken) sowie [:Tachyon_ray_tracer:Tachyon] (ein 3D Renderer).

Die langfristigen Hauptziele und Prinzipien von SAGE sind:

SAGE, eine Installationsanleitung und das Tutorial können von der SAGE Webseite unter http://sage.scipy.org/ heruntergeladen werden.

Obgleich SAGE Python, PARI und andere Pakete verwendet, sei darauf hingewiesen, dass es nicht notwendig ist, diese Software auf dem eigenen Computer vorinstalliert zu haben. Der Installationsprozess von SAGE ist mit dem Ziel entworfen worden, verhältnismäßig schmerzlos sein. Dennoch, sollte es Probleme geben, können Fragen an die SAGE Entwickler gestellt werden (au der Webseite befinden sich Links auf die Mailingliste für den SAGE Support). Eine Installationsanleitung ist unter http://sage.scipy.org/sage/doc/html/inst/index.html zu finden. Außerdem, sobald SAGE einmal installiert ist, ist ein Upgrade zur jeweils neuesten Version besonders einfach mit dem "upgrade" Befehl möglich.

Sobald SAGE in ein Verzeichnis wie z.B. sage-x.y.z installiert ist: Unter Linux "cd" in dieses Verzeichnis und schreibe den Befehl "./sage" um SAGE zu starten. SAGE zeigt daraufhin den Prompt "sage: ". Dies ist ein Weg SAGE zu verwenden.. Eine andere Möglichkeit ist, in den Befehl "notebook(open_viewer=True)" auf der SAGE Eingabeaufforderung zu schreiben. Dies startet (a) den SAGE Server und lädt mögliche frühere Worksheets und (b) öffnet Firefox (oder öffnet einen neuen Tab, wenn dieser schon läuft) um die SAGE Notebook Webseite anzuzeigen.

Wenn man auf der SAGE Eingabeaufforderung "faktor(100)" (Enter) schreibt, gibt SAGE die Primfaktorzerlegung von 100 aus. Gibt man "factor??" (Enter) ein, wird der Quellcode der Funktion factor angegezeigt. Wird Strg-d gedrückt (die "Strg" Taste und das "d" gleichzeitig halten) oder "quit" (Enter) eigegeben, wird SAGE beeendet. Um die gleiche Berechnung im Notebook zu machen, schreibt man "factor(100)" in eine "Zelle" (ein leeres weißes Fenster im Webbrowser) und drückt dann Shift-Enter.. SAGE wird die Faktorisierung im Bereich unter der Eingabezelle anzeigen. Um das Notebook zu beenden, muss auf der der Kommandozeile Strg-C eingegeben werden. Wenn dann der Browser beendet wird, ist das SAGE Notebook vollständig geschlosse

Mehr Beispiele, sowie eine Einführung, finden Sie im Tutorial, das Sie auf der SAGE Webseite finden. Viel Spass!

SAGE ist stark am wachsen, jedoch bereits jetzt verwendbar. Es gibt ein SAGE Diskussionsforum, einen Bug-Tracker sowie eine Feature Request Liste. Unter folgenden Websites kann man SAGE erreichen

oder

oder

. Für mehr Informationen kann sich an William Stein ( [email protected] ) gewendet werden. Viel Spass mit SAGE.

David Joyner [email protected]

William Stein [email protected]