> < ^ Date: Tue, 12 May 1992 17:07:26 +0200
> ^ From: Martin Wursthorn <pluto@machnix.mathematik.uni-stuttgart.de >
> ^ Subject: FreeGroup etc
Hallo,
Wir haben hier in Stuttgart gap auf folgenden Maschinen erfolgreich installiert:
        SUN 3/60     (fertige Version)
        IBM RS6000   (neu uebersetzt mit gcc2.1)
        HP9000/730   (         "               )
        ATARI ST/TT  (gcc2.1 mit Patch in system.c)

Bei der RS6000 funktioniert das gap shell script allerdings nicht so, wie
im Installation Guide angegeben: die Bibliotheken werden nicht gefunden.

Was den ATARI TT betrifft, so habe ich in SysGetmem die sbrk Funktion
durch ein calloc ersetzt. Damit laeuft gap hervorragend auf dem TT und
nutzt vor allem das Fastram aus. Auf meinem TT mit 32 MByte Fastram ist
gap deutlich schneller als auf der SUN 3/60. Ein Blick in das GNU Quellfile
von sbrk (library patchlevel 80) zeigt uebrigens, dass in der ATARI Version
nicht garantiert wird, dass aufeinanderfolgende Aufrufe zusammenhaengende
Bloecke liefern. Deshalb glaube ich, dass die calloc Methode sicherer ist,
auch wenn man auf das nachtraegliche Vergroessern des Speichers verzichhten muss.

Bei der Arbeit mit gap ist uns folgendes aufgefallen:

Definiert man eine Gruppe durch Erzeugende und Relationen (FreeGroup), so
kommen einige Routinen wie ConjugacyClasses anscheinend nicht damit klar.
Sie belegen sukzessive den ganzen Speicher und brechen dann ab.
Auch Versuche, die Gruppe mit AgGroup in eine AG Gruppe umrechnen zu lassen,
scheiterten. Machen wir da etwas falsch ? (Warnungen im Handbuch Kap. 21.3)
Hier ein Beispiel mit der Diedergruppe 5

gap> g := FreeGroup ( 2, "g" );
gap> Group( g.1, g.2 )
gap> g.relators := [g.1^5, g.2^2, g.1^g.2 / g.1^4];
gap> [ g.1^5, g.2^2, g.2^-1*g.1*g.2*g.1^-4 ]
gap> Size(g);
gap> 10
gap> ConjugacyClasses(g);
..(panic: corrupted heap ... (oder so aehnlich))

Hat man eine Gruppe bereits in AG oder PAG Praesentation, so funktioniert
gap hervorragend. So haben wir eine AG Gruppe von Ordnung 2^24 ohne Probleme
in eine PQ Praesentation umrechnen lassen. Kann man eigentlich aus der
PQ Datenstruktur wieder eine Gruppe gewinnen, die genau die Erzeugenden und
PC Relationen hat, die in der Struktur angegeben sind ? Einige unserer
p-Gruppenprogramme brauchen solche Praesentationen.

Martin Wursthorn


> < [top]