Grundsatz

Florian Blume Kann 13, 2016 G 0 0
FONT SIZE:
fontsize_dec
fontsize_inc

Axiom ist ein freies, Allzweck-Computer-Algebra-System. Es besteht aus einem Interpreter-Umgebung, einen Compiler und eine Bibliothek, die eine stark typisierte, mathematisch korrekte Typhierarchie definiert.

Geschichte

Axiom ist in der Entwicklung seit 1965. Es wurde von James Greismer auf Antrag Ralph Gomory ursprünglich als Scratchpad gestartet worden. Die Hauptanstrengungen wurde von einer Gruppe von IBM unter der Leitung von Richard Dimick Jenks geführt. Weitere wichtige frühe Entwickler waren Barry Trager, Stephen Watt, James Davenport, Robert Sutor und Scott Morrison.

In den 1990er Jahren wurde es an NAG verkauft und bestimmten ihren heutigen Namen. Im Jahr 2001 wurde es vom Markt genommen und unter der Modified BSD-Lizenz wieder freigegeben. Seitdem hat der Hauptentwickler des Projekts war Tim Daly.

Im Jahr 2007 wurde Axiom zweimal gegabelt, Ursprung zwei verschiedenen Open-Source-Projekte: OpenAxiom und Fricas, folgenden "ernste Meinungsverschiedenheiten über Projektziele". Die Axiom-Projekt weiterhin von Tim Daly entwickelt werden.

Dokumentation

Axiom ist eine literate-Programm. Der Quellcode ist immer in einem Satz von Volumina, die auf der Website zur Verfügung stehen. Diese Bände enthalten die eigentlichen Quellcode des Systems.

Die derzeit verfügbaren Dokumente sind:

  • Kombinierte Inhaltsverzeichnis
  • Volume 0: Axiom Jenks und Sutor Das Hauptlehrbuch
  • Band 1: Axiom Tutorial Eine einfache Einführung
  • Band 2: Axiom-Benutzerhandbuch Ausführliche Beispiele für eine Domain-Nutzung
  • Band 3: Axiom Programmers Guide Geführte Beispiele von Programmschreib
  • Band 4: Axiom Developers Guide Short Essays über Entwickler-spezifischen Themen
  • Band 5: Axiom Interpreter Quellcode für Axiom-Interpreter
  • Band 6: Axiom Befehl Quellcode für System-Befehle und Skripte
  • Band 7: Axiom Hyperdoc Quellcode und Erläuterung der X11 Hyperdoc Hilfe-Browser
    • Volumen 7.1 Axiom Hyperdoc Seiten Quellcode für Hyperdoc Seiten
  • Band 8: Axiom Graphics Quellcode für X11 Grafiksubsystem
    • Volumen 8.1 Axiom Gallery A Gallery of Axiom Bilder
  • Band 9: Axiom Compiler Quellcode für Spad-Compiler
  • Volume 10: Axiom Algebra Umsetzung Essays zu Fragen der Umsetzung
    • Volume 10.1: Axiom Algebra Theorie Essays enthält Hintergrundtheorie
    • Volume 10.2: Axiom Algebra Kategorien Quellcode für Axiom Kategorien
    • Volume 10.3: Axiom Algebra Domains Quellcode für Axiom-Domains
    • Volume 10.4: Axiom Algebra Quellcode für Axiom-Pakete Pakete
    • Volume 10.5: Axiom Algebra Numerik Quellcode für Axiom Numerik
  • Band 11: Axiom Browser Quelle Seiten für Axiom Firefox-Browser Front-End
  • Volume 12: Axiom Kristall Quellcode für Axiom Kristall Frontend
  • Band 13: Proving Axiom richtig erweisen Axiom Algebra
  • Bibliographie: Axiom Bibliographie Literaturhinweise

Videos

Die Axiom-Projekt hat einen Schwerpunkt auf die Bereitstellung von Dokumentation. Vor kurzem angekündigt, die erste in einer Reihe von Lehr-Videos, die auch auf der Website verfügbar sind, das Projekt. Das erste Video enthält Einzelheiten zu den Axiom Informationsquellen.

Weltanschauung

Die Axiom-Projekt konzentriert sich auf die "30 Jahr Horizon". Der primäre Philosophie ist, dass Axiom muss einige grundlegende Funktionen, um nützlich, um die nächste Generation von Rechen Mathematiker zu sein, zu entwickeln. Knuth literate Programmiertechnik ist in den Source-Code verwendet. Axiom plant sichere Technologie zu verwenden, um die Richtigkeit der Algorithmen zu beweisen.

Design

In Axiom, haben alle Objekte eines Typs. Beispiele für Arten sind mathematische Strukturen sowie Datenstrukturen aus der Informatik.

Eine Funktion kann einen Typ als Argument zu nehmen, und den Rückgabewert kann auch ein Typ sein. Beispielsweise ist eine Funktion, die ein nimmt als Argument und gibt den Bereich von Bruchteilen des Arguments. Als weiteres Beispiel würde der Ring von Matrizen mit rationalen Einträgen aufgebaut sein. Natürlich, wenn in diesem Bereich wird als der Identitätsmatrix interpretiert und würde die Inverse der Matrix zu geben, wenn es existiert.

Mehrere Operationen kann den gleichen Namen haben, und die Typen der beiden Argumente, und das Ergebnis verwendet werden, um festzustellen, welche Operation angewendet wird.

Axiom kommt mit einer Verlängerung Sprache namens SPAD. All das mathematische Wissen der Axiom ist in dieser Sprache geschrieben. Der Dolmetscher übernimmt etwa die gleiche Sprache. SPAD wurde weiter unter dem Namen A # und später Aldor entwickelt. Letzteres kann noch als Alternative Erweiterungssprache verwendet werden. Es wird jedoch unter einer anderen Lizenz verteilt.

Eigenschaften

Innerhalb der Interpreterumgebung verwendet Axiom Typinferenz und einen heuristischen Algorithmus explizite Typanmerkungen meist unnötig zu machen.

Es verfügt über 'HyperDoc', eine interaktive Browser-ähnliche Hilfesystem und kann zwei- und dreidimensionale Grafiken angezeigt werden, auch die Bereitstellung interaktiver Funktionen wie Rotation und Beleuchtung. Es hat auch eine spezielle Interaktionsmodus für Emacs, wie auch ein Plugin für die TeXmacs-Editor.

Axiom ist eine Implementierung des Risch-Algorithmus für elementare Integration, die von Manuel Bronstein und Barry Trager gemacht wurde.

  Like 0   Dislike 0
Vorherige Artikel Ulf-Dietrich Reips
Bemerkungen (0)
Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha