CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

Views: 418346
1
<?xml version="1.0" encoding="UTF-8"?>
2
<Section>
3
<Heading>
4
Numerical semigroups with maximal embedding dimension
5
</Heading>
6
If <M>S</M> is a numerical semigroup and <M>m</M> is its multiplicity (the least
7
positive integer belonging to it), then the embedding dimension <M>e</M> of <M>S</M> (the
8
cardinality of the minimal system of generators of <M>S</M>) is less than or equal
9
to <M>m</M>. We say that <M>S</M> has maximal embedding dimension (MED for short) when <M>e=m</M>.
10
The intersection of two numerical semigroups with the same multiplicity and maximal embedding
11
dimension is again of maximal embedding dimension. Thus we define the MED closure of a non-empty subset
12
of positive integers <M>M=\{m &lt; m_1 &lt; \cdots &lt; m_n &lt;\cdots\}</M> with <M>\gcd(M)=1</M>
13
as the intersection of all MED numerical semigroups with multiplicity <M>m</M>.
14
15
<P/>
16
Given a MED numerical semigroup <M>S</M>, we say that <M>M=\{m_1 &lt; \cdots&lt; m_k\}</M> is a MED system
17
of generators if the MED closure of <M>M</M> is <M>S</M>. Moreover, <M>M</M> is a minimal MED generating
18
system for <M>S</M> provided that every proper subset of <M>M</M> is not a MED system of generators
19
of <M>S</M>. Minimal MED generating systems are unique, and in general are smaller than the
20
classical minimal generating systems (see <Cite Key="RGGB03"></Cite>).
21
22
23
<ManSection>
24
<Prop Arg="S" Name="IsMED"></Prop>
25
<Prop Arg="S" Name="IsMEDNumericalSemigroup"></Prop>
26
<Description>
27
<A>S</A> is a numerical semigroup.
28
Returns true if <A>S</A> is a MED numerical semigroup and false otherwise.
29
<Example><![CDATA[
30
gap> IsMEDNumericalSemigroup(NumericalSemigroup(3,5,7));
31
true
32
gap> IsMEDNumericalSemigroup(NumericalSemigroup(3,5));
33
false
34
]]></Example>
35
</Description>
36
</ManSection>
37
38
39
<ManSection>
40
<Func Arg="S" Name="MEDNumericalSemigroupClosure"></Func>
41
<Oper Arg="S" Name="MEDClosure" Label="for numerical semigroups"></Oper>
42
<Description>
43
<A>S</A> is a numerical semigroup.
44
Returns the MED closure of <A>S</A>.
45
<Example><![CDATA[
46
gap> MEDNumericalSemigroupClosure(NumericalSemigroup(3,5));
47
<Numerical semigroup>
48
gap> MinimalGenerators(last);
49
[ 3, 5, 7 ]
50
]]></Example>
51
</Description>
52
</ManSection>
53
54
<ManSection>
55
<Func Arg="S" Name="MinimalMEDGeneratingSystemOfMEDNumericalSemigroup"></Func>
56
<Description>
57
<A>S</A> is a MED numerical semigroup.
58
Returns the minimal MED generating system of <A>S</A>.
59
<Example><![CDATA[
60
gap> MinimalMEDGeneratingSystemOfMEDNumericalSemigroup(
61
> NumericalSemigroup(3,5,7));
62
[ 3, 5 ]
63
]]></Example>
64
</Description>
65
</ManSection>
66
67
</Section>
68
69
<Section>
70
<Heading>
71
Numerical semigroups with the Arf property and Arf closures
72
</Heading>
73
Numerical semigroups with the Arf property are a special kind of numerical semigroups with
74
maximal embedding dimension. A numerical semigroup <M>S</M> is Arf if for every <M>x,y,z</M> in
75
<M>S</M> with <M>x\geq y\geq z</M>, one has that <M>x+y-z\in S</M>.
76
77
<P/>
78
The intersection of two Arf numerical semigroups is again Arf, and thus we can consider the
79
Arf closure of a set of nonnegative integers with greatest common divisor equal to one. Analogously
80
as with MED numerical semigroups, we define Arf systems of generators and minimal Arf generating
81
system for an Arf numerical semigroup. These are also unique(see <Cite Key="RGGB04"></Cite>).
82
83
84
<ManSection>
85
<Prop Arg="S" Name="IsArf"></Prop>
86
<Prop Arg="S" Name="IsArfNumericalSemigroup"></Prop>
87
<Description>
88
<A>S</A> is a numerical semigroup.
89
Returns true if <A>S</A> is an Arf numerical semigroup and false otherwise.
90
<Example><![CDATA[
91
gap> IsArfNumericalSemigroup(NumericalSemigroup(3,5,7));
92
true
93
gap> IsArfNumericalSemigroup(NumericalSemigroup(3,7,11));
94
false
95
gap> IsMEDNumericalSemigroup(NumericalSemigroup(3,7,11));
96
true
97
]]></Example>
98
</Description>
99
</ManSection>
100
101
<ManSection>
102
<Func Arg="S" Name="ArfNumericalSemigroupClosure"></Func>
103
<Oper Arg="S" Name="ArfClosure" Label="of numerical semigroup"></Oper>
104
<Description>
105
<A>S</A> is a numerical semigroup.
106
Returns the Arf closure of <A>S</A>.
107
<Example><![CDATA[
108
gap> ArfNumericalSemigroupClosure(NumericalSemigroup(3,7,11));
109
<Numerical semigroup>
110
gap> MinimalGenerators(last);
111
[ 3, 7, 8 ]
112
]]></Example>
113
</Description>
114
</ManSection>
115
116
<ManSection>
117
<Func Arg="S" Name="ArfCharactersOfArfNumericalSemigroup"></Func>
118
<Func Arg="S" Name="MinimalArfGeneratingSystemOfArfNumericalSemigroup"></Func>
119
<Description>
120
<A>S</A> is an Arf numerical semigroup.
121
122
Returns the minimal Arf generating system of <A>S</A>.
123
124
The current version of this algorithm is due to G. Zito.
125
126
<Example><![CDATA[
127
gap> MinimalArfGeneratingSystemOfArfNumericalSemigroup(
128
> NumericalSemigroup(3,7,8));
129
[ 3, 7 ]
130
]]></Example>
131
</Description>
132
</ManSection>
133
134
<ManSection>
135
<Func Arg="f" Name="ArfNumericalSemigroupsWithFrobeniusNumber"></Func>
136
<Description>
137
<A>f</A> is an integer greater than or equal to -1. The output is the set of all Arf
138
numerical semigroups with Frobenius number <A>f</A>.
139
The current version of this algorithm is due to G. Zito.
140
141
<Example><![CDATA[
142
gap> ArfNumericalSemigroupsWithFrobeniusNumber(10);
143
[ <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>,
144
<Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>,
145
<Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup> ]
146
gap> Set(last,MinimalGenerators);
147
[ [ 3, 11, 13 ], [ 4, 11, 13, 14 ], [ 6, 9, 11, 13, 14, 16 ],
148
[ 6, 11, 13, 14, 15, 16 ], [ 7, 9, 11, 12, 13, 15, 17 ],
149
[ 7, 11, 12, 13, 15, 16, 17 ], [ 8, 11, 12, 13, 14, 15, 17, 18 ],
150
[ 9, 11, 12, 13, 14, 15, 16, 17, 19 ], [ 11 .. 21 ] ]
151
]]></Example>
152
</Description>
153
</ManSection>
154
155
<ManSection>
156
<Func Arg="f" Name="ArfNumericalSemigroupsWithFrobeniusNumberUpTo"></Func>
157
<Description>
158
<A>f</A> is an integer greater than or equal to -1. The output is the set of all Arf
159
numerical semigroups with Frobenius number less than or equal to <A>f</A>.
160
The current version of this algorithm is due to G. Zito.
161
<Example><![CDATA[
162
gap> Length(ArfNumericalSemigroupsWithFrobeniusNumberUpTo(10));
163
46
164
]]></Example>
165
</Description>
166
</ManSection>
167
168
<ManSection>
169
<Func Arg="g" Name="ArfNumericalSemigroupsWithGenus"></Func>
170
<Description>
171
<A>g</A> is a nonnegative integer. The output is the set of all Arf
172
numerical semigroups with equal to <A>g</A>.
173
The current version of this algorithm is due to G. Zito.
174
<Example><![CDATA[
175
gap> Length(ArfNumericalSemigroupsWithGenus(10));
176
21
177
]]></Example>
178
</Description>
179
</ManSection>
180
181
<ManSection>
182
<Func Arg="g" Name="ArfNumericalSemigroupsWithGenusUpTo"></Func>
183
<Description>
184
<A>g</A> is a nonnegative integer. The output is the set of all Arf
185
numerical semigroups with genus less than or equal to <A>g</A>.
186
The current version of this algorithm is due to G. Zito.
187
<Example><![CDATA[
188
gap> Length(ArfNumericalSemigroupsWithGenusUpTo(10));
189
86
190
]]></Example>
191
</Description>
192
</ManSection>
193
194
<ManSection>
195
<Func Arg="g,f" Name="ArfNumericalSemigroupsWithGenusAndFrobeniusNumber"></Func>
196
<Description>
197
<A>f</A> is an integer greater than or equal to -1, and <A>g</A> is a nonnegative integer. The output is the set of all Arf
198
numerical semigroups with genus <A>g</A> and Frobenius number <A>f</A>. The algorithm is explained in <Cite Key="arf-frob-gen"></Cite>.
199
<Example><![CDATA[
200
gap> ArfNumericalSemigroupsWithGenusAndFrobeniusNumber(10,13);
201
[ <Numerical semigroup>, <Numerical semigroup>, <Numerical semigroup>,
202
<Numerical semigroup>, <Numerical semigroup> ]
203
gap> List(last,MinimalGenerators);
204
[ [ 8, 10, 12, 14, 15, 17, 19, 21 ], [ 6, 10, 14, 15, 17, 19 ],
205
[ 5, 12, 14, 16, 18 ], [ 6, 9, 14, 16, 17, 19 ], [ 4, 14, 15, 17 ] ]
206
]]></Example>
207
</Description>
208
</ManSection>
209
210
211
</Section>
212
<Section>
213
<Heading>
214
Saturated numerical semigroups
215
</Heading>
216
Saturated numerical semigroups with the Arf property are a special kind of numerical semigroups with
217
maximal embedding dimension. A numerical semigroup <M>S</M> is saturated if the following condition holds: <M> s, s_1 , \ldots , s_r</M> in <M>S</M> are such that <M>s_i \leq s</M> for all <M>i</M> in <M>\{1, \ldots , r\}</M> and <M>z_1 , \ldots , z_r</M> in <M>\mathbb Z</M> are such that <M>z_1 s_1 + \cdots + z_r s_r\geq 0</M>, then <M>s + z_1 s_1 + \cdots + z_r s_r</M> in <M>S</M>.
218
219
<P/>
220
The intersection of two saturated numerical semigroups is again saturated, and thus we can consider the
221
saturated closure of a set of nonnegative integers with greatest common divisor equal to one (see <Cite Key="RGbook"></Cite>).
222
223
224
<ManSection>
225
<Prop Arg="S" Name="IsSaturated"></Prop>
226
<Prop Arg="S" Name="IsSaturatedNumericalSemigroup"></Prop>
227
<Description>
228
<A>S</A> is a numerical semigroup.
229
Returns true if <A>S</A> is a saturated numerical semigroup and false otherwise.
230
<Example><![CDATA[
231
gap> IsSaturatedNumericalSemigroup(NumericalSemigroup(4,6,9,11));
232
true
233
gap> IsSaturatedNumericalSemigroup(NumericalSemigroup(8, 9, 12, 13, 15, 19 ));
234
false
235
]]></Example>
236
</Description>
237
</ManSection>
238
239
<ManSection>
240
<Func Arg="S" Name="SaturatedNumericalSemigroupClosure"></Func>
241
<Oper Arg="S" Name="SaturatedClosure" Label="for numerical semigroups"></Oper>
242
<Description>
243
<A>S</A> is a numerical semigroup.
244
Returns the saturated closure of <A>S</A>.
245
<Example><![CDATA[
246
gap> SaturatedNumericalSemigroupClosure(NumericalSemigroup(8, 9, 12, 13, 15));
247
<Numerical semigroup>
248
gap> MinimalGenerators(last);
249
[ 8 .. 15 ]
250
]]></Example>
251
</Description>
252
</ManSection>
253
254
255
<ManSection>
256
<Func Arg="f" Name="SaturatedNumericalSemigroupsWithFrobeniusNumber"></Func>
257
<Description>
258
<A>f</A> is an integer greater than or equal to -1. The output is the set of all Saturated
259
numerical semigroups with Frobenius number <A>f</A>.
260
<Example><![CDATA[
261
gap> SaturatedNumericalSemigroupsWithFrobeniusNumber(10);
262
[ <Numerical semigroup with 3 generators>,
263
<Numerical semigroup with 4 generators>,
264
<Numerical semigroup with 6 generators>,
265
<Numerical semigroup with 6 generators>,
266
<Numerical semigroup with 7 generators>,
267
<Numerical semigroup with 8 generators>,
268
<Numerical semigroup with 9 generators>,
269
<Numerical semigroup with 11 generators> ]
270
gap> List(last,MinimalGenerators);
271
[ [ 3, 11, 13 ], [ 4, 11, 13, 14 ], [ 6, 9, 11, 13, 14, 16 ],
272
[ 6, 11, 13, 14, 15, 16 ], [ 7, 11, 12, 13, 15, 16, 17 ],
273
[ 8, 11, 12, 13, 14, 15, 17, 18 ], [ 9, 11, 12, 13, 14, 15, 16, 17, 19 ],
274
[ 11 .. 21 ] ]
275
]]></Example>
276
</Description>
277
</ManSection>
278
279
</Section>
280
281