1#############################################################################
2##
3#W  presentaciones.gd       Manuel Delgado <mdelgado@fc.up.pt>
4#W                          Pedro A. Garcia-Sanchez <pedro@ugr.es>
5#W                          Jose Morais <josejoao@fc.up.pt>
6##
7##
8#Y  Copyright 2005 by Manuel Delgado,
9#Y  Pedro Garcia-Sanchez and Jose Joao Morais
10#Y  We adopt the copyright regulations of GAP as detailed in the
11#Y  copyright notice in the GAP manual.
12##
13#############################################################################
14
15
16
17
18#############################################################################
19##
20#F  GraphAssociatedToElementInNumericalSemigroup(n,s)
21##
22##  Computes the graph associated to the element n
23##  the numerical semigroup s.
24##  Its vertices are those minimal generators m such that
25##      n-m in s
26##  Its edges are those pairs (m1,m2) of minimal generators
27##      such that n-(m1+m2) in s.
28#############################################################################
29DeclareGlobalFunction("GraphAssociatedToElementInNumericalSemigroup");
30
31
32
33
34#############################################################################
35##
36#F  MinimalPresentationOfNumericalSemigroup(s)
37##
38##  For a numerical semigroup s, give a minimal presentation
39##  the output is a list of pairs showing the relationship
40##  between the minimal generators of s
41##  the algorithm is the one given in
42##  -J. C. Rosales, {\em An algorithmic method to compute a minimal
43##  relation for any numerical semigroup}, Internat. J. Algebra Comput.
44##  {\bf 6} (1996), no. 4, 441--455.
45#############################################################################
46DeclareGlobalFunction("MinimalPresentationOfNumericalSemigroup");
47DeclareOperation("MinimalPresentation",[IsNumericalSemigroup]);
48
49#############################################################################
50##
51#F  BettiElementsOfNumericalSemigroup(s)
52##
53##  For a numerical semigroup s, returns the elements whose associated graphs
54##  are non-connected, or in other words, whose factorizations are used to
55##  construct any minimal presentation for s
56##
57#############################################################################
58DeclareGlobalFunction("BettiElementsOfNumericalSemigroup");
59DeclareOperation("BettiElements", [IsNumericalSemigroup]);
60
61#############################################################################
62##
63#P  IsUniquelyPresentedNumericalSemigroup(s)
64##
65##  For a numerical semigroup s, checks it it has a unique minimal presentation
66##  Basado en GS-O
67##
68#############################################################################
69DeclareProperty("IsUniquelyPresented", IsNumericalSemigroup);
70DeclareSynonymAttr("IsUniquelyPresentedNumericalSemigroup", IsUniquelyPresented);
71
72#############################################################################
73##
74#P  IsGenericNumericalSemigroup(s)
75##
76##  For a numerical semigroup s, checks it it has a generic presentation,
77##  that is, in every relation all minimal generators appear. These semigroups are uniquely
78##  presented véase B-GS-G.
79##
80#############################################################################
81DeclareProperty("IsGeneric", IsNumericalSemigroup);
82DeclareSynonymAttr("IsGenericNumericalSemigroup", IsGeneric);
83
84#############################################################################
85##
86#F ShadedSetOfElementInNumericalSemigroup(x,s)
87## computes the shading set of x in s as defined in
88##  -Székely, L. A.; Wormald, N. C. Generating functions for the Frobenius
89##    problem with 2 and 3 generators. Math. Chronicle 15 (1986), 49–57.
90#############################################################################
91DeclareGlobalFunction("ShadedSetOfElementInNumericalSemigroup");
92
93############################################################################
94##
95#F  DegreesOfPrimitiveElementsOfNumericalSemigroup(s)
96##
97## Computes the sets of elements in s, such that there exists a minimal
98## solution to msg*x-msg*y = 0,  such that x,y are factorizations of s
99##
100#############################################################################
101DeclareGlobalFunction("DegreesOfPrimitiveElementsOfNumericalSemigroup");
102