PROGRAMMING THE MINIMAL MODEL PROGRAM: A PROPOSAL

. The aim of this paper is to propose a strategy to implement the Minimal Model Program in modern computer algebra systems.


Introduction
The aim of this paper is to propose a strategy to programme the Minimal Model Program (MMP) in modern computer algebra systems such as OSCAR [Osc23].
The MMP is a programme in higher dimensional birational geometry aiming to classify varieties and pairs with mild singularities up to birational equivalence: the goal is to find in each such birational class at least one representative which is minimal in a very precise sense.When completed, the programme will show that -up to birational equivalence -all varieties with mild singularities are built out of three basic building blocks: varieties whose canonical class is either ample, numerically trivial or anti-ample.In other words, the theory predicts that one should be able to slice any such variety up into pieces whose curvature has almost everywhere the constant sign.Stated this way, the MMP bears resemblance to Thurston's Geometrisation in geometric topology.
The MMP has seen decisive progress ever since it was introduced by Mori in the 1980s.In particular, it is now complete for threefolds, and for varieties of log general type in every dimension.A comprehensive survey of the state of the art (as far as relevant for the present paper) can be found in [Laz13].
In this paper I address the problem of possible implementations of the Minimal Model Program on a computer.This is an important issue: we have very few concrete examples in higher dimensional geometry, see for instance the introduction to [LS22], and calculating minimal models of concrete projective varieties is obviously a pressing issue, both from the point of view of applications within the MMP itself as well as applications in wider algebraic geometry.
There has been very limited progress on the problem of computer algebra implementations of the MMP.Ideally, at some point in the future one would feed a computer algebra system with a projective variety (given, for instance, by global equations; or by local equations in charts, requiring massive parallelisation [BDFK + 21]), tell it to calculate its minimal models, which then the system would spit out after a certain time.In order to achieve the implementation in this generality in a foreseeable future, a computer algebra system will need human input, simplifications and theoretical improvements at several steps along the way.
My goal in this paper is to propose a possible strategy for such an implementation based on the approach from [CL12b, CL13, KKL16]; surveys of these ideas can be found in [CL12a,Laz13].The expectation is that the algorithm proposed here is realisable in modern or future computer algebra systems such as OSCAR.The input of the algorithm is the set of multidegrees of a set of generators of a certain finitely generated multigraded ring on a klt pair (X, ∆) of log general type, see Section 3; the output is a minimal model of (X, ∆) or, moreover, a sequence of maps in a (K X + ∆)-MMP which terminates with a minimal model of (X, ∆).
I will concentrate in this paper only on pairs of log general type over C, since this is the class of objects where the MMP is not a conjecture, but a theorem.

