Fundamental and Advanced Algorithms in Singular

0 downloads 0 Views 21MB Size Report
Apr 18, 2017 - Singular. Computer algebra system for polynomial computations, over 30 ...... Distributed run-time system suitable for massively parallel.
Fundamental and Advanced Algorithms in Singular Janko Boehm, Yue Ren University of Kaiserslautern

3C in G Workshop on Computational Algebra Cambridge, April 18, 2017

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

1 / 76

Singular Computer algebra system for polynomial computations, over 30 development teams worldwide, over 140 libraries for advanced topics.

https://www.singular.uni-kl.de/

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

2 / 76

Singular Computer algebra system for polynomial computations, over 30 development teams worldwide, over 140 libraries for advanced topics.

https://www.singular.uni-kl.de/ Special emphasis on algebraic geometry, commutative and non-commutative algebra, singularity theory, packages for convex and tropical geometry. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

2 / 76

Outline Warm-up, Gr¨obner bases Normalization, Adjoint Curves, Classification of Singularities Parallel Computations Resolution of Singularities Modular Methods Massively Parallel Computations

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

3 / 76

Outline Warm-up, Gr¨obner bases Normalization, Adjoint Curves, Classification of Singularities Parallel Computations Resolution of Singularities Modular Methods Massively Parallel Computations Primary Decomposition Standard Bases and Associated Graded Ring Convex Geometry Computation of Tropical Varieties

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

3 / 76

Outline Warm-up, Gr¨obner bases Normalization, Adjoint Curves, Classification of Singularities Parallel Computations Resolution of Singularities Modular Methods Massively Parallel Computations Primary Decomposition Standard Bases and Associated Graded Ring Convex Geometry Computation of Tropical Varieties Computing the GIT-Fan Feynman Integrals and Tropical Mirror Symmetry Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

3 / 76

Parametrizing Rational Curves Example

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

4 / 76

Parametrizing Rational Curves Example We consider the degree-5 curve with equation x 5 + 10x 4 y + 20x 3 y 2 + 130x 2 y 3 − 20xy 4 + 20y 5 − 2x 4 z

− 40x 3 yz − 150x 2 y 2 z − 90xy 3 z − 40y 4 z + x 3 z 2 + 30x 2 yz 2 + 110xy 2 z 2 + 20y 3 z 2 = 0.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

5 / 76

Parametrizing Rational Curves Example We consider the degree-5 curve with equation x 5 + 10x 4 y + 20x 3 y 2 + 130x 2 y 3 − 20xy 4 + 20y 5 − 2x 4 z

− 40x 3 yz − 150x 2 y 2 z − 90xy 3 z − 40y 4 z + x 3 z 2 + 30x 2 yz 2 + 110xy 2 z 2 + 20y 3 z 2 = 0.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

5 / 76

Parametrizing Rational Curves Example We consider the degree-5 curve with equation x 5 + 10x 4 y + 20x 3 y 2 + 130x 2 y 3 − 20xy 4 + 20y 5 − 2x 4 z

− 40x 3 yz − 150x 2 y 2 z − 90xy 3 z − 40y 4 z + x 3 z 2 + 30x 2 yz 2 + 110xy 2 z 2 + 20y 3 z 2 = 0.

Genus Formula. Janko Boehm (TU-KL)

pg (C ) = pa (C ) − δ(C ) = pa (C ) − ∑P ∈Sing(Γ) δP (C ) Algorithms in Singular

April 18, 2017

5 / 76

Parametrizing Rational Curves

Example > ring R = 0, (x,y,z), dp; > poly f = x5+10x4y+20x3y2+130x2y3-20xy4+20y5-2x4z-40x3yz-150x2y2z -90xy3z-40y4z+x3z2+30x2yz2+110xy2z2+20y3z2; > LIB "paraplanecurves.lib"; > genus(f); 0 > paraPlaneCurve(f);

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

6 / 76

The Parametrization Algorithm Example > ideal AI = adjointIdeal(f); // requires normalization, integral bases > AI; [1]=y3-y2z [2]=xy2-xyz [3]=x2y-xyz [4]=x3-x2z > def Rn = mapToRatNormCurve(f,AI); > setring(Rn);

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

7 / 76

The Parametrization Algorithm Example > ideal AI = adjointIdeal(f); // requires normalization, integral bases > AI; [1]=y3-y2z [2]=xy2-xyz [3]=x2y-xyz [4]=x3-x2z > def Rn = mapToRatNormCurve(f,AI); > setring(Rn); > RNC; RNC[1]=y(2)*y(3)-y(1)*y(4) RNC[2]=20*y(1)*y(2)-20*y(2)^2+130*y(1)*y(4) +20*y(2)*y(4)+10*y(3)*y(4)+y(4)^2 RNC[3]=20*y(1)^2-20*y(1)*y(2)+130*y(1)*y(3) +10*y(3)^2+20*y(1)*y(4)+y(3)*y(4) Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

7 / 76

The Parametrization Algorithm

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

8 / 76

The Parametrization Algorithm Example > LIB "sing.lib"; > radical(slocus(RNC)); [1]=y(4) [2]=y(3) [2]=y(2) [1]=y(1) > rncAntiCanonicalMap(RNC); [1]=2*y(2)+13*y(4) [2]=y(4)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

9 / 76

The Parametrization Algorithm Example > LIB "sing.lib"; > radical(slocus(RNC)); [1]=y(4) [2]=y(3) [2]=y(2) [1]=y(1) > rncAntiCanonicalMap(RNC); [1]=2*y(2)+13*y(4) [2]=y(4)

Remark May require quadratic field extension in even-degree case.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

9 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power. In more than one variable we have to fix a monomial ordering (a total ordering compatible with multiplication).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power. In more than one variable we have to fix a monomial ordering (a total ordering compatible with multiplication). Divide x 2 − y 2 durch x 2 + y und xy + x with respect to lexicographic ordering.   x 2 − y 2 = 1 · x 2 + y + −y 2 − y x2 + y −y 2 − y

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power. In more than one variable we have to fix a monomial ordering (a total ordering compatible with multiplication). Divide x 2 − y 2 durch x 2 + y und xy + x with respect to lexicographic ordering.   x 2 − y 2 = 1 · x 2 + y + −y 2 − y x2 + y −y 2 − y so remainder 6= 0, but 

x 2 − y 2 = −y x 2 + y + x (xy + x ) ∈ I := x 2 + y , xy + x

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power. In more than one variable we have to fix a monomial ordering (a total ordering compatible with multiplication). Divide x 2 − y 2 durch x 2 + y und xy + x with respect to lexicographic ordering.   x 2 − y 2 = 1 · x 2 + y + −y 2 − y x2 + y −y 2 − y so remainder 6= 0, but 

x 2 − y 2 = −y x 2 + y + x (xy + x ) ∈ I := x 2 + y , xy + x Problem: Lead terms cancel, division algorithm can’t do that.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power. In more than one variable we have to fix a monomial ordering (a total ordering compatible with multiplication). Divide x 2 − y 2 durch x 2 + y und xy + x with respect to lexicographic ordering.   x 2 − y 2 = 1 · x 2 + y + −y 2 − y x2 + y −y 2 − y so remainder 6= 0, but 

x 2 − y 2 = −y x 2 + y + x (xy + x ) ∈ I := x 2 + y , xy + x Problem: Lead terms cancel, division algorithm can’t do that. Solution: Add y 2 + y to the divisor set. The result is a Gr¨ obner basis G of I . Then

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Division with remainder in one variable successively eliminates the highest power. In more than one variable we have to fix a monomial ordering (a total ordering compatible with multiplication). Divide x 2 − y 2 durch x 2 + y und xy + x with respect to lexicographic ordering.   x 2 − y 2 = 1 · x 2 + y + −y 2 − y x2 + y −y 2 − y so remainder 6= 0, but 

x 2 − y 2 = −y x 2 + y + x (xy + x ) ∈ I := x 2 + y , xy + x Problem: Lead terms cancel, division algorithm can’t do that. Solution: Add y 2 + y to the divisor set. The result is a Gr¨ obner basis G of I . Then f ∈ I ⇐⇒ NF (f , G ) = 0 Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

10 / 76

The Main Computational Tool: Gr¨obner Bases Example Gr¨ obner Bases can be used to: eliminate variables (→ birational geometry), ideal intersections, compute ideal quotients

(I : J ) = {a ∈ R | aJ ⊂ I } for ideals I , J ⊂ R, saturations, syzygies (→ homological algebra). Greuel, G.-M., Pfister, G.: A Singular Introduction to Commutative Algebra. Springer. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

11 / 76

Normalization Setup: A = K [X ]/I domain.

Definition The normalization A of A is the integral closure of A in its quotient field Q (A).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

12 / 76

Normalization Setup: A = K [X ]/I domain.

Definition The normalization A of A is the integral closure of A in its quotient field Q (A). We call A normal if A = A.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

12 / 76

Normalization Setup: A = K [X ]/I domain.

Definition The normalization A of A is the integral closure of A in its quotient field Q (A). We call A normal if A = A.

Theorem (Noether) A is a finitely generated A-module.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

12 / 76

Normalization Setup: A = K [X ]/I domain.

Definition The normalization A of A is the integral closure of A in its quotient field Q (A). We call A normal if A = A.

Theorem (Noether) A is a finitely generated A-module.

Example

Curve I = x 3 + x 2 − y 2 ⊂ K [x, y ] A = K [x, y ]/I x y

Janko Boehm (TU-KL)

∼ = 7→ 7→

K [t 2 − 1, t 3 − t ] t2 − 1 t3 − t

Algorithms in Singular



K [t ] ∼ =A

April 18, 2017

12 / 76

Normalization Setup: A = K [X ]/I domain.

Definition The normalization A of A is the integral closure of A in its quotient field Q (A). We call A normal if A = A.

Theorem (Noether) A is a finitely generated A-module.

Example

Curve I = x 3 + x 2 − y 2 ⊂ K [x, y ] A = K [x, y ]/I x Dy

∼ = 7→ 7→ E

K [t 2 − 1, t 3 − t ] t2 − 1 t3 − t



K [t ] ∼ =A

As an A-module A = 1, yx . Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

12 / 76

Normalization Lemma If J ⊂ A is an ideal and 0 6= g ∈ J, then

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

13 / 76

Normalization Lemma If J ⊂ A is an ideal and 0 6= g ∈ J, then A a

,→ 7→

Janko Boehm (TU-KL)

HomA (J, J ) a· ϕ

∼ =

1 g (gJ :A

7→

ϕ (g ) g

Algorithms in Singular

J)



A

April 18, 2017

13 / 76

Normalization Lemma If J ⊂ A is an ideal and 0 6= g ∈ J, then A a

,→ 7→

HomA (J, J ) a· ϕ

∼ =

1 g (gJ :A

7→

ϕ (g ) g

J)



A

Algorithm Starting from A0 = A and J0 = J,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

13 / 76

Normalization Lemma If J ⊂ A is an ideal and 0 6= g ∈ J, then A a

,→ 7→

HomA (J, J ) a· ϕ

∼ =

1 g (gJ :A

7→

ϕ (g ) g

J)



A

Algorithm Starting from A0 = A and J0 = J, setting Ai +1 = g1 (gJi :Ai Ji )

Janko Boehm (TU-KL)

Algorithms in Singular

Ji =



JAi

April 18, 2017

13 / 76

Normalization Lemma If J ⊂ A is an ideal and 0 6= g ∈ J, then A a

,→ 7→

HomA (J, J ) a· ϕ

∼ =

1 g (gJ :A

7→

ϕ (g ) g

J)



A

Algorithm Starting from A0 = A and J0 = J, setting Ai +1 = g1 (gJi :Ai Ji )

Ji =



JAi

we get a chain of extensions of reduced Noetherian rings A = A0 ⊂ · · · ⊂ Ai ⊂ · · · ⊂ Am = Am+1 . Terminates since A is Noetherian. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

13 / 76

Grauert-Remmert criterion Non-normal locus N (A) is contained in singular locus Sing(A).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

14 / 76

Grauert-Remmert criterion Non-normal locus N (A) is contained in singular locus Sing(A).

Theorem (Grauert-Remmert) Let 0 6= J ⊂ A be an ideal with J =

Janko Boehm (TU-KL)



J

Algorithms in Singular

April 18, 2017

14 / 76

Grauert-Remmert criterion Non-normal locus N (A) is contained in singular locus Sing(A).

Theorem (Grauert-Remmert) Let 0 6= J ⊂ A be an ideal with J =



J and

N (A) ⊂ V (J ).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

14 / 76

Grauert-Remmert criterion Non-normal locus N (A) is contained in singular locus Sing(A).

Theorem (Grauert-Remmert) Let 0 6= J ⊂ A be an ideal with J =



J and

N (A) ⊂ V (J ). Then A is normal iff the inclusion A ,→ a 7→

HomA (J, J ) a·

is an isomorphism.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

14 / 76

Grauert-Remmert criterion Non-normal locus N (A) is contained in singular locus Sing(A).

Theorem (Grauert-Remmert) Let 0 6= J ⊂ A be an ideal with J =



J and

N (A) ⊂ V (J ). Then A is normal iff the inclusion A ,→ a 7→

HomA (J, J ) a·

is an isomorphism. p =⇒ For J = Jac(I ) algorithm terminates with Am = Am+1 = A,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

14 / 76

Grauert-Remmert criterion Non-normal locus N (A) is contained in singular locus Sing(A).

Theorem (Grauert-Remmert) Let 0 6= J ⊂ A be an ideal with J =



J and

N (A) ⊂ V (J ). Then A is normal iff the inclusion A ,→ a 7→

HomA (J, J ) a·

is an isomorphism. p =⇒ For J = Jac(I ) algorithm terminates with Am = Am+1 = A, since:

Lemma √ N (Ai ) ⊂ V ( JAi ) Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

14 / 76

Local Techniques for Normalization Theorem (BDLSS, 2011) Suppose Sing(A) = {P1 , . . . , Pr }

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

15 / 76

Local Techniques for Normalization Theorem (BDLSS, 2011) Suppose Sing(A) = {P1 , . . . , Pr } and

A ⊂ Bi ⊂ A is the ring given by the normalization algorithm applied to Pi instead of J

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

15 / 76

Local Techniques for Normalization Theorem (BDLSS, 2011) Suppose Sing(A) = {P1 , . . . , Pr } and

