LL = findSemigroups(mult, cond, numgaps)
LL = findSemigroups(mult, numgaps)
LL = findSemigroups(numgaps)
If S is the Weierstrass semigroup of a point p on a Riemann surface X -- that is, the semigroup of pole orders of rational functions at p, then the genus of X is the number of gaps of S and there is a differential on X vanishing to order exactly d iff d+1 is a gap.
|
|
|
The number of vanishing orders of quadratic differentials on is h^0(2K) = (4g-4) - g + 1 = 3g-3, so if s is the semigroup of pole orders of a point on X and G is the set of gaps, then there can be at most 3g-3 distinct sums of pairs of elements of G. This gives a nontrivial obstruction to the smoothability of the semigroup ring of S and thus to the existence of a Weierstrass point with semigroup s.
The following example, discovered by Ragnar Buchweitz (Thesis) was the first known example of a non-Weierstrass semigroup.
|
The function isGapSequence returns generators for the semigroups with given gap sequence or returns false if there is no such semigroup
|
|
|
|
The object findSemigroups is a method function.