Skip to article frontmatterSkip to article content

NumericalSgps an introduction - Lisbon 2022

Some basic definitions

Recall that a numerical semigroup SS is a subset of the set of nonnegative integers, N\mathbb{N}, that is closed under addition, 0S0\in S, and there are only finitely many positive integers not belonging to SS. The first two contidions imply that (S,+)(S,+) is a submonoid of (N,+)(\mathbb{N},+).

The set NS\mathbb{N}\setminus S is known as the set of gaps of SS, denoted G(S)\operatorname{G}(S), and the largest integer not belonging to SS is its Frobenius number, F(S)\operatorname{F}(S). The conductor of SS, C(S)\operatorname{C}(S) has the following property: C(S)+NS\operatorname{C}(S)+\mathbb{N}\subseteq S.

LoadPackage("num");
true
s:=NumericalSemigroupByGaps([1..5]);
<Numerical semigroup>
10 in s;
true
FrobeniusNumber(s);
5
Gaps(s);
[ 1 .. 5 ]

We can see which elements in the semigroup are in a given interval.

Intersection(s,[0..30]);
[ 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 ]

Or which is the iith element in the semigroup.

s[30];
34

Or even, what are the first nn elements in the semigroup.

s{[1..20]};
[ 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 ]

The genus of SS is the cardinality of NS\mathbb{N}\setminus S, denoted g(S)\operatorname{g}(S).

Genus(s);
5

The set S[0,C(S)]S\cap[0,\operatorname{C}(S)] is known as the set of small elements of SS (if we remove the conductor, then somtimes is called the set of left or sporadic elements).

SmallElements(s);
[ 0, 6 ]
s=NumericalSemigroupBySmallElements([0,6]);
true

Denote by n(S)=#{sS:s<F(S)}\operatorname{n}(S)=\#\{s \in S : s<\operatorname{F}(S)\}. It follows that n(S)+g(S)=F(S)+1\operatorname{n}(S)+\operatorname{g}(S)=\operatorname{F}(S)+1. Since for every nSn\in S with n<F(S)n<\operatorname{F}(S) we have that F(S)n∉S\operatorname{F}(S)-n\not\in S, we have that there are less left elements than gaps, and so the following inequality always holds.

Genus(s)>= (FrobeniusNumber(s)+1)/2;
true

Given AA a set of positive integers, the submonoid (under addition) of N\mathbb{N} generated by AA is the intersection of all submonoids of N\mathbb{N} contanining AA, which can be described as

A={i=1nλiai:nN,λiN,aiA}. \langle A\rangle = \left\{ \sum_{i=1}^n \lambda_i a_i : n\in\mathbb{N}, \lambda_i\in \mathbb{N}, a_i\in A\right\}.

The submonoid A\langle A\rangle is a numerical semigroup if and only if gcd(A)=1\gcd(A)=1.

We say that AA is a generating system of SS if S=AS=\langle A\rangle, and that AA is a minimal generating system of SS if, in addition, no proper subset of AA generates SS.

Every numerical semgiroup has a unique minimal generating system: S(S+S)S^*\setminus (S^*+S^*), with S=S{0}S^*=S\setminus\{0\}. Sometimes the elements in the minimal generating system of SS are called minimal generators, atoms, irreducible, or primitive elements of SS. The cardinality of the minimal generating system of SS is known as the embedding dimension of SS, denoted e(S)\operatorname{e}(S).

Generators(s);
[ 6 .. 11 ]
MinimalGenerators(s);
[ 6 .. 11 ]
EmbeddingDimension(s);
6

We can define a numerical semigoup by giving one of its generating sets.

s:=NumericalSemigroup(3,5,7);
<Numerical semigroup with 3 generators>

The multiplicity of a numerical semigroup SS is the least positive integer in SS (and coincides with its smallest minimal generator), we will denote it by m(S)\operatorname{m}(S).

Multiplicity(s);
3

Apéry sets

One of the most important tools when studying numerical semigroups is the concept of Apéry sets. Given a numerical semigroup SS and nn a nonzero element of SS (one can define also Apéry sets for elements outside SS, but we are not going to deal with them here), the Apéry set of nn in SS (or of SS with respect to nn) is the set

Ap(S,n)={sS:sn∉S}.\operatorname{Ap}(S,n)=\{ s\in S : s-n\not\in S\}.

This set has precisely nn elements, one in each congruence class modulo nn. Moreover, for every sSs\in S there exist unique kNk\in \mathbb{N} and wAp(S,n)w\in \operatorname{Ap}(S,n) such that s=kn+ws=kn+w. This in particular implies that the embedding dimension of SS is always smaller than or equal to its multiplicity, since (Ap(S,n)){0}{n}(\operatorname{Ap}(S,n))\setminus\{0\}\cup\{n\} is a minimal generating set of SS for all nS{0}n\in S\setminus\{0\}.

s:=NumericalSemigroup(6,10,15);;
AperyList(s,12);
[ 0, 25, 26, 15, 16, 41, 6, 31, 20, 21, 10, 35 ]

If the second argument is not given, then the Apéry set is taken with respect to the multiplicity of the numerical semigroup.

AperyList(s);
[ 0, 25, 20, 15, 10, 35 ]

The output is arranged in a list, so that in the iith position (starting in 0) we find the least element in SS congruent with ii modulo nn. In this way, membership to SS becomes trivial once an Apéry set of the semigroup is known.

This has some other interesting consequences:

FrobeniusNumber(s)=Maximum(AperyList(s,12))-12;
true
Genus(s)=(Sum(AperyList(s,12)))/12- (12-1)/2;
true

Let mm be the multiplcity of SS, and let wiw_i be the element in the Apéry set of mm in SS congruent with ii modulo mm. We can write wi=kim+iw_i=k_im+i. The tuple (k1,,km1)(k_1,\dots,k_{m-1}) is known as the Kunz coordinates of SS.

KunzCoordinates(s);
[ 4, 3, 2, 1, 5 ]

Notice that every nonnegative integer xx can be written as x=km+ix=k m+i for some k,nNk,n\in \mathbb{N}, with i<mi<m. It follows easily that xSx\in S if and only if kkik\ge k_i. So it is at no surprise that the genus is precisely the sum of the Kunz coordinates of SS, which is just a reformulation of the above statement on the genus.

Genus(s)=Sum(KunzCoordinates(s));
true

Notice that wi+wjSw_i+w_j\in S for all i,ji,j, and thus wi+wj=kijm+wi+jmodnw_i+w_j=k_{ij}m+w_{i+j \bmod n}, this imposes some conditions on the tuples (k1,,km1)(k_1,\dots,k_{m-1}) that can be Kunz coordinates of a numerical semigroup with multiplicity mm. In fact, there is a one to one correspondence between numerical semigroups with multiplicity mm and integers points in what it is called the Kunz polyhedron.

KunzPolytope(6);
[ [ 1, 0, 0, 0, 0, -1 ], [ 0, 1, 0, 0, 0, -1 ], [ 0, 0, 1, 0, 0, -1 ], [ 0, 0, 0, 1, 0, -1 ], [ 0, 0, 0, 0, 1, -1 ], [ 2, -1, 0, 0, 0, 0 ], [ 1, 1, -1, 0, 0, 0 ], [ 1, 0, 1, -1, 0, 0 ], [ 1, 0, 0, 1, -1, 0 ], [ 0, 2, 0, -1, 0, 0 ], [ 0, 1, 1, 0, -1, 0 ], [ -1, 1, 0, 0, 1, 1 ], [ -1, 0, 1, 1, 0, 1 ], [ 0, -1, 1, 0, 1, 1 ], [ 0, -1, 0, 2, 0, 1 ], [ 0, 0, -1, 1, 1, 1 ], [ 0, 0, 0, -1, 2, 1 ] ]

The first elements of this output mean that xi1x_i\ge 1, while for instance [1,0,1,1,0,0][ 1, 0, 1, -1, 0, 0 ] translates to x1+x3x4x_1+x_3\ge x_4, and [0,0,0,1,2,1] [ 0, 0, 0, -1, 2, 1 ] to 2x5+1x42x_5+1\ge x_4.

