[englische Flagge]  Home

Objekte in SYMMETRICA

Bei der Entwicklung von Symmetrica wurde in der Programmiersprache C ein objektorientierter Programmierstil gewählt. Dies wurde wie folgt verwirklicht:


Der einzige Datentyp in Symmetrica ist das Objekt. Anhand einer Kennung am Objekt können die verschiedenen Routinen entscheiden, auf welche Weise die konkrete Operation (z.B. Multiplikation) für das vorliegende Objekt durchgeführt wird.


Der Vorteil dieser Methode ist die Verwendung gleicher Funktion für verschiedene Typen von Objekten. So ist eine Funktion zur Matrixinversion unabhängig von den Objekten in der Matrix. Man muß die Matrixeinträge lediglich invertieren können. Die Routine bleibt auch lauffähig, wenn weitere Objekt Typen hinzukommen.
Der Nachteil ist der Overhead der, bei wiederholten Typprüfungen entsteht. Ferner der zusätzliche Speicherplatz für die Typkennung.


Nun eine vollständige Aufzählung der vorhanden Typen von Objekten.


INTEGER
VECTOR von beliebigen Objekten
BITVECTOR 0-1 Vektor als Bitfolge gespeichert
PARTITION (21.11.96)
BRUCH aus zwei beliebigen Objekten
PERMUTATION
SKEWPARTITION
TABLEAUX
POLYNOM mit beliebigen Objekten als Koeffizient
SCHUR Funktion mit beliebigen Objekten als Koeffizient
MATRIX von beliebigen Objekten
HOMSYM = vollständig symmetrische Funktion
SCHUBERT Polynom
INTEGERVECTOR = VECTOR Objekt mit INTEGER Objekten
INTEGERMATRIX = MATRIX Objekt mit INTEGER Objekten
SYMCHAR = Charkter der symmetrischen Gruppe
WORD
LIST = Liste von beliebigen Objekten
LONGINT
BINTREE = binärer Baum von beliebigen Objekten
POWSYM = symmetrische Potenzsummen Funktion
ELMSYM = elementarsymmetrische Funktion
KRANZ = Element eines Kranzprodukts
FINITEFIELD = Element eines endlichen Körpers
GROUPALGEBRA = Element der Gruppenalgebra einer Permutationsgruppe
REIHE
CYCLOTOMIC
MONOPOLY = Polynom in einer Variablen
SQ_RADICAL
LAURENT
BARPERM



Send comments or suggestions to:
sym@btm2x2.mat.uni-bayreuth.de