Countable vs. uncountable problems
Many problems in algebraic geometry are what I prefer to call uncountable problems: problems whose decidability seems to depend on uncountably many parameters.A part of important theoretical progress on some of them is to translate them into countable problems, i.e. problems whose decidability depends on at most countably many parameters.Then, at least in theory, a computer has a chance to verify a task in a finite time.
First I give two examples to illustrate the issue.
Example 1: Uniruledness.A complex variety X is uniruled if it can be covered by (singular) rational curves; a good source on uniruledness is [Deb01], whereas a more comprehensive but more technical presentation is in [Kol96].Since this is a birational property, we may assume that X is smooth.Deciding whether X is uniruled seems a priori to be extremely difficult: one has to test whether through each point on X there is a rational curve.One can relax this to testing whether through each general point there is a rational curve, but practically this is not an improvement.One of the main results of [BDPP13] is the proof that a smooth variety X is uniruled if and only if the canonical class K X is not pseudoeffective, i.e. if the numerical class of K X is not a limit of the numerical classes of effective divisors.Assuming the full Minimal Model Program (including the Abundance conjecture) this is then equivalent to K X not being effective itself.In other words, we expect: Note that this equivalence holds unconditionally in dimension 3. Therefore, testing uniruledness is a countable problem and could in principle be implemented on a computer.
In practice this means that it suffices to find one positive integer m such that H 0 (X, mK X ) = 0 in order to show that X is not uniruled.
Example 2: Rational connectedness.A complex variety X is rationally connected if through every two points on X there is a (singular) rational curve; again, good sources on rational connectedness are [Deb01,Kol96].We may again assume that X is smooth.A priori, testing whether X is rationally connected seems to be an even more difficult problem than testing uniruledness.
However, a conjecture attributed to Mumford suggests that testing rational connectedness is in fact a countable problem and could in principle be implemented on a computer.Indeed, one should have: X rationally connected ⇐⇒ H 0 X, (Ω 1 X ) ⊗m = 0 for all m > 0. This equivalence holds unconditionally in dimension 3 by [KMM92] and in almost all cases in dimension 4 by [LP17].
In practice this means that it suffices to find one positive integer m such that H 0 X, (Ω 1 X ) ⊗m = 0 in order to show that X is not rationally connected.
The MMP. (iii) One repeats (i) and (ii) until either one stops as in (ii), or the canonical class becomes nef.Testing whether a divisor (or a line bundle) on a variety is nef (i.e.whether it intersects every curve non-positively) seems to me to be an uncountable problem, similarly as in (i).Additionally, at no stage of the algorithm does one have control over how many repetitions one has to execute until the algorithm stops.
The MMP with scaling.One of the obvious issues in (i) above is that from the Cone theorem one does not know how to generate a suitable extremal ray and hence a contraction morphism.Instead, one can employ Shokurov's MMP with scaling of some ample divisor [BCHM10, Remark 3.10.10]:one fixes an ample (or just big) divisor H on X such that K X + H is nef, and determines the number Then one can show that λ is in fact a rational number, that there exists a K X -negative extremal ray R ⊆ NE(X) such that (K X + λH) • R = 0, and that the divisor K X + λH is semiample and defines a morphism which contracts precisely the curves whose classes belong to R. Then one continues with the steps (ii) and (iii) as above.This MMP with scaling of H is much less arbitrary than a general MMP and it seems to be a step closer to being a countable problem: the main point is finding such λ, and for this one has to be able to calculate finitely many intersection products, and then repeat the procedure.However, the issue of testing whether a divisor is nef remains: to me this looks like an uncountable problem.
Another point of view.A new outlook on the MMP was proposed in [CL12b,CL13]: that once one knows that a certain graded ring is finitely generated, then the MMP becomes a problem closely related to the convex geometry of certain cones of divisors naturally associated to that graded ring.The goal of the remainder of the present paper is to show how this strategy can be adapted to an algorithm that can be implemented in a computer algebra system.