x:=List([1..5],i->Indeterminate(Rationals,i));;
x1:=Concatenation(x,[1]);;
for eq in KunzPolytope(6) do Print(eq*x1," ≥ 0\n"); od;
x_1-1 ≥ 0
x_2-1 ≥ 0
x_3-1 ≥ 0
x_4-1 ≥ 0
x_5-1 ≥ 0
2*x_1-x_2 ≥ 0
x_1+x_2-x_3 ≥ 0
x_1+x_3-x_4 ≥ 0
x_1+x_4-x_5 ≥ 0
2*x_2-x_4 ≥ 0
x_2+x_3-x_5 ≥ 0
-x_1+x_2+x_5+1 ≥ 0
-x_1+x_3+x_4+1 ≥ 0
-x_2+x_3+x_5+1 ≥ 0
-x_2+2*x_4+1 ≥ 0
-x_3+x_4+x_5+1 ≥ 0
-x_4+2*x_5+1 ≥ 0

Pseudo-Frobenius numbers and type

Let SS be a numerical semigroup. A pseudo-Frobenius number is an integer ff such that f+SSf+S^*\subseteq S. In particular, the Frobenius number of SS is a pseudo-Frobenius number. The cardinality of the set of pseudo-Frobenius numbers of SS, FP(S)\operatorname{FP}(S), is known as the type of SS.

The semigroup SS induces the following ordering over the integers: aSba \le_S b if baSb-a\in S. It easily follows that

PF(S)=MaximalsS(NS). \operatorname{PF}(S)= \operatorname{Maximals}_{\le_S}(\mathbb{N}\setminus S).
s:=NumericalSemigroup(6,11,13,21);
<Numerical semigroup with 4 generators>
PseudoFrobenius(s);
[ 15, 16, 20 ]
Type(s);
3

Is is not difficult to prove that for any nS{0}n\in S\setminus\{0\},

n+PF(S)=MaximalsS(Ap(S,n)).n+\operatorname{PF}(S)=\operatorname{Maximals}_{\le_S}(\operatorname{Ap}(S,n)).
rap:=HasseDiagramOfAperyListOfNumericalSemigroup(s);
<general mapping: Domain([ 0, 11, 13, 21, 22, 26 ]) -> Domain([ 0, 11, 13, 21, 22, 26 ]) >
JupyterSplashDot(DotBinaryRelation(rap));
Loading...
6+PseudoFrobenius(s);
[ 21, 22, 26 ]

The minimal elements in S{0}S\setminus\{0\} with respect to S\le_S are precisely the minimal generators of SS.

For every element nS[0,F(S))(PF(S){F(S)})n\in S\cap[0,\operatorname{F}(S))\cup (\operatorname{PF}(S)\setminus\{\operatorname{F}(S)\}), we have that F(S)n\operatorname{F}(S)-n is a gap of SS. Thus n(S)+t(S)1g(S)\operatorname{n}(S)+\operatorname{t}(S)-1\le \operatorname{g}(S). By combining this with n(S)+g(S)=F(S)+1\operatorname{n}(S)+\operatorname{g}(S)=\operatorname{F}(S)+1, we obtain

g(S)F(S)+t(S)2. \operatorname{g}(S)\ge \frac{\operatorname{F}(S)+\operatorname{t}(S)}2.
Genus(s);
13
(FrobeniusNumber(s)+Type(s))/2;
23/2

Duality minimal generators and special gaps

Notice that for a given numerical semigroup SS, an element nSn\in S is a minimal generator if and only if S{n}S\setminus\{n\} is also a numerical semigroup (which has one more gap than SS). Starting with N\mathbb{N}, by removing minimal generators we can construct all numerical semigroups with a given genus.

c:=Union(List([0..4],i->NumericalSemigroupsWithGenus(i)));;
cc:=Filtered(Cartesian(c,c),p->IsSubset(p[2],p[1]) and IsSubset(MinimalGenerators(p[2]),Difference(p[2],p[1])) 
                                and Length(Difference(p[2],p[1]))=1);;
d:=Domain(List(c,MinimalGenerators));;
pairs:=List(cc,p->Tuple([MinimalGenerators(p[1]),MinimalGenerators(p[2])]));;
br:=BinaryRelationByElements(d,pairs);
<general mapping: Domain([ [ 1 ], [ 2, 3 ], [ 2, 5 ], [ 2, 7 ], [ 2, 9 ], [ 3 .. 5 ], [ 3, 4 ], [ 3, 5, 7 ], [ 3, 5 ], [ 3, 7, 8 ], [ 4 .. 7 ], [ 4, 5, 6 ], [ 4, 5, 7 ], [ 4, 6, 7, 9 ], [ 5 .. 9 ] ]) -> Domain([ [ 1 ], [ 2, 3 ], [ 2, 5 ], [ 2, 7 ], [ 2, 9 ], [ 3 .. 5 ], [ 3, 4 ], [ 3, 5, 7 ], [ 3, 5 ], [ 3, 7, 8 ], [ 4 .. 7 ], [ 4, 5, 6 ], [ 4, 5, 7 ], [ 4, 6, 7, 9 ], [ 5 .. 9 ] ]) >
JupyterSplashDot(DotBinaryRelation(br));
Loading...

For any numerical semigroup SS (other than N\mathbb{N}), the set T=S{F(S)}T=S\cup\{\operatorname{F}(S)\} is also a numerical semigroup. The semigroup SS is obtained from TT by removing a minimal generator larger than its Frobenius number.

So if we remove minimal generators larger than the Frobenius number, we still obtain the same numerical semigroups, but the above directed graph becomes a tree.

cc:=Filtered(Cartesian(c,c),p->IsSubset(p[2],p[1]) and Difference(p[2],p[1])=[FrobeniusNumber(p[1])]);;
pairs:=List(cc,p->Tuple([MinimalGenerators(p[1]),MinimalGenerators(p[2])]));;
br:=BinaryRelationByElements(d,pairs);
<general mapping: Domain([ [ 1 ], [ 2, 3 ], [ 2, 5 ], [ 2, 7 ], [ 2, 9 ], [ 3 .. 5 ], [ 3, 4 ], [ 3, 5, 7 ], [ 3, 5 ], [ 3, 7, 8 ], [ 4 .. 7 ], [ 4, 5, 6 ], [ 4, 5, 7 ], [ 4, 6, 7, 9 ], [ 5 .. 9 ] ]) -> Domain([ [ 1 ], [ 2, 3 ], [ 2, 5 ], [ 2, 7 ], [ 2, 9 ], [ 3 .. 5 ], [ 3, 4 ], [ 3, 5, 7 ], [ 3, 5 ], [ 3, 7, 8 ], [ 4 .. 7 ], [ 4, 5, 6 ], [ 4, 5, 7 ], [ 4, 6, 7, 9 ], [ 5 .. 9 ] ]) >
JupyterSplashDot(DotBinaryRelation(br));
Loading...

Now let us think about the dual process: what are the gaps that I may add to a numerical semigroup in order to obtain a nuew numerical semigroup. We already know that we can always add the Frobenius number, but we may have some other options. Let SS be a numerical semigroup and let ff be a gap of SS. As we want S{f}S\cup \{f\} to be a numerical semigroup, f+SS{f}f+S\subseteq S\cup\{f\}, and consequently ff must be in PF(S)\operatorname{PF}(S). But also kfS{f}kf \in S\cup\{f\} for every positive integer kk. This means that 2f,3fS2f, 3f\in S. The set of gaps having these properties are known as special gaps.

SG(S)={gPF(S):2gS,3gS}. \operatorname{SG}(S)=\{ g\in \operatorname{PF}(S) : 2g\in S, 3g\in S\}.
s:=NumericalSemigroup(4,7,9,10);;
SpecialGaps(s);
[ 5, 6 ]

If we keep adding special gaps to our semigroup and the resulting semigroups, we will obtain the set of all oversemigroups of the given numerical semigroup.

s:=NumericalSemigroup(4,5,7);;
JupyterSplashDot(DotOverSemigroups(s));
Loading...

When some bounds are attained

Numerical semigroups with maximal embedding dimension

We have already seen that the embedding dimension of a numerical semigroup is always less than or equal to the multiplicity. We say that a numerical semigroup SS has maximal embedding dimension if m(S)=e(S)\operatorname{m}(S)=\operatorname{e}(S).

s:=NumericalSemigroup(3,5,7);;
IsMED(s);
true

A numerical semigroup SS is of maximal embedding dimension if and only if (S{0})m(S)(S\setminus\{0\})-\operatorname{m}(S) is a numerical semigroup, or equivalently, for any x,ySx,y\in S with xym(S)x\ge y \ge \operatorname{m}(S), we have x+ym(S)Sx+y-\operatorname{m}(S)\in S.

It turns out that the intersecction of two maximal embedding dimension numerical semigroups is again of maximal embedding dimension, and thus we can think about a maximal embedding dimension closure.