A ⊂ Bi ⊂ A is the ring given by the normalization algorithm applied to Pi instead of J. Then

(Bi )Pi = APi (Bi )Q = AQ for all Pi 6= Q ∈ Spec A,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

15 / 76

Local Techniques for Normalization Theorem (BDLSS, 2011) Suppose Sing(A) = {P1 , . . . , Pr } and

A ⊂ Bi ⊂ A is the ring given by the normalization algorithm applied to Pi instead of J. Then

(Bi )Pi = APi (Bi )Q = AQ for all Pi 6= Q ∈ Spec A, and A = B1 + . . . + Br . We call Bi the minimal local contribution to A at Pi . Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

15 / 76

Adjoint ideals Setup: Γ ⊂ Pr integral, non-degenerate projective curve, π : Γ → Γ normalization map, I (Γ) $ I ⊂ k [x0 , ..., xr ] saturated homogeneous ideal.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

16 / 76

Adjoint ideals Setup: Γ ⊂ Pr integral, non-degenerate projective curve, π : Γ → Γ normalization map, I (Γ) $ I ⊂ k [x0 , ..., xr ] saturated homogeneous ideal. Let H be pullback of hyperplane, ∆(I ) pullback of Proj(S /I ).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

16 / 76

Adjoint ideals Setup: Γ ⊂ Pr integral, non-degenerate projective curve, π : Γ → Γ normalization map, I (Γ) $ I ⊂ k [x0 , ..., xr ] saturated homogeneous ideal. Let H be pullback of hyperplane, ∆(I ) pullback of Proj(S /I ). Then 0 → IeOΓ → π∗ (IeO ) → F → 0 Γ

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

16 / 76

Adjoint ideals Setup: Γ ⊂ Pr integral, non-degenerate projective curve, π : Γ → Γ normalization map, I (Γ) $ I ⊂ k [x0 , ..., xr ] saturated homogeneous ideal. Let H be pullback of hyperplane, ∆(I ) pullback of Proj(S /I ). Then 0 → IeOΓ → π∗ (IeOΓ ) → F → 0 gives for m  0 linear maps  $m 0 → Im /I (Γ)m → H 0 Γ, OΓ (mH − ∆(I )) → H 0 (Γ, F ) → 0

Definition I is an adjoint ideal of Γ if $m surjective for m  0.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

16 / 76

Adjoint ideals Setup: Γ ⊂ Pr integral, non-degenerate projective curve, π : Γ → Γ normalization map, I (Γ) $ I ⊂ k [x0 , ..., xr ] saturated homogeneous ideal. Let H be pullback of hyperplane, ∆(I ) pullback of Proj(S /I ). Then 0 → IeOΓ → π∗ (IeOΓ ) → F → 0 gives for m  0 linear maps  $m 0 → Im /I (Γ)m → H 0 Γ, OΓ (mH − ∆(I )) → H 0 (Γ, F ) → 0

Definition I is an adjoint ideal of Γ if $m surjective for m  0. h0 (Γ, F ) =

