GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
<?xml version="1.0" encoding="UTF-8"?>1<Section>2<Heading>3Irreducible numerical semigroups4</Heading>5An irreducible numerical semigroup is a semigroup that cannot be expressed as the6intersection of numerical semigroups properly containing it.7<P/>89It is not difficult to prove that a semigroup is irreducible if and only if it is10maximal (with respect to set inclusion) in the set of all numerical semigroups having11its same Frobenius number (see <Cite Key="RB03"></Cite>). Hence, according to12<Cite Key="FGH87"></Cite> (respectively <Cite Key="BDF97"></Cite>),13symmetric (respectively pseudo-symmetric) numerical semigroups are those irreducible14numerical semigroups with odd (respectively even) Frobenius number.15<P/>1617In <Cite Key="RGGJ03"></Cite> it is shown that a nontrivial numerical semigroup is irreducible if and18only if it has only one special gap. We use this characterization.19<P/>2021In this section we show how to construct the set of all numerical semigroups with a22given Frobenius number. In old versions of the package, we first constructed an irreducible numerical semigroup with23the given Frobenius number (as explained in <Cite Key="RGS04"></Cite>), and then24we constructed the rest from it. That is why we separated both functions.25The present version uses a faster procedure presented in <Cite Key="BR13"></Cite>.26<P/>2728Every numerical semigroup can be expressed as an intersection of irreducible29numerical semigroups. If <M>S</M> can be expressed as <M>S=S_1\cap \cdots\cap S_n</M>,30with <M>S_i</M> irreducible numerical semigroups, and no factor can be removed, then31we say that this decomposition is minimal. Minimal decompositions can be computed by32using Algorithm 26 in <Cite Key="RGGJ03"></Cite>.33<P/>343536<ManSection>37<Prop Arg="s" Name="IsIrreducibleNumericalSemigroup"></Prop>38<Prop Arg="s" Name="IsIrreducible" Label="for numerical semigroups"></Prop>3940<Description>41<A>s</A> is a numerical semigroup. The output is true if <A>s</A> is irreducible,42false otherwise.43<Example><![CDATA[44gap> IsIrreducibleNumericalSemigroup(NumericalSemigroup(4,6,9));45true46gap> IsIrreducibleNumericalSemigroup(NumericalSemigroup(4,6,7,9));47false48]]></Example>49</Description>50</ManSection>515253<ManSection>54<!--<Prop Arg="s" Name="IsSymmetric"></Prop>-->55<Attr Arg="s" Name="IsSymmetricNumericalSemigroup"></Attr>56<Attr Arg="s" Name="IsSymmetric" Label="for numerical semigroups"></Attr>5758<Description>59<A>s</A> is a numerical semigroup. The output is true if <A>s</A> is symmetric,60false otherwise.61<Example><![CDATA[62gap> IsSymmetric(NumericalSemigroup(10,23));63true64gap> IsSymmetricNumericalSemigroup(NumericalSemigroup(10,11,23));65false66]]></Example>67</Description>68</ManSection>6970<ManSection>71<Prop Arg="s" Name="IsPseudoSymmetric" Label="for numerical semigroups"></Prop>72<Prop Arg="s" Name="IsPseudoSymmetricNumericalSemigroup"></Prop>73<Description>74<A>s</A> is a numerical semigroup. The output is true if <A>s</A> is pseudo-symmetric,75false otherwise.76<Example><![CDATA[77gap> IsPseudoSymmetricNumericalSemigroup(NumericalSemigroup(6,7,8,9,11));78true79gap> IsPseudoSymmetricNumericalSemigroup(NumericalSemigroup(4,6,9));80false81]]></Example>82</Description>83</ManSection>848586<ManSection>87<Func Arg="f" Name="AnIrreducibleNumericalSemigroupWithFrobeniusNumber"></Func>88<Description>89<A>f</A> is an integer greater than or equal to -1. The output is an irreducible90numerical semigroup with Frobenius number <A> f</A>. From the way the procedure is91implemented, the resulting semigroup has at most four generators (see <Cite Key="RGS04"></Cite>).92<Example><![CDATA[93gap> s := AnIrreducibleNumericalSemigroupWithFrobeniusNumber(28);94<Numerical semigroup with 3 generators>95gap> MinimalGenerators(s);96[ 3, 17, 31 ]97gap> FrobeniusNumber(s);982899]]></Example>100</Description>101</ManSection>102103104<ManSection>105<Func Arg="f" Name="IrreducibleNumericalSemigroupsWithFrobeniusNumber"></Func>106<Description>107<A>f</A> is an integer greater than or equal to -1. The output is the set of all108irreducible numerical semigroups with Frobenius number <A>f</A>.109<Example><![CDATA[110gap> Length(IrreducibleNumericalSemigroupsWithFrobeniusNumber(19));11120112]]></Example>113</Description>114</ManSection>115116<ManSection>117<Func Arg="s" Name="DecomposeIntoIrreducibles" Label="for numerical semigroup"></Func>118<Description>119<A>s</A> is a numerical semigroup. The output is a set of irreducible120numerical semigroups containing it. These elements appear in a minimal121decomposition of <A>s</A> as intersection into irreducibles.122<Example><![CDATA[123gap> DecomposeIntoIrreducibles(NumericalSemigroup(5,6,8));124[ <Numerical semigroup with 3 generators>,125<Numerical semigroup with 4 generators> ]126]]></Example>127</Description>128</ManSection>129130</Section>131132133