<Section> <Heading> The definitions </Heading> <ManSection> <Attr Name="MultiplicityOfNumericalSemigroup" Arg="NS"/> <Description> <A>NS</A> is a numerical semigroup. Returns the multiplicity of <A>NS</A>, which is the smallest positive integer belonging to <A>NS</A>. <Example><![CDATA[ gap> S := NumericalSemigroup("modular", 7,53); <Modular numerical semigroup satisfying 7x mod 53 <= x > gap> MultiplicityOfNumericalSemigroup(S); 8 ]]></Example> </Description> </ManSection> <ManSection> <Func Name="GeneratorsOfNumericalSemigroup" Arg="S"/> <Func Name="GeneratorsOfNumericalSemigroupNC" Arg="S"/> <Attr Name="MinimalGeneratingSystemOfNumericalSemigroup" Arg="S"/> <Description> <A>S</A> is a numerical semigroup. <C>GeneratorsOfNumericalSemigroup</C> returns a set of generators of <C>S</C>, which may not be minimal. <C>GeneratorsOfNumericalSemigroupNC</C> returns the set of generators recorded in <C>S!.generators</C>, which may not be minimal. <C>MinimalGeneratingSystemOfNumericalSemigroup</C> returns the minimal set of generators of <C>S</C>. <Example><![CDATA[ gap> S := NumericalSemigroup("modular", 5,53); <Modular numerical semigroup satisfying 5x mod 53 <= x > gap> GeneratorsOfNumericalSemigroup(S); [ 11, 12, 13, 32, 53 ] gap> S := NumericalSemigroup(3, 5, 53); <Numerical semigroup with 3 generators> gap> GeneratorsOfNumericalSemigroup(S); [ 3, 5, 53 ] gap> MinimalGeneratingSystemOfNumericalSemigroup(S); [ 3, 5 ] ]]></Example> </Description> </ManSection> <ManSection> <Attr Name="SmallElementsOfNumericalSemigroup" Arg="NS"/> <Description> <C>NS</C> is a numerical semigroup. It returns the list of small elements of <C>NS</C>. Of course, the time consumed to return a result may depend on the way the semigroup is given. <Example><![CDATA[ gap> SmallElementsOfNumericalSemigroup(NumericalSemigroup(3,5,7)); [ 0, 3, 5 ] ]]></Example> </Description> </ManSection> <ManSection> <Func Name="FirstElementsOfNumericalSemigroup" Arg="n, NS"></Func> <Description> <C>NS</C> is a numerical semigroup. It returns the list with the first <A>n</A> elements of <C>NS</C>. <Example><![CDATA[ gap> FirstElementsOfNumericalSemigroup(2,NumericalSemigroup(3,5,7)); [ 0, 3 ] gap> FirstElementsOfNumericalSemigroup(10,NumericalSemigroup(3,5,7)); [ 0, 3, 5, 6, 7, 8, 9, 10, 11, 12 ] ]]></Example> </Description> </ManSection> <ManSection> <Oper Name="AperyListOfNumericalSemigroupWRTElement" Arg="S, m"/> <Description> <A>S</A> is a numerical semigroup and <A>m</A> is a positive element of <A>S</A>. Computes the Apéry list of <A>S</A> wrt <A>m</A>. It contains for every <M>i\in \{0,\ldots,<A>m</A>-1\}</M>, in the <M>i+1</M>th position, the smallest element in the semigroup congruent with <M>i</M> modulo <A>m</A>. <Example><![CDATA[ gap> S := NumericalSemigroup("modular", 5,53); <Modular numerical semigroup satisfying 5x mod 53 <= x > gap> AperyListOfNumericalSemigroupWRTElement(S,12); [ 0, 13, 26, 39, 52, 53, 54, 43, 32, 33, 22, 11 ] ]]></Example> </Description> </ManSection> <ManSection> <Func Name="DrawAperyListOfNumericalSemigroup" Arg="ap"/> <Description> <A>ap</A> is the Apéry list of a numerical semigroup. This function draws the graph <M>(ap, E)</M> where the edge <M>u -> v</M> is in <M>E</M> iff <M>v - u</M> is in <M>ap</M>. To use this function, <C>Graphviz</C> (<URL>http://www.graphviz.org</URL>) should be installed and also <C>Evince</C> (<URL>http://www.gnome.org/projects/evince/</URL>) or <C>ggv</C> (<URL>http://directory.fsf.org/ggv.html</URL>). </Description> </ManSection> <ManSection> <Func Name="AperyListOfNumericalSemigroupAsGraph" Arg="ap"/> <Description> <A>ap</A> is the Apéry list of a numerical semigroup. This function returns the adjacency list of the graph <M>(ap, E)</M> where the edge <M>u -> v</M> is in <M>E</M> iff <M>v - u</M> is in <M>ap</M>. The 0 is ignored. <Example><![CDATA[ gap> s:=NumericalSemigroup(3,7); <Numerical semigroup with 2 generators> gap> AperyListOfNumericalSemigroupWRTElement(s,10); [ 0, 21, 12, 3, 14, 15, 6, 7, 18, 9 ] gap> AperyListOfNumericalSemigroupAsGraph(last); [ ,, [ 3, 6, 9, 12, 15, 18, 21 ],,, [ 6, 9, 12, 15, 18, 21 ], [ 7, 14, 21 ],, [ 9, 12, 15, 18, 21 ],,, [ 12, 15, 18, 21 ],, [ 14, 21 ], [ 15, 18, 21 ],,, [ 18, 21 ],,, [ 21 ] ] ]]></Example> </Description> </ManSection> </Section>