[go: up one dir, main page]

login
A266322
Genera of complete intersection curves.
1
0, 1, 3, 4, 5, 6, 9, 10, 13, 15, 16, 17, 19, 21, 25, 28, 31, 33, 36, 37, 41, 45, 46, 49, 51, 55, 61, 64, 65, 66, 73, 76, 78, 81, 85, 91, 97, 99, 100, 101, 105, 106, 109, 113, 120, 121, 129, 136, 141, 144, 145, 148, 153, 161, 163, 166, 169, 171, 176, 181, 190
OFFSET
1,3
LINKS
P. Deligne and N. Katz, Groupes de monodromie en géométrie algébrique (SGA 7 II), Springer-Verlag, 1973, pages 39-61.
PROG
(Sage)
def genus(degrees):
n = len(degrees) + 1
return 1 + 1 / 2 * prod(degrees) * (sum(degrees) - n - 1)
"""
Generate a list of all genera of complete intersection curves up to a cutoff.
Observe that the genus strictly increases if we increase the degree of a defining equation, while adding a hyperplane section keeps the degree fixed.
So we can obtain all low genera starting from the line in P^2, and increasing the number of equations and the degrees of the defining equations
"""
def listOfGenera(cutoff):
queue = [(1, )]
genera = []
while len(queue) > 0:
degrees = queue.pop()
g = genus(degrees)
if g < cutoff:
# if we haven't found this one yet we add it to the list
if g not in genera:
genera.append(g)
# use this to get information on how to realize a curve
# print (g, degrees)
# add all valid (d_1, ..., d_i+1, ..., d_{n-1})
for i in range(len(degrees)):
new = list(degrees)
new[i] = new[i] + 1
# we only look at increasing lists of degrees
if sorted(new) == new:
queue.append(tuple(new))
# add (d_1, ..., d_{n-1}, 2): with , 1 at the end genus is constant
queue.append(degrees + (2, ))
return sorted(genera)
CROSSREFS
Sequence in context: A129948 A050414 A342469 * A136681 A206330 A104373
KEYWORD
nonn
AUTHOR
Pieter Belmans, Dec 27 2015
STATUS
approved