s:=NumericalSemigroup(3,5);;
MinimalGenerators(MEDClosure(s));
[ 3, 5, 7 ]

It also makes sense to talk abot the minimal generators as a numerical semigroup with maximal embedding dimension. An element aa in a numerical semigroup SS with maximal embedding dimension, with a>m(S)a>\operatorname{m}(S), will be in that minimal MED generating system if and only if S{a}S\setminus\{a\} is again a numerical semigroup with maximal embedding dimension.

MinimalMEDGeneratingSystemOfMEDNumericalSemigroup(NumericalSemigroup(3,5,7));
[ 3, 5 ]
t:=RemoveMinimalGeneratorFromNumericalSemigroup(5,s);
<Numerical semigroup with 3 generators>
MinimalGenerators(t);
[ 3, 8, 10 ]
IsMED(t);
true

If S=m=n1<n2<<nmS=\langle m=n_1< n_2< \dots < n_m\rangle is a numerical semigroup with maximal embedding dimension, then Ap(S,m)={0,n2,,nm}\operatorname{Ap}(S,m)=\{0, n_2, \dots, n_m\}, and thus t(S)=m1\operatorname{t}(S)=m-1. It is not hard to prove that SS has maximal embedding dimension if and only if it has maximal type.

Type(NumericalSemigroup(3,5,7));
2

A particular class of numerical semigroups with maximal embedding dimension is that of Arf numerical semigroups. A numerical semigroup SS if Arf if for any x,y,zSx,y,z\in S, with xyzx\ge y\ge z, one gets x+yzSx+y-z\in S. Clearly, the intersection of two Arf numerical semigroups is again an Arf numerical semigroup.

MinimalGenerators(ArfNumericalSemigroupClosure(NumericalSemigroup(3,5)));
[ 3, 5, 7 ]

Irreducible numerical semigroups

We say that a numerical semigroup SS is irreducible if it cannot be expressed as the intersection of two numerical semigroups properly containing it.

It can be (easily) shown that if we fix a positive integer ff, then SS is irreducible if and only if it is maximal (with respect to inclusion) in the set of all numerical semigroups with Frobenius number ff (or equivalently, in the set of all numerical semigroups not containing ff).

Recall that g(S)(F(S)+1)/2\operatorname{g}(S)\ge (\operatorname{F}(S)+1)/2. Having less genus means being “bigger”, and so if F(S)\operatorname{F}(S) is odd, then SS is irreducible if and only if g(S)=(F(S)+1)/2\operatorname{g}(S)= (\operatorname{F}(S)+1)/2.

For F(S)\operatorname{F}(S) even, we obtain that SS is irreducible if and only if g(S)=(F(S)+2)/2\operatorname{g}(S)=(\operatorname{F}(S)+2)/2.

Every numerical semigroup can be expressed as a finite intersection of irreducible numerical semigroups. Two minimal (non-redundant) expressions of the semigroup as intersection of irreducible numerical semigroup may have different factors.

s:=NumericalSemigroup(3,7,8);
<Numerical semigroup with 3 generators>
SmallElements(s);
[ 0, 3, 6 ]
IsIrreducible(s);
false
l:=DecomposeIntoIrreducibles(s);
[ <Numerical semigroup with 2 generators>, <Numerical semigroup with 3 generators> ]
List(l,SmallElements);
[ [ 0, 3, 4, 6 ], [ 0, 3, 5 ] ]

Notice also that for every integer xx, both xx and F(S)x\operatorname{F}(S)-x cannot be in SS (since otherwise their sum, which is F(S)\operatorname{F}(S), would be in SS). If we want SS to have the least possible number of gaps once the Frobenius number is fixed, then we do not want xx and F(S)x\operatorname{F}(S)-x to be gaps at the same time (unless they are the same and then x=F(S)/2x=\operatorname{F}(S)/2).

Assume that F(S)\operatorname{F}(S) is odd. Then we say that SS is symmetric if for any integer x∉Sx\not\in S, we have that F(S)xS\operatorname{F}(S)-x\in S. A numerical semigroup with odd Frobenius number is irreducible if and only if it is symmetric.

For the case F(S)\operatorname{F}(S) even, we have to take into account F(S)/2\operatorname{F}(S)/2. A numerical semigroup SS is pseudo-symmetric if F(S)\operatorname{F}(S) is even and for any integer xx not in SS and different from F(S)/2\operatorname{F}(S)/2, we have that F(S)xS\operatorname{F}(S)-x\in S. A numerical semigroup with even Frobenius number is irreducible if and only if it is pseudo-symmetric.

PseudoFrobenius(s);
[ 4, 5 ]
li:=IrreducibleNumericalSemigroupsWithFrobeniusNumber(13);
[ <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup> ]
List(li,PseudoFrobenius);
[ [ 13 ], [ 13 ], [ 13 ], [ 13 ], [ 13 ], [ 13 ], [ 13 ], [ 13 ] ]
li:=IrreducibleNumericalSemigroupsWithFrobeniusNumber(14);
[ <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup> ]
List(li,PseudoFrobenius);
[ [ 7, 14 ], [ 7, 14 ], [ 7, 14 ], [ 7, 14 ], [ 7, 14 ], [ 7, 14 ] ]

Symmetric numerical semigroups correspond with those numerical semigroups of type one, while SS is pseudo-symmetric if and only if PF(S)={F(S)/2,F(S)}\operatorname{PF}(S)=\{\operatorname{F}(S)/2, \operatorname{F}(S)\}. As we have seen above, there are numerical semigroups with type two that are not pseudo-symmetric.

LoadPackage("jupyterviz");
true
li:=List([1..25], i->[i,Length(IrreducibleNumericalSemigroupsWithFrobeniusNumber(i))]);
[ [ 1, 1 ], [ 2, 1 ], [ 3, 1 ], [ 4, 1 ], [ 5, 2 ], [ 6, 1 ], [ 7, 3 ], [ 8, 2 ], [ 9, 3 ], [ 10, 3 ], [ 11, 6 ], [ 12, 2 ], [ 13, 8 ], [ 14, 6 ], [ 15, 7 ], [ 16, 7 ], [ 17, 15 ], [ 18, 7 ], [ 19, 20 ], [ 20, 11 ], [ 21, 18 ], [ 22, 20 ], [ 23, 36 ], [ 24, 14 ], [ 25, 44 ] ]
Display(li);
[ [   1,   1 ],
  [   2,   1 ],
  [   3,   1 ],
  [   4,   1 ],
  [   5,   2 ],
  [   6,   1 ],
  [   7,   3 ],
  [   8,   2 ],
  [   9,   3 ],
  [  10,   3 ],
  [  11,   6 ],
  [  12,   2 ],
  [  13,   8 ],
  [  14,   6 ],
  [  15,   7 ],
  [  16,   7 ],
  [  17,  15 ],
  [  18,   7 ],
  [  19,  20 ],
  [  20,  11 ],
  [  21,  18 ],
  [  22,  20 ],
  [  23,  36 ],
  [  24,  14 ],
  [  25,  44 ] ]

Almost symmetric numerical semigroups

Recall that for a numerical semigroup SS, g(S)(F(S)+t(S))/2\operatorname{g}(S)\ge (\operatorname{F}(S)+\operatorname{t}(S))/2. We say that SS is almost symmetric if g(S)=(F(S)+t(S))/2\operatorname{g}(S)= (\operatorname{F}(S)+\operatorname{t}(S))/2. Consequently, these are numerical semigroups maximal with respect to inclusion once the type and the Frobenius number are fixed.

Clearly, every irreducible numerical semigroup is almost symmetric.

s:=NumericalSemigroup(3,7,8);;
IsAlmostSymmetric(s);
false
FrobeniusNumber(s);
5
la:=AlmostSymmetricNumericalSemigroupsWithFrobeniusNumber(5);
[ <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup> ]
List(la,SmallElements);
[ [ 0, 6 ], [ 0, 4, 6 ], [ 0, 2, 4, 6 ], [ 0, 3, 4, 6 ] ]
SmallElements(s);
[ 0, 3, 6 ]
li:=List([1..25], i->[i,Length(AlmostSymmetricNumericalSemigroupsWithFrobeniusNumber(i))]);
[ [ 1, 1 ], [ 2, 1 ], [ 3, 2 ], [ 4, 2 ], [ 5, 4 ], [ 6, 3 ], [ 7, 7 ], [ 8, 6 ], [ 9, 11 ], [ 10, 9 ], [ 11, 20 ], [ 12, 15 ], [ 13, 32 ], [ 14, 24 ], [ 15, 47 ], [ 16, 42 ], [ 17, 83 ], [ 18, 58 ], [ 19, 131 ], [ 20, 103 ], [ 21, 188 ], [ 22, 151 ], [ 23, 323 ], [ 24, 241 ], [ 25, 494 ] ]
Display(li);
[ [    1,    1 ],
  [    2,    1 ],
  [    3,    2 ],
  [    4,    2 ],
  [    5,    4 ],
  [    6,    3 ],
  [    7,    7 ],
  [    8,    6 ],
  [    9,   11 ],
  [   10,    9 ],
  [   11,   20 ],
  [   12,   15 ],
  [   13,   32 ],
  [   14,   24 ],
  [   15,   47 ],
  [   16,   42 ],
  [   17,   83 ],
  [   18,   58 ],
  [   19,  131 ],
  [   20,  103 ],
  [   21,  188 ],
  [   22,  151 ],
  [   23,  323 ],
  [   24,  241 ],
  [   25,  494 ] ]