Step 1: Graded rings and the Main Problem
In this paper, I consider the Minimal Model Program for projective Qfactorial klt pairs (X, ∆) defined over C of log general type, i.e. such that K X + ∆ is big.The canonical source on the foundational material in the MMP is [KM98].However, everything works in the category of varieties where analogous birational procedures can be executed as in [KKL16, Section 5].
To start with, let X be a projective Q-factorial variety and let D be a Q-divisor on X.We define the global sections of D by Then for Q-divisors D and D ′ on X there is a well-defined multiplication map ), so that, if we are given a bunch of Q-divisors D 1 , . . ., D r on X, we can define the corresponding divisorial ring as and the corresponding cone If R is finitely generated, then we can define the support of R, denoted by Supp R: this is the convex hull of all integral divisors D ∈ C such that H 0 (X, D) = 0.It is easily seen that Supp R is a rational polyhedral cone: indeed, pick finitely many generators f i of R, and let E i ∈ C be the divisors such that f i ∈ H 0 (X, E i ).Then Supp R = R + E i .The following result gives the most important example of a finitely generated divisorial ring.
Theorem 3.1.Let X be a normal projective variety and let ∆ i be Q-divisors on X such that each ∆ i is big and each pair (X, ∆ i ) is klt for i = 1, . . ., r.Then the ring R(X; K X + ∆ 1 , . . ., K X + ∆ r ) is finitely generated.
This was first proved in [BCHM10, Corollary 1.1.9]by the full machinery of the MMP, and then without the MMP in [Laz09, Theorem 1.2] and [CL12b, Theorem A]; see also [CL13, Theorem 2] for the above formulation.In particular, this result implies the finite generation of the canonical ring R(X, K X ) on a smooth projective variety X, which was implicitly conjectured in Zariski's famous paper [Zar62].
It is one of the main open problems in higher dimensional birational geometry to prove an analogue of Theorem 3.1 when the divisors K X + ∆ i are not big -note that this is indeed a theorem in dimensions at most 3.The case of threefolds of not necessarily general type is probably the most important case for the implementation of the MMP on a computer, beyond the case of pairs of log general type.
The first step in the potential algorithm of the implementation of the MMP is the following: Main Problem.Let (X, ∆) be a projective Q-factorial klt pair of log general type, and let A 1 , . . ., A r be ample divisors on X. Find the multidegrees of some set of generators of the ring ) for some positive integers m i , and some effective divisors A ′ i ≡ A i .As we will see later, it is important for the MMP algorithm in this paper that the ample divisors A 1 , . . ., A r are chosen in such a way that their numerical classes generate the Néron-Severi space N 1 (X) R .
The Main Problem is clearly a countable problem: indeed, one might be able to find a brute-force algorithm to calculate the graded pieces and test the generation relations in the ring -since each graded piece is a finite dimensional vector space, one has at most countably many generators and relations.However, such a brute-force algorithm will not in general end in a finite time without an algebro-geometric input about the specific examples that one wants to calculate on a computer.

However :
The Main Problem on surfaces.Finding an explicit bound of the degree of generation as in the Main Problem -at least in explicit examples -is one of the technical prerequisites for this algorithm to work.
There is evidence that the degree of generation of the divisorial ring as in the Main Problem is bounded uniformly, depending only on the dimension and the number of prime divisors in the supports of the divisors K X + ∆ and A i .A version of this holds on surfaces by [CZ14, Proposition 4.1] and [CL14, Theorem 3.1] and is conjectured to hold in any dimension.
More precisely, we have [CL14, Theorem 3.1]: Theorem 3.2.Let X be a smooth surface and let S 1 , . . ., S p be distinct prime divisors such that p i=1 S i is a simple normal crossings divisor.Let B 0 , B 1 , . . ., B r be Q-divisors on X such that: (i) Supp B j = p i=1 S i for all j, and (ii) ⌊B j ⌋ = 0 for every j, and let k be a positive integer such that all kB j are Cartier.Then there exists a positive integer m depending only on p and k such that the ring is generated in degree 4. I want to stress here that the constant m can be calculated explicitly, by tracing back through the results of [CZ14,CL14] and calculating all the constants there precisely.The constant is large, but after one calculates it precisely, all the remaining steps in the algorithm presented in Sections 4 and 5 (apart from calculating the images of birational morphisms and finding suitable ample divisors) are then a mixture of convex geometry and linear algebra, which should be doable in modern computer algebra systems.
It is not completely obvious how to pass from Theorem 3.2 to the Main Problem, so I explain this now.Let (X, ∆) be a projective Q-factorial klt surface pair of log general type; passing to a log resolution, we may assume that X is smooth.Pick some ample divisors A ′ 1 , . . ., A ′ r on X and pick an element A ′ 0 of some non-empty linear system |s(K X + ∆)| for s > 0, which is possible since the divisor K X + ∆ is big.Since the cone of big divisors in N 1 (X) R is open, we can find distinct prime divisors S 1 , . . ., S p on X such that the numerical classes of all the divisors A ′ 0 , . . ., A ′ r are contained in the interior of the cone spanned by the numerical classes of S 1 , . . ., S p in Div R (X).By replacing A ′ i by a divisor in the numerical class of A ′ i for each i, we may assume that Supp A ′ i = p j=1 S j for all i.Then take a large positive integer q such that ⌊ 1 q A ′ i ⌋ = 0 for all i.Set A i := 1 q A ′ i for each i, and note that we have K X + ∆ + A 0 ∼ ( s q + 1)(K X + ∆).If the divisor ∆ + p i=1 S i has simple normal crossings support, then we can use Theorem 3.2 to solve the Main Problem: namely, there exists a computable constant m such that the ring R X; m(K X + ∆ + A 0 ), m(K X + ∆ + A 1 ), . . ., m(K X + ∆ + A r ) is generated in degree 4. Otherwise one has to pass to a log resolution of the pair (X, ∆ + p i=1 S i ) and work there.Remark 3.3.As pointed out to me by Frank-Olaf Schreyer, when X is a smooth surface of general type, a more efficient way to construct the minimal model of X might be to apply [Bom73,Main Theorem] to first construct the canonical model of X as the image of the pluricanonical map associated to the linear system |5K X |, and then construct the minimal model of X as the minimal resolution of the canonical model of X.
The Main Problem in higher dimensions.Inspired by [CZ14, Proposition 2.11] and [CL14, proposition 2.18], I expect an analogue of Theorem 3.2 to hold also on varieties X in arbitrary dimension, by replacing 4 by dim X + 2; the methods involved in the proof of [CZ14, Theorem 1.1] are probably crucial for the solution of the Main Problem on threefolds.

