Presentations of Numerical Semigroups
L contains the list of coefficients of a single linear equation. This function gives a minimal generator of the affine semigroup of nonnegative solutions of this equation with the first coordinate equal to one (see ). Returns fail if no solution exists.

gap> FortenTruncatedNCForNumericalSemigroups([ -57, 3 ]); [ 1, 19 ] gap> FortenTruncatedNCForNumericalSemigroups([ -57, 33 ]); fail gap> FortenTruncatedNCForNumericalSemigroups([ -57, 19 ]); [ 1, 3 ]
S is a numerical semigroup.

The output is a list of lists with two elements. Each list of two elements represents a relation between the minimal generators of the numerical semigroup. If \{ \{x_1,y_1\},\ldots,\{x_k,y_k\}\} is the output and \{m_1,\ldots,m_n\} is the minimal system of generators of the numerical semigroup, then \{x_i,y_i\}=\{\{a_{i_1},\ldots,a_{i_n}\},\{b_{i_1},\ldots,b_{i_n}\}\} and a_{i_1}m_1+\cdots+a_{i_n}m_n= b_{i_1}m_1+ \cdots +b_{i_n}m_n.

Any other relation among the minimal generators of the semigroup can be deduced from the ones given in the output.

The algorithm implemented is described in (see also ).

gap> s:=NumericalSemigroup(3,5,7); <Numerical semigroup with 3 generators> gap> MinimalPresentationOfNumericalSemigroup(s); [ [ [ 1, 0, 1 ], [ 0, 2, 0 ] ], [ [ 4, 0, 0 ], [ 0, 1, 1 ] ], [ [ 3, 1, 0 ], [ 0, 0, 2 ] ] ]
The first element in the list means that 1\times 3+1\times 7=2\times 5 , and so on.

S is a numerical semigroup and n is an element in S.

The output is a pair. If \{m_1,\ldots,m_n\} is the set of minimal generators of S, then the first component is the set of vertices of the graph associated to n in S, that is, the set \{ m_i \ |\ n-m_i\in S\} , and the second component is the set of edges of this graph, that is, \{ \{m_i,m_j\} \ |\ n-(m_i+m_j)\in S\}.

This function is used to compute a minimal presentation of the numerical semigroup S, as explained in . gap> s:=NumericalSemigroup(3,5,7); <Numerical semigroup with 3 generators> gap> GraphAssociatedToElementInNumericalSemigroup(10,s); [ [ 3, 5, 7 ], [ [ 3, 7 ], [ 5, 5 ], [ 7, 3 ] ] ]