There are many other generalizations of symmetry.

Minimal presentations

In mathematics many algebraic objects are given by means of (free) generators and some relations among them. For numerical semigroups it is sometimes useful to have representation of this form.

Let SS be a numerical semigroup minimally generated by {n1,,ne}\{n_1,\dots,n_e\}. Every element sSs\in S admits an expression of the form s=a1n1++aenes=a_1n_1+\dots+ a_e n_e, and for every (a1,,ae)Ne(a_1,\dots,a_e)\in \mathbb{N}^e, the integer a1n1++aeneSa_1n_1+\dots+a_en_e\in S. Thus, the following (monoid) morphism

φS:NeS, φS(a1,,ae)=a1n1++aene \varphi_S: \mathbb{N}^e \to S,\ \varphi_S(a_1,\dots,a_e)=a_1n_1+\dots+a_en_e

is surjective. There is an isomorphism theorem for monoids, and consequently we have that Ne/kerφS\mathbb{N}^e/\ker \varphi_S is isomorphic to SS as a monoid, where kerϕS={(a,b)Ne:φS(a)=φS(b)}\ker \phi_S=\{ (a,b)\in \mathbb{N}^e : \varphi_S(a)=\varphi_S(b)\}. As a congruence, kerφS\ker \varphi_S admints a system of generators, which is known as a presentation for SS.

A minimal presentation for SS is just a minimal generating system of kerφS\ker \varphi_S.

s:=NumericalSemigroup(2,3);
<Numerical semigroup with 2 generators>
MinimalPresentation(s);
[ [ [ 0, 2 ], [ 3, 0 ] ] ]

Thus 2,3\langle 2,3\rangle can be viewed as the monoid generated by aa and bb, which fulfil the relation 3a=2b3a=2b.

Given sSs\in S, the set φS1(s)\varphi_S^{-1}(s) corresponds to all the expressions that ss migh have in terms of the minimal generators of SS. We will call this set, the set of factorizations of ss, and we will denote it by Z(s)\mathsf{Z}(s).

Factorizations(6,s);
[ [ 3, 0 ], [ 0, 2 ] ]
Factorizations(20,s);
[ [ 10, 0 ], [ 7, 2 ], [ 4, 4 ], [ 1, 6 ] ]

A set ρ generates a congruence σ on Ne\mathbb{N}^e if for any pair (a,b)σ(a,b)\in \sigma there exists a chain a1,,ana_1,\dots,a_n such that

  • a1=aa_1=a, an=ba_n=b,
  • for all ii, there exists ciNec_i\in \mathbb{N}^e and (αi,βi)(\alpha_i,\beta_i) such that (ai,ai+1)=(αi+ci,βi+ci)(a_i,a_{i+1})=(\alpha_i+c_i,\beta_i+c_i) and either (αi,βi)ρ(\alpha_i,\beta_i)\in \rho or (βi,αi)ρ(\beta_i,\alpha_i)\in \rho.

You can see the sequence a1,,ana_1,\dots,a_n as a chain of transformations from aa to bb, and at each step we are applying a relation (or trade) chanbe αi\alpha_i by βi\beta_i (or viceversa).

For instance, in the above example ((10,0),(1,6))kerφS((10,0),(1,6))\in \ker\varphi_S. We start with (10,0)(10,0) and apply the only minimal relation we have on our numerical semigroup: ((10,0),(103,2))σ((10,0),(10-3,2))\in \sigma. If we do this a couple of times more, we obtain the chaing (10,0)(10,0), (7,2)(7,2), (4,4)(4,4), and (1,6)(1,6).

s:=NumericalSemigroup(3,5,7);;
MinimalPresentation(s);
[ [ [ 0, 0, 2 ], [ 3, 1, 0 ] ], [ [ 0, 1, 1 ], [ 4, 0, 0 ] ], [ [ 0, 2, 0 ], [ 1, 0, 1 ] ] ]
Factorizations(20,s);
[ [ 5, 1, 0 ], [ 0, 4, 0 ], [ 1, 2, 1 ], [ 2, 0, 2 ] ]

Assume that we want to check that ((5,1,0),(2,0,2))((5,1,0),(2,0,2)) can be obtained from the minimal relations of SS. Notice that these two factorizations have some common support, in fact (5,1,0)=(3,1,0)+(2,0,0)(5,1,0)=(3,1,0)+(2,0,0) and (2,0,2)=(0,0,2)+(2,0,0)(2,0,2)=(0,0,2)+(2,0,0). Thus, if we find a chain going from (3,1,0)(3,1,0) to (0,0,2)(0,0,2), then by adding (2,0,0)(2,0,0) to all the steps, we obtain a chain connecting our original factorizations. But we already have this chain, since ((0,0,2),(3,1,0))((0,0,2),(3,1,0)) is already in our minimal presentation.

The idea can be extended to factorizations of larger elements in SS. Whenever they have a common “factor”, remove it, and try to connect the new factorizations. This motivates the definition of R\mathcal{R}-classes.

Let XX be a subset of Ne\mathbb{N}^e. We say that x,yXx,y\in X are connected if there exists a sequence x1,,xnXx_1,\dots,x_n\in X (for some nNn\in\mathbb{N}) such that

  • x1=xx_1=x, xn=yx_n=y,
  • for every ii, xix_i and xi+1x_{i+1} have common support.

The connected components of XX under this relation are called RR-classes of XX.

Length(RClassesOfSetOfFactorizations(Factorizations(20,s)));
1

The idea is that whenever we are in the same RR-class, we can connect any two factorizations with a chain where two consequtive elements have common support. For these two elements, we remove the common part, moving now to the factorizations of an element smaller than the original one. If these two new factorizations are in the same RR-class, we repeat the process. This will end when we arrive at factorizations in different RR-classes, and then we only have to connect all the chains that we found translated accordingly.

Let us illustrate this with an example.

Factorizations(21,s);
[ [ 7, 0, 0 ], [ 2, 3, 0 ], [ 3, 1, 1 ], [ 0, 0, 3 ] ]
RClassesOfSetOfFactorizations(Factorizations(21,s));
[ [ [ 0, 0, 3 ], [ 2, 3, 0 ], [ 3, 1, 1 ], [ 7, 0, 0 ] ] ]
JupyterSplashDot(DotEliahouGraph(Factorizations(21,s)));
Loading...

We know that ((7,0,0),(0,0,3))kerφS((7,0,0),(0,0,3))\in \ker\varphi_S, and we want to see how can we obtain this pair from the minimal relations of SS. Both (7,0,0)(7,0,0) and (0,0,3)(0,0,3) are in the same RR-class. We can, instance, connect them with the sequence (7,0,0)(7,0,0), (3,1,1)(3,1,1), (0,0,3)(0,0,3). By transitivity, if we find a chain of trades going from (7,0,0)(7,0,0) to (3,1,1))(3,1,1)) and another from (3,1,1)(3,1,1) to (0,0,3)(0,0,3), by joining them we will find a chain from (7,0,0)(7,0,0) to (0,0,3)(0,0,3).

By removing the common part of (7,0,0)(7,0,0) and (3,1,1)(3,1,1), we obtain (4,0,0)(4,0,0) and (0,1,1)(0,1,1), and the pair ((4,0,0),(0,1,1))((4,0,0),(0,1,1)) is in our minimal presentation. We do the same with (3,1,1)(3,1,1) and (0,0,3)(0,0,3), obtaining (3,1,0)(3,1,0) and (0,0,2)(0,0,2), and ((0,0,2),(3,1,0))((0,0,2),(3,1,0)) is in our minimal presentation. Let σ=kerφS\sigma=\ker\varphi_S. Then (7,0,0)=((4,0,0)+(3,0,0))σ((0,1,1)+(3,0,0))=(3,1,1)σ((3,1,0)+(0,0,1))σ((0,0,2)+(0,0,1))=(0,0,3)(7,0,0)=((4,0,0)+(3,0,0))\sigma ((0,1,1)+(3,0,0))=(3,1,1)\sigma ((3,1,0)+(0,0,1))\sigma ((0,0,2)+(0,0,1))=(0,0,3).

