Logo Université de Nantes

Christoph Sorger

Professeur de mathématiques à Nantes Université

Logo Centre national de la recherche scientifique

Varia

Singularités ADE

Voilà quelques assets/images de singularités ADE que j’ai faites à l’occasion d’un colloquium en utilisant les programmes surf et surfex.

A2 déformé

Les déformations font bien apparaître le graphe de Dynkin de la singularité !

Si Surf ne veut pas s’installer sur votre Mac ou Ubuntu, il se peut que cette page soit utile.

Représentations linéaires determinantielles de surface cubiques

Dans Twisted cubics and Cubic Fourfolds nous déterminons le nombre de représentations linéaires determinantielles non équivalentes de surfaces cubiques avec type de singularité donné. D’après ce que nous montrons, ils sont en bijection avec les \(W(R_0)\)-orbits sur \(R\setminus R_0\)\(R\) est le système de racines de \(E_6\) et où les \(R_0\) correspond au type de singularités (classifiés par les sous-diagrammes de Dynkin de \(\widetilde{E}_6\)).

Voilà le tableau des nombres dans les notations de Dolgachev Classical Algebraic Geometry: A Modern View, Ch. 9:

\(R_0\) Type # \(R_0\) Type # \(R_0\) Type #
\(\emptyset\) I 72 \(4A_1\) XVI 13 \(A_1+2A_2\) XVII 6
\(A_1\) II 50 \(2A_1+A_2\) XIII 12 \(A_1+A_4\) XIV 4
\(2A_1\) IV 34 \(A_1+A_3\) X 10 \(A_5\) XI 4
\(A_2\) III 30 \(2A_2\) IX 12 \(D_5\) XV 2
\(3A_1\) VIII 22 \(A_4\) VII 8 \(A_1+A_5\) XIX 1
\(A_1+A_2\) VI 20 \(D_4\) XII 6 \(3A_2\) XXI 2
\(A_3\) V 16 \(2A_1+A_3\) XVIII 5 \(E_6\) X 0

Ces nombres se calculent par ordinateur. Voilà un programme en utilisant l’interface Gap de Sage.

def number_orbits(RS, S):
    """
    Given a root system RS and a subgroup S of the Weyl group,
    returns the number of orbits for the action of S on the roots.
    """
    P = RS.PositiveRoots()
    N = RS.NegativeRoots()
    R = gap.Concatenation('%s' % P.name(), '%s' % N.name())
    ol = gap.OrbitLengthsDomain('%s' % S.name(), '%s' % R.name())
    return len(ol.sage())

# E6 and its Weyl group
E6 = gap.SimpleLieAlgebra('"E"', '6', 'Rationals')
RS = E6.RootSystem()
W = RS.WeylGroup()
W_gens = W.GeneratorsOfGroup()

# The simple reflections that generate W, s[0]=[], s[1], ..., s[6]
s = [1] + W_gens.sage()
# Determine s[0] in terms of s[i] for i=1, ..., 6.
# We use sage's library combinat for that :
G = WeylGroup(['E', 6])
sr = G.simple_reflections()
reduced_word = sr[0].reduced_word()
s[0] = s[reduced_word[0]]
for i in range(1, len(reduced_word)):
    s[0] = gap.eval('%s * %s' % (s[0], s[reduced_word[i]]))

# Do the calculation :
S = W.Subgroup('[%s^2]' % s[1])
print "I, Ø =", number_orbits(RS, S)
S = W.Subgroup('[%s]' % s[1])
print "II, A1 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s]' % (s[1], s[3]))
print "III, A2 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s]' % (s[1], s[4]))
print "IV, 2A1 =", number_orbits(RS, S) - 2
S = W.Subgroup('[%s, %s, %s]' % (s[1], s[3], s[4]))
print "V, A3 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s, %s]' % (s[1], s[4], s[5]))
print "VI, A1+A2 =", number_orbits(RS, S) - 2
S = W.Subgroup('[%s, %s, %s, %s]' % (s[1], s[3], s[4], s[5]))
print "VII, A4 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s, %s]' % (s[1], s[4], s[6]))
print "VIII, 3A1 =", number_orbits(RS, S) - 3
S = W.Subgroup('[%s, %s, %s, %s]' % (s[1], s[3], s[5], s[6]))
print "IX, 2A2 =", number_orbits(RS, S) - 2
S = W.Subgroup('[%s, %s, %s, %s]' % (s[1], s[4], s[5], s[6]))
print "X, A1+A3 =", number_orbits(RS, S) - 2
S = W.Subgroup('[%s, %s, %s, %s, %s]' % (s[1], s[3], s[4], s[5], s[6]))
print "XI, A5 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s, %s, %s]' % (s[3], s[4], s[5], s[2]))
print "XII, D4 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s, %s, %s]' % (s[1], s[2], s[5], s[6]))
print "XIII, 2A1+A2 =", number_orbits(RS, S) - 3
S = W.Subgroup('[%s, %s, %s, %s, %s]' % (s[1], s[2], s[4], s[5], s[6]))
print "XIV, A1+A4 =", number_orbits(RS, S) - 2
S = W.Subgroup('[%s, %s, %s, %s, %s]' % (s[3], s[2], s[4], s[5], s[6]))
print "XV, D5 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s, %s, %s]' % (s[1], s[4], s[0], s[6]))
print "XVI, 4A1 =", number_orbits(RS, S) - 4
S = W.Subgroup('[%s, %s, %s, %s, %s]' % (s[1], s[2], s[0], s[5], s[6]))
print "XVII, A1+2A2 =", number_orbits(RS, S) - 3
S = W.Subgroup('[%s, %s, %s, %s, %s]' % (s[1], s[0], s[4], s[5], s[6]))
print "XVIII, 2A1+A3 =", number_orbits(RS, S) - 3
S = W.Subgroup('[%s, %s, %s, %s, %s, %s]' % (s[0], s[1], s[3], s[4], s[5], s[6]))
print "XIX, A1+A5 =", number_orbits(RS, S) - 2
S = W.Subgroup('[%s, %s, %s, %s, %s, %s]' % (s[1], s[2], s[3], s[4], s[5], s[6]))
print "XX, E6 =", number_orbits(RS, S) - 1
S = W.Subgroup('[%s, %s, %s, %s, %s, %s]' % (s[1], s[3], s[5], s[6], s[2], s[0]))
print "XXI, 3A2 =", number_orbits(RS, S) - 3
Logo Laboratoire de mathématiques Jean Leray
LMJL
UMR n° 6629
Logo Centre de mathématiques Henri Lebesgue
Logo Institut Universitaire de France