∑P ∈Sing(Γ) `(IP OΓ,P /IP )

=⇒

Theorem I adjoint ⇐⇒ IP OΓ,P = IP for all P ∈ Sing(Γ). Conductor is largest ideal with this property. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

16 / 76

Adjoint ideals Definition Gorenstein adjoint ideal is the unique largest homogeneous ideal G ⊂ K [x0 , . . . , xr ] with GP = COΓ,P for all P ∈ Sing(Γ).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

17 / 76

Adjoint ideals Definition Gorenstein adjoint ideal is the unique largest homogeneous ideal G ⊂ K [x0 , . . . , xr ] with GP = COΓ,P for all P ∈ Sing(Γ). Applications:

Example If Γ is plane curve of degree n, then Gn−3 cuts out canonical linear series.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

17 / 76

Adjoint ideals Definition Gorenstein adjoint ideal is the unique largest homogeneous ideal G ⊂ K [x0 , . . . , xr ] with GP = COΓ,P for all P ∈ Sing(Γ). Applications:

Example If Γ is plane curve of degree n, then Gn−3 cuts out canonical linear series.

Example If Γ is plane rational of degree n then Gn−2 maps Γ to rational normal curve of degree n − 2 in Pn−2 .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

17 / 76

Adjoint ideals Definition Gorenstein adjoint ideal is the unique largest homogeneous ideal G ⊂ K [x0 , . . . , xr ] with GP = COΓ,P for all P ∈ Sing(Γ). Applications:

Example If Γ is plane curve of degree n, then Gn−3 cuts out canonical linear series.

Example If Γ is plane rational of degree n then Gn−2 maps Γ to rational normal curve of degree n − 2 in Pn−2 .

Example Brill-Noether-Algorithm for computing Riemann-Roch spaces. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

17 / 76

Example Minimal generators of G for rational curve of degree 5:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

18 / 76

Example Minimal generators of G for rational curve of degree 5:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

18 / 76

Example Minimal generators of G for rational curve of degree 5:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

18 / 76

Example Minimal generators of G for rational curve of degree 5:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

18 / 76

Example Minimal generators of G for rational curve of degree 5:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

18 / 76

Example

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

19 / 76

Local-to-global algorithm Definition The local adjoint ideal of Γ at P ∈ Sing Γ is the largest homogeneous ideal G(P ) ⊂ k [x0 , . . . , xr ] with G(P )P = COΓ,P

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

20 / 76

Local-to-global algorithm Definition The local adjoint ideal of Γ at P ∈ Sing Γ is the largest homogeneous ideal G(P ) ⊂ k [x0 , . . . , xr ] with G(P )P = COΓ,P

Lemma (BDLP, 2015) G=

\ P ∈Sing Γ

G(P )

The G(P ) can be computed in parallel via normalization.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

20 / 76

Local-to-global algorithm Definition The local adjoint ideal of Γ at P ∈ Sing Γ is the largest homogeneous ideal G(P ) ⊂ k [x0 , . . . , xr ] with G(P )P = COΓ,P

Lemma (BDLP, 2015) G=

\ P ∈Sing Γ

G(P )

The G(P ) can be computed in parallel via normalization.

Algorithm (BDLP, 2015) If

1 dU

is the minimal local contribution at P then G(P ) = (d : U )h

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

20 / 76

Special types of singularities If Γ ⊂ P2 has a singularity of type An at P = (0 : 0 : 1), then given by f = T 2 + W n +1

Janko Boehm (TU-KL)

with T , W ∈ C[[x, y ]].

Algorithms in Singular

April 18, 2017

21 / 76

Special types of singularities If Γ ⊂ P2 has a singularity of type An at P = (0 : 0 : 1), then given by f = T 2 + W n +1

with T , W ∈ C[[x, y ]].

Compute Tj = T + O (j + 1) inductively.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

21 / 76

Special types of singularities If Γ ⊂ P2 has a singularity of type An at P = (0 : 0 : 1), then given by f = T 2 + W n +1

with T , W ∈ C[[x, y ]].

Compute Tj = T + O (j + 1) inductively.

Lemma  1 If P = (0, 0) is of type An and s = n+ , then 2 G(P ) = hx s , Ts −1 , y s ih ⊂ C[x, y , z ]

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

21 / 76

Special types of singularities If Γ ⊂ P2 has a singularity of type An at P = (0 : 0 : 1), then given by f = T 2 + W n +1

with T , W ∈ C[[x, y ]].

Compute Tj = T + O (j + 1) inductively.

Lemma  1 If P = (0, 0) is of type An and s = n+ , then 2 G(P ) = hx s , Ts −1 , y s ih ⊂ C[x, y , z ] Similar results for Dn , En and other singularities in Arnold’s list.

Example

f = x 4 − y 2 + x 5 with A3 singularity. Then G(P ) = x 2 , y .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

21 / 76

Parallel Computations in Singular Example > LIB("parallel.lib","random.lib"); > ring R = 0,x(1..4),dp; > ideal I = randomid(maxideal(3),3,100);

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

22 / 76

Parallel Computations in Singular Example > > > >

LIB("parallel.lib","random.lib"); ring R = 0,x(1..4),dp; ideal I = randomid(maxideal(3),3,100); proc sizeStd(ideal I, string monord){ def R = basering; list RL = ringlist(R); RL[3][1][1] = monord; def S = ring(RL); setring(S); return(size(std(imap(R,I))));}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

22 / 76

Parallel Computations in Singular Example > > > >

LIB("parallel.lib","random.lib"); ring R = 0,x(1..4),dp; ideal I = randomid(maxideal(3),3,100); proc sizeStd(ideal I, string monord){ def R = basering; list RL = ringlist(R); RL[3][1][1] = monord; def S = ring(RL); setring(S); return(size(std(imap(R,I))));}

> list commands = "sizeStd","sizeStd"; > list args = list(I,"lp"),list(I,"dp");

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

22 / 76

Parallel Computations in Singular Example > > > >

LIB("parallel.lib","random.lib"); ring R = 0,x(1..4),dp; ideal I = randomid(maxideal(3),3,100); proc sizeStd(ideal I, string monord){ def R = basering; list RL = ringlist(R); RL[3][1][1] = monord; def S = ring(RL); setring(S); return(size(std(imap(R,I))));}

> list commands = "sizeStd","sizeStd"; > list args = list(I,"lp"),list(I,"dp"); > parallelWaitFirst(commands, args); [1] empty list [2] 11

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

22 / 76

Parallel Computations in Singular Example > > > >

LIB("parallel.lib","random.lib"); ring R = 0,x(1..4),dp; ideal I = randomid(maxideal(3),3,100); proc sizeStd(ideal I, string monord){ def R = basering; list RL = ringlist(R); RL[3][1][1] = monord; def S = ring(RL); setring(S); return(size(std(imap(R,I))));}

> list commands = "sizeStd","sizeStd"; > list args = list(I,"lp"),list(I,"dp"); > parallelWaitFirst(commands, args); [1] empty list [2] 11 > parallelWaitAll(commands, args); [1] 55 [2] 11 Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

22 / 76

Parallelization

There are algorithms whose basic strategy is inherently parallel, whereas others are sequential in nature.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

23 / 76

Parallelization

There are algorithms whose basic strategy is inherently parallel, whereas others are sequential in nature.

Example Normalization is inherently sequential. Local-to-global algorithms for normalization and adjoint ideal are parallel, if the singular locus decomposes. Villamayor’s constructive version of Hironaka’s desingularization theorem is inherently parallel by the iterative use of blow-ups in charts. Modular methods can be used to turn sequential algorithms over Q into parallel ones.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

23 / 76

Example: Resolution of Singularities Theorem (Hironaka, 1964) For every algebraic variety over a field K with char K = 0 a desingularization can be obtained by a finite sequence of blow-ups along smooth centers.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

24 / 76

Example: Resolution of Singularities Theorem (Hironaka, 1964) For every algebraic variety over a field K with char K = 0 a desingularization can be obtained by a finite sequence of blow-ups along smooth centers.

Example Blow-up of the node resolves the singularity

←−

by replacing it by a line of points corresponding to its tangent directions, hence separating the two branches of the curve. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

24 / 76

Hironaka Resolution of Singularities Example: x 2 − y 2z 2 = 0

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

25 / 76

Hironaka Resolution of Singularities Example: x 2 − y 2z 2 = 0

Resolution Step Search for Center of Blowup

Gluing Step

Blowup in Charts

Janko Boehm (TU-KL)

Traversal of Tree of Charts required to draw information from resolution data

Algorithms in Singular

April 18, 2017

25 / 76

Hironaka Resolution of Singularities Example > > > > > > >

LIB "resolve.lib"; ring R= 0,(x,y,z),dp; ideal I = x2-y2z2; list L = resolve(I); def S1 = L[1][1]; setring S1; showBO(BO); ==== Ambient Space: [1]=0 ==== Ideal of Variety: [1]=y(1)^2-1 ==== Exceptional Divisors: ...

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

26 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof. Modular techniques are an important tool to improve performance of algorithms over Q.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof. Modular techniques are an important tool to improve performance of algorithms over Q. Fundamental approach: 1

Compute modulo primes.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof. Modular techniques are an important tool to improve performance of algorithms over Q. Fundamental approach: 1 2

Compute modulo primes. Reconstruct result over Q.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof. Modular techniques are an important tool to improve performance of algorithms over Q. Fundamental approach: 1 2

Compute modulo primes. Reconstruct result over Q.

Benefits: Avoid intermediate coefficient growth.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof. Modular techniques are an important tool to improve performance of algorithms over Q. Fundamental approach: 1 2

Compute modulo primes. Reconstruct result over Q.

Benefits: Avoid intermediate coefficient growth. Obtain parallel version of the algorithm.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Many exact computations in computer algebra are carried out over Q and extensions thereof. Modular techniques are an important tool to improve performance of algorithms over Q. Fundamental approach: 1 2

Compute modulo primes. Reconstruct result over Q.

Benefits: Avoid intermediate coefficient growth. Obtain parallel version of the algorithm.

Goal: General reconstruction scheme for algorithms in commutative algebra, algebraic geometry, number theory. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

27 / 76

Modular computations Example Compute 13 3 1 + = 4 3 12 using modular techniques:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

28 / 76

Modular computations Example Compute 13 3 1 + = 4 3 12 using modular techniques:

3 4

7→

Z/5

×

Z/7

×

Z/11

×

Z/101

(2

,

6

,

9

,

26 )

Janko Boehm (TU-KL)

Algorithms in Singular

∼ =

Z/38885

April 18, 2017

28 / 76

Modular computations Example Compute 13 3 1 + = 4 3 12 using modular techniques:

3 4

7→

Z/5

×

Z/7

×

Z/11

×

Z/101

(2

,

6

,

9

,

26 )

4

,

34 )

∼ =

Z/38885

+ 1 3

7→

(2

Janko Boehm (TU-KL)

,

5

,

Algorithms in Singular

April 18, 2017

28 / 76

Modular computations Example Compute 13 3 1 + = 4 3 12 using modular techniques:

3 4

7→

Z/5

×

Z/7

×

Z/11

×

Z/101

(2

,

6

,

9

,

26 )

4

,

34 )

2

,

60 )

∼ =

Z/38885

+ 1 3

7→

(2

,

5

,

q (4

Janko Boehm (TU-KL)

,

4

,

Algorithms in Singular

April 18, 2017

28 / 76

Modular computations Example Compute 13 3 1 + = 4 3 12 using modular techniques:

3 4

7→

Z/5

×

Z/7

×

Z/11

×

Z/101

(2

,

6

,

9

,

26 )

4

,

34 )

2

,

60 )

∼ =

Z/38885

7→

22684

+ 1 3

7→

(2

,

5

,

q (4

Janko Boehm (TU-KL)

,

4

,

Algorithms in Singular

April 18, 2017

28 / 76

Modular computations Example Compute 13 3 1 + = 4 3 12 using modular techniques:

3 4

7→

Z/5

×

Z/7

×

Z/11

×

Z/101

(2

,

6

,

9

,

26 )

4

,

34 )

2

,

60 )

∼ =

Z/38885

7→

22684

+ 1 3

7→

(2

,

5

,

q (4

,

4

,

How to obtain a rational number from 22684? Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

28 / 76

Rational reconstruction Theorem (Kornerup, Gregory, 1983) The Farey map  gcd(a, b ) = 1 a ∈ Q b gcd(b, N ) = 1

|a | , |b | ≤

p



(N − 1)/2 a b

Janko Boehm (TU-KL)

Algorithms in Singular

−→

Z/N

7−→

a·b

April 18, 2017

−1

29 / 76

Rational reconstruction Theorem (Kornerup, Gregory, 1983) The Farey map  gcd(a, b ) = 1 a ∈ Q b gcd(b, N ) = 1

|a | , |b | ≤

p



(N − 1)/2 a b

−→

Z/N

7−→

a·b

−1

is injective.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

29 / 76

Rational reconstruction Theorem (Kornerup, Gregory, 1983) The Farey map  gcd(a, b ) = 1 a ∈ Q b gcd(b, N ) = 1

|a | , |b | ≤

p



(N − 1)/2 a b

−→

Z/N

7−→

a·b

−1

is injective. Efficient algorithm for preimage.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

29 / 76

Rational reconstruction Theorem (Kornerup, Gregory, 1983) The Farey map  gcd(a, b ) = 1 a ∈ Q b gcd(b, N ) = 1

|a | , |b | ≤

p



(N − 1)/2 a b

−→

Z/N

7−→

a·b

−1

is injective. Efficient algorithm for preimage.

Example Indeed, in the above example  gcd(a, b ) = 1 a b ∈ Q gcd(b, 38885) = 1

Janko Boehm (TU-KL)



|a| , |b | ≤ 139

Algorithms in Singular

−→

Z/38885

April 18, 2017

29 / 76

Rational reconstruction Theorem (Kornerup, Gregory, 1983) The Farey map  gcd(a, b ) = 1 a ∈ Q b gcd(b, N ) = 1

|a | , |b | ≤

p



(N − 1)/2 a b

−→

Z/N

7−→

a·b

−1

is injective. Efficient algorithm for preimage.

Example Indeed, in the above example  gcd(a, b ) = 1 a b ∈ Q gcd(b, 38885) = 1



|a| , |b | ≤ 139 13 12

Janko Boehm (TU-KL)

Algorithms in Singular

−→

Z/38885

7−→

22684 April 18, 2017

29 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

2

For N = p1 · . . . · pr compute lift w.r.t Chinese remainder isomorphism Z/N ∼ = Z/p1 × . . . × Z/pr

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

2

For N = p1 · . . . · pr compute lift w.r.t Chinese remainder isomorphism Z/N ∼ = Z/p1 × . . . × Z/pr

3

If exists, compute preimage w.r.t injective Farey map.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

2

For N = p1 · . . . · pr compute lift w.r.t Chinese remainder isomorphism Z/N ∼ = Z/p1 × . . . × Z/pr

3

If exists, compute preimage w.r.t injective Farey map.

4

Verify correctness of lift.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

2

For N = p1 · . . . · pr compute lift w.r.t Chinese remainder isomorphism Z/N ∼ = Z/p1 × . . . × Z/pr

3

If exists, compute preimage w.r.t injective Farey map.

4

Verify correctness of lift.

This will yield correct result, provided N is large enough s.t. the Q-result is in source of Farey map, and

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

2

For N = p1 · . . . · pr compute lift w.r.t Chinese remainder isomorphism Z/N ∼ = Z/p1 × . . . × Z/pr

3

If exists, compute preimage w.r.t injective Farey map.

4

Verify correctness of lift.

This will yield correct result, provided N is large enough s.t. the Q-result is in source of Farey map, and none of the pi is bad.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Basic concept for modular computations 1

Compute result over Z/pi for distinct primes p1 , . . . , pr .

2

For N = p1 · . . . · pr compute lift w.r.t Chinese remainder isomorphism Z/N ∼ = Z/p1 × . . . × Z/pr

3

If exists, compute preimage w.r.t injective Farey map.

4

Verify correctness of lift.

This will yield correct result, provided N is large enough s.t. the Q-result is in source of Farey map, and none of the pi is bad.

Definition A prime p is called bad if the result over Q does not reduce modulo p to the result over Z/p. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

30 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Theorem (Arnold, 2003) Suppose F = {f1 , ..., fr } ⊂ Z[X ] with fi primitve,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Theorem (Arnold, 2003) Suppose F = {f1 , ..., fr } ⊂ Z[X ] with fi primitve, and G is the reduced Gr¨obner basis of hF i ⊂ Q[X ],

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Theorem (Arnold, 2003) Suppose F = {f1 , ..., fr } ⊂ Z[X ] with fi primitve, and G is the reduced Gr¨obner basis of hF i ⊂ Q[X ], G (p ) is the reduced Gr¨ obner basis of hFp i, and

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Theorem (Arnold, 2003) Suppose F = {f1 , ..., fr } ⊂ Z[X ] with fi primitve, and G is the reduced Gr¨obner basis of hF i ⊂ Q[X ], G (p ) is the reduced Gr¨ obner basis of hFp i, and GZ a minimal strong Gr¨ obnerbasis of hF i ⊂ Z[X ].

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Theorem (Arnold, 2003) Suppose F = {f1 , ..., fr } ⊂ Z[X ] with fi primitve, and G is the reduced Gr¨obner basis of hF i ⊂ Q[X ], G (p ) is the reduced Gr¨ obner basis of hFp i, and GZ a minimal strong Gr¨ obnerbasis of hF i ⊂ Z[X ]. Then p does not divide any lead coefficient in GZ ⇐⇒ LM G = LM G (p )

⇐⇒ Gp = G (p )

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations For G ⊂ K [X ] = K [x1 , . . . , xn ] and a monomial ordering >, let LM(G ) be the set of lead monomials of G . For G ⊂ Z[X ] define Gp := G ⊂ Z/p [X ].

Theorem (Arnold, 2003) Suppose F = {f1 , ..., fr } ⊂ Z[X ] with fi primitve, and G is the reduced Gr¨obner basis of hF i ⊂ Q[X ], G (p ) is the reduced Gr¨ obner basis of hFp i, and GZ a minimal strong Gr¨ obnerbasis of hF i ⊂ Z[X ]. Then p does not divide any lead coefficient in GZ ⇐⇒ LM G = LM G (p )

⇐⇒ Gp = G (p ) that is, p is not bad. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

31 / 76

Bad primes in Gr¨obner basis computations Example > > > > >

option("redSB"); ring R = integer,(x, y, z),lp; poly f = x7y5 + x2yz9 + xz11 + y3z9; ideal I = groebner(ideal(diff(f, x), diff(f, y), diff(f,z))); apply(list(I[1..size(I)]),leadcoef);

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

32 / 76

Bad primes in Gr¨obner basis computations Example > option("redSB"); > ring R = integer,(x, y, z),lp; > poly f = x7y5 + x2yz9 + xz11 + y3z9; > ideal I = groebner(ideal(diff(f, x), diff(f, y), diff(f,z))); > apply(list(I[1..size(I)]),leadcoef); 13781115527868730344777310464613260 83521912290113517241074608876444 60 12 4 12 12 45349632 12 1473863040 12 22674816 12 3888 12 12 12 13608 12 108 54 6 2 27 3 1 4 2 2 1 216 1 2 3 1 540 12 108 27 3 1 9 3 1 1 1 1 1 7 1 5 1 1

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

32 / 76

Bad primes in Gr¨obner basis computations Example > option("redSB"); > ring R = integer,(x, y, z),lp; > poly f = x7y5 + x2yz9 + xz11 + y3z9; > ideal I = groebner(ideal(diff(f, x), diff(f, y), diff(f,z))); > apply(list(I[1..size(I)]),leadcoef); 13781115527868730344777310464613260 83521912290113517241074608876444 60 12 4 12 12 45349632 12 1473863040 12 22674816 12 3888 12 12 12 13608 12 108 54 6 2 27 3 1 4 2 2 1 216 1 2 3 1 540 12 108 27 3 1 9 3 1 1 1 1 1 7 1 5 1 1

and the bad primes are the prime factors p = 2, 3, 5, 7, 11, 13, 257, 247072949, 328838088993550682027

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

32 / 76

Bad primes in Gr¨obner basis computations Example > option("redSB"); > ring R = integer,(x, y, z),lp; > poly f = x7y5 + x2yz9 + xz11 + y3z9; > ideal I = groebner(ideal(diff(f, x), diff(f, y), diff(f,z))); > apply(list(I[1..size(I)]),leadcoef); 13781115527868730344777310464613260 83521912290113517241074608876444 60 12 4 12 12 45349632 12 1473863040 12 22674816 12 3888 12 12 12 13608 12 108 54 6 2 27 3 1 4 2 2 1 216 1 2 3 1 540 12 108 27 3 1 9 3 1 1 1 1 1 7 1 5 1 1

and the bad primes are the prime factors p = 2, 3, 5, 7, 11, 13, 257, 247072949, 328838088993550682027 Note: The lead coefficients of the Gr¨ obner basis over Q involve only the prime factors 2, 3, 5, 7, 13. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

32 / 76

Bad primes Classification of bad primes: Type 1: Input modulo p not valid (no problem)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

33 / 76

Bad primes Classification of bad primes: Type 1: Input modulo p not valid (no problem) Type 2: Failure in the course of the algorithm (e.g. matrix not invertible modulo p, wastes computation time if happens)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

33 / 76

Bad primes Classification of bad primes: Type 1: Input modulo p not valid (no problem) Type 2: Failure in the course of the algorithm (e.g. matrix not invertible modulo p, wastes computation time if happens) Type 3: Computable invariant with known expected value (e.g. dimension) is wrong (have to do expensive test for each prime, although set of bad primes usually is finite)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

33 / 76

Bad primes Classification of bad primes: Type 1: Input modulo p not valid (no problem) Type 2: Failure in the course of the algorithm (e.g. matrix not invertible modulo p, wastes computation time if happens) Type 3: Computable invariant with known expected value (e.g. dimension) is wrong (have to do expensive test for each prime, although set of bad primes usually is finite) Type 4: Computable invariant with unknown expected value (e.g. lead ideal in Gr¨obner basis computations) is wrong (to detect by a majority vote, have to compute invariant for each modular result and store modular results)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

33 / 76

Bad primes Classification of bad primes: Type 1: Input modulo p not valid (no problem) Type 2: Failure in the course of the algorithm (e.g. matrix not invertible modulo p, wastes computation time if happens) Type 3: Computable invariant with known expected value (e.g. dimension) is wrong (have to do expensive test for each prime, although set of bad primes usually is finite) Type 4: Computable invariant with unknown expected value (e.g. lead ideal in Gr¨obner basis computations) is wrong (to detect by a majority vote, have to compute invariant for each modular result and store modular results) Type 5: otherwise.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

33 / 76

Example of type 5 bad prime For ideal I ⊂ Q[X ] and prime p define Ip = (I ∩ Z[X ])p .

Example Consider the algorithm I 7→ I =



p

I + Jac(I ) for

x 6 + y 6 + 7x 5 z + x 3 y 2 z − 31x 4 z 2 − 224x 3 z 3 + 244x 2 z 4 + 1632xz 5 + 576z 6

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017



34 / 76

Example of type 5 bad prime For ideal I ⊂ Q[X ] and prime p define Ip = (I ∩ Z[X ])p .

Example Consider the algorithm I 7→ I =



p

I + Jac(I ) for

x 6 + y 6 + 7x 5 z + x 3 y 2 z − 31x 4 z 2 − 224x 3 z 3 + 244x 2 z 4 + 1632xz 5 + 576z 6

Then w.r.t dp

Janko Boehm (TU-KL)



LM(I ) = x 6 = LM(I5 )

Algorithms in Singular

April 18, 2017

34 / 76

Example of type 5 bad prime For ideal I ⊂ Q[X ] and prime p define Ip = (I ∩ Z[X ])p .

Example Consider the algorithm I 7→ I =



p

I + Jac(I ) for

x 6 + y 6 + 7x 5 z + x 3 y 2 z − 31x 4 z 2 − 224x 3 z 3 + 244x 2 z 4 + 1632xz 5 + 576z 6

LM(I ) = x 6 = LM(I5 )

Then w.r.t dp U (0) = U (5) =

q q



I + Jac(I ) = hy , x − 4z i ∩ hy , x + 6z i

I5 + Jac(I5 ) = y , x 2 − z 2 = hy , x − z i ∩ hy , x + z i

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

34 / 76

Example of type 5 bad prime For ideal I ⊂ Q[X ] and prime p define Ip = (I ∩ Z[X ])p .

Example Consider the algorithm I 7→ I =



p

I + Jac(I ) for

x 6 + y 6 + 7x 5 z + x 3 y 2 z − 31x 4 z 2 − 224x 3 z 3 + 244x 2 z 4 + 1632xz 5 + 576z 6

LM(I ) = x 6 = LM(I5 )

Then w.r.t dp U (0) = U (5) =

q q



I + Jac(I ) = hy , x − 4z i ∩ hy , x + 6z i

I5 + Jac(I5 ) = y , x 2 − z 2 = hy , x − z i ∩ hy , x + z i

U (0)5 = y , (x + z )2

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

34 / 76

Example of type 5 bad prime For ideal I ⊂ Q[X ] and prime p define Ip = (I ∩ Z[X ])p .

Example Consider the algorithm I 7→ I =



p

I + Jac(I ) for

x 6 + y 6 + 7x 5 z + x 3 y 2 z − 31x 4 z 2 − 224x 3 z 3 + 244x 2 z 4 + 1632xz 5 + 576z 6

LM(I ) = x 6 = LM(I5 )

Then w.r.t dp U (0) = U (5) =

q q



I + Jac(I ) = hy , x − 4z i ∩ hy , x + 6z i

I5 + Jac(I5 ) = y , x 2 − z 2 = hy , x − z i ∩ hy , x + z i

U (0)5 = y , (x + z )2

Hence

Janko Boehm (TU-KL)

U (0)5 6 = U (5)

LM(U (0)) = y , x 2 = LM(U (5)) Algorithms in Singular

April 18, 2017

34 / 76

Error tolerant reconstruction Goal: Reconstruct

Janko Boehm (TU-KL)

a b

from r ∈ Z/N in the presence of bad primes.

Algorithms in Singular

April 18, 2017

35 / 76

Error tolerant reconstruction Goal: Reconstruct ba from r ∈ Z/N in the presence of bad primes. Algorithm: Find (x, y ) with yx = ba in the lattice Λ = h(N, 0), (r , 1)i ⊂ Z2

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

35 / 76

Error tolerant reconstruction Goal: Reconstruct ba from r ∈ Z/N in the presence of bad primes. Algorithm: Find (x, y ) with yx = ba in the lattice Λ = h(N, 0), (r , 1)i ⊂ Z2

Lemma (BDFP, 2015) All (x, y ) ∈ Λ with x 2 + y 2 < N are collinear.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

35 / 76

Error tolerant reconstruction Goal: Reconstruct ba from r ∈ Z/N in the presence of bad primes. Algorithm: Find (x, y ) with yx = ba in the lattice Λ = h(N, 0), (r , 1)i ⊂ Z2

Lemma (BDFP, 2015) All (x, y ) ∈ Λ with x 2 + y 2 < N are collinear.

Proof. Let λ = (x, y ), µ = (c, d ) ∈ Λ with x 2 + y 2 , c 2 + d 2 < N. Then y µ − d λ = (yc − xd, 0) ∈ Λ, so N |(yc − xd ). By Cauchy–Schwarz |yc − xd | < N, hence yc = xd.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

35 / 76

Error tolerant reconstruction Goal: Reconstruct ba from r ∈ Z/N in the presence of bad primes. Algorithm: Find (x, y ) with yx = ba in the lattice Λ = h(N, 0), (r , 1)i ⊂ Z2

Lemma (BDFP, 2015) All (x, y ) ∈ Λ with x 2 + y 2 < N are collinear.

Proof. Let λ = (x, y ), µ = (c, d ) ∈ Λ with x 2 + y 2 , c 2 + d 2 < N. Then y µ − d λ = (yc − xd, 0) ∈ Λ, so N |(yc − xd ). By Cauchy–Schwarz |yc − xd | < N, hence yc = xd. Now suppose N = N0 · M with gcd(N 0 , M ) = 1. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

35 / 76

Error tolerant reconstruction Think of N 0 as the product of the good primes with correct result s, and of M as the product of the bad primes with wrong result t.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

36 / 76

Error tolerant reconstruction Think of N 0 as the product of the good primes with correct result s, and of M as the product of the bad primes with wrong result t.

Theorem (BDFP, 2015) If

r 7→ (s, t )

and

with respect to Z/N ∼ = Z/N 0 × Z/M a ≡ s mod N 0 b

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

36 / 76

Error tolerant reconstruction Think of N 0 as the product of the good primes with correct result s, and of M as the product of the bad primes with wrong result t.

Theorem (BDFP, 2015) If

r 7→ (s, t )

and

with respect to Z/N ∼ = Z/N 0 × Z/M a ≡ s mod N 0 b

then (aM, bM ) ∈ Λ.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

36 / 76

Error tolerant reconstruction Think of N 0 as the product of the good primes with correct result s, and of M as the product of the bad primes with wrong result t.

Theorem (BDFP, 2015) If

r 7→ (s, t )

with respect to Z/N ∼ = Z/N 0 × Z/M

and

a ≡ s mod N 0 b

then (aM, bM ) ∈ Λ. So if

(a2 + b 2 )M < N 0 , then (by the lemma) x a = for all (x, y ) ∈ Λ with (x 2 + y 2 ) < N y b and such vectors exist. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

36 / 76

Error tolerant reconstruction Think of N 0 as the product of the good primes with correct result s, and of M as the product of the bad primes with wrong result t.

Theorem (BDFP, 2015) If

r 7→ (s, t )

with respect to Z/N ∼ = Z/N 0 × Z/M

and

a ≡ s mod N 0 b

then (aM, bM ) ∈ Λ. So if

(a2 + b 2 )M < N 0 , then (by the lemma) x a = for all (x, y ) ∈ Λ with (x 2 + y 2 ) < N y b and such vectors exist. Moreover, if gcd(a, b ) = 1 and (x, y ) is a shortest vector 6= 0 in Λ, we also have gcd(x, y )|M. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

36 / 76

Error tolerant reconstruction via Gauss-Lagrange Hence, if N 0  M, the Gauss-Lagrange-Algorithm for finding a shortest vector (x, y ) ∈ Λ gives ba independently of t, provided x 2 + y 2 < N.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

37 / 76

Error tolerant reconstruction via Gauss-Lagrange Hence, if N 0  M, the Gauss-Lagrange-Algorithm for finding a shortest vector (x, y ) ∈ Λ gives ba independently of t, provided x 2 + y 2 < N.

Algorithm (Error tolerant reconstruction) function ErrorTolerantReconstruction(r::Integer, N::Integer) a1 = [N, 0] a2 = [r, 1] while dot(a1, a1) > dot(a2, a2) q = dot(a1, a2)//dot(a2, a2) a1, a2 = a2, a1 - Integer(round(q))*a2 end if dot(a1, a1) < N return a1[1]//a1[2] else return false end end

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

37 / 76

Error tolerant reconstruction via Gauss-Lagrange Hence, if N 0  M, the Gauss-Lagrange-Algorithm for finding a shortest vector (x, y ) ∈ Λ gives ba independently of t, provided x 2 + y 2 < N.

Algorithm (Error tolerant reconstruction) function ErrorTolerantReconstruction(r::Integer, N::Integer) a1 = [N, 0] a2 = [r, 1] while dot(a1, a1) > dot(a2, a2) q = dot(a1, a2)//dot(a2, a2) a1, a2 = a2, a1 - Integer(round(q))*a2 end if dot(a1, a1) < N return a1[1]//a1[2] else return false end end

Singular-kernel

Julia

Singular-interpreter

0.001

0.005

0.055

Janko Boehm (TU-KL)

Algorithms in Singular

(in seconds, bitlength 500) April 18, 2017

37 / 76

Reconstruction via Gauss-Lagrange Example We reconstruct

13 12

from 22684 ∈ Z/38885

by determining a shortest vector in the lattice

h(38885, 0), (22684, 1)i ⊂ Z2 via Gauss-Lagrange

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

38 / 76

Reconstruction via Gauss-Lagrange Example We reconstruct

13 12

from 22684 ∈ Z/38885

by determining a shortest vector in the lattice

h(38885, 0), (22684, 1)i ⊂ Z2 via Gauss-Lagrange

(38885, 0) = 2 · (22684, 1) + (−6483, −2), (22684, 1) = −3 · (−6483, −2) + (3235, −5), (−6483, −2) = 2 · (3235, −5) + (−13, −12), (3235, −5) = −134 · (−13, −12) + (1493, −1613). Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

38 / 76

Reconstruction via Gauss-Lagrange Example Now introduce an error in the modular results: Z/5

×

Z/7

×

Z/11

×

Z/101

∼ =

Z/38885

(4

,

4

,

2

,

60 )

7→

22684

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

39 / 76

Reconstruction via Gauss-Lagrange Example Now introduce an error in the modular results: Z/5

×

Z/7

×

Z/11

×

Z/101

∼ =

Z/38885

(4

,

4

,

2

,

60 )

7→

22684

(4

,

2

,

2

60 )

7→

464

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

39 / 76

Reconstruction via Gauss-Lagrange Example Now introduce an error in the modular results: Z/5

×

Z/7

×

Z/11

×

Z/101

∼ =

Z/38885

(4

,

4

,

2

,

60 )

7→

22684

(4

,

2

,

2

60 )

7→

464

Error tolerant reconstruction computes

(38885, 0) = 84 · (464, 1) + (−91, −84), (464, 1) = −3 · (−91, −84) + (191, −251)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

39 / 76

Reconstruction via Gauss-Lagrange Example Now introduce an error in the modular results: Z/5

×

Z/7

×

Z/11

×

Z/101

∼ =

Z/38885

(4

,

4

,

2

,

60 )

7→

22684

(4

,

2

,

2

60 )

7→

464

Error tolerant reconstruction computes

(38885, 0) = 84 · (464, 1) + (−91, −84), (464, 1) = −3 · (−91, −84) + (191, −251) hence yields

Janko Boehm (TU-KL)

91 7 · 13 13 = = . 84 7 · 12 12

Algorithms in Singular

April 18, 2017

39 / 76

Reconstruction via Gauss-Lagrange Example Now introduce an error in the modular results: Z/5

×

Z/7

×

Z/11

×

Z/101

∼ =

Z/38885

(4

,

4

,

2

,

60 )

7→

22684

(4

,

2

,

2

60 )

7→

464

Error tolerant reconstruction computes

(38885, 0) = 84 · (464, 1) + (−91, −84), (464, 1) = −3 · (−91, −84) + (191, −251) hence yields Note that

91 7 · 13 13 = = . 84 7 · 12 12

(132 + 122 ) · 7 = 2191 < 5555 = 5 · 11 · 101.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

39 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )). For N = ∏p ∈P p compute termwise CRT–lift U (N ) to Z/N.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )). For N = ∏p ∈P p compute termwise CRT–lift U (N ) to Z/N. Lift U (N ) by error tolerant rational reconstruction to U.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )). For N = ∏p ∈P p compute termwise CRT–lift U (N ) to Z/N. Lift U (N ) by error tolerant rational reconstruction to U. Test Up = U (p ) for random prime p.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )). For N = ∏p ∈P p compute termwise CRT–lift U (N ) to Z/N. Lift U (N ) by error tolerant rational reconstruction to U. Test Up = U (p ) for random prime p. Verify U = U (0).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )). For N = ∏p ∈P p compute termwise CRT–lift U (N ) to Z/N. Lift U (N ) by error tolerant rational reconstruction to U. Test Up = U (p ) for random prime p. Verify U = U (0). If lift, test or verification fails, then enlarge P .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

General reconstruction scheme Setup: For ideal I ⊂ Q[X ] compute ideal (or module) U (0) associated to I by deterministic algorithm.

Algorithm For Ip compute result U (p ) over Z/p for p in finite set of primes P . Reduce P according to majority vote on LM(U (p )). For N = ∏p ∈P p compute termwise CRT–lift U (N ) to Z/N. Lift U (N ) by error tolerant rational reconstruction to U. Test Up = U (p ) for random prime p. Verify U = U (0). If lift, test or verification fails, then enlarge P .

Theorem (BDFP, 2015) If the set of bad primes for computing U (0) from I is finite, then this algorithm terminates with the correct result. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

40 / 76

Timings in Singular for Adjoint Ideal 1 Plane curve fn of degree n with (n− 2 ) singularities of type A1 .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

41 / 76

Timings in Singular for Adjoint Ideal

locNormal Maple-IB LA IQ locIQ ADE modLocIQ

probablisitic

parallel

1 Plane curve fn of degree n with (n− 2 ) singularities of type A1 .

    



f5

f6

f7

2.1 5.1 98 1.3 1.3 .18 6.4 6.2 .36 .21

56 47 4400 54 54 1.2 19 18 1.6 0.48

318 3800 3800 49 150 104 51 5.2

(1) (1) [33] [33] (74) (74)

(1) (1) [53] [53] (153) (153)

(1) (1) [75] [75] (230) (230)

[primes] (cores) Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

41 / 76

References J. Boehm, W. Decker, C. Fieker, G. Pfister. The use of bad primes in rational reconstruction, Math. Comp. 84 (2015). J. Boehm, W. Decker, S. Laplagne, G. Pfister, A. Steenpaß, S. Steidel. Parallel algorithms for normalization, J. Symb. Comp. 51 (2013). J. Boehm, W. Decker, G. Pfister, S. Laplagne. Local to global algorithms for the Gorenstein adjoint ideal of a curve, arXiv:1505.05040. P. Kornerup, R. T. Gregory, Mapping integers and Hensel codes onto Farey fractions, BIT 23 (1983). E. Arnold, Modular algorithms for computing Gr¨ obner bases, J. Symb. Comp. 35 (2003). G.-M. Greuel, S. Laplagne, S. Seelisch, Normalization of rings, J. Symb. Comp. (2010).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

41 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations. Virtual memory layer.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations. Virtual memory layer. Modeling with Petri nets. Auto-parallelization engine. Proof of concept integration of Singular in GPI-Space.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

GPI-Space: A Petri net

Clock at time t = 4:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

GPI-Space: A Petri net

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations. Virtual memory layer. Modeling with Petri nets.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations. Virtual memory layer. Modeling with Petri nets. Auto-parallelization engine. Proof of concept integration of Singular in GPI-Space.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

GPI-Space: Scheduler

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations. Virtual memory layer. Modeling with Petri nets. Auto-parallelization engine.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Features of GPI-Space developed by Fraunhofer Institute for Industrial Mathematics ITWM, Kaiserslautern: Distributed run-time system suitable for massively parallel computations. Virtual memory layer. Modeling with Petri nets. Auto-parallelization engine. Integration of Singular in GPI-Space. Cluster at ITWM with ≈ 104 nodes.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

42 / 76

Singular and GPI-Space Example Algorithm for determining smoothness by local descent in codimension relative to a smooth complete intersection (as in Hironaka’s resolution of singularities). Descent to any desired size of minors in Jacobian criterion.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

43 / 76

Singular and GPI-Space Example Algorithm for determining smoothness by local descent in codimension relative to a smooth complete intersection (as in Hironaka’s resolution of singularities). Descent to any desired size of minors in Jacobian criterion.

Boehm, J., Fr¨ uhbis-Kr¨ uger: A smoothness test for higher codimensions. arXiv:1603.09241 JSC (to appear). Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

43 / 76

Good Quotients The goal of Geometric Invariant Theory (GIT) is to assign to a given algebraic variety X with action of a reductive group G a reasonable quotient space X //G .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

44 / 76

Good Quotients The goal of Geometric Invariant Theory (GIT) is to assign to a given algebraic variety X with action of a reductive group G a reasonable quotient space X //G . Two main problems:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

44 / 76

Good Quotients The goal of Geometric Invariant Theory (GIT) is to assign to a given algebraic variety X with action of a reductive group G a reasonable quotient space X //G . Two main problems: 1

The orbit space X /G is not a good candidate for X //G : C∗ × C → C,

Janko Boehm (TU-KL)

Algorithms in Singular

t · x = tx

April 18, 2017

44 / 76

Good Quotients The goal of Geometric Invariant Theory (GIT) is to assign to a given algebraic variety X with action of a reductive group G a reasonable quotient space X //G . Two main problems: 1

The orbit space X /G is not a good candidate for X //G : C∗ × C → C,

t · x = tx

Instead, for X affine define X //G = Spec K [X ]G as the spectrum of the (finitely generated) invariant ring of the functions on X . For general X , glue the quotients of an affine covering.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

44 / 76

Good Quotients The goal of Geometric Invariant Theory (GIT) is to assign to a given algebraic variety X with action of a reductive group G a reasonable quotient space X //G . Two main problems: 1

The orbit space X /G is not a good candidate for X //G : C∗ × C → C,

t · x = tx

Instead, for X affine define X //G = Spec K [X ]G

2

as the spectrum of the (finitely generated) invariant ring of the functions on X . For general X , glue the quotients of an affine covering. The quotient X //G may not carry much information.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

44 / 76

Good Quotients The goal of Geometric Invariant Theory (GIT) is to assign to a given algebraic variety X with action of a reductive group G a reasonable quotient space X //G . Two main problems: 1

The orbit space X /G is not a good candidate for X //G : C∗ × C → C,

t · x = tx

Instead, for X affine define X //G = Spec K [X ]G

2

as the spectrum of the (finitely generated) invariant ring of the functions on X . For general X , glue the quotients of an affine covering. The quotient X //G may not carry much information. Hence pass to open subset U ⊂ X . Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

44 / 76

Good Quotients Example C∗ × C2 → C2 ,

Janko Boehm (TU-KL)

t · (x, y ) = (tx, ty )

Algorithms in Singular

April 18, 2017

45 / 76

Good Quotients Example C∗ × C2 → C2 ,

t · (x, y ) = (tx, ty )

U = C2

U//C∗ = {pt }

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

45 / 76

Good Quotients Example C∗ × C2 → C2 ,

t · (x, y ) = (tx, ty )

U = C2

U = C2 \{0}

U//C∗ = {pt }

U//C∗ = P1

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

45 / 76

GIT-Fan In general, there are many choices for these open subsets U ⊂ X leading to different quotients. To describe this behaviour, Dolgachev and Hu introduced the GIT-fan, a polyhedral fan describing the variation of GIT-quotients.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

46 / 76

GIT-Fan In general, there are many choices for these open subsets U ⊂ X leading to different quotients. To describe this behaviour, Dolgachev and Hu introduced the GIT-fan, a polyhedral fan describing the variation of GIT-quotients. We focus on the action of an algebraic torus G = (C∗ )k on an affine variety X ⊂ Cr .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

46 / 76

GIT-Fan In general, there are many choices for these open subsets U ⊂ X leading to different quotients. To describe this behaviour, Dolgachev and Hu introduced the GIT-fan, a polyhedral fan describing the variation of GIT-quotients. We focus on the action of an algebraic torus G = (C∗ )k on an affine variety X ⊂ Cr . Setup: ideal a ⊂ C[T1 , . . . , Tr ] defining X , matrix Q = (q1 , . . . , qr ) ∈ Zk ×r such that a is homogeneous w.r.t. grading deg(Ti ) = qi ∈ Zk .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

46 / 76

GIT-Fan In general, there are many choices for these open subsets U ⊂ X leading to different quotients. To describe this behaviour, Dolgachev and Hu introduced the GIT-fan, a polyhedral fan describing the variation of GIT-quotients. We focus on the action of an algebraic torus G = (C∗ )k on an affine variety X ⊂ Cr . Setup: ideal a ⊂ C[T1 , . . . , Tr ] defining X , matrix Q = (q1 , . . . , qr ) ∈ Zk ×r such that a is homogeneous w.r.t. grading deg(Ti ) = qi ∈ Zk .

Example For C∗ × C2 → C2 , U1 = C2 U2 = C2 \{0} Janko Boehm (TU-KL)

t · (x, y ) = (tx, ty ) Λ(h0i , (1, 1)) = Algorithms in Singular

April 18, 2017

46 / 76

Computing GIT-Fans

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans In case of a torus acting on an affine variety, Berchthold/Hausen and Keicher have developed a method for computing the GIT-fan.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans In case of a torus acting on an affine variety, Berchthold/Hausen and Keicher have developed a method for computing the GIT-fan. Decomposition into torus orbits corresponding to faces γ ≺ Qr≥0 : Cr =

[ γ

O (γ)

O (γ) = (C∗ )r · ∑e ∈γ ei = {(z1 , . . . , zr ) ∈ Cr | zi 6= 0 ⇔ ei ∈ γ} i

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans In case of a torus acting on an affine variety, Berchthold/Hausen and Keicher have developed a method for computing the GIT-fan. Decomposition into torus orbits corresponding to faces γ ≺ Qr≥0 : Cr =

[ γ

O (γ)

O (γ) = (C∗ )r · ∑e ∈γ ei = {(z1 , . . . , zr ) ∈ Cr | zi 6= 0 ⇔ ei ∈ γ} i

Proposition Face γ ≺ Qr≥0 is called an a-face if the following equivalent conditions are satisfied:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans In case of a torus acting on an affine variety, Berchthold/Hausen and Keicher have developed a method for computing the GIT-fan. Decomposition into torus orbits corresponding to faces γ ≺ Qr≥0 : Cr =

[ γ

O (γ)

O (γ) = (C∗ )r · ∑e ∈γ ei = {(z1 , . . . , zr ) ∈ Cr | zi 6= 0 ⇔ ei ∈ γ} i

Proposition Face γ ≺ Qr≥0 is called an a-face if the following equivalent conditions are satisfied: 1

X ∩ O (γ) 6= ∅

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans In case of a torus acting on an affine variety, Berchthold/Hausen and Keicher have developed a method for computing the GIT-fan. Decomposition into torus orbits corresponding to faces γ ≺ Qr≥0 : Cr =

[ γ

O (γ)

O (γ) = (C∗ )r · ∑e ∈γ ei = {(z1 , . . . , zr ) ∈ Cr | zi 6= 0 ⇔ ei ∈ γ} i

Proposition Face γ ≺ Qr≥0 is called an a-face if the following equivalent conditions are satisfied: 1 2 3

X ∩ O (γ) 6= ∅ There is x ∈ X with xi 6= 0 ⇔ ei ∈ γ  a|Ti =0 for ei ∈/ γ : hT1 · · · Tr i∞ 6= h1i

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans In case of a torus acting on an affine variety, Berchthold/Hausen and Keicher have developed a method for computing the GIT-fan. Decomposition into torus orbits corresponding to faces γ ≺ Qr≥0 : Cr =

[ γ

O (γ)

O (γ) = (C∗ )r · ∑e ∈γ ei = {(z1 , . . . , zr ) ∈ Cr | zi 6= 0 ⇔ ei ∈ γ} i

Proposition Face γ ≺ Qr≥0 is called an a-face if the following equivalent conditions are satisfied: 1 2 3

X ∩ O (γ) 6= ∅ There is x ∈ X with xi 6= 0 ⇔ ei ∈ γ  a|Ti =0 for ei ∈/ γ : hT1 · · · Tr i∞ 6= h1i

The orbit cones are the Q (γ) = cone(qi | ei ∈ γ) with γ an a-face. Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

47 / 76

Computing GIT-Fans 1

Determine a-faces.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

48 / 76

Computing GIT-Fans 1

Determine a-faces.

2

Compute set of orbit cones Ω = {Q (γ) | γ an a-face} where Q (γ) = cone(qi | ei ∈ γ) ⊂ Γ = Q (Qr≥0 ) = cone(q1 , . . . , qr ) ⊂ Qk is projection of γ with respect to Q.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

48 / 76

Computing GIT-Fans 1

Determine a-faces.

2

Compute set of orbit cones Ω = {Q (γ) | γ an a-face} where Q (γ) = cone(qi | ei ∈ γ) ⊂ Γ = Q (Qr≥0 ) = cone(q1 , . . . , qr ) ⊂ Qk is projection of γ with respect to Q.

3

Determine GIT-fan: Λ(a, Q ) = {λΩ (w ) | w ∈ Γ}

where

λ Ω (w ) =

\

η

w ∈η ∈Ω

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

48 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1:

A := {γ ≺ Qr≥0 | γ is an a-face}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4: 5:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )} F := {(η, λΩ (w0 )) | η ≺ λΩ (w0 ) interior facet}.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4: 5: 6:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )} F := {(η, λΩ (w0 )) | η ≺ λΩ (w0 ) interior facet}. while there is (η, λ) ∈ F do

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4: 5: 6: 7:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )} F := {(η, λΩ (w0 )) | η ≺ λΩ (w0 ) interior facet}. while there is (η, λ) ∈ F do Find w ∈ Q (γ) such that w 6∈ λ and λΩ (w ) ∩ λ = η.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4: 5: 6: 7: 8:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )} F := {(η, λΩ (w0 )) | η ≺ λΩ (w0 ) interior facet}. while there is (η, λ) ∈ F do Find w ∈ Q (γ) such that w 6∈ λ and λΩ (w ) ∩ λ = η. C := C ∪ {λΩ (w )}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4: 5: 6: 7: 8: 9:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )} F := {(η, λΩ (w0 )) | η ≺ λΩ (w0 ) interior facet}. while there is (η, λ) ∈ F do Find w ∈ Q (γ) such that w 6∈ λ and λΩ (w ) ∩ λ = η. C := C ∪ {λΩ (w )} F := F {(τ, λΩ (w )) | τ ⊂ λΩ (w ) interior facet}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

GIT-Algorithm Algorithm Input: Ideal a ⊂ C[T1 , . . . , Tr ] and matrix Q ∈ Zk ×r of full rank such that a is homogeneous w.r.t. multigrading by Q. Output: The set of maximal cones of Λ(a, Q ). 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:

A := {γ ≺ Qr≥0 | γ is an a-face} Ω := {Q (γ) | γ ∈ A} Choose a vector w0 ∈ Q (Qr≥0 ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )} F := {(η, λΩ (w0 )) | η ≺ λΩ (w0 ) interior facet}. while there is (η, λ) ∈ F do Find w ∈ Q (γ) such that w 6∈ λ and λΩ (w ) ∩ λ = η. C := C ∪ {λΩ (w )} F := F {(τ, λΩ (w )) | τ ⊂ λΩ (w ) interior facet} return C Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

49 / 76

Fast Monomial Containment Test Generalization of (Sturmfels, 1996), where degree reverse lex (dp) is used:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

50 / 76

Fast Monomial Containment Test Generalization of (Sturmfels, 1996), where degree reverse lex (dp) is used:

Proposition Let > be a monomial ordering on R = K [Y1 , . . . , Yn ] and G a Gr¨obner basis of I . Suppose that for all f ∈ G Yn | f

Janko Boehm (TU-KL)

⇐⇒

Yn | LM> (f ).

Algorithms in Singular

April 18, 2017

50 / 76

Fast Monomial Containment Test Generalization of (Sturmfels, 1996), where degree reverse lex (dp) is used:

Proposition Let > be a monomial ordering on R = K [Y1 , . . . , Yn ] and G a Gr¨obner basis of I . Suppose that for all f ∈ G Yn | f Then

⇐⇒

Yn | LM> (f ).

 f i f ∈ G and i ≥ 0 maximal such that Yn | f Yni is a Gr¨obner basis for I : Yn∞ . 

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

50 / 76

Fast Monomial Containment Test Generalization of (Sturmfels, 1996), where degree reverse lex (dp) is used:

Proposition Let > be a monomial ordering on R = K [Y1 , . . . , Yn ] and G a Gr¨obner basis of I . Suppose that for all f ∈ G Yn | f Then

⇐⇒

Yn | LM> (f ).

 f i f ∈ G and i ≥ 0 maximal such that Yn | f Yni is a Gr¨obner basis for I : Yn∞ . 

Algorithm To compute I : (Y1 · . . . · Yn )∞ ,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

50 / 76

Fast Monomial Containment Test Generalization of (Sturmfels, 1996), where degree reverse lex (dp) is used:

Proposition Let > be a monomial ordering on R = K [Y1 , . . . , Yn ] and G a Gr¨obner basis of I . Suppose that for all f ∈ G Yn | f Then

⇐⇒

Yn | LM> (f ).

 f i f ∈ G and i ≥ 0 maximal such that Yn | f Yni is a Gr¨obner basis for I : Yn∞ . 

Algorithm To compute I : (Y1 · . . . · Yn )∞ , replace any remainder r 6= 0 in Buchberger’s algorithm by r a where aj is maximal s.t. Yj j | r . Y1a1 · . . . · Ynan Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

50 / 76

Timings

Saturation in product of variables for ideal a with 225 generators in 40 variables with variables not in J equal to 0:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

51 / 76

Timings

Saturation in product of variables for ideal a with 225 generators in 40 variables with variables not in J equal to 0:

{1, . . . , 40}\J {3, 4, 5, 7, . . . , 15} {9, 11, 12, 13, 15} {11, 12, 13, 15} {9, 11, 14, 15} {9, 11, 15} {9, 11, 13}

40 − |J | 28 35 36 36 37 37

a-face no no no yes yes no

divgbsat 1 1 1 64 1170 1

gbsat 761 57200 44100 121000 114000 31400

sat 517 ∗ ∗ ∗ ∗ ∗

rabinowitsch 342 ∗ ∗ ∗ ∗ ∗

(in seconds, * did not finish in > 2 days)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

51 / 76

Symmetry Groups of Torus Actions Definition A symmetry group of the action of (C∗ )k on X is a subgroup G ⊂ Sr of the symmetric group such that there are group actions

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

52 / 76

Symmetry Groups of Torus Actions Definition A symmetry group of the action of (C∗ )k on X is a subgroup G ⊂ Sr of the symmetric group such that there are group actions G × K[T1 , . . . , Tr ] → K[T1 , . . . , Tr ], (σ, Tj ) 7→ σ(Tj ) = cσ,j · Tσ(j ) G × Qr → Qr , (σ, ej ) 7→ σ(ej ) = eσ(j ) k G × Q → Qk , (σ, v ) 7→ Aσ · v

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

52 / 76

Symmetry Groups of Torus Actions Definition A symmetry group of the action of (C∗ )k on X is a subgroup G ⊂ Sr of the symmetric group such that there are group actions G × K[T1 , . . . , Tr ] → K[T1 , . . . , Tr ], (σ, Tj ) 7→ σ(Tj ) = cσ,j · Tσ(j ) G × Qr → Qr , (σ, ej ) 7→ σ(ej ) = eσ(j ) k G × Q → Qk , (σ, v ) 7→ Aσ · v with Aσ ∈ GL(k, Q) and cσ ∈ Tr

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

52 / 76

Symmetry Groups of Torus Actions Definition A symmetry group of the action of (C∗ )k on X is a subgroup G ⊂ Sr of the symmetric group such that there are group actions G × K[T1 , . . . , Tr ] → K[T1 , . . . , Tr ], (σ, Tj ) 7→ σ(Tj ) = cσ,j · Tσ(j ) G × Qr → Qr , (σ, ej ) 7→ σ(ej ) = eσ(j ) k G × Q → Qk , (σ, v ) 7→ Aσ · v with Aσ ∈ GL(k, Q) and cσ ∈ Tr such that G · a = a and that for each σ ∈ G the following diagram is commutative:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

52 / 76

Symmetry Groups of Torus Actions Definition A symmetry group of the action of (C∗ )k on X is a subgroup G ⊂ Sr of the symmetric group such that there are group actions G × K[T1 , . . . , Tr ] → K[T1 , . . . , Tr ], (σ, Tj ) 7→ σ(Tj ) = cσ,j · Tσ(j ) G × Qr → Qr , (σ, ej ) 7→ σ(ej ) = eσ(j ) k G × Q → Qk , (σ, v ) 7→ Aσ · v with Aσ ∈ GL(k, Q) and cσ ∈ Tr such that G · a = a and that for each σ ∈ G the following diagram is commutative: Qr

7−→ −→

Q↓ Qk

−→

ej

Janko Boehm (TU-KL)



eσ (j ) Qr ↓Q Qk

Algorithms in Singular

April 18, 2017

52 / 76

Representation of GIT-Cones

Perfect hash function for cones with compatible group action

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

53 / 76

Representation of GIT-Cones

Perfect hash function for cones with compatible group action  hΩ : Λ(a, Q ) → {0, 1}Ω ,

Janko Boehm (TU-KL)

λ 7→ 

Algorithms in Singular

Ω →( {0, 1} 1 λ⊂ϑ ϑ 7→ 0 λ 6⊂ ϑ

 

April 18, 2017

53 / 76

Representation of GIT-Cones

Perfect hash function for cones with compatible group action  hΩ : Λ(a, Q ) → {0, 1}Ω ,

G × {0, 1}Ω → {0, 1}Ω ,

Janko Boehm (TU-KL)

λ 7→ 

Ω →( {0, 1} 1 λ⊂ϑ ϑ 7→ 0 λ 6⊂ ϑ



(g , b ) 7 →

Algorithms in Singular

 

Ω → {0, 1} ϑ 7 → b (g −1 · ϑ )



April 18, 2017

53 / 76

Representation of GIT-Cones

Perfect hash function for cones with compatible group action  hΩ : Λ(a, Q ) → {0, 1}Ω ,

G × {0, 1}Ω → {0, 1}Ω ,

λ 7→ 

Ω →( {0, 1} 1 λ⊂ϑ ϑ 7→ 0 λ 6⊂ ϑ



(g , b ) 7 →

 

Ω → {0, 1} ϑ 7 → b (g −1 · ϑ )



such that g · hΩ ( λ ) = hΩ (g · λ ).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

53 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1:

S := system of representatives of G -orbits of faces(Qr≥0 )

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k )

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6: 7:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))} F := {(η, v ) | η ≺ λΩ (w0 ) interior facet with inner normal v }

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6: 7: 8: 9:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))} F := {(η, v ) | η ≺ λΩ (w0 ) interior facet with inner normal v } while there is (η, v ) ∈ F do Find w ∈ Q (Γ) such that η ≺ λΩ (w ) is a facet and −v ∈ λΩ (w )∨ .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))} F := {(η, v ) | η ≺ λΩ (w0 ) interior facet with inner normal v } while there is (η, v ) ∈ F do Find w ∈ Q (Γ) such that η ≺ λΩ (w ) is a facet and −v ∈ λΩ (w )∨ . if G · hΩ (λΩ (w )) ∩ H = ∅ then C := C ∪ {λΩ (w )}, H := H ∪ {hΩ (λΩ (w ))}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))} F := {(η, v ) | η ≺ λΩ (w0 ) interior facet with inner normal v } while there is (η, v ) ∈ F do Find w ∈ Q (Γ) such that η ≺ λΩ (w ) is a facet and −v ∈ λΩ (w )∨ . if G · hΩ (λΩ (w )) ∩ H = ∅ then C := C ∪ {λΩ (w )}, H := H ∪ {hΩ (λΩ (w ))} ˜ v˜ ) | η˜ ≺ λΩ (w ) interior facet w. inner normal v˜ } F := F {(η,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))} F := {(η, v ) | η ≺ λΩ (w0 ) interior facet with inner normal v } while there is (η, v ) ∈ F do Find w ∈ Q (Γ) such that η ≺ λΩ (w ) is a facet and −v ∈ λΩ (w )∨ . if G · hΩ (λΩ (w )) ∩ H = ∅ then C := C ∪ {λΩ (w )}, H := H ∪ {hΩ (λΩ (w ))} ˜ v˜ ) | η˜ ≺ λΩ (w ) interior facet w. inner normal v˜ } F := F {(η, else F := F \ {(η, v )} Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

Symmetric GIT-Algorithm Algorithm (System of representatives of the G -orbits on Λ(a, Q )(k )) 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:

S := system of representatives of G -orbits of faces(Qr≥0 ) A := {γ ∈ S | γ is a-face} S Ω := γ∈A G · Q (γ) Ω := set of minimal elements of Ω(k ) Choose w0 ∈ Q (Γ) such that dim(λΩ (w0 )) = k. C := {λΩ (w0 )}, H := {hΩ (λΩ (w0 ))} F := {(η, v ) | η ≺ λΩ (w0 ) interior facet with inner normal v } while there is (η, v ) ∈ F do Find w ∈ Q (Γ) such that η ≺ λΩ (w ) is a facet and −v ∈ λΩ (w )∨ . if G · hΩ (λΩ (w )) ∩ H = ∅ then C := C ∪ {λΩ (w )}, H := H ∪ {hΩ (λΩ (w ))} ˜ v˜ ) | η˜ ≺ λΩ (w ) interior facet w. inner normal v˜ } F := F {(η, else F := F \ {(η, v )} return C Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

54 / 76

An Example with D4 -Symmetry Example a = hT1 T3 − T2 T4 i ⊂ K[T1 , . . . , T4 ] deg(Tj ) = qj   1 −1 −1 1 Q = (q1 , . . . , q4 ) = 1 1 −1 −1

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

55 / 76

An Example with D4 -Symmetry Example a = hT1 T3 − T2 T4 i ⊂ K[T1 , . . . , T4 ] deg(Tj ) = qj   1 −1 −1 1 Q = (q1 , . . . , q4 ) = 1 1 −1 −1 T2

G = D4 = h(1, 2)(3, 4), (1, 2, 3, 4)i ⊂ S4

1

-1

T1

1

-1

T3

Janko Boehm (TU-KL)

Algorithms in Singular

T4

April 18, 2017

55 / 76

An Example with D4 -Symmetry Example a = hT1 T3 − T2 T4 i ⊂ K[T1 , . . . , T4 ] deg(Tj ) = qj   1 −1 −1 1 Q = (q1 , . . . , q4 ) = 1 1 −1 −1 T2

G = D4 = h(1, 2)(3, 4), (1, 2, 3, 4)i ⊂ S4

T1

1

-1

1

-1

T3

 A(1,2)(3,4) = Janko Boehm (TU-KL)

−1 0 0 1



T4

 A(1,2,3,4) =

Algorithms in Singular

0 −1 1 0



April 18, 2017

55 / 76

Example with D4 -symmetry Example γ γ0 γ1 γ2 γ20 γ3 γ4

= cone(0) = cone(e1 ) = cone(e1 , e2 ) = cone(e1 , e3 ) = cone(e1 , e2 , e3 ) = cone(e1 , e2 , e3 , e4 )

Janko Boehm (TU-KL)

|G · γ | 1 4 4 2 4 1

a|Ti =0 for ei ∈/ γ 0 0 0 hT1 T3 i hT1 T3 i hT1 T3 − T2 T4 i

Algorithms in Singular

a-face true true true false false true

April 18, 2017

56 / 76

Example with D4 -symmetry Example γ γ0 γ1 γ2 γ20 γ3 γ4

|G · γ | 1 4 4 2 4 1

= cone(0) = cone(e1 ) = cone(e1 , e2 ) = cone(e1 , e3 ) = cone(e1 , e2 , e3 ) = cone(e1 , e2 , e3 , e4 ) 

Q (γ0 ) = cone(0),

Q (γ1 ) = cone

Janko Boehm (TU-KL)

1 1

a|Ti =0 for ei ∈/ γ 0 0 0 hT1 T3 i hT1 T3 i hT1 T3 − T2 T4 i



 ,

Q (γ2 ) = cone

Algorithms in Singular

1 1

a-face true true true false false true

   −1 , , 1

Q (γ4 ) = Q2

April 18, 2017

56 / 76

Example with D4 -symmetry Example γ γ0 γ1 γ2 γ20 γ3 γ4

|G · γ | 1 4 4 2 4 1

= cone(0) = cone(e1 ) = cone(e1 , e2 ) = cone(e1 , e3 ) = cone(e1 , e2 , e3 ) = cone(e1 , e2 , e3 , e4 ) 

Q (γ0 ) = cone(0),

Q (γ1 ) = cone

1 1

a|Ti =0 for ei ∈/ γ 0 0 0 hT1 T3 i hT1 T3 i hT1 T3 − T2 T4 i



 ,

Q (γ2 ) = cone

1 1

   −1 , , 1

q2

Q (γ4 ) = Q2

q1 λ(w0 )

  0 w0 = 1

(0, 0) q3

Janko Boehm (TU-KL)

a-face true true true false false true

Algorithms in Singular

q4 April 18, 2017

56 / 76

Mori Dream Spaces A projective variety X over C is called a Mori dream space if its Cox ring R (X ) = ∑[D ]∈Cl(X ) H 0 (X , OX (D )) is finitely generated.

Example Fano varieties. Projective toric varieties (⇔ R (X ) polynomial ring). Like toric varieties, admit construction as GIT-quotient (Hu, Keel, 2000): X = Xˆ //G where



Janko Boehm (TU-KL)



X := Spec R (X ) open invariant G := Spec C[Cl(X )]

Algorithms in Singular

April 18, 2017

57 / 76

Mori Dream Spaces A projective variety X over C is called a Mori dream space if its Cox ring R (X ) = ∑[D ]∈Cl(X ) H 0 (X , OX (D )) is finitely generated.

Example Fano varieties. Projective toric varieties (⇔ R (X ) polynomial ring). Like toric varieties, admit construction as GIT-quotient (Hu, Keel, 2000): X = Xˆ //G where





X := Spec R (X ) open invariant G := Spec C[Cl(X )]

Remark The GIT-fan yields the Mori chamber decomposition, which describes all birational modifications (analogous to the GKZ-fan of a toric varietiy). Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

57 / 76

Moduli Spaces of Stable Maps For the Deligne-Mumford compactification moduli space of stable curves of genus 0 with n marked points M 0,n (only double points, on each component ≥ 3 marked or double points) we have:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

58 / 76

Moduli Spaces of Stable Maps For the Deligne-Mumford compactification moduli space of stable curves of genus 0 with n marked points M 0,n (only double points, on each component ≥ 3 marked or double points) we have: M 0,n for n ≤ 6 is a Mori dream space: Castravet, 2009, for n = 6.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

58 / 76

Moduli Spaces of Stable Maps For the Deligne-Mumford compactification moduli space of stable curves of genus 0 with n marked points M 0,n (only double points, on each component ≥ 3 marked or double points) we have: M 0,n for n ≤ 6 is a Mori dream space: Castravet, 2009, for n = 6.

M 0,n for n ≥ 10 is not a Mori dream space: Castravet, Tevelev, 2013, for n ≥ 134. Gonz´ales, Karu, 2016, for n ≥ 13. Hausen, Keicher, Laface, 2016, for n ≥ 10.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

58 / 76

Example: GIT-fan for G(2, 5) Example Cox ring of M 0,5 is isomorphic to Z5 -graded coordinate ring R = K[T1 , . . . , T10 ]/a of affine cone over G(2, 5).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

59 / 76

Example: GIT-fan for G(2, 5) Example Cox ring of M 0,5 is isomorphic to Z5 -graded coordinate ring R = K[T1 , . . . , T10 ]/a of affine cone over G(2, 5). Symmetry group action of S5 ∼ = G = h(2, 3)(5, 6)(9, 10), (1, 5, 9, 10, 3)(2, 7, 8, 4, 6)i ⊂ S10

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

59 / 76

Example: GIT-fan for G(2, 5) Example Cox ring of M 0,5 is isomorphic to Z5 -graded coordinate ring R = K[T1 , . . . , T10 ]/a of affine cone over G(2, 5). Symmetry group action of S5 ∼ = G = h(2, 3)(5, 6)(9, 10), (1, 5, 9, 10, 3)(2, 7, 8, 4, 6)i ⊂ S10

monomial containment tests a-faces

Janko Boehm (TU-KL)

number 210 = 1024 172

Algorithms in Singular

number of orbits 34 14

April 18, 2017

59 / 76

Example: GIT-fan for G(2, 5) Example Cox ring of M 0,5 is isomorphic to Z5 -graded coordinate ring R = K[T1 , . . . , T10 ]/a of affine cone over G(2, 5). Symmetry group action of S5 ∼ = G = h(2, 3)(5, 6)(9, 10), (1, 5, 9, 10, 3)(2, 7, 8, 4, 6)i ⊂ S10

monomial containment tests a-faces

number 210 = 1024 172

number of orbits 34 14

172 = (1 + 1) + (5 + 5) + (10 + 10 + 10 + 10 + 10) + (15 + 15) + 20 + (30 + 30)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

59 / 76

Example: GIT-fan for G(2, 5) Example Cox ring of M 0,5 is isomorphic to Z5 -graded coordinate ring R = K[T1 , . . . , T10 ]/a of affine cone over G(2, 5). Symmetry group action of S5 ∼ = G = h(2, 3)(5, 6)(9, 10), (1, 5, 9, 10, 3)(2, 7, 8, 4, 6)i ⊂ S10

monomial containment tests a-faces

number 210 = 1024 172

number of orbits 34 14

172 = (1 + 1) + (5 + 5) + (10 + 10 + 10 + 10 + 10) + (15 + 15) + 20 + (30 + 30)

|Ω(5)/G | = 4

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

59 / 76

Example: GIT-fan for G(2, 5) Example Cox ring of M 0,5 is isomorphic to Z5 -graded coordinate ring R = K[T1 , . . . , T10 ]/a of affine cone over G(2, 5). Symmetry group action of S5 ∼ = G = h(2, 3)(5, 6)(9, 10), (1, 5, 9, 10, 3)(2, 7, 8, 4, 6)i ⊂ S10

monomial containment tests a-faces

number 210 = 1024 172

number of orbits 34 14

172 = (1 + 1) + (5 + 5) + (10 + 10 + 10 + 10 + 10) + (15 + 15) + 20 + (30 + 30)

|Ω(5)/G | = 4 |Λ(5)| = 76 = 1 + 10 + 30 + 10 + 20 + 5 Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

59 / 76

Example: GIT-fan for G(2, 5) Adjacency graph of the maximal-dimensional GIT-cones and their orbits:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

60 / 76

Mori Chamber Decomposition of Mov(M 0,6 ) The moving cone Mov(M 0,6 ) classifies all small modifications (rational maps which are isomorphisms on open subsets which have a complement of codimension ≥ 2).

Example Cox ring is Z16 -graded, has 40 generators (Castravet, 2009),

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

61 / 76

Mori Chamber Decomposition of Mov(M 0,6 ) The moving cone Mov(M 0,6 ) classifies all small modifications (rational maps which are isomorphisms on open subsets which have a complement of codimension ≥ 2).

Example Cox ring is Z16 -graded, has 40 generators (Castravet, 2009), and 225 relations (Bernal Guillen, 2012),

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

61 / 76

Mori Chamber Decomposition of Mov(M 0,6 ) The moving cone Mov(M 0,6 ) classifies all small modifications (rational maps which are isomorphisms on open subsets which have a complement of codimension ≥ 2).

Example Cox ring is Z16 -graded, has 40 generators (Castravet, 2009), and 225 relations (Bernal Guillen, 2012), and natural G = S6 –action.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

61 / 76

Mori Chamber Decomposition of Mov(M 0,6 ) The moving cone Mov(M 0,6 ) classifies all small modifications (rational maps which are isomorphisms on open subsets which have a complement of codimension ≥ 2).

Example Cox ring is Z16 -graded, has 40 generators (Castravet, 2009), and 225 relations (Bernal Guillen, 2012), and natural G = S6 –action. The moving cone Mov(M 0,6 ) has 176 512 225 GIT-cones of maximal dimension 16, which decompose into 249 605 orbits under the S6 -action:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

61 / 76

Mori Chamber Decomposition of Mov(M 0,6 ) The moving cone Mov(M 0,6 ) classifies all small modifications (rational maps which are isomorphisms on open subsets which have a complement of codimension ≥ 2).

Example Cox ring is Z16 -graded, has 40 generators (Castravet, 2009), and 225 relations (Bernal Guillen, 2012), and natural G = S6 –action. The moving cone Mov(M 0,6 ) has 176 512 225 GIT-cones of maximal dimension 16, which decompose into 249 605 orbits under the S6 -action: cardinality no. of orbits

1 1

cardinality no. of orbits

72 4

6 1

10 1

90 46

15 4

120 32

20 1 180 488

30 1 240 4

45 10 360 7934

60 27 720 241051

The cone with orbit length one is the semiample cone (dual of Mori cone). Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

61 / 76

References J. Boehm, S. Keicher, Y. Ren. Computing GIT-fans with symmetry and the Mori chamber decomposition of M 0,6 , arXiv:1603.09241 (2016). S. Keicher. Computing the GIT-fan, Int. J. Algebra Comput. (2012). D. Mumford, J. Fogarty, F. Kirwan. Geometric invariant theory. Ergebnisse der Mathematik und ihrer Grenzgebiete. Springer (1994). I. V. Dolgachev and Y. Hu. Variation of geometric invariant theory quotients. Publ. Math., Inst. Hautes Etud. Sci. (1998). F. Berchtold, J. Hausen. GIT equivalence beyond the ample cone. Michigan Math. J. (2006). I. Arzhantsev, U. Derenthal, J. Hausen, A. Laface. Cox Rings, Cambridge studies in advanced mathematics (2014). A.-M. Castravet. The Cox ring of M 0,6 . Trans. Amer. Math. Soc. (2009). M. M. Bernal Guillen. Relations in the Cox Ring of M 0,6 . PhD (2012). Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

62 / 76

Mirror symmetry For Calabi-Yau variety X (elliptic curve, quintic in P4 ,...) and g ∈ N0 :

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

63 / 76

Mirror symmetry For Calabi-Yau variety X (elliptic curve, quintic in P4 ,...) and g ∈ N0 : X

mirror construction

A-model

B-model Q=Q(q)

∑d∞=1 Ng ,d · q d = Ag (q ) Ng ,d = Gromov-Witten invariants Intersection numbers on moduli space of stable maps M g ,n (X , d )

Janko Boehm (TU-KL)

X∗

Algorithms in Singular

Bg ( Q ) Integrals on M(X ∗ )

???

April 18, 2017

63 / 76

Mirror symmetry For Calabi-Yau variety X (elliptic curve, quintic in P4 ,...) and g ∈ N0 : X

mirror construction

A-model

X∗ B-model

Q=Q(q)

∑d∞=1 Ng ,d · q d = Ag (q ) Ng ,d = Gromov-Witten invariants Intersection numbers on moduli space of stable maps M g ,n (X , d )

Bg ( Q ) Integrals on M(X ∗ )

???

Mirror constructions: Greene-Plesser ’90, Batyrev ’93,...

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

63 / 76

Mirror symmetry For Calabi-Yau variety X (elliptic curve, quintic in P4 ,...) and g ∈ N0 : X

mirror construction

A-model

X∗ B-model

Q=Q(q)

∑d∞=1 Ng ,d · q d = Ag (q ) Ng ,d = Gromov-Witten invariants Intersection numbers on moduli space of stable maps M g ,n (X , d )

Bg ( Q ) Integrals on M(X ∗ )

???

Mirror constructions: Greene-Plesser ’90, Batyrev ’93,... String theory: Candelas-Horowitz-Strominger-Witten ’85, Candelasde la Ossa-Green-Parkes ’91,...

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

63 / 76

Mirror symmetry For Calabi-Yau variety X (elliptic curve, quintic in P4 ,...) and g ∈ N0 : X

mirror construction

A-model

X∗ B-model

Q=Q(q)

∑d∞=1 Ng ,d · q d = Ag (q ) Ng ,d = Gromov-Witten invariants Intersection numbers on moduli space of stable maps M g ,n (X , d )

Bg ( Q ) Integrals on M(X ∗ )

???

Mirror constructions: Greene-Plesser ’90, Batyrev ’93,... String theory: Candelas-Horowitz-Strominger-Witten ’85, Candelasde la Ossa-Green-Parkes ’91,... Algebraic/symplectic geometry: Fulton-Pandharipande ’95, Kontsevich ’95, Behrend-Fantechi ’97,... Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

63 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

64 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 . ⇒ A0 (q ) = 23 · 53 + (4874 · 53 +

Janko Boehm (TU-KL)

23·53 ) · q 23

+ (2537651 · 53 +

Algorithms in Singular

23·53 ) · q 2 33

+ ...

April 18, 2017

64 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 . ⇒ A0 (q ) = 23 · 53 + (4874 · 53 +

23·53 ) · q 23

+ (2537651 · 53 +

23·53 ) · q 2 33

+ ...

Is enumerative geometry result on X : number of lines, conics, cubics,... (number of genus 0 curves on X of degree d, delicate counting).

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

64 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 . ⇒ A0 (q ) = 23 · 53 + (4874 · 53 +

23·53 ) · q 23

+ (2537651 · 53 +

23·53 ) · q 2 33

+ ...

Is enumerative geometry result on X : number of lines, conics, cubics,... (number of genus 0 curves on X of degree d, delicate counting). Similar theorems for g = 0, 1 in case of degree n + 1 hypersurfaces in Pn (Klemm-Pandharipande ’07, Zinger ’07)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

64 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 . ⇒ A0 (q ) = 23 · 53 + (4874 · 53 +

23·53 ) · q 23

+ (2537651 · 53 +

23·53 ) · q 2 33

+ ...

Is enumerative geometry result on X : number of lines, conics, cubics,... (number of genus 0 curves on X of degree d, delicate counting). Similar theorems for g = 0, 1 in case of degree n + 1 hypersurfaces in Pn (Klemm-Pandharipande ’07, Zinger ’07) Questions: Mirror theorems for other Calabi-Yau varieties and g ≥ 2?

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

64 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 . ⇒ A0 (q ) = 23 · 53 + (4874 · 53 +

23·53 ) · q 23

+ (2537651 · 53 +

23·53 ) · q 2 33

+ ...

Is enumerative geometry result on X : number of lines, conics, cubics,... (number of genus 0 curves on X of degree d, delicate counting). Similar theorems for g = 0, 1 in case of degree n + 1 hypersurfaces in Pn (Klemm-Pandharipande ’07, Zinger ’07) Questions: Mirror theorems for other Calabi-Yau varieties and g ≥ 2? Geometric understanding of mirror theorem beyond combinatorics?

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

64 / 76

Mirror theorems Theorem (Givental ’96, Lian-Liu-Yau ’97, Gathmann ’03) A0 = B0 for quintic hypersurface in P4 . ⇒ A0 (q ) = 23 · 53 + (4874 · 53 +

23·53 ) · q 23

+ (2537651 · 53 +

23·53 ) · q 2 33

+ ...

Is enumerative geometry result on X : number of lines, conics, cubics,... (number of genus 0 curves on X of degree d, delicate counting). Similar theorems for g = 0, 1 in case of degree n + 1 hypersurfaces in Pn (Klemm-Pandharipande ’07, Zinger ’07) Questions: Mirror theorems for other Calabi-Yau varieties and g ≥ 2? Geometric understanding of mirror theorem beyond combinatorics? What are the B-model integrals? Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

64 / 76

Elliptic curves

Start with easiest Calabi-Yau: elliptic curve E (e.g. smooth plane cubic). Here, Gromov-Witten numbers are numbers of covers:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

65 / 76

Elliptic curves

Start with easiest Calabi-Yau: elliptic curve E (e.g. smooth plane cubic). Here, Gromov-Witten numbers are numbers of covers:

Definition (Hurwitz numbers) Nd,g = |Aut1(f )| -weighted number of degree d covers f : C → E , where C is smooth of genus g and f has 2g − 2 simple ramifications points. according to Riemann-Hurwitz formula 2g (C ) − 2 = d · (2g (E ) − 2) + ∑P ∈C (e (P ) − 1)

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

65 / 76

Elliptic curves

Start with easiest Calabi-Yau: elliptic curve E (e.g. smooth plane cubic). Here, Gromov-Witten numbers are numbers of covers:

Definition (Hurwitz numbers) Nd,g = |Aut1(f )| -weighted number of degree d covers f : C → E , where C is smooth of genus g and f has 2g − 2 simple ramifications points. according to Riemann-Hurwitz formula 2g (C ) − 2 = d · (2g (E ) − 2) + ∑P ∈C (e (P ) − 1)

Nd,0 = 0, so have to look at g ≥ 1 invariants!

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

65 / 76

Tropical point of view How to understand all Ng ,d ? Pass to tropical geometry: E

Janko Boehm (TU-KL)

7→

Algorithms in Singular

trop(E )

April 18, 2017

66 / 76

Tropical point of view How to understand all Ng ,d ? Pass to tropical geometry: E

Gromov-Witten invariants

7→

trop(E )

Mirror Theorem

Correspondence Theorem

B-model Tropical Mirror Theorem

tropical Gromov-Witten invariants

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

66 / 76

Tropical point of view How to understand all Ng ,d ? Pass to tropical geometry: E

Gromov-Witten invariants

7→

trop(E )

Mirror Theorem

Correspondence Theorem

B-model Tropical Mirror Theorem

tropical Gromov-Witten invariants

For X = P2 (building block of C-Y) and g = 0: tropical mirror theorem (Gross ’10) Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

66 / 76

Tropical point of view How to understand all Ng ,d ? Pass to tropical geometry: E

Gromov-Witten invariants

7→

trop(E )

Mirror Theorem

Correspondence Theorem

B-model Tropical Mirror Theorem

tropical Gromov-Witten invariants

For X = P2 (building block of C-Y) and g = 0: tropical mirror theorem (Gross ’10) partial correspondence theorem (Markwig-Rau ’09, Mikhalkin ’05) Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

66 / 76

Tropical Mirror Symmetry

Hurwitz

Univariate B as

Multivariate B as

numbers

Feynman integral

Feynman integral

Correspondence Theorem



tropical Hurwitz numbers

Janko Boehm (TU-KL)

Refined Tropical Mirror Theorem

numbers of labeled tropical covers

Algorithms in Singular

April 18, 2017

67 / 76

Tropical Mirror Symmetry

Hurwitz

Univariate B as

Multivariate B as

numbers

Feynman integral

Feynman integral

Correspondence Theorem



tropical Hurwitz numbers

Refined Tropical Mirror Theorem

numbers of labeled tropical covers

Correspondence theorem for all g and d.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

67 / 76

Tropical Mirror Symmetry

Hurwitz

Univariate B as

Multivariate B as

numbers

Feynman integral

Feynman integral

Correspondence Theorem



tropical Hurwitz numbers

Refined Tropical Mirror Theorem

numbers of labeled tropical covers

Correspondence theorem for all g and d. Tropical mirror theorem for all g as corollary to

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

67 / 76

Tropical Mirror Symmetry

Hurwitz

Univariate B as

Multivariate B as

numbers

Feynman integral

Feynman integral

Correspondence Theorem



tropical Hurwitz numbers

Refined Tropical Mirror Theorem

numbers of labeled tropical covers

Correspondence theorem for all g and d. Tropical mirror theorem for all g as corollary to refined tropical mirror theorem for each trivalent connected graph of genus g and branch type. Computation of refined Feynman integrals.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

67 / 76

Feynman integrals (B-side) Definition A Feynman graph is a 3-valent, connected graph Γ of genus g .

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

68 / 76

Feynman integrals (B-side) Definition A Feynman graph is a 3-valent, connected graph Γ of genus g . By g (Γ) = 1 − |vert(Γ)| + |edges(Γ)| and 3 |vert(Γ)| = 2 |edges(Γ)|

|vert(Γ)| = 2g − 2

Janko Boehm (TU-KL)

|edges(Γ)| = 3g − 3

Algorithms in Singular

April 18, 2017

68 / 76

Feynman integrals (B-side) Definition A Feynman graph is a 3-valent, connected graph Γ of genus g . By g (Γ) = 1 − |vert(Γ)| + |edges(Γ)| and 3 |vert(Γ)| = 2 |edges(Γ)|

|vert(Γ)| = 2g − 2

|edges(Γ)| = 3g − 3

Fix labeling zi for vertices and qi for edges.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

68 / 76

Feynman integrals (B-side) Definition A Feynman graph is a 3-valent, connected graph Γ of genus g . By g (Γ) = 1 − |vert(Γ)| + |edges(Γ)| and 3 |vert(Γ)| = 2 |edges(Γ)|

|vert(Γ)| = 2g − 2

|edges(Γ)| = 3g − 3

Fix labeling zi for vertices and qi for edges.

Example z1 q2

z3

q3

q5

z2 Janko Boehm (TU-KL)

q1

q4

q6

z4

Algorithms in Singular

April 18, 2017

68 / 76

Feynman integrals (B-side) Definition (Propagator) P (z, q ) = −

Janko Boehm (TU-KL)

1 1 ℘(z, q ) − E2 (q ) 2 4π 12

Algorithms in Singular

for z ∈ E = C/Λ

April 18, 2017

69 / 76

Feynman integrals (B-side) Definition (Propagator) P (z, q ) = −

1 1 ℘(z, q ) − E2 (q ) 2 4π 12

for z ∈ E = C/Λ

with Weierstraß-℘-function ℘ = z12 + ... and the Eisenstein series E2 = 1 − 24 ∑d∞=1 σ1 (d )q 2d = 1 − 24q 2 − 72q 4 − ...

Janko Boehm (TU-KL)

Algorithms in Singular

σ1 (d ) = ∑m|d m

April 18, 2017

69 / 76

Feynman integrals (B-side) Definition (Propagator) P (z, q ) = −

1 1 ℘(z, q ) − E2 (q ) 2 4π 12

for z ∈ E = C/Λ

with Weierstraß-℘-function ℘ = z12 + ... and the Eisenstein series E2 = 1 − 24 ∑d∞=1 σ1 (d )q 2d = 1 − 24q 2 − 72q 4 − ...

σ1 (d ) = ∑m|d m

Definition (Feynman integral) For ordering Ω ∈ S2g −2 of integration paths on E

IΓ,Ω =

Z

Z

... γ2g −2

Janko Boehm (TU-KL)

γ1



e ∈edges(Γ)

! P (ze+ − ze− , q ) dzΩ(1) ...dzΩ(2g −2)

Algorithms in Singular

April 18, 2017

69 / 76

Correspondence Theorem As a direct generalization of (Cavalieri-Johnson-Markwig ’10) and (Bertrand-Brugall´e-Mikhalkin ’11) obtain correspondence theorem:

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

70 / 76

Correspondence Theorem As a direct generalization of (Cavalieri-Johnson-Markwig ’10) and (Bertrand-Brugall´e-Mikhalkin ’11) obtain correspondence theorem:

Theorem (BBBM ’15) trop Nd,g = Nd,g by correspondence of tropical and algebraic covers.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

70 / 76

Correspondence Theorem As a direct generalization of (Cavalieri-Johnson-Markwig ’10) and (Bertrand-Brugall´e-Mikhalkin ’11) obtain correspondence theorem:

Theorem (BBBM ’15) trop Nd,g = Nd,g by correspondence of tropical and algebraic covers.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

70 / 76

Tropical Hurwitz numbers – Example trop N3,3 =?

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

71 / 76

Tropical Hurwitz numbers – Example trop N3,3 =?

Two trivalent, connected combinatorial types (non-metric graphs)

of genus g = 3 with 2g − 2 = 4 vertices 3g − 3 = 6 edges no bridges

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

71 / 76

Tropical Hurwitz numbers – Example trop N3,3 =?

Two trivalent, connected combinatorial types (non-metric graphs)

of genus g = 3 with 2g − 2 = 4 vertices 3g − 3 = 6 edges no bridges (weight 0 edges would be contracted):

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

71 / 76

Tropical Hurwitz numbers – Example trop N3,3 =

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

72 / 76

Tropical Hurwitz numbers – Example trop N3,3 =







mult(π ) = 22 · 32 = 36

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

72 / 76

Tropical Hurwitz numbers – Example trop N3,3 =





mult(π ) = 22 · 32 = 36

Janko Boehm (TU-KL)

mult(π ) =



1 2

· 22 · 3 = 6

Algorithms in Singular

April 18, 2017

72 / 76

Tropical Hurwitz numbers – Example trop N3,3 =





mult(π ) = 22 · 32 = 36

Janko Boehm (TU-KL)

mult(π ) =



1 2

· 22 · 3 = 6

Algorithms in Singular

mult(π ) = 22 · 3 = 12

April 18, 2017

72 / 76

Tropical Hurwitz numbers – Example trop N3,3 =





mult(π ) = 22 · 32 = 36



mult(π ) =



1 2

· 22 · 3 = 6

mult(π ) = 22 · 3 = 12



mult(π ) =

1 2

·2·2 = 2

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

72 / 76

Tropical Hurwitz numbers – Example trop N3,3 =





mult(π ) = 22 · 32 = 36



mult(π ) =



1 2

· 22 · 3 = 6

mult(π ) = 22 · 3 = 12



mult(π ) =

1 2

·2·2 = 2

Janko Boehm (TU-KL)

mult(π ) = 22 = 4 Algorithms in Singular

April 18, 2017

72 / 76

Tropical Hurwitz numbers – Example trop N3,3 = 112 + 48 = 160





mult(π ) = 22 · 32 = 36



mult(π ) =



1 2

· 22 · 3 = 6

mult(π ) = 22 · 3 = 12



mult(π ) =

1 2

·2·2 = 2

Janko Boehm (TU-KL)

mult(π ) = 22 = 4 Algorithms in Singular

April 18, 2017

72 / 76

Refined Feynman integrals Definition (Refined Feynman integrals) IΓ,Ω (q1 , ..., q3g −3 ) =

Janko Boehm (TU-KL)

Z

... γ2g −2

!

3g −3

Z γ1



P (zk+

− zk− , qk )

dzΩ(1) ...dzΩ(2g −2)

k =1

Algorithms in Singular

April 18, 2017

73 / 76

Refined Feynman integrals Definition (Refined Feynman integrals) IΓ,Ω (q1 , ..., q3g −3 ) =

Z

... γ2g −2

!

3g −3

Z γ1



P (zk+

q1

z3

− zk− , qk )

dzΩ(1) ...dzΩ(2g −2)

k =1

Example For

z1 q2

q3

q5

z2 we have to integrate

q4

q6

z4

P (z1 − z2 , q1 ) · P (z1 − z2 , q2 ) · P (z1 − z3 , q3 ) · P (z2 − z4 , q4 ) · P (z3 − z4 , q5 ) · P (z3 − z4 , q6 ) Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

73 / 76

Tropical mirror theorem Theorem (Multivariate tropical mirror theorem, BBBM ’13) trop q 2a = IΓ,Ω (q1 , ..., q3g −3 ) ∑ Na,Γ,Ω a

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

74 / 76

Tropical mirror theorem Theorem (Multivariate tropical mirror theorem, BBBM ’13) trop q 2a = IΓ,Ω (q1 , ..., q3g −3 ) ∑ Na,Γ,Ω a

Setting qi = q we get (using the action of Aut(Γ) on labeled covers):

Corollary (Tropical mirror theorem) 1

trop 2d q =∑ IΓ,Ω (q ) ∑ Nd,g |Aut(Γ)| ∑ d

Janko Boehm (TU-KL)

Γ

Algorithms in Singular



April 18, 2017

74 / 76

Tropical mirror theorem Theorem (Multivariate tropical mirror theorem, BBBM ’13) trop q 2a = IΓ,Ω (q1 , ..., q3g −3 ) ∑ Na,Γ,Ω a

Setting qi = q we get (using the action of Aut(Γ) on labeled covers):

Corollary (Tropical mirror theorem) 1

trop 2d q =∑ IΓ,Ω (q ) ∑ Nd,g |Aut(Γ)| ∑ d

Γ



Together with the correspondence theorem this proves:

Corollary (Mirror symmetry for elliptic curves) For elliptic curves Ag = Bg for all g . Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

74 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ),

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

75 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ), path γk becomes circle around 0,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

75 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ), path γk becomes circle around 0, factor x1k ,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

75 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ), path γk becomes circle around 0, factor x1k , integral becomes residue,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

75 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ), path γk becomes circle around 0, factor x1k , integral becomes residue, difference becomes quotient.

Proposition (BBBM ’15) P (x, q ) =

Janko Boehm (TU-KL)

∞ x2 + w (x 2w + x −2w )q 2a ∑ (x 2 − 1)2 a=1 w∑ |a

Algorithms in Singular

April 18, 2017

75 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ), path γk becomes circle around 0, factor x1k , integral becomes residue, difference becomes quotient.

Proposition (BBBM ’15) P (x, q ) =

∞ x2 + w (x 2w + x −2w )q 2a ∑ (x 2 − 1)2 a=1 w∑ |a

( Pa (x, y ) :=

Janko Boehm (TU-KL)

x 2y 2 (x 2 −y 2 )2 x 4w +y 4w ∑w |a w (xy )2w

Algorithms in Singular

for a = 0 for a > 0

April 18, 2017

75 / 76

Computing Feynman integrals By coordinate change xk = exp(i πzk ), path γk becomes circle around 0, factor x1k , integral becomes residue, difference becomes quotient.

Proposition (BBBM ’15) P (x, q ) =

∞ x2 + w (x 2w + x −2w )q 2a ∑ (x 2 − 1)2 a=1 w∑ |a

( Pa (x, y ) :=

x 2y 2 (x 2 −y 2 )2 x 4w +y 4w ∑w |a w (xy )2w

for a = 0 for a > 0

Theorem (BBBM ’15) trop Na,Γ,Ω = constxΩ(2g −2) ... constxΩ(1)

3g −3



Pak (xk+ , xk− )

k =1

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

75 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials}

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials} order the vertices according to Ω,

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials} order the vertices according to Ω, associate edges of weight ai to Laurent monomials.

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials} order the vertices according to Ω, associate edges of weight ai to Laurent monomials.

Example x1 q2

q1

q3 x2

x3 q5

q4

x1 < x3 < x4 < x2 q6

x4

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials} order the vertices according to Ω, associate edges of weight ai to Laurent monomials.

Example x1 q2

q1

q3 x2

x3 q5

q4

x1 < x3 < x4 < x2

a = (0, 2, 2, 0, 1, 0)

q6

x4

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials} order the vertices according to Ω, associate edges of weight ai to Laurent monomials.

Example x1 q2

q1

q3 x2

x3 q5

q4

q6

x1 < x3 < x4 < x2 a = (0, 2, 2, 0, 1, 0)  2   2·2   2   2   2   2·2 x1 · 2 · xx21 · xx12 · xx42 · xx34 · 2 · xx43 x3

x4

Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Sketch of Proof 1:1

{labeled tropical covers}  {constant products of Laurent monomials} order the vertices according to Ω, associate edges of weight ai to Laurent monomials.

Example x1 q2

q1

q3 x2

x3 q5

q4

q6

x1 < x3 < x4 < x2 a = (0, 2, 2, 0, 1, 0)  2   2·2   2   2   2   2·2 x1 · 2 · xx21 · xx12 · xx42 · xx34 · 2 · xx43 x3

x4

x1

q3 , 1 x3

q2 , 2

x4

q1 , 1 q5 , 1

q6 , 2

x2

q3 , 1 q3 , 1 Janko Boehm (TU-KL)

q5 , 1

q4 , 1

q2 , 2

q3 , 1 Algorithms in Singular

April 18, 2017

76 / 76

References J. B¨ohm, K. Bringmann, A. Buchholz, H. Markwig, Tropical mirror symmetry for elliptic curves, J. Reine Angew. Math. (2015). J. B¨ohm, K. Bringmann, A. Buchholz, H. Markwig, ellipticcovers.lib. A Singular 4 library for Gromov-Witten invariants of elliptic curves, Singular distribution. A. Okounkov, R. Pandharipande, Gromov-Witten theory, Hurwitz theory and completed cycles, Ann. Math. 163 (2006). R. Dijkgraaf, Mirror symmetry and elliptic curves, in Progr. Math. 129 (1995). M. Gross, Mirror symmetry for P2 and tropical geometry, Adv. Math. 224 (2010). B. Bertrand, E. Brugall´e, G. Mikhalkin, Tropical open Hurwitz numbers, Rend. Semin. Mat. Univ. Padova 125 (2011). Janko Boehm (TU-KL)

Algorithms in Singular

April 18, 2017

76 / 76

Suggest Documents