Achtung: diese Seite wird nur zu Testzwecken betrieben. Hier gelangen Sie zur Madipedia-Website: https://madipedia.de
Computeralgebrasysteme: Unterschied zwischen den Versionen
[unmarkierte Version] | [gesichtete Version] |
(Zitierhinweis ergänzt) |
|||
(36 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Überblick == | |||
Ein '''Computeralgebrasystem''' (abgekürzt: '''CAS''', gesprochen: „C-A-S“, manchmal auch „Kass“) ist ein Computerprogramm, das symbolische Berechnungen wie beispielsweise das formale Lösen von Gleichungen und Ungleichungen einschließlich nötiger Termumformungen und auch das formale Differenzieren und Integrieren ermöglicht. Solche symbolischen Umformungen, auch ''Formelmanipulationen'' genannt, basieren auf entsprechenden ''Kalkülen'' aus der Algebra und der Analysis (die daher im Englischen auch ''Calculus'' genannt wird), die mit Regelsystemen beschreibbar sind, die letztlich auch Grundlage zielgerichteter händischer Bearbeitung sind. Derartige Regelsysteme werden in der ''Computeralgebra'' formuliert und untersucht. Heutige CAS haben in aller Regel einen [[Funktionenplotter]] integriert, der allerdings nicht zur Computeralgebra gehört.<br /> | |||
Entsprechend der Definition der [http://www.fachgruppe-computeralgebra.de/ '''Fachgruppe Computeralgebra'''] gemäß dem [http://www.fachgruppe-computeralgebra.de/ca-handbuch/ Computeralgebra-Handbuch] gilt: | |||
:: Die Computeralgebra ist ein Wissenschaftsgebiet, das sich mit Methoden zum Lösen mathematisch formulierter Probleme durch symbolische Algorithmen und deren Umsetzung in Soft- und Hardware beschäftigt. Sie beruht auf der exakten endlichen Darstellung endlicher oder unendlicher mathematischer Objekte und Strukturen und ermöglicht deren symbolische und formelmäßige Behandlung durch eine Maschine. Strukturelles mathematisches Wissen wird dabei sowohl beim Entwurf als auch bei der Verifikation und Aufwandsanalyse der betreffenden Algorithmen verwendet. Die Computeralgebra kann damit wirkungsvoll eingesetzt werden bei der Lösung von mathematisch modellierten Fragestellungen in zum Teil sehr verschiedenen Gebieten der Informatik und Mathematik sowie in den Natur- und Ingenieurwissenschaften. <ref>Aus: http://www.fachgruppe-computeralgebra.de/allgemeines/</ref> | |||
== | ==Zur Geschichte== | ||
Als erstes CAS gilt das seit den 1960er Jahren entwickelte Programm '''Macsyma''', das nun als Open-Source-Version unter dem Namen [http://de.wikipedia.org/wiki/Maxima_(Computeralgebrasystem) '''Maxima'''] weiterentwickelt wird. In den 1970er Jahren kam '''muMATH''' hinzu und Ende der 1980er Jahre '''Mathematica''' und '''Derive'''. Heute gibt es eine Fülle unterschiedlicher CAS. Noch um 1990 herum war statt ''Computeralgebrasystem'' auch die Bezeichnung ''Formelmanipulationssystem'' üblich. | |||
== | == Grundsätzliche Eigenschaften == | ||
* | Die heute verfügbaren Computeralgebrasysteme können in zwei grundsätzlich zu unterscheidenden Betriebsarten verwendet werden: <ref>Vgl. [Oberschelp 1996], dargestellt auch in [Hischer 2002, 262 ff.].</ref> | ||
* '''NG''': ''Numerisch-Graphischer Modus'' | |||
<div id="Term"></div> | |||
* '''ST''': ''Symbolischer Term-Modus'' | |||
{{Zitierhinweis}} | Der NG-Modus bezieht sich auf die Optionen eines guten Taschenrechners und eines Funktionenplotters, betrifft also noch nicht die Computeralgebra (s. o.), während der ST-Modus das eigentlich Neue, nämlich die sog. „Computeralgebra“, betrifft. | ||
Die von einem CAS verarbeiteten Objekte sind mathematische '''Terme''', die als Bestandteile von Formeln (Gleichungen, Ungleichungen) auftreten. | |||
<big>'''Terme'''</big> lassen sich in beliebigen algebraischen Strukturen rekursiv definieren, etwa im Körper der reellen Zahlen: | |||
: (i) Jedes Zahlzeichen für eine reelle Zahl ist ein Term. | |||
: (ii) Jede Variable ist ein Term. | |||
: (iii) Sind <math>T_1</math> und <math>T_2</math> Terme, so auch <math>T_1+T_2</math>, <math>T_1-T_2</math>, <math>T_1 \cdot T_2</math> und <math>T_1</math>÷<math>T_2</math> (Letzteres unter Beachtung von <math>T_2</math> nicht identisch gleich <math>0</math>). | |||
: (iv) Ist <math>T_1</math> ein Term, so auch (<math>T_1</math>). | |||
Und es könnte dann z. B. hinzukommen: | |||
: (v) Ist <math>f</math> eine reelle Funktion und <math>T_1</math> ein Term, so ist auch <math>f(T)</math> ein Term. | |||
Bei einem CAS können dann Terme in folgenden fünf Formen auftreten: | |||
: (1) Kanonische Zeichen für Zahlen (Integer, Festkomma, Gleitkomma). | |||
: (2) Zahlenpaare und Zahlen-Tripel, in der Ausgabe üblicherweise dargestellt als Punkte in der Ebene bzw. im Raum. | |||
: (3) Funktionszeichen (arithmetische Operatoren, Quadratwurzel, Bruchstrich, Exponentiation, Fakultät usw.) zur Bildung von Termen, dazu auch Funktionenverkettung und Konstanten. | |||
: (4) Wichtige Erweiterungen des Termbegriffs durch Verwendung von Variablen für Zahlen, Zahlenpaare, Vektoren, Matrizen, ... | |||
: (5) Eine weitere Erweiterung des Termbegriffs mittels Funktionsvariablen und durch Operatoren (Differentialoperator, Integraloperator, Summenzeichen, ...). | |||
Wenn ein CAS im NG-Modus genutzt wird, so geschieht dies weitgehend im Bereich von (1) bis (3), wobei aber auch (4) und (5) nicht ausgeschlossen sind. Das CAS wird dann im Prinzip nur wie ein programmierbarer Taschenrechner genutzt, der bei Verwendung von (2) über ein Graphik-Display verfügt. Dabei laufen intern Rechenprogramme ab, die auch umfangreiche Numerik-Algorithmen benutzen können, z. B. Verfahren zur Nullstellenbestimmung, zur numerischen Differentiation oder Integration, ferner Interpolations- und Approximations-Algorithmen. | |||
Das numerische Lösen von Gleichungen, das Darstellen von Funktionsgraphen mit einem integrierten Funktionenplotter und die Anwendung von Operationen und Optionen wie '''approx''' sind Indizien dafür, dass ein CAS im NG-Modus arbeitet (und hierfür benötigt man eigentlich gar kein Computeralgebrasystem). | |||
Das Wesentliche und zugleich Revolutionäre am CAS ist die Möglichkeit symbolischen Rechnens, also des Verarbeitens von Termen im Sinne von (4) und (5), und dies ist zugleich der Kern des ST-Modus. Die Terme werden dabei wie Elemente einer formalen Sprache textlich verarbeitet. Wesentlich und unverzichtbar sind dabei | |||
* Algorithmen zur Analyse der Eingabeterme und | |||
* die Benutzung von Daten- und Methoden-Banken zwecks Bereitstellung geeigneter Verarbeitungsalgorithmen. | |||
Damit gehört diese Art der Verarbeitung in einen zentralen Problembereich der Informatik, nämlich in den der Syntaxanalyse ('''[http://de.wikipedia.org/wiki/Parser Parsing]''') formaler Sprachen. Die hier auftretenden formalen Sprachen sind sog. kontextfreie Sprachen (context free languages – '''[http://de.wikipedia.org/wiki/Kontextfreie_Sprache CFL]'''). Insbesondere sog. '''[http://www.hs-augsburg.de/mebib/emiel/entw_inf/lernprogramme/baeume/gdi_kap_1bis3.html Baumstrukturen]''' können im Rahmen der CFL-Theorie sinnvoll behandelt werden. Baumstrukturen spielen bei der Definition von „Term“ eine unentbehrliche Rolle, und sie haben auch Eingang in die Mathematikdidaktik gefunden, um mit ihrer Hilfe den hierarchischen Aufbau von Termen verstehen zu können. | |||
==Literatur== | |||
* [http://de.wikipedia.org/wiki/Walter_Oberschelp Oberschelp, Walter] [1996]: Computeralgebrasysteme als Implementierung symbolischer Termalgorithmen. In: Hischer, Horst & Weiß, Michael (Hrsg.): Rechenfertigkeit und Begriffsbildung — Zu wesentlichen Aspekten des Mathematikunterrichts vor dem Hintergrund von Computeralgebrasystemen. Hildesheim: Franzbecker 1996, S. 31–37. | |||
* [[Horst Hischer|Hischer, Horst]] [2002]: [http://www.horst.hischer.de/publikationen/buecher/2002-mu-neumed/cover.htm Mathematikunterricht und Neue Medien. Hintergründe und Begründungen in fachdidaktischer und fachübergreifender Sicht.] Hildesheim: Franzbecker, S. 192 ff. (3., durchgesehene und korrigierte Auflage 2005). | |||
* ''Didaktische Dissertationen:'' | |||
** Unger, Heintje [2000]: [[Computeralgebra in der AHS]] | |||
** Aspetsberger, Klaus [2005]: [[Computeralgebrasysteme im Analysisunterricht – Unterrichtsversuche und ihre didaktische Reflexion]] | |||
==Anmerkungen== | |||
<references /> | |||
[[Kategorie:CAS]] | |||
{{Zitierhinweis|Horst Hischer}} |
Aktuelle Version vom 4. April 2018, 18:17 Uhr
Überblick
Ein Computeralgebrasystem (abgekürzt: CAS, gesprochen: „C-A-S“, manchmal auch „Kass“) ist ein Computerprogramm, das symbolische Berechnungen wie beispielsweise das formale Lösen von Gleichungen und Ungleichungen einschließlich nötiger Termumformungen und auch das formale Differenzieren und Integrieren ermöglicht. Solche symbolischen Umformungen, auch Formelmanipulationen genannt, basieren auf entsprechenden Kalkülen aus der Algebra und der Analysis (die daher im Englischen auch Calculus genannt wird), die mit Regelsystemen beschreibbar sind, die letztlich auch Grundlage zielgerichteter händischer Bearbeitung sind. Derartige Regelsysteme werden in der Computeralgebra formuliert und untersucht. Heutige CAS haben in aller Regel einen Funktionenplotter integriert, der allerdings nicht zur Computeralgebra gehört.
Entsprechend der Definition der Fachgruppe Computeralgebra gemäß dem Computeralgebra-Handbuch gilt:
- Die Computeralgebra ist ein Wissenschaftsgebiet, das sich mit Methoden zum Lösen mathematisch formulierter Probleme durch symbolische Algorithmen und deren Umsetzung in Soft- und Hardware beschäftigt. Sie beruht auf der exakten endlichen Darstellung endlicher oder unendlicher mathematischer Objekte und Strukturen und ermöglicht deren symbolische und formelmäßige Behandlung durch eine Maschine. Strukturelles mathematisches Wissen wird dabei sowohl beim Entwurf als auch bei der Verifikation und Aufwandsanalyse der betreffenden Algorithmen verwendet. Die Computeralgebra kann damit wirkungsvoll eingesetzt werden bei der Lösung von mathematisch modellierten Fragestellungen in zum Teil sehr verschiedenen Gebieten der Informatik und Mathematik sowie in den Natur- und Ingenieurwissenschaften. [1]
Zur Geschichte
Als erstes CAS gilt das seit den 1960er Jahren entwickelte Programm Macsyma, das nun als Open-Source-Version unter dem Namen Maxima weiterentwickelt wird. In den 1970er Jahren kam muMATH hinzu und Ende der 1980er Jahre Mathematica und Derive. Heute gibt es eine Fülle unterschiedlicher CAS. Noch um 1990 herum war statt Computeralgebrasystem auch die Bezeichnung Formelmanipulationssystem üblich.
Grundsätzliche Eigenschaften
Die heute verfügbaren Computeralgebrasysteme können in zwei grundsätzlich zu unterscheidenden Betriebsarten verwendet werden: [2]
- NG: Numerisch-Graphischer Modus
- ST: Symbolischer Term-Modus
Der NG-Modus bezieht sich auf die Optionen eines guten Taschenrechners und eines Funktionenplotters, betrifft also noch nicht die Computeralgebra (s. o.), während der ST-Modus das eigentlich Neue, nämlich die sog. „Computeralgebra“, betrifft.
Die von einem CAS verarbeiteten Objekte sind mathematische Terme, die als Bestandteile von Formeln (Gleichungen, Ungleichungen) auftreten.
Terme lassen sich in beliebigen algebraischen Strukturen rekursiv definieren, etwa im Körper der reellen Zahlen:
- (i) Jedes Zahlzeichen für eine reelle Zahl ist ein Term.
- (ii) Jede Variable ist ein Term.
- (iii) Sind und Terme, so auch , , und ÷ (Letzteres unter Beachtung von nicht identisch gleich ).
- (iv) Ist ein Term, so auch ().
Und es könnte dann z. B. hinzukommen:
- (v) Ist eine reelle Funktion und ein Term, so ist auch ein Term.
Bei einem CAS können dann Terme in folgenden fünf Formen auftreten:
- (1) Kanonische Zeichen für Zahlen (Integer, Festkomma, Gleitkomma).
- (2) Zahlenpaare und Zahlen-Tripel, in der Ausgabe üblicherweise dargestellt als Punkte in der Ebene bzw. im Raum.
- (3) Funktionszeichen (arithmetische Operatoren, Quadratwurzel, Bruchstrich, Exponentiation, Fakultät usw.) zur Bildung von Termen, dazu auch Funktionenverkettung und Konstanten.
- (4) Wichtige Erweiterungen des Termbegriffs durch Verwendung von Variablen für Zahlen, Zahlenpaare, Vektoren, Matrizen, ...
- (5) Eine weitere Erweiterung des Termbegriffs mittels Funktionsvariablen und durch Operatoren (Differentialoperator, Integraloperator, Summenzeichen, ...).
Wenn ein CAS im NG-Modus genutzt wird, so geschieht dies weitgehend im Bereich von (1) bis (3), wobei aber auch (4) und (5) nicht ausgeschlossen sind. Das CAS wird dann im Prinzip nur wie ein programmierbarer Taschenrechner genutzt, der bei Verwendung von (2) über ein Graphik-Display verfügt. Dabei laufen intern Rechenprogramme ab, die auch umfangreiche Numerik-Algorithmen benutzen können, z. B. Verfahren zur Nullstellenbestimmung, zur numerischen Differentiation oder Integration, ferner Interpolations- und Approximations-Algorithmen.
Das numerische Lösen von Gleichungen, das Darstellen von Funktionsgraphen mit einem integrierten Funktionenplotter und die Anwendung von Operationen und Optionen wie approx sind Indizien dafür, dass ein CAS im NG-Modus arbeitet (und hierfür benötigt man eigentlich gar kein Computeralgebrasystem). Das Wesentliche und zugleich Revolutionäre am CAS ist die Möglichkeit symbolischen Rechnens, also des Verarbeitens von Termen im Sinne von (4) und (5), und dies ist zugleich der Kern des ST-Modus. Die Terme werden dabei wie Elemente einer formalen Sprache textlich verarbeitet. Wesentlich und unverzichtbar sind dabei
- Algorithmen zur Analyse der Eingabeterme und
- die Benutzung von Daten- und Methoden-Banken zwecks Bereitstellung geeigneter Verarbeitungsalgorithmen.
Damit gehört diese Art der Verarbeitung in einen zentralen Problembereich der Informatik, nämlich in den der Syntaxanalyse (Parsing) formaler Sprachen. Die hier auftretenden formalen Sprachen sind sog. kontextfreie Sprachen (context free languages – CFL). Insbesondere sog. Baumstrukturen können im Rahmen der CFL-Theorie sinnvoll behandelt werden. Baumstrukturen spielen bei der Definition von „Term“ eine unentbehrliche Rolle, und sie haben auch Eingang in die Mathematikdidaktik gefunden, um mit ihrer Hilfe den hierarchischen Aufbau von Termen verstehen zu können.
Literatur
- Oberschelp, Walter [1996]: Computeralgebrasysteme als Implementierung symbolischer Termalgorithmen. In: Hischer, Horst & Weiß, Michael (Hrsg.): Rechenfertigkeit und Begriffsbildung — Zu wesentlichen Aspekten des Mathematikunterrichts vor dem Hintergrund von Computeralgebrasystemen. Hildesheim: Franzbecker 1996, S. 31–37.
- Hischer, Horst [2002]: Mathematikunterricht und Neue Medien. Hintergründe und Begründungen in fachdidaktischer und fachübergreifender Sicht. Hildesheim: Franzbecker, S. 192 ff. (3., durchgesehene und korrigierte Auflage 2005).
- Didaktische Dissertationen:
- Unger, Heintje [2000]: Computeralgebra in der AHS
- Aspetsberger, Klaus [2005]: Computeralgebrasysteme im Analysisunterricht – Unterrichtsversuche und ihre didaktische Reflexion
Anmerkungen
- ↑ Aus: http://www.fachgruppe-computeralgebra.de/allgemeines/
- ↑ Vgl. [Oberschelp 1996], dargestellt auch in [Hischer 2002, 262 ff.].
Der Beitrag kann wie folgt zitiert werden: Horst Hischer (2018): Computeralgebrasysteme. Version vom 4.04.2018. In: dev_madipedia. URL: http://dev.madipedia.de/index.php?title=Computeralgebrasysteme&oldid=29814. |