Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  presentation.gd   Sprache: Shell

 

#
# walrus: Computational Methods for Finitely Generated Monoids and Groups
#

#! @Chapter Pregroup Presentations
#!
#! @Section Creating Pregroup Presentations
#!
#! @Arguments pregroup, relators
#! @Returns a pregroup presentation
#! @Description
#! Creates a pregroup presentation over the <A>pregroup</A> with
#! relators <A>relators</A>.
DeclareGlobalFunction("NewPregroupPresentation");

#! @Arguments F, rred, rgreen
#! @Returns a pregroup presentation
#! @Description
#! Creates a pregroup presentation over the pregroup defined by
#! <A>F</A> and <A>rred</A> with relators <A>rgreen</A>.
DeclareGlobalFunction("PregroupPresentationFromFp");

#! @Arguments presentation
#! @Returns a finitely presented group
#! @Description
#! Converts the pregroup presentation <A>presentation</A> into
#! a finitely presented group.
DeclareGlobalFunction("PregroupPresentationToFpGroup");


#!
#! @Section Filters, Attributes, and Properties
#!
DeclareCategory("IsPregroupPresentation", IsObject);
DeclareRepresentation( "IsPregroupPresentationRep"
                     , IsPregroupPresentation and IsComponentObjectRep and IsAttributeStoringRep
                     , [] );

BindGlobal( "PregroupPresentationType"
          , NewType( NewFamily( "PregroupPresentationFam")
                   , IsPregroupPresentationRep ) );


DeclareAttribute("Pregroup", IsPregroupPresentation );
DeclareAttribute("Generators", IsPregroupPresentation );
DeclareAttribute("Relators", IsPregroupPresentation );
DeclareAttribute("RelatorsAndInverses", IsPregroupPresentation );
DeclareAttribute("Locations", IsPregroupPresentation );
DeclareAttribute("Places", IsPregroupPresentation );
DeclareAttribute("Bases", IsPregroupPresentation );
DeclareAttribute("Powers", IsPregroupPresentation );
DeclareAttribute("VertexGraph", IsPregroupPresentation );
DeclareAttribute("VertexGraphDistances", IsPregroupPresentation );
DeclareAttribute("VertexTriples", IsPregroupPresentation );
DeclareAttribute("RLetters", IsPregroupPresentation );
DeclareAttribute("PlaceTriples", IsPregroupPresentation );
DeclareAttribute("ShortRedBlobIndex", IsPregroupPresentation );
DeclareAttribute("OneStepReachablePlaces", IsPregroupPresentation );
DeclareAttribute("LengthLongestRelator", IsPregroupPresentation );
DeclareAttribute("LocationIndex", IsPregroupPresentation );

DeclareOperation("Blob",
                 [IsPregroupPresentation,
                  IsElementOfPregroup, IsElementOfPregroup, IsElementOfPregroup]);

DeclareAttribute("VertexTripleCache", IsPregroupPresentation, "mutable" );
DeclareGlobalFunction("IsRLetter");

#! @Section Hyperbolicity testing for pregroup presentations
#!
#! @Arguments presentation, epsilon
#! @Description
#! Test the group presented by <A>presentation</A> for hyperbolicity using
#! the RSym tester with parameter <A>epsilon</A>.
DeclareOperation("RSymTestOp", [IsPregroupPresentation, IsRat]);
#! @Arguments args...
#!
#! @Description
#! This is a wrapper for <Ref Oper="RSymTestOp" Label="for
#! IsPregroupPresentation, IsRat" />. If the first argument given is a free
#! group, the second and third lists of words over the free group, and the
#! fourth a rational, then this function creates a pregroup presentation from
#! the input data and invokes <Ref Oper="RSymTestOp" Label="for
#! IsPregroupPresentation, IsRat" /> on it. If the first
#! argument is a pregroup presentation and the second argument is rational
#! number, then it invokes <Ref Oper="RSymTestOp" Label="for
#! IsPregroupPresentation, IsRat" /> on that input.
DeclareGlobalFunction("RSymTest");

#! @BeginGroup
#! @Description Tests a given presentation for hyperbolicity using the RSym test procedure.
#! @Arguments presentation
DeclareOperation("IsHyperbolic", [IsPregroupPresentation]);
#! @Arguments presentation, epsilon
DeclareOperation("IsHyperbolic", [IsPregroupPresentation, IsRat]);
#! @Arguments F, rred, rgreen, epsilon
DeclareOperation("IsHyperbolic", [IsFreeGroup, IsObject, IsObject, IsRat]);
#! @EndGroup



#! @Section Input and Output of Pregroup Presentations

#! @Arguments presentation
#! @Returns A KBMAG rewriting system
#! @Description
#! Turns the pregroup presentation <A>presentation</A> into
#! valid input for Knuth-Bendix rewriting using KBMAG. Only
#! available if the kbmag package is available.
DeclareGlobalFunction("PregroupPresentationToKBMAG");

#! @Arguments stream, presentation
#! @Description
#! Writes the pregroup presentation <A>presentation</A> to
#! <A>stream</A>.
#! @BeginExample
#! gap> T := TriangleGroup(2,3,7);;
#! gap> str := "";; stream := OutputTextString(str, true);;
#! gap> PregroupPresentationToStream(stream, T);
#! gap> Print(str);
#! rec(
#!   rels := [ [ 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3 ] ],
#!   table := [ [ 1, 2, 3, 4 ], [ 2, 1, 0, 0 ], [ 3, 0, 4, 1 ], [ 4, 0, 1, 3 ] ] );
#! @EndExample
DeclareGlobalFunction("PregroupPresentationToStream");

#! @Arguments stream
#! @Returns A pregroup presentation
#! @Description
#! Reads a pregroup presentation from an input stream in the same format
#! that <Ref Func="PregroupPresentationToStream" /> uses.
#! @BeginExample
#! gap> stream := InputTextString(str);
#! InputTextString(0,146)
#! gap> PregroupPresentationFromStream(stream);
#! <pregroup presentation with 3 generators and 1 relators>
#! @EndExample
DeclareGlobalFunction("PregroupPresentationFromStream");

#! @Arguments stream, presentation
#! @Description
#! Writes the pregroup presentation <A>presentation</A> to
#! <A>stream</A>. Uses a simpler format than
#! <Ref Func="PregroupPresentationToStream" />
DeclareGlobalFunction("PregroupPresentationToSimpleStream");

#! @Arguments filename, presentation
#! @Description
#! Writes the pregroup presentation <A>presentation</A> to
#! file with name <A>filename</A>.
DeclareGlobalFunction("PregroupPresentationToFile");

#! @Arguments filename
#! @Description
#! Reads a pregroup presentation from file with <A>filename</A>.
DeclareGlobalFunction("PregroupPresentationFromFile");

#! @Arguments stream, presentation
#! @Description
#! Writes the pregroup presentation <A>presentation</A> to
#! file with name <A>filename</A> in a simple format.
DeclareGlobalFunction("PregroupPresentationToSimpleFile");



DeclareGlobalFunction("LogPregroupPresentation");

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet am  2026-10-12) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1128594
#Domains=1976912