Step 2: Cone decompositions
The goal of the remainder of the paper is to demonstrate how once one solves the Main Problem, then one can in principle be able to implement the MMP in a computer algebra system.
In order to present the second step, I will discuss briefly asymptotic geometric valuations.This technical digression is not strictly necessary to understand the remainder of the algorithm, but it helps to understand the underlying philosophy.The details are in [CL13] and in the survey [Laz13].
The finite generation of a divisorial ring R has important consequences on the convex geometry of the cone Supp R. We will relate the ring R to the behaviour of linear systems |D| for integral divisors D ∈ Supp R via asymptotic geometric valuations.
Let X be a smooth projective variety.A geometric valuation Γ on X is any valuation on k(X) which is given by the order of vanishing at the generic point of a prime divisor on some birational model Y → X, and we denote the value of this valuation on a Q-divisor D on X by mult Γ D. If D is moreover effective, then the asymptotic order of vanishing of Equivalently, if mult Γ |kD| is the valuation at Γ of a general element of the linear system |kD|, then The following result is [CL13, Theorem 3]: it is essentially contained in the proof of [ELM + 06, Theorem 4.1], and is in fact a mixture of commutative algebra and convex geometry.It provides the relation between the finite generation and the behaviour of linear systems, and yields an important decomposition of the cone Supp R into finitely many special rational polyhedral cones.
Theorem 4.1.Let X be a smooth projective variety and let D 0 , . . ., D r be Q-divisors on X. Assume that the ring R = R(X; D 0 , . . ., D r ) is finitely generated.Then Supp R is a rational polyhedral cone and: (i) there is a finite rational polyhedral subdivision Supp R = C i into cones of maximal dimension, such that o Γ is linear on C i for every geometric valuation Γ over X, (ii) there exists a positive integer k such that o Γ (kD) = mult Γ |kD| for every integral divisor D ∈ Supp R.
As we will see in Section 5, as soon one has the cone decomposition from Theorem 4.1, one can calculate easily the outputs of the Minimal Model Program for a given projective klt pair of lof general type.
So the main problem at this step of the algorithm is to construct such a decomposition.I sketch briefly the construction from [ELM + 06, ELM + 23].
With notation from Theorem 4.1, for each m = (m 0 , . . ., m r ) ∈ N r+1 we denote by b m the ideal defining the base locus of the linear system |m 0 D 0 + . ..+m r D r |.We obtain the N r+1 -graded sequence of ideals b for all m, m ′ ∈ N r+1 .Then we have the associated Rees algebra which is finitely generated since the ring R is finitely generated.
Then the arguments from [ELM + 06, ELM + 23] show that Theorem 4.1 follows from the following crucial proposition.Proposition 4.2.With notation as above, let C ⊆ R r+1 be the convex cone spanned by N r+1 ⊆ R r+1 .Then there exist a smooth fan ∆ with support C and a positive integer d such that for every cone σ ∈ ∆, if we denote by e 1 , . . ., e s the generators of σ ∩ N r+1 , then for every (p 1 , . . ., p s ) ∈ N s .Here b denotes the integral closure of an ideal b.
Thus, the algorithm takes as an input the degrees of the generators of the ring R and finds a rational polyhedral subdivision of Supp R as an output.
The crucial point is this: the proof from [ELM + 23] of Proposition 4.2 is convex geometric, thus finding a rational polyhedral subdivision of Supp R is implementable in suitable convex geometry software such as Polymake [Pol23].For applications to the MMP in Section 5 we actually need only Theorem 4.1(i), and for this we do not need the full statement of Proposition 4.2: following the proof in [ELM + 23, Proposition 1.1], one first shows that each function o Γ can be written as the pointwise infimum of a family of linear functions -these linear functions depend only on the multidegrees of some set of generators of R, and this is precisely the place where the Main Problem is relevant.Once this is shown, one can find a subdivision as in Theorem 4.1(i) by an explicit linear algebra argument, see [ELM + 23, Lemma 2.1 and Remark 2.3].
For the sake of completeness, I mention here that Theorem 4.1(ii) is also algorithmically implementable.Additional to Theorem 4.1(i), there is only one crucial algebraic input, which corresponds to the case when r = 0: Lemma 4.3.If R 0 is a Noetherian ring and if R = m∈N R m is a finitely generated R 0 -algebra, then there exists a positive integer d such that R dm = R m d for every m ∈ N \ {0}.
The proof of this lemma in [Bou98, Chapter III, Section 1] is constructive: if one knows the degrees of some generators of R, then one can calculate d explicitly.
Therefore, one should be able to implement Theorem 4.1 in a computer algebra system (in the sense mentioned earlier: take as input the degrees of the generators of the ring R and get as output a rational polyhedral subdivision of Supp R), although improvements and simplifications to the algorithm from [ELM + 23] have to be made, since the calculations can get expensive quickly as the number of generators of R or their multidegrees grow.
Once Theorem 4.1 is implemented, we apply it for a projective Q-factorial klt pair (X, ∆) of log general type.We let A 1 , . . ., A r be ample divisors on X, and set D 0 := K X + ∆ and D i := K X + ∆ + A i for i = 1, . . ., r.Then, as explained above, as soon as we have a solution to the Main Problem for the ring R = R(X; D , . . ., D r ) (for instance, either by finding generators of R explicitly in explicit examples, or by knowing a general upper bound for their multidegrees by general theoretical arguments as in [CZ14,CL14]), we can calculate the cone subdivision as in Theorem 4.1(i) in a computer algebra system.As mentioned in Section 3, the biggest progress on this problem is currently on surfaces, where one can calculate a bound explicitly by Theorem 3.2.