In this construction, elements with more than one RR-class are crucial. These elements are called Betti elements (or degrees) of SS.

bs:=BettiElements(s);
[ 10, 12, 14 ]
List(bs,b-> RClassesOfSetOfFactorizations(Factorizations(b,s)));
[ [ [ [ 0, 2, 0 ] ], [ [ 1, 0, 1 ] ] ], [ [ [ 4, 0, 0 ] ], [ [ 0, 1, 1 ] ] ], [ [ [ 3, 1, 0 ] ], [ [ 0, 0, 2 ] ] ] ]

It is not hard to prove that if sSs\in S is a Betti element, then s=ni+ws=n_i+w with i>2i>2 and wAp(S,n1)w\in \operatorname{Ap}(S,n_1). Thus the number of Betti elements is finite. As a consequence of this, all minimal presentations have the same cardinality, since we only need relations “connecting” different RR-classes of the factorizations of the Betti elements of ss. This also provides a way do determine all minimal relations of a numerical semigroup (up to symmetry).

AllMinimalRelationsOfNumericalSemigroup(s);
[ [ [ 1, 0, 1 ], [ 0, 2, 0 ] ], [ [ 3, 1, 0 ], [ 0, 0, 2 ] ], [ [ 4, 0, 0 ], [ 0, 1, 1 ] ] ]

Minimal presentations of numerical semigroups with embedding dimension two have cardinality one. Thos for embedding dimension three have cardinality two or three. There are numerical semigroups with embedding dimension four with arbitrarily large minimal presentations.

Minimal presentations and binomial ideals

Let SS be a numerical semigroup minimally generated by {n1,,ne}\{n_1,\dots,n_e\}. Let KK be a field and K[x1,,xe]K[x_1,\dots,x_e] be the polynomial ring on the variables x1,,xex_1,\dots, x_e with coefficients in KK.

Let tt be another unknown. We can define the subring K[S]=K[ts:sS]=K[tn1,dots,tne]K[t]K[S]=K[t^s :s \in S]=K[t^{n_1},dots,t^{n_e}]\subseteq K[t], which is known as the semigroup ring of SS. Let ψS:K[x1,,xe]K[t]\psi_S:K[x_1,\dots,x_e]\to K[t] be the unique ring homomorphism determined by ψS(xi)=tni\psi_S(x_i)=t^{n_i}.

For a=(a1,,ae)Nea=(a_1,\dots,a_e)\in \mathbb{N}^e, write xa=x1a1xeaex^a=x_1^{a_1}\cdots x_e^{a_e}. Clearly, ψS(xa)=tϕS(a)\psi_S(x^a)=t^{\phi_S(a)}, and consequently whenever (a,b)kerψS(a,b)\in \ker \psi_S, we have that xaxbkerψSx^a-x^b\in \ker \psi_S. It is not hard to prove that

kerψS=Xaxb:(a,b)kerϕS \ker \psi_S = \langle X^a - x^b : (a,b)\in \ker \phi_S\rangle

and that a set ρ generates kerϕS\ker \phi_S as a congruence if and only if {xaxb:(a,b)ρ}\{ x^a-x^b : (a,b)\in \rho\} generates kerψS\ker\psi_S as an ideal.

s:=NumericalSemigroup(3,5,7);;

In order to compute kerψS\ker \psi_S we can use elimination in the following way.

x:=Indeterminate(Rationals,"x");;
y:=Indeterminate(Rationals,"y");;
z:=Indeterminate(Rationals,"z");;
t:=Indeterminate(Rationals,"t");;

We identify each variable to tt to the power of the corresponding minimal generator.

gens:=[x-t^3,y-t^5,z-t^7];;

Now, we eliminate the variable tt.

gr:=GroebnerBasis(gens,EliminationOrdering([t]));
[ -t^3+x, -t^5+y, -t^7+z, x*t^2-y, x^2*t-z, -x^2+y*t, -x^3+z*t^2, x*y-z*t, -x*z+y^2, -x^4+y*z, -x^3*y+z^2, x^2*y^3-z^3, -x*y^5+z^4, y^7-z^5 ]
gensi:=Filtered(gr, g->DegreeIndeterminate(g,t)=0);
[ -x*z+y^2, -x^4+y*z, -x^3*y+z^2, x^2*y^3-z^3, -x*y^5+z^4, y^7-z^5 ]

Next, we extract the exponents of the binomials obtained.

ed:=3;;
bintopair:=function(pp)
    local m1,m2, d1, d2, p;
    p:=pp/LeadingCoefficientOfPolynomial(pp,MonomialLexOrdering());
    m1:=LeadingMonomialOfPolynomial(p, MonomialLexOrdering());
    m2:=m1-p;
    d1:=List([1..ed], i->DegreeIndeterminate(m1,i));;
    d2:=List([1..ed], i->DegreeIndeterminate(m2,i));;
    return Set([d1,d2]);
end;
function( pp ) ... end
rho:=List(gensi,bintopair);
[ [ [ 0, 2, 0 ], [ 1, 0, 1 ] ], [ [ 0, 1, 1 ], [ 4, 0, 0 ] ], [ [ 0, 0, 2 ], [ 3, 1, 0 ] ], [ [ 0, 0, 3 ], [ 2, 3, 0 ] ], [ [ 0, 0, 4 ], [ 1, 5, 0 ] ], [ [ 0, 0, 5 ], [ 0, 7, 0 ] ] ]

The resulting set does not have to be minimal in general. We can detect those factorizations that correspond to Betti elements.

betticand:=Set(rho, p->p[1]*MinimalGenerators(s));
[ 10, 12, 14, 21, 28, 35 ]
betti:=Filtered(betticand, b->Length(RClassesOfSetOfFactorizations(Factorizations(b,s)))>1);
[ 10, 12, 14 ]
List(betti, b->RClassesOfSetOfFactorizations(Factorizations(b,s)));
[ [ [ [ 0, 2, 0 ] ], [ [ 1, 0, 1 ] ] ], [ [ [ 4, 0, 0 ] ], [ [ 0, 1, 1 ] ] ], [ [ [ 3, 1, 0 ] ], [ [ 0, 0, 2 ] ] ] ]

Length based factorization invariants

Let SS be minimally generated by {n1,,ne}\{n_1,\dots,n_e\}. Recall that the set of factorizations of an element sSs\in S is Z(s)=φS1(s)\mathsf{Z}(s)=\varphi_S^{-1}(s), that is,

Z(s)={(a1,,ae)Ne:a1n1++aene=s}. \mathsf{Z}(s)=\{ (a_1,\dots,a_e)\in \mathbb{N}^e : a_1n_1+\dots+a_en_e =s\}.

Sets of lengths of factorizations

The length of a factorization z=(z1,,ze)z=(z_1,\dots,z_e) is the number of minimal generators involved in it, that is, z=z1++ze|z|=z_1+\dots+z_e. We define the set of lenghts of the factorizations of ss as

L(s)={z:zZ(s)}. \mathsf{L}(s)= \{ |z| : z\in \mathsf{Z}(s)\}.
s:=NumericalSemigroup(3,5,7);;
LengthsOfFactorizationsElementWRTNumericalSemigroup(200,s);
[ 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66 ]

Delta sets

One can arrange the lengths of the factorizations of an element ss in the following way L(s)={l1<<lt}\mathsf{L}(s)=\{l_1<\dots<l_t\}. The Delta set of ss is then defined as Δ(s)={l2l1,l3l2,,ltlt1}\Delta(s)=\{l_2-l_1,l_3-l_2,\dots, l_t-l_{t-1}\}.

DeltaSet(200,s);
[ 2 ]

The Delta set of SS is the union of all the delta sets of its elements.

DeltaSet(s);
[ 2 ]

Recall that a minimal presentation of ss was

rho:=MinimalPresentation(s);
[ [ [ 0, 0, 2 ], [ 3, 1, 0 ] ], [ [ 0, 1, 1 ], [ 4, 0, 0 ] ], [ [ 0, 2, 0 ], [ 1, 0, 1 ] ] ]

