Tau-sequence
Definition
Let \(S = \{s_0 = 0 < s_1 < s_2 \ldots\}\) be a numerical semigroup. It is defined the following binary operation on \(\mathbb{N}\):
\[ i \oplus j = k \Longleftrightarrow s_i + s_j = s_k. \]
It is defined the \(\tau-\)sequence of \(S\) as the sequence \((\tau_0, \tau_1, \tau_2 \ldots)\) such that for all \(i \in \mathbb{N}\),
\[ \tau_i = \max \{j \in \mathbb{N} ~ | ~ \exists k \in \{j, \ldots, i\} ~ \text{ such that } ~ j \oplus k = i\}, \]
If \(g(S)\) and \(C(S)\) are the genus and the conductor of \(S\) respectively, it can be proven that the first \(2C(S) - g(S) + 1\) elements of the \(\tau-\)sequence determine uniquely the numerical semigroup. Moreover, if \(n \ge 2C(S) - g(S)\), then for all \(i \in \mathbb{N}\) it holds that \(\tau_{n + 2} = \tau_n + 1\).
Examples
\(\circ\) Let \(S = \langle 4, 6, 11 \rangle = \{ 0, 4, 6, 8, 10, 11, 12, 14, \rightarrow \}\). Let us compute \(\tau_0, \tau_1, \tau_2, \tau_3\) and \(\tau_4\). We have that \(s_0 = 0, s_1 = 4, s_2 = 6, s_3 = 8\) and \(s_4 = 10\) and
\[ D(0) = \{0\}, ~~ D(4) = \{0, 4\}, ~~ D(6) = \{0, 6\}, ~~ D(8) = \{0, 4, 8\}, ~~ D(10) = \{0, 4, 6, 10\}, \]
concluding that \((\tau_0, \tau_1, \tau_2, \tau_3, \tau_4) = (0, 0, 0, 1, 1)\). The conductor of \(S\) is \(C(S) = 14\) and the set of gaps is \(G(S) = \{1, 2, 3, 5, 7, 9, 13\}\), and then \(g(S) = |G(S)| = 7\). Therefore, the first \(2C(S) - g(S)+1 = 22\) elements of the \(\tau-\)sequences determine uniquely the numerical semigroup, which are
\[ (0, 0, 0, 1, 1, 0, 2, 2, 1, 3, 2, 3, 3, 4, 4, 5, 5, 6, 5, 6, 6, 7 ). \]
Examples with GAP
The following example is made with the package NumericalSgps in GAP.
\(\diamond\) Let \(S = \langle 26, 35, 38, 39, 46, 47, 48, 50, 57 \rangle\), in GAP:
gap> S := NumericalSemigroup( 26, 35, 38, 39, 46, 47, 48, 50, 57);
<Numerical semigroup with 9 generators>
Given a list of integers \(I\) representing the first \(2C(S) - g(S)+1\) elements of a \(\tau-\)sequence, the function NumericalSemigroupByTauSequence
computes the unique numerical semigroup such that its \(\tau-\)sequence is \(I \cup \{l+1, l+1, l+2, l+2 \ldots\}\), where \(l\) is the last element of \(I\). Given a numerical semigroup \(S\) and an integer \(i\), the function TauNS
computes \(\tau_i\). On the other hand, the function Conductor
and Genus
compute the conductor and the genus of the given numerical semigroup, respectively.
gap> TauNS := function(i,S)
> local d, D, si;
> D:=DivisorsOfElementInNumericalSemigroup(S[i+1],S);
> si:=S[i+1];
> d:=Maximum(Intersection(D,[0..Int(si/2)]));
> return NumberElement_NumericalSemigroup(S,d)-1;
> end;
function( i, S ) ... end
gap> c := Conductor(S);
107
gap> g := Genus(S);
62
gap> Tauseq := List([0..(2*c - g)], i -> TauNS(i, S));
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 2, 1, 2, 2, 3, 3, 4, 2, 2, 2, 3, 4, 4, 4, 3, 4,
[ 3, 4, 5, 5, 6, 6, 7, 6, 7, 6, 8, 8, 5, 9, 7, 8, 6, 9, 5, 8, 7, 9, 10, 8, 9, 9, 10, 6, 8,
10, 11, 8, 9, 11, 11, 10, 12, 12, 13, 11, 8, 11, 12, 13, 12, 13, 13, 13, 14, 13, 14, 14,
15, 15, 16, 16, 17, 16, 17, 17, 18, 18, 19, 19, 20, 18, 19, 20, 20, 20, 21, 21, 22, 22,
23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33,
34, 34, 35, 35, 36, 36, 37, 37, 38, 38, 39, 39, 40, 39, 40, 40, 41, 41, 42, 42, 43, 43,
44, 43, 44, 44, 45 ]
gap> S = NumericalSemigroupByTauSequence(Tauseq);
true
References
https://gap-packages.github.io/
numericalsgps
.