Step 3: Minimal models
In the final step, we will see that the cone decomposition from the previous section applied to a particular choice of a divisorial ring on a klt pair (X, ∆) of log general type immediately provides the steps in a Minimal Model Program of (X, ∆), as well as a minimal model of (X, ∆).
So let (X, ∆) be a projective Q-factorial klt pair of log general type and let A 1 , . . ., A r be ample divisors on X whose classes generate N 1 (X) R .Thus, we may assume that r is the Picard rank of X.Moreover, by the Cone theorem, possibly by replacing A i by (2 dim X + 1)A i , we may assume from the start that each divisor D i := K X + ∆ + A i is ample for i = 1, . . ., r: this will make finding a divisor H below easier, but is not essential.
Then by Theorem 3.1 the ring R = R(X; K X + ∆, D 1 , . . ., D r ) is finitely generated.Therefore, by Theorem 4.1 the cone C := Supp R has a finite rational polyhedral subdivision into cones of maximal dimension, such that the asymptotic valuation function o Γ is linear on each C i for every geometric valuation Γ over X.By subdividing C further, we may assume that each cone C i is contained in one of the two half-spaces of the vector space R(K X + ∆) + RD i bounded by each hyperplane which contains a face of some C j , where 1 ≤ i, j ≤ p.Note that the cone C is equal to the cone R + (K X + ∆) + R + D i , since K X + ∆ is big.
Pick an ample divisor H on X such that, denoting then we have the following property: if I intersects some cone C i , then it intersects its interior -it is clear that one can easily achieve this.By relabelling, we may assume that I intersects precisely the cones C 1 , . . ., C k for some k ≤ p, so that Then we have: Theorem 5.1.With notation as above, let D be any divisor in the interior of C k .Then the variety Proj R(X, D) is a minimal model of X.
This follows from the proof of [CL13, Theorem 6] and from the proof of a more general statement [KKL16, Theorem 5.4].I briefly sketch the main steps of the proof, which will in particular explain how to run the MMP with scaling of H in this context.This is important when one is interested in all the steps of the MMP instead of just in its main result.
The proof is by induction on k.Denote by π : Div R (X) → N 1 (X) R the natural projection.Then one can show that the cone C ∩ π −1 Nef(X) is the union of some of the cones C i , where 1 ≤ i ≤ p.In particular, we may assume that there exists 1 ≤ k 0 ≤ k such that Pick any divisor G in the interior of C k 0 +1 and set X ′ := Proj R(X, G).Then the proof of [KKL16, Theorem 5.2] shows that the induced birational map f : X X ′ is precisely the first step in the (K X + ∆)-MMP with scaling of H.
The procedure just described calculates the maps f, f ′ , . . . in the MMP above, but there is some work involved in finding the indices k j .Moreover, one calculates each subsequent map on a different variety: for instance, f ′ was determined by data on X ′ and not on X itself.One can, however, proceed also as follows: For each i = 1, . . ., k one can pick a divisor G i in the interior of C i and set X i := Proj R(X, G i ).Then one obtains birational maps X = X 1 X 2 . . .X k , where X k is a minimal model of X.Some of these birational maps will actually be isomorphisms, hence there will be some redundancy in the process.However, the clear advantage is that one has to calculate the varieties X i on the variety X itself, which saves computer power.

Conclusion
An algorithm for an implementation of the Minimal Model Program in a computer algebra system was proposed in Sections 3, 4 and 5, for pairs (X, ∆) of log general type.
The algorithm proceeds in three steps.In Step 1 one considers a carefully chosen multigraded ring R on X.The Main Problem in the algorithm is to bound the multidegrees of its generators.This problem has a solution on surfaces, therefore the MMP on surfaces should be implementable on a computer in the near future.Bounding the multidegrees of generators of such graded rings R in higher dimensions is a topic of future theoretical research.
Once the Main Problem is implemented, the remainder of the algorithm becomes a mixture of linear algebra and convex geometry.In Step 2 one uses as an input the information on the multidegrees of generators of R as in the Main Problem to find a suitable decomposition of the support of R into finitely many rational polyhedral cones with special properties.In Step 3, from this decomposition one can immediately obtain a minimal model of (X, ∆) and the steps in a (K X + ∆)-MMP with scaling of a certain ample divisor.All three steps can be implemented independently of each other.