And that one can “walk” from a factorization to any other factorization of the same element by using this minimal relations.

Set(rho, p->AbsInt(Sum(p[1]-p[2])));
[ 0, 2 ]

So it comes as no surprise that Δ(S)={2}\Delta(S)=\{2\}. In fact, it is not difficult to prove min(Δ(S))=gcd{ab:(a,b)σ}\min(\Delta(S))=\gcd\{ |a-b| : (a,b)\in \sigma\}, with σ any minimal presentation of SS, and that max(Δ(S))=max{Δ(b):bBetti(S)}\max(\Delta(S))=\max\{\Delta(b) : b\in \operatorname{Betti}(S)\}.

The idea behing the minimum is that any possible “jump” will be a linear combination of the “jumps” in the minimal relations. As for the maximum, “jumps” are preserved under translations, and thus the largest “jump” will be achieved between two factorizations with no commom support and in a Betti element.

The structure of Δ(S)\Delta(S) is very well known when SS has embedding dimension two or three, and even when it is generated by an arithmetice sequence.

The elasticity

The elasticity of the factorizations of an element ss in a numerical semigroup SS is ratio between the largest length and smallest lenght of its factorizations, that is,

ρ(s)=max(L(s))min(L(s)). \rho(s)=\frac{\max(\mathsf{L}(s))}{\min(\mathsf{L}(s))}.

The elasticity of the semigroup SS is defined as

ρ(S)=sup{ρ(s):sS}. \rho(S)=\sup\{ \rho(s) : s\in S\}.

For numerical semigroups, this supremum becomes a maximum, and the elasticity is attained at the element n1nen_1 n_e (the product of the smallest generator times the largest generator).

Elasticity(100,s);
2
Elasticity(s);
7/3
Elasticity(3*7,s);
7/3

Distance based factorization invariants

Given x=(x1,,xe)x=(x_1,\dots,x_e) and y=(y1,,ye)y=(y_1,\dots,y_e) in Ne\mathbb{N}^e, their “common part” is

xy=(min{x1,y1},,min{xe,ye}), x\wedge y = (\min\{x_1,y_1\},\dots,\min\{x_e,y_e\}),

and the distance between xx and yy as

d(x,y)=max{x(xy),y(xy)}. \operatorname{d}(x,y)=\max\{|x-(x\wedge y)|, |y-(x\wedge y)|\}.
s:=NumericalSemigroup(10,13,19,21);;

We have already used DotEliahouGraph, the labels of the edges are the distances between de factorizations they connect.

JupyterSplashDot(DotEliahouGraph(Factorizations(100,s)));
Loading...

The catenary degree

In addition, DotFactorizationGraph draws a minimum spanning tree.

JupyterSplashDot(DotFactorizationGraph(Factorizations(100,s)));
Loading...

In particular, this means that we can go from any factorization of 100 in SS to any other factorization of the same element by using a path such that two consecutive nodes are at a distance of at most four. This is precisely the idea behind the concept of catenary degree.

Let zz and zz' be two factorizations of ss. An NN-chain joining zz and zz' is a sequence z1,,ztz_1,\dots,z_t of factorizations of ss such that d(zi,zi+1)N\operatorname{d}(z_i,z_{i+1})\le N. The catenary degree of ss, denoted c(s)\operatorname{c}(s), in the minimum NN such that for any two factorizations of ss there exists an NN-chain connecting them.

The catenary degree of SS is

c(S)=sup{c(s):sS}. \operatorname{c}(S)=\sup\{ \operatorname{c}(s) : s\in S\}.

This supremum is a maximum.

CatenaryDegree(100,s);
4
CatenaryDegree(s);
4

Recall that by using the minimal relations of SS we can find a path joining any two different factorizations of an element. Thus, it is not hard to prove that the maximum of the catenary degree of SS is attained at one of its Betti elements.

Set(BettiElements(s), b->CatenaryDegree(b,s));
[ 3, 4 ]

The tame degree

The catenary degree measures the minimum distance needed to find paths connecting any two factorizations of an element in the semigroup in such a way that every step in the path is withing that minimum distance.

The tame degree intends to measure a radius rr in which for any factorization zz of sSs\in S, with sniSs-n_i\in S, you will find another factorization zz' such that d(z,z)r\operatorname{d}(z,z')\le r and zi0z_i'\neq 0.

Let sSs\in S such that sniSs-n_i\in S for some i{1,,e}i\in\{1,\dots,e\}. Define Zi(s)={z:zZ(s),zi0}\mathsf{Z}_i(s)=\{z : z\in \mathsf{Z}(s), z_i\neq 0\}, which is nonempty as sniSs-n_i\in S. Set

ti(s)=sup{d(z,Zi(s)):zZ(n)}, \operatorname{t}_i(s)=\sup\{\operatorname{d}(z,\mathsf{Z}_i(s)) : z \in \mathsf{Z}(n)\},

and

t(s)=max{ti(s):sniS,i{1,,e}}. \operatorname{t}(s)=\max\{\operatorname{t}_i(s) : s-n_i\in S, i\in\{1,\dots,e\}\}.

The tame degree of SS is defined as

t(S)=sup{t(s):sS}. \operatorname{t}(S)=\sup\{ \operatorname{t}(s) : s\in S\}.
s:=NumericalSemigroup( 24, 59, 114);
<Numerical semigroup with 3 generators>
TameDegree(s);
29

Usually the tame degre is not attained at the Betti elements.

Set(BettiElements(s),b->TameDegree(b,s));
[ 11, 19 ]

It can be shown that the tame degree of SS is attained at an element sSs\in S such that ss has a factorization in Minimals(Z(ni+S))\operatorname{Minimals}_\le (\mathsf{Z}(n_i+S)) for some i{1,,e}i\in\{1,\dots,e\}. Elements having this property are of the form ni+wn_i+w with wAp(S,nj)w\in \operatorname{Ap}(S,n_j), more specifically, there exists i,j{1,,e}i,j\in \{1,\dots,e\} such that sni,snjSs-n_i,s-n_j\in S and s(ni+nj)∉Ss-(n_i+n_j)\not\in S.

For sSs\in S, the Rosales graph GsG_s is defined as follows. The vertices of GsG_s are the minimal generators nin_i such that sniSs-n_i\in S, and ninjn_in_j is an edge whenever s(ni+nj)Ss-(n_i+n_j)\in S.

JupyterSplashDot(DotRosalesGraph(400,s));
Loading...
BettiElements(s);
[ 354, 456 ]
JupyterSplashDot(DotRosalesGraph(456,s));
Loading...
JupyterSplashDot(DotRosalesGraph(354,s));
Loading...

The number of connected components of GsG_s coincides with the set of RR-classes of the set of factorizations of ss. Thus the catenary degree is attained in an ss with GsG_s not connected, and the tame degree in an ss with GsG_s not complete.

Primality

Recall that SS induces an order over the integers aSba\le_S b if baSb-a\in S. If aa and bb are in SS, then we say that aa divides bb if baSb-a\in S. In this way, minimal generators (irreducibles, atoms, primitive elements) are those not having proper divisors. A natural question arises: are there “prime” elements in a numerical semigroup. The ones to be candidates to be prime are the minimal generators of the semigroup.

Let SS be minimally generated by {n1,,ne}\{n_1,\dots,n_e\}. Consider the set Minimals(Z(ni+S))\operatorname{Minimals}_\le (\mathsf{Z}(n_i+S)). Notice that S(ni+S)=Ap(S,ni)S\setminus(n_i+S)=\operatorname{Ap}(S,n_i), and so the set Z(ni+S)=NeZ(Ap(S,ni))\mathsf{Z}(n_i+S)=\mathbb{N^e}\setminus \mathsf{Z}(\operatorname{Ap}(S,n_i)). Let zMinimals(Z(ni+S))z \in \operatorname{Minimals}_\le (\mathsf{Z}(n_i+S)), zeiz\neq e_i. Then nin_i divides φS(z)\varphi_S(z) and cannot divide any of its “factors”. Hence, nin_i cannot be prime.

Let sSs\in S. The ω-primality of SS, ω(S,s)\omega(S,s), is defined as the least integer NN such that whenever ss divides a1++ana_1+\dots+a_n for some a1,,anSa_1,\dots,a_n\in S, then ss divides ai1++aiNa_{i_1}+\dots+a_{i_N} for some {i1,,iN}{1,,n}\{i_1,\dots,i_N\}\subseteq \{1,\dots,n\}. By an argument similar to the one given above,

