Computing Sarkisov links between 4-dimensional terminal wps
===========================================================
We describe the web of Sarkisov links available from
http://grdb.co.uk/Downloads
see section titled: Sarkisov links in dimension 4 (*)
It records the output of a collection of 1,089,104 Sarkisov links between the
4-dimensional weighted projective spaces (wps).
This is described in
Gavin Brown, Jaroslaw Buczynski and Alexander Kasprzyk,
"Toric Sarkisov Links", 2022.
The list of 35,947 terminal 4-dimensional wps is also available from (*). The
Magma code to compute Sarkisov links from any such wps X is in
'sarkisov4.tar.gz' also available from (*).
The Sarkisov links recorded above are produced by running (in Magma), for
example on P(1,3,11,20,26),
> load "sarkisov4.m";
> X := WPS(Rationals(),[1,3,11,20,26]);
> numdata,toricvars := SarkisovLinks(X : max_discrep := 2);
(takes approx 15 seconds)
on each of the wps.
The numerical data described below is printed to screen, and that is the data
recorded at (*). This numerical data is recorded in the output sequence
'numdata'. The toric varieties that appear in the link are recorded as Magma
output in the sequence 'toricvars'.
That is: for each X we calculate:
(1) all point blowups of discrepancy at most 5 ("max_discrep := 5");
(2) for each smooth toric 1-stratum, the usual blowup;
(3) for each singular toric 1-stratum, all blowups of least discrepancy;
(2) for each smooth toric 2-stratum, the usual blowup;
(3) for each singular toric 2-stratum, all blowups of least discrepancy;
and then extend each 2-ray game, recording those that result in a (terminal)
Sarkisov link, and discarding those which lead to non-terminal singularities.
Each Sarkisov link in the output records the following data:
start: the initial wps X
blowup: the weights of the terminal extraction X <- Y1
.. then any antiflip / flop / flip given by their weights
.. then blowdown of mfs (= Mori fibre space) with weights and image data.
E.g.1
-----
wps(1,1,1,1,1) blowup(-1,1,1,1,1) mfs(4,3) tv(1,0,0,0,0,1)(1,1,1,1,1,0) base_wps(1,1,1,1)
reports a link: X <- Y -> Z
start: X = P^4 = P(1,1,1,1,1)
blowup: the blowup X <- Y with weights (-1,1,1,1,1) = usual point blowup
Mori fibre space mfs(4,3) Y -> Z to a base wps Z = P^3 = P(1,1,1,1)
For Mori fibre spaces, we include the weights of Y as tv(row1)(row2), leaving
the polarisation implicit.
E.g.2
-----
wps(1,1,1,1,1)[0,1/3,2/3,2/3,1/3] blowup(-3,1,2,3,10) antiflip(3,1,-1,-2,-9) antiflip(3,2,1,-1,-8) blowdown(3,3,2,1,-7) wps(8,10,9,7,3)
reports a link: X <- Y1 - -> Y2 - -> Y3 -> Z
start: "fake" wps X = P^4 / (Z/3)(0,1,2,2,1)
blowup: weighted blowup (-3,1,2,3,10)
codim 1 steps:
antiflip with weights (3,1,-1,-2,-9) [i.e. replace P(3,1) by P(1,2,9)]
followed by
antiflip with weights (3,2,1,-1,-8) [i.e. replace P(3,2,1) by P(1,8)]
blowdown: weighted (3,3,2,1,-7)
end of link: P(3,7,8,9,10)