Reduce (Computeralgebrasystem)
Reduce | |
---|---|
Basisdaten
| |
Entwickler | Anthony C. Hearn |
Betriebssystem | Plattformunabhängig |
Programmiersprache | Lisp |
Kategorie | Computeralgebrasystem |
Lizenz | BSD-Lizenz |
http://reduce-algebra.sourceforge.net// |
Reduce ist ein Computeralgebrasystem, das sich als Allzwecksystem eignet und besonders mit Hinblick auf physikalische Anwendungen entwickelt wurde.[1]
Geschichte
[Bearbeiten | Quelltext bearbeiten]Reduce nimmt einen wichtigen Platz in der Geschichte der Computeralgebrasysteme ein. Es war eines der ersten. Die erste Version von Reduce wurde in den 1960er Jahren von Anthony C. Hearn geschrieben. Seitdem haben zahlreiche Wissenschaftler aus aller Welt zu seiner Weiterentwicklung beigetragen. Ausgangspunkt war Hearns Suche, Berechnungen zu Feynman-Diagrammen zu automatisieren. John McCarthy, Professor an der Stanford University, schlug ihm die Programmiersprache Lisp als Grundlage für nichtnumerisches Rechnen in der Physik vor, was Hearn aufgriff. Die erste Veröffentlichung dazu erschien 1966.[3]
Bekannt wurde das Programm in den 1970er Jahren und musste zunächst käuflich erworben werden.[4] Seit 2008 ist Reduce als Open-Source-Projekt freigegeben und unter einer modifizierten BSD-Lizenz bei SourceForge kostenlos erhältlich.
Ab der Version 4.2 bietet die Dynamische-Geometrie-Software (DGS) GeoGebra über ein separates Konsoleninterface den Zugriff auf MPReduce als internes Computeralgebrasystem. In der Version 4.4 wurde Reduce jedoch durch Giac ersetzt.
Leistungsumfang
[Bearbeiten | Quelltext bearbeiten]Reduce ist in einem eigenen Lisp-Dialekt (Standard LISP) implementiert.[5] Die Anwendersprache ist RLISP, die eine ALGOL-ähnliche Syntax hat. Besonderes Gewicht wurde auf Portierbarkeit gelegt. Es existieren Versionen für die meisten Unix-Varianten, Linux, MS Windows und Apple Macintosh.
Als Merkmale sind hervorzuheben:
- Ganzzahl- und rationale Arithmetik in beliebiger Genauigkeit
- Lösung einer Vielzahl algebraischer Gleichungen
- Algorithmen für Polynome und rationale Funktionen
- Automatische und benutzergesteuerte Vereinfachung mathematischer Ausdrücke
- Substitutionen und Musterabgleich in vielfältiger Form
- Analytische Differential- und Integralrechnung
- Berechnungen mit einer Vielzahl spezieller mathematischer Funktionen
- Berechnungen mit Dirac-Matrizen, die für Hochenergiephysiker von Interesse sind[6]
- Entscheidungsfindung für interpretierende Logik erster Ordnung
- Leistungsstarke intuitive Programmiersprache auf Benutzerebene
Weblinks
[Bearbeiten | Quelltext bearbeiten]- Reduce-Projektseite bei SourceForge
- Reduce-Website bei SourceForge.
- Web REDUCE eine Website, um REDUCE ohne lokale Installation mit einem Web-Browser kennenzulernen und zu benutzen.
- Reduce Wiki bei SourceForge
- Tony Hearns Website zu Reduce
- Anthony C. Hearn, Reduce User's Manual Version 3.8 (PDF; 893 kB), Februar 2004. Im HTML-Format
- Anthony C. Hearn, "Reduce: The First Forty Years" (PDF; 41 kB), Eine Zusammenfassung der Geschichte von Reduce (2005).
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Anthony C. Hearn: Applications of Symbol Manipulation in Theoretical Physics. In: Commun. ACM. 14. Jahrgang, Nr. 8, 1971, ISSN 0001-0782, S. 511–516, doi:10.1145/362637.362641 (englisch).
- ↑ Gerd Grundmann, Reinhard Koch: Auswertung einer ersten Anwendung des algebraischen Programmsystems REDUCE 2 (= RPT-4/78). Zentralinstitut für Kernforschung Rossendorf, Bereich Reaktorphysik, Rossendorf Juli 1978 (30 S. + 40 S. Listings).
- ↑ Anthony C. Hearn: Applications of Symbol Manipulation in Theoretical Physics. In: Communications of the ACM. 9. Jahrgang, Nr. 8, 1966, ISSN 0001-0782, S. 573–577, doi:10.1145/365758.365766 (englisch).
- ↑ Anthony C. Hearn: Reduce 2 User's Manual. Computer Science Dep. Univ, Stanford 1970 (100 S.).
- ↑ Anthony C. Hearn: Standard LISP. University, Stanford, Calif. 1969 (23, 11 S.).
- ↑ J. A Campbell, Anthony C Hearn: Symbolic analysis of Feynman diagrams by computer. In: Journal of Computational Physics. 5. Jahrgang, Nr. 2, 1. April 1970, S. 280–327, doi:10.1016/0021-9991(70)90064-1, bibcode:1970JCoPh...5..280C (englisch).