ω(S,s)=max{z:zMinimals(Z(s+S))}. \omega(S,s)= \max \{ |z| : z\in \operatorname{Minimals}_\le (\mathsf{Z}(s+S))\}.
s:=NumericalSemigroup(3,5,7);
<Numerical semigroup with 3 generators>
OmegaPrimality(10,s);
5

Observe that if zMinimals(Z(s+S))z\in \operatorname{Minimals}_\le(\mathsf{Z}(s+S)), then φ(z)=s+t\varphi(z)=s+t for some tSt\in S. Let ii be such zi0z_i\neq 0. Then zzi∉Z(s+S)z-z_i\not\in \mathsf{Z}(s+S), and thus s+tni∉s+Ss+t-n_i\not\in s+S, which means that tAp(S,ni)t\in \operatorname{Ap}(S,n_i). This bounds the search for cmputing Minimals(Z(s+S))\operatorname{Minimals}_\le(\mathsf{Z}(s+S)).

There is an alternative way to compute the set Minimals(Z(s+S))\operatorname{Minimals}_\le(\mathsf{Z}(s+S)). Observe that xZ(s+S)x\in \mathsf{Z}(s+S) if an only if n1x1++xene=s+n1t1++neten_1x_1+\dots+x_en_e=s+n_1t_1+\dots+n_et_e for some t1,,teNt_1,\dots,t_e\in \mathbb{N}. So we can solve the problem by looking at the nonnegative integer solutions (in N2e\mathbb{N}^{2e} to the equation

n1x1++xenen1t1nete=sn_1x_1+\dots+x_en_e-n_1t_1-\dots-n_et_e=s

and then project onto the first ee coordinates.

The omega primality of SS is defined as the maximum of the omega primalities of its minimal generators.

OmegaPrimality(s);
4

It can be shown that

2+max(δ(S))c(S)ω(S)t(S). 2+\max(\delta(S))\le \operatorname{c}(S)\le \omega(S)\le \operatorname{t}(S).

Divisors

Let ss be an element in a numerical semigroup SS. The set of divisors of ss is

D(s)={nS:snS}. \operatorname{D}(s)=\{ n\in S : s-n\in S\}.

The Feng-Rao distance of ss is defined as

δFR(s)=min{#D(s):ss,sS}. \delta_{FR}(s)=\min\{ \# \operatorname{D}(s') : s\le s', s'\in S\}.

Let cc be the conductor of SS and let gg be its genus. It can be shown that for s2c1s\ge 2c-1,

δFR(s)=s+12g. \delta_{FR}(s)=s+1-2g.
ndiv:={x,s}->Length(DivisorsOfElementInNumericalSemigroup(x,s));;
s:=NumericalSemigroup(3,5,7);;
List(s{[1..20]}, x->ndiv(x,s));
[ 1, 2, 2, 3, 2, 4, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 ]
FengRaoDistance(s,1,10);
5

The generalized Feng-Rao distance is defined as

δFRr=min{#D(s1,,sr):ss1sr,s1,,srS}, \delta_{FR}^r=\min\{\#\operatorname{D}(s_1,\dots,s_r) : s\le s_1\le \dots \le s_r, s_1,\dots,s_r\in S\},

where D(s1,,sr)=i=1rD(si)\operatorname{D}(s_1,\dots,s_r)=\bigcup_{i=1}^r \operatorname{D}(s_i). It can be shown that for s2c1s\ge 2c-1,

δFRr=s+12g+E(S,r). \delta_{FR}^r= s+1 -2g + E(S,r).

The constant E(S,r)E(S,r) is known as the rrth Feng-Rao number. For r=2r=2,

E(S,2)=min{#Ap(S,n):r{1,,m(S)}}. E(S,2)=\min\{\#\operatorname{Ap}(S,n) : r\in \{1,\dots,\operatorname{m}(S)\}\}.

The definition of the Apéry set for elements not in SS is the same as the one given above.

Complete intersections

Let SS be a numerical semigroup minimally generated by {n1,,ne}\{n_1,\dots, n_e\} with m=m(S)m=\operatorname{m}(S). The cardinality of a (any) minimal presentation is lowed bounded by e1e-1 and upper bounded by m(m1)/2m(m-1)/2.

Numerical semigroups attaining the upper bound are precisely those of maximal embedding dimension.

A numerical semigroup is a complete intersection if its number of minimal relations is e1e-1.

s:=NumericalSemigroup(4,6,9);;
MinimalPresentation(s);
[ [ [ 0, 0, 2 ], [ 0, 3, 0 ] ], [ [ 0, 2, 0 ], [ 3, 0, 0 ] ] ]
IsCompleteIntersection(s);
true

Let S1S_1 and S2S_2 be numerical semigroups, and let a1S2a_1\in S_2 and a2S1a_2\in S_1 (none of them a minimal generator). Then S=a1S1+a2S2S=a_1 S_1+a_2 S_2 is again a numerical semigroup, and if A1A_1 and A2A_2 are the minimal generating systems of S1S_1 and S2S_2, respectively, a1A1a2A2a_1A_1\cup a_2A_2 is a minimal generating system of SS.

In this case, we say that SS is a gluing of S1S_1 and S2S_2.

AsGluingOfNumericalSemigroups(s);
[ [ [ 4 ], [ 6, 9 ] ], [ [ 4, 6 ], [ 9 ] ] ]
JupyterSplashDot(DotTreeOfGluingsOfNumericalSemigroup(s));
Loading...

It can be shown taht SS is a complete intersection if it is either N\mathbb{N} or is a gluing of two complete intersection numerical semigroups.

A numerical semigroup SS is a gluing S=a1S1+a2S2S=a_1S_1+a_2S_2 if and only if it admits a minimal presentation of the form σ=σ1σ2{(a,b)}\sigma=\sigma_1\cup \sigma_2\cup \{(a,b)\}, where

  • σ1\sigma_1 only “moves” generators in a1A1a_1A_1 (it is a presentation of S1S_1),
  • σ2\sigma_2 only “moves” generators in a2A2a_2A_2 (it is a presentation of S2S_2),
  • aa is a factorization with support in a1A1a_1A_1, and bb is a factorization with support in a2A2a_2A_2.
Betti(S)=a1Betti(S1)a2Betti(S2){a1a2}.\operatorname{Betti}(S)=a_1\operatorname{Betti}(S_1)\cup a_2\operatorname{Betti}(S_2) \cup \{a_1a_2\}.

Free numerical semigroups

A numerical semigroup SS minimally generated by {n1,,ne}\{n_1,\dots,n_e\} is free for this arrangment of its minimal generators if either N\mathbb{N} or S=dn1/d,,ne1/d+neNS=d\langle n_1/d,\dots,n_{e-1}/d\rangle+ n_e\mathbb{N} is a gluing with d=gcd{n1,,ne1}d=\gcd\{n_1,\dots,n_{e-1}\} and n1/d,,ne1/d\langle n_1/d,\dots,n_{e-1}/d\rangle is free.

Minimal free numerical semigroups have stair-like minimal presentations.

A numerical semigroup might be free for different arrangments of its minimal generators, but does not have to be free for all the arrangments of its minimal generators.

s:=NumericalSemigroup(4,6,9);;
IsFree(s);
true
IsUniversallyFree(s);
false
s:=NumericalSemigroup(6,10,15);;
IsUniversallyFree(s);
true

Telescopic numerical semigroups

A numerical semigroup SS minimally generated by {n1<<ne}\{n_1<\dots<n_e\} is telescopic if it is free for the arrangment (n1,,ne)(n_1,\dots,n_e).

s:=NumericalSemigroup(4,6,9);;
IsTelescopic(s);
true

Suppose that SS is telescopic and define di=gcd{n1,,ni1}d_i=\gcd\{n_1,\dots,n_{i-1}\} and ei=di/di+1e_i=d_i/d_{i+1}. Then SS is the semigroup associated to a plane curve singularity if and only if eini<ni+1e_in_i<n_{i+1} for all ii.

NumSgpsUseSingular();
x:=X(Rationals,"x");; y:=X(Rationals,"y");;
f:= y^4-2*x^3*y^2-4*x^5*y+x^6-x^7;;
s:=SemigroupOfValuesOfPlaneCurve(f);
MinimalGenerators(s);
true
<Numerical semigroup with 3 generators>
[ 4, 6, 13 ]
IsTelescopic(s);
true
IsNumericalSemigroupAssociatedIrreduciblePlanarCurveSingularity(s);
true
# is:=[0..60];;
# Plot([is,i->Length(CompleteIntersectionNumericalSemigroupsWithFrobeniusNumber(2*i+1))],
# [is, i->Length(FreeNumericalSemigroupsWithFrobeniusNumber(2*i+1))],
# [is, i->Length(TelescopicNumericalSemigroupsWithFrobeniusNumber(2*i+1))]);
Display(List([0..60],i->[i,Length(CompleteIntersectionNumericalSemigroupsWithFrobeniusNumber(2*i+1)),
                    Length(FreeNumericalSemigroupsWithFrobeniusNumber(2*i+1)),
                    Length(TelescopicNumericalSemigroupsWithFrobeniusNumber(2*i+1))]));
[ [    0,    1,    1,    1 ],
  [    1,    1,    1,    1 ],
  [    2,    2,    2,    2 ],
  [    3,    3,    3,    2 ],
  [    4,    2,    2,    2 ],
  [    5,    4,    4,    4 ],
  [    6,    5,    5,    3 ],
  [    7,    3,    3,    2 ],
  [    8,    7,    7,    5 ],
  [    9,    8,    8,    6 ],
  [   10,    5,    5,    4 ],
  [   11,   11,   11,    8 ],
  [   12,   11,   11,    8 ],
  [   13,    9,    9,    7 ],
  [   14,   14,   14,   10 ],
  [   15,   17,   17,    9 ],
  [   16,   12,   12,    8 ],
  [   17,   18,   18,   12 ],
  [   18,   24,   24,   12 ],
  [   19,   16,   16,   11 ],
  [   20,   27,   27,   18 ],
  [   21,   31,   31,   19 ],
  [   22,   21,   21,   13 ],
  [   23,   36,   35,   20 ],
  [   24,   38,   38,   22 ],
  [   25,   27,   27,   16 ],
  [   26,   46,   46,   24 ],
  [   27,   45,   45,   25 ],
  [   28,   34,   33,   20 ],
  [   29,   57,   57,   32 ],
  [   30,   62,   62,   31 ],
  [   31,   43,   43,   25 ],
  [   32,   65,   65,   37 ],
  [   33,   77,   76,   39 ],
  [   34,   53,   52,   29 ],
  [   35,   84,   83,   43 ],
  [   36,   90,   90,   47 ],
  [   37,   61,   61,   37 ],
  [   38,  100,  100,   52 ],
  [   39,  110,  109,   54 ],
  [   40,   80,   79,   47 ],
  [   41,  122,  120,   61 ],
  [   42,  120,  120,   60 ],
  [   43,   94,   94,   48 ],
  [   44,  143,  142,   73 ],
  [   45,  151,  149,   72 ],
  [   46,  108,  106,   57 ],
  [   47,  158,  157,   75 ],
  [   48,  179,  179,   84 ],
  [   49,  128,  128,   68 ],
  [   50,  197,  194,   86 ],
  [   51,  209,  207,   89 ],
  [   52,  142,  142,   76 ],
  [   53,  229,  227,  101 ],
  [   54,  238,  235,  104 ],
  [   55,  172,  169,   83 ],
  [   56,  264,  260,  122 ],
  [   57,  259,  258,  118 ],
  [   58,  202,  200,   96 ],
  [   59,  294,  291,  128 ],
  [   60,  311,  310,  140 ] ]

Apéry sets and gluings

Assume that S=a1S1+a2S2S=a_1S_1+a_2S_2 is a gluing of S1S_1 and S2S_2. Then

Ap(S,a1a2)=a1Ap(S1,a1)+a2Ap(S2,a2). \operatorname{Ap}(S,a_1a_2)=a_1\operatorname{Ap}(S_1,a_1)+a_2\operatorname{Ap}(S_2,a_2).

In particular,

F(S)=a1F(S1)+a2F(S2)+a1a2, \operatorname{F}(S)=a_1\operatorname{F}(S_1)+a_2\operatorname{F}(S_2)+a_1a_2,

and

t(S)=t(S1)t(S2). \operatorname{t}(S)=\operatorname{t}(S_1)\operatorname{t}(S_2).

In particular, the gluing of two symmetric numerical semigroups is symmetric, and every complete intersection is a symmetric numerical semigroup.

Hilbert series (or generating functions) and gluings

Let SS be a numerical semigroup. The Hilbert series associated to SS is the formal series

HS(x)=sSxs. H_S(x)= \sum_{s\in S} x^s.

Also, for every nS{0}n\in S\setminus\{0\}

HS(x)=11xnwAp(S,n)xw. H_S(x)= \frac{1}{1-x^n} \sum_{w\in \operatorname{Ap}(S,n)} x^w.

Thus, if S=a1S1+a2S2S=a_1S_1+a_2S_2 is a gluing, then

HS(x)=(1xa1a2)HS1(xa1)HS2(xa2). H_S(x) = (1-x^{a_1a_2})H_{S_1}(x^{a_1})H_{S_2}(x^{a_2}).

Define the polynomial associated to SS as

PS(x)=(1x)HS(x)=1+(1x)gNSxg. P_S(x) = (1-x)H_S(x)= 1+(1-x)\sum_{g\in \mathbb{N}\setminus S} x^g.
s:=NumericalSemigroup(4,6,9);;
p:=NumericalSemigroupPolynomial(s,x);
x^12-x^11+x^8-x^7+x^6-x^5+x^4-x+1
Print(p);
x^12-x^11+x^8-x^7+x^6-x^5+x^4-x+1

If SS is a complete intersection, then

HS(x)=bBetti(S)(1xb)nrc(b)1i=1d(1xni), H_S(x)= \frac{\prod_{b\in \operatorname{Betti}(S)} (1-x^b)^{nrc(b)-1}}{\prod_{i=1}^d (1-x^{n_i})},

where nrc(b)nrc(b) is the number of RR-classes of bb. Thus,

PS(x)=(1x)bBetti(S)(1xb)nrc(b)1i=1d(1xni). P_S(x)=\frac{(1-x)\prod_{b\in \operatorname{Betti}(S)} (1-x^b)^{nrc(b)-1}}{\prod_{i=1}^d (1-x^{n_i})}.

Since all the roots of PS(x)P_S(x) are in the unit circle, by Kronecker’s theorem PSP_S is a product of cyclotomic polynomial.

A numerical semigroup is cyclotomic if PS(x)P_S(x) is a product of cyclotomic polynomials. Consequently, every complete intersection is cyclotomic.

IsCyclotomicNumericalSemigroup(s);
true
IsKroneckerPolynomial(p);
true

For every numerical semigroup SS, the polynomial PS(x)P_S(x) can be expressed in the following form (uniquely)

PS(x)=dN{0}(1xd)ed. P_S(x)= \prod_{d\in \mathbb{N}\setminus\{0\}}(1-x^d)^{e_d}.

The sequence (e1,e2,)(e_1,e_2,\dots) is known as the cyclotomic exponent sequence associated to SS.

CyclotomicExponentSequence(s,40);
[ 1, 0, 0, -1, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1 ]
WittCoefficients(p,40);
[ 1, 0, 0, -1, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]

The numerical semigroup SS is cyclotomic if and only if its cyclotomic exponent sequence has finite support.

s:=NumericalSemigroup(3,5,7);;
p:=NumericalSemigroupPolynomial(s,x);;
WittCoefficients(p,150);
[ 1, 0, -1, 0, -1, 0, -1, 0, 0, 1, 0, 1, 0, 1, 0, 0, -1, 0, -1, 0, 0, 1, 0, 1, 0, 1, -1, 0, -2, 0, -2, 1, -1, 3, 0, 3, -1, 3, -3, 1, -5, 1, -5, 3, -3, 7, -2, 8, -4, 7, -9, 4, -14, 6, -14, 12, -10, 22, -9, 25, -16, 23, -30, 17, -42, 23, -43, 41, -36, 66, -37, 76, -60, 73, -100, 66, -133, 91, -139, 148, -129, 219, -146, 252, -222, 252, -340, 255, -438, 346, -469, 524, -473, 731, -564, 846, -820, 887, -1183, 973, -1488, 1309, -1635, 1889, -1756, 2530, -2157, 2947, -3026, 3214, -4181, 3701, -5187, 4922, -5839, 6834, -6563, 8905, -8200, 10467, -11195, 11807, -14992, 14052, -18463, 18510, -21237, 24982, -24675, 31960, -31101, 37904, -41573, 43905, -54450, 53343, -66840, 69606, -78312, 91968, -93176, 116272, -117909, 139142, -155059, 164573, -199918, 202659, -245305, 262345 ]

We still do not know if every cyclotomic polynomial is a complete intersection.