Additive numerical semigroup

Definition

Let \(S\) be a numerical semigroup and let \(m\) be the multiplicity of \(S\). It is said that \(S\) is additive if \(ord(m+x) = ord(x) + 1\) for all \(x \in S \setminus \{0\}\), where \(ord(x)\) denotes the order of \(x\) in \(S\).

It can be proven that \(S\) is an additive numerical semigroup if, and only if, \(adj(S) = Ap(B, m)\), where \(adj(S)\) is the adjustment of \(S\), \(B\) is the blowup of \(S\) and \(Ap(B, m)\) is the Apéry set of \(B\) in \(m\).

Examples

\(\circ\) Let \(S = \langle 5, 9, 12, 13 \rangle\). In order to compute the blowup of \(S\), we have to compute the reduction number \(r(M)\) of \(M = S \setminus \{0\}\), that is, the first positive integer \(h\) such that \((h+1)M = m(M) + hM\), where \(m(M)\) is the multiplicity ideal of \(M\) and

\[ hM = \{e_1 + e_2 + \cdots + e_h ~ | ~ e_1, \ldots, e_h \in M\}. \]

Since \(m(M) = m(S) = 5\), we have

\[ 2M = M + M \{10, 14, 15, 17, \rightarrow \} \ne \{10, 14, 15, 17, 18, 19, 20, 2, \rightarrow \} = 5 + M, \] and

\[ 3M = \{15, 19, 20, 22, \rightarrow \} = 5 + 2M, \] obtaining that \(r(M) = 2\). The blowup of \(S\) is \(B = 2M - 2M = \{0, 4, 5, 7, \rightarrow \}\), where

\[ 2M - 2M = \{z \in \mathbb{Z} ~ | ~ z + 2M \subseteq 2M \}. \] Since the adjustment of \(S\) is \(Adj(S) = \{0, 4, 7, 8, 11\}\) and the Apéry set of \(B\) in \(m = 5\) is \(Ap(B, 5) = \{0, 4, 7, 8, 11\}\), we conclude that \(S\) is additive.

Examples with GAP

The following example is made with the package NumericalSgps in GAP.

\(\diamond\) Let \(S = \langle 22, 30, 58, 67, 78, 93, 94, 99, 103, 117 \rangle\), in GAP:

gap> S := NumericalSemigroup(22, 30, 58, 67, 78, 93, 94, 99, 103, 117);
<Numerical semigroup with 10 generators>
gap> m := Multiplicity(S);
22

The function Multiplicity returns the multiplicity of the given numerical semigroup. On the other hand, given a numerical semigroup \(S\), the function IsAdditiveNumericalSemigroup returns true if \(S\) is additive and false otherwise.

gap> IsAdditiveNumericalSemigroup(S);
false

Given a numerical semigroup \(S\) and an integer \(n \in S\), the function MaximumDegree computes the order of \(n\) in \(S\). If we consider the first \(1000\) elements of \(S\) (removing the zero), the first \(x \in S\) such that \(ord(m + x) \ne ord(x) + 1\) is \(s = 158\).

gap> First(S{[2..1000]}, l -> MaximumDegree(S,l+m) <> MaximumDegree(S, l) + 1);
158
gap> MaximumDegree(S, 158);
3
gap> MaximumDegree(S, 158+m);
6

References

Bryant, Hamblin, L. 2013. “The Maximal Denumerant of a Numerical Semigroup.” Semigroup Forum 86: 571–82. https://doi.org/10.1007/s00233-012-9448-5.
Delgado, M., P. A. Garcia-Sanchez, and J. Morais. 2024. NumericalSgps, a Package for Numerical Semigroups, Version 1.4.0.” https://gap-packages.github.io/ numericalsgps.