Homogenization of a numerical semigroup
Definition
Let \(S\) be a numerical semigroup minimally generated by \(P = \{m_1, \ldots, m_n\}\). It is defined the homogenization of \(S\), denoted by \(S^{hom}\), as the semigroup generated by \(P^{hom} = \{(1,0), (1,m_1), \ldots, (1, m_n)\}\) by the operation
\[ (a,b) + (c,d) = (a + b, c + d). \]
Since \(P\) is a minimal system of generators of \(S\), it is deduced that \(P^{hom}\) is a minimal system of generators of \(S^{hom}\).
Examples
\(\circ\) Let \(S\) be a numerical semigroup and \(S^{hom}\) its homogenization. Let us prove that
\[ S^{hom} = \{(n, s) ~ | ~ s \in S, n \ge min ~ \mathbf{L}(s)\}, \]
where \(\mathbf{L}(s)\) denotes the set of lengths of \(s\) in \(S\).
- Let \((n,s) \in S^{hom}\). By definition, there exist \(\lambda_0, \lambda_1, \ldots, \lambda_n \in \mathbb{N}\) such that
\[ (n,s) = \lambda_0(1,0) + \lambda_1 (1, m_1) + \cdots + \lambda_n (1, m_n) = \left( \sum_{i = 0}^n \lambda_i, \sum_{i = 1}^n \lambda_i m_i \right). \]
Then, \(s = \sum_{i = 1}^n \lambda_i m_i \in S\) and \((\lambda_1, \ldots, \lambda_n)\) is a factorization of \(s\), from which it follows the relation
\[ \min \mathbf{L}(s) \le |(\lambda_1, \ldots, \lambda_n)| = \sum_{i = 1}^n \lambda_i \le \lambda_0 + \sum_{i = 1}^n \lambda_i = n, \]
concluding that \(s \in S\) and \(n \ge \min \mathbf{L}(s)\).
- Let us consider \(s \in S\) and \(n \ge \min \mathbf{L}(s)\). Since \(s \in S\), let \(\lambda_1, \ldots, \lambda_n \in \mathbb{N}\) be such that
\[ s = \lambda_1 m_1 + \cdots + \lambda_n m_n, ~~ \text{ and } ~~ \sum_{i = 1}^n \lambda_i = \min \mathbf{L}(s). \]
If \(\lambda_0 = n - \min \mathbf{L}(s) \ge 0\), then
\[ (n,s) = \left( \lambda_0 + \min \mathbf{L}(s), \sum_{i = 1}^n \lambda_i m_i \right) = \lambda_0 (1,0) + \lambda_1 (1, m_1) + \cdots + \lambda_n (1, m_n) \in S^{hom}. \]
Examples with GAP
The following examples are made with the package NumericalSgps in GAP.
\(\diamond\) Let \(S = \langle 20, 39, 96, 105, 126, 130 \rangle\), in GAP:
gap> S := NumericalSemigroup(20, 39, 96, 105, 126, 130);
<Numerical semigroup with 6 generators>
Given a numerical semigroup \(S\) and a list of two entries \([n,s]\) with \(n\) and \(s\) integers, the function BelongsToHomogenizationOfNumericalSemigroup
returns true if \((a,b) \in S^{hom}\) and false otherwise.
gap> BelongsToHomogenizationOfNumericalSemigroup([9, 1000], S);
true
gap> BelongsToHomogenizationOfNumericalSemigroup([8, 1000], S);
false
Moreover, the function FactorizationsInHomogenizationOfNumericalSemigroup
returns a list with the factorizations of \([n,s]\) in \(S^{hom}\).
gap> Filtered(Factorizations(1000, S), l -> Sum(l) <= 9);
0, 1, 1, 1, 5, 1 ], [ 0, 0, 5, 0, 0, 4 ], [ 0, 1, 0, 3, 1, 4 ] ] [ [
Note that there is a one-to-one correspondence between the set of factorizations of \([n,s]\) in \(S^{hom}\) and the set of factorizations of \(s\) in \(S\) with length less than or equal to \(n\).
\(\diamond\) Let \(S = \langle 39, 43, 46, 50, 53, 58, 79, 102, 126 \rangle\), in GAP:
gap> S := NumericalSemigroup(39, 43, 46, 50, 53, 58, 79, 102, 126);
<Numerical semigroup with 9 generators>
Given a numerical semigroup \(S\), the function HomogeneousBettiElementsOfNumericalSemigroup
returns the Betti elements of \(S^{hom}\).
gap> HomogeneousBettiElementsOfNumericalSemigroup(S);
2, 89 ], [ 2, 92 ], [ 2, 96 ], [ 3, 125 ], [ 3, 129 ], [ 3, 132 ], [ 3, 136 ],
[ [ 3, 143 ], [ 3, 145 ], [ 3, 150 ], [ 3, 152 ], [ 3, 155 ], [ 3, 157 ], [ 3, 158 ],
[ 3, 159 ], [ 3, 161 ], [ 3, 164 ], [ 3, 165 ], [ 3, 169 ], [ 3, 172 ], [ 3, 176 ],
[ 3, 179 ], [ 3, 180 ], [ 3, 184 ], [ 3, 187 ], [ 3, 195 ], [ 3, 201 ], [ 3, 204 ],
[ 3, 205 ], [ 3, 208 ], [ 3, 211 ], [ 3, 218 ], [ 3, 227 ], [ 3, 234 ], [ 3, 237 ],
[ 4, 156 ], [ 4, 160 ], [ 4, 174 ], [ 4, 181 ], [ 4, 199 ], [ 4, 206 ], [ 4, 220 ],
[ 4, 224 ], [ 4, 228 ], [ 4, 232 ], [ 4, 252 ], [ 4, 282 ], [ 4, 290 ], [ 4, 300 ],
[ 4, 301 ], [ 4, 304 ], [ 4, 305 ], [ 4, 308 ], [ 4, 341 ], [ 4, 345 ], [ 4, 349 ],
[ 4, 352 ], [ 4, 356 ], [ 5, 216 ], [ 5, 401 ], [ 5, 417 ], [ 5, 464 ], [ 5, 510 ] ] [
On the other hand, the function HomogeneousCatenaryDegreeOfNumericalSemigroup
computes the catenary degree of \(S^{hom}\).
gap> HomogeneousCatenaryDegreeOfNumericalSemigroup(S);
5
References
https://gap-packages.github.io/
numericalsgps
.