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


Quelle  numsgp-def.gd   Sprache: unbekannt

 
#############################################################################
##
#W  numsgp-def.gd           Manuel Delgado <mdelgado@fc.up.pt>
#W                          Pedro A. Garcia-Sanchez <pedro@ugr.es>
#W                          Jose Morais <josejoao@fc.up.pt>
##
##
#Y  Copyright 2005 by Manuel Delgado,
#Y  Pedro Garcia-Sanchez and Jose Joao Morais
#Y  We adopt the copyright regulations of GAP as detailed in the
#Y  copyright notice in the GAP manual.
##
#############################################################################


DeclareInfoClass("InfoNumSgps");



#############################################################################
##
#R  IsNumericalSemigroupRep
##
##  The representation of a numerical semigroup.
##
#############################################################################
DeclareRepresentation( "IsNumericalSemigroupRep", IsAttributeStoringRep, []);


#############################################################################
##
#C  IsNumericalSemigroup
##
##  The category of numerical semigroups.
##
#############################################################################
DeclareCategory( "IsNumericalSemigroup", IsAdditiveMagma and IsNumericalSemigroupRep);


# Elements of numerical semigroups are integers, so numerical semigroups are
# collections of integers.
BindGlobal( "NumericalSemigroupsType",
        NewType( CollectionsFamily(CyclotomicsFamily),
                 IsNumericalSemigroup));


#############################################################################
##
#F  NumericalSemigroupByGenerators(arg)
##
##  Returns the numerical semigroup generated by arg.
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByGenerators" );
#A
DeclareAttribute( "Generators", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupByGenerators", HasGenerators);


#############################################################################
##
#F  ModularNumericalSemigroup(a,b)
##
##  Returns the modular numerical semigroup satisfying ax mod b <= x
##
#############################################################################
DeclareGlobalFunction( "ModularNumericalSemigroup" );
#A
DeclareAttribute( "ModularConditionNS", IsNumericalSemigroup);


#############################################################################
##
#F  ProportionallyModularNumericalSemigroup(a,b,c)
##
##  Returns the proportionally modular numerical semigroup
##  satisfying ax mod b <= cx
##
#############################################################################
DeclareGlobalFunction( "ProportionallyModularNumericalSemigroup" );
#A
DeclareAttribute( "ProportionallyModularConditionNS", IsNumericalSemigroup);

#############################################################################
##
#F NumericalSemigroupByAffineMap(a,b,c)
## Computes the smallest numerical semigroup 
## containing c and closed under x->ax+b
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByAffineMap");


#############################################################################
##
#F  NumericalSemigroupByInterval(arg)
##
##  The set of numerators of all rational numbers in the interval is a 
##  numerical semigroup. Returns this  numerical semigroup
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByInterval" );
#A
DeclareAttribute( "ClosedIntervalNS", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupByInterval",HasClosedIntervalNS);



#############################################################################
##
#F  NumericalSemigroupByOpenInterval(arg)
##
##  The set of numerators of all rational numbers in the interval is a 
##  numerical semigroup. Returns this  numerical semigroup
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByOpenInterval" );
#A
DeclareAttribute( "OpenIntervalNS", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupByOpenInterval",HasOpenIntervalNS);



#############################################################################
##
#F  NumericalSemigroupBySubAdditiveFunction(L)
##
##  Returns the numerical semigroup specified by the subadditive
##  function L.
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupBySubAdditiveFunction" );
#A
DeclareAttribute( "SubAdditiveFunctionNS", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupBySubAdditiveFunction",HasSubAdditiveFunctionNS);



#############################################################################
##
#F  NumericalSemigroupByAperyList(L)
##
##  Returns the numerical semigroup specified by the Apery list L.
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByAperyList" );
#A
#DeclareAttribute( "AperyListNS", IsNumericalSemigroup);
DeclareAttribute( "AperyList", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupByAperyList",HasAperyList);



#############################################################################
##
#F  NumericalSemigroupBySmallElements(L)
##
##  Returns the numerical semigroup specified by L,
##  which must be the list of elements of a numerical semigroup,
##  not greater than the Frobenius number + 1.
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupBySmallElements" );
#A
DeclareAttribute( "SmallElements", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupBySmallElements",HasSmallElements);


#############################################################################
##
#F  NumericalSemigroupBySmallElementsNC(L)
##
## NC version of NumericalSemigroupBySmallElements
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupBySmallElementsNC" );


#############################################################################
##
#F  NumericalSemigroupByGaps(L)
##
##  Returns the numerical semigroup specified by L,
##  which must be the list of gaps of a numerical semigroup.
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByGaps" );
#A
#DeclareAttribute( "GapsNS", IsNumericalSemigroup);
DeclareAttribute( "Gaps", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupByGaps",HasGaps);


#############################################################################
##
#F  NumericalSemigroupByFundamentalGaps(L)
##
##  Returns the numerical semigroup specified by L,
##  which must be the list of fundamental gaps of a numerical semigroup.
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroupByFundamentalGaps" );
#A
DeclareAttribute( "FundamentalGaps", IsNumericalSemigroup);
DeclareSynonymAttr( "IsNumericalSemigroupByFundamentalGaps",HasFundamentalGaps);

        
#############################################################################
##
#F  NumericalSemigroup(arg)
##
##  This function's first argument may be one of:
##  "generators", "modular", ## "minimalgenerators" #no longer, since version 1.1.9
##  "propmodular", "elements", "gaps",
##  "fundamentalgaps", "subadditive" or "apery" according to
##  how the semigroup is being defined.
##  The following arguments must conform to the arguments of
##  the corresponding function defined above.
##  By default, the option "generators" is used, so,
##  gap> NumericalSemigroup(3,7);
##  <Numerical semigroup with 2 generators>
##
##
#############################################################################
DeclareGlobalFunction( "NumericalSemigroup" );


#############################################################################
##
#P  IsProportionallyModularNumericalSemigroup(S)
##
##  Tests if a numerical semigroup is proportionally modular.
##
#############################################################################
DeclareProperty( "IsProportionallyModularNumericalSemigroup", IsNumericalSemigroup);



#############################################################################
##
#P  IsModularNumericalSemigroup(S)
##
##  Tests if a numerical semigroup is modular.
##
#############################################################################
DeclareProperty( "IsModularNumericalSemigroup", IsNumericalSemigroup);


#############################################################################

[ Dauer der Verarbeitung: 0.3 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge