<<

Draft, May 25, 2016

NUMERICAL COMPUTATION OF GALOIS GROUPS

JONATHAN D. HAUENSTEIN, JOSE ISRAEL RODRIGUEZ, AND FRANK SOTTILE

Abstract. The Galois/ of a family of geometric problems or equations is a subtle invariant that encodes the structure of the solutions. Computing monodromy using numerical gives information about the group, but can only determine it when it is the full . We give numerical methods to compute the Galois group and study it when it is not the full symmetric group. One algorithm computes generators while the other gives information on its structure as a group. We illustrate these algorithms with examples using a Macaulay2 package we are developing that relies upon Bertini to perform monodromy computations. AMS Subject Classification 2010: 65H10, 65H20, 14Q15.

1. Introduction Galois groups, which are a pillar of number theory and arithmetic geometry, encode the structure of field extensions. For example, the Galois group of the cyclotomic extension of Q given by the x4 + x3 + x2 + x + 1 is the cyclic group of order four, and not the full symmetric group. A finite extension L/K, where K has transcendence degree n over C, corresponds to a branched cover f : V → U of complex algebraic varieties of dimension n, with L the field of V and K the function field of U. The Galois group of the Galois closure of L/K equals the monodromy group of the branched cover [14, 19]. When U is rational, f : V → U may be realized as a family of polynomial systems rationally parame- terized by points of U. Applications of algebraic geometry and are sources of such families. For these, internal structure such as numbers of real solutions and symmetry of the original problem are encoded in the Galois/monodromy group. Computing monodromy is a fundamental operation in numerical algebraic geometry. Com- puting monodromy permutations along randomly chosen loops in the base U was used in [24] to show that several Schubert problems had Galois/monodromy group the full symmetric group. Leaving aside the defect of that computation—the continuation (and hence the mon- odromy permutations) was not certified—this method only computes an increasing sequence of subgroups of the Galois group, and thus only determines the Galois group when it is the full symmetric group. In all other cases, this method lacks a stopping criterion. We offer two additional numerical methods to obtain certifiable information about Galois groups and investigate their efficacy. The first method is easiest to describe when U is a rational curve so that K = C(t), the field of rational functions. Then V is an C equipped with a dominant map f : C → C whose fiber at t ∈ C consists of solutions to a polynomial system that depends upon t. This is a degree k cover outside the branch

Research of Hauenstein supported in part by NSF grant ACI-1460032, Sloan Research Fellowship, and Army Young Investigator Program (YIP). Research of Rodriguez supported in part by NSF grant DMS-1402545. Research of Sottile supported in part by NSF grant DMS-1501370. 1 2 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE locus B, which is a finite subset of C. The monodromy group of f : C → C is generated by permutations coming from loops encircling each branch point. Our second method uses numerical irreducible decomposition of the s-fold fiber product to determine orbits of the monodromy group acting on s-tuples of distinct points in a fiber. When s = k−1, this computes the Galois group. The partial information obtained when s < k−1 may be sufficient to determine the Galois group. We illustrate these methods. The irreducible polynomial x4 − 4x2 + t over C(t) defines a curve C in Cx × Ct whose projection√ √C → Ct is four-to-one for t 6∈ B = {0, 4}. The fiber above the point t = 3 is {− 3, −1, 1, 3}. Following these points along a loop in Ct based at t = 3 that encircles the branch point t = 0 gives the√ 2-cycle (√−1, 1). A loop encircling the branch point t = 4 gives the product of 2-cycles, (− 3, −1)(1, 3). These permutations generate the Galois group, which is isomorphic to the dihedral group D4 and has order 8.

x C y

1 t x 3 4 −1

Figure 1. Curve C over Ct and fiber of C ×Ct C over t = 3.

The fiber product C ×Ct C consists of triples (x, y, t), where x and y lie in the fiber of C 4 2 4 2 above t. It is defined in Cx × Cy × Ct by the x − 4x + t and y − 4y + t. Since (x4 − 4x2 + t) − (y4 − 4y2 + t) = (x − y)(x + y)(x2 + y2 − 4) , it has three components. One is the diagonal defined by x − y and x4 − 4x2 + t. The off- diagonal consists of two irreducible components, which implies that the action of the Galois 4 2 group G is not two-transitive. One component is√ defined√ by x + y and x − 4x + t. Its fiber over t = 3 consists of the four ordered pairs (± 3, ∓ 3) and (±1, ∓1), which is an orbit of G acting on ordered√ √ pairs of solutions. This implies that G acts imprimitively as it fixes the partition {− 3, 3} t {−1, 1}. Thus G ⊂ S4 contains no 3-cycle, so G ⊂ D4. The third 2 2 4 2 component is defined by x + y − 4 and x − 4x + t and its projection to Ct has degree eight. Thus G has an orbit of cardinality eight, which implies |G| ≥ 8, from which we can conclude that G is indeed the dihedral group D4. The systematic study of Galois groups of families of geometric problems and equations coming from applications is in its infancy. Nearly every case we know where the Galois group has been determined exhibits a striking dichotomy (e.g., [7, 14, 23, 24, 25, 26, 28, 34, 36]): either the group acts imprimitively, so that it fails to be 2-transitive, or it is at least (k−2)- transitive in that it contains the alternating group (but is expected to be the full symmetric group). The methods we develop here are being used [26] to further investigate Galois groups and we expect they will help to develop Galois groups as a tool to study geometric problems, including those that arise in applications. NUMERICAL COMPUTATION OF GALOIS GROUPS 3

The paper is structured as follows. Section 2 introduces the background material including permutation groups, Galois groups, fundamental groups, fiber products, homotopy continu- ation, and witness sets. In Section 3, we discuss the method of computing monodromy by determining the branch locus, illustrating this on the classical problem of determining the monodromy group of the 27 lines on a cubic surface. In Section 4, we discuss using fiber products to obtain information about the Galois group, illustrating this method with the monodromy action on the lines on a cubic surface. We further illustrate these methods using three examples from applications in Section 5, and we give concluding remarks in Section 6.

2. Galois groups and numerical algebraic geometry We describe some background, including permutation groups, Galois/monodromy groups, and fundamental groups of hypersurface complements from classical algebraic geometry, as well as the topics from numerical algebraic geometry of homotopy continuation, monodromy, witness sets, fiber products, and numerical irreducible decomposition.

2.1. Permutation groups. Let G ⊂ Sk be a subgroup of the symmetric group on k letters. Then G has a faithful action on[ k] := {1, . . . , k}. For g ∈ G and i ∈ [k], write g(i) for the image of i under g. We say that G is transitive if for any i, j ∈ [k] there is an element g ∈ G with g(i) = j. Every group is transitive on some set, e.g., on itself by left multiplication. The group G has an induced action on s-tuples,[ k]s. The action of G is s-transitive if for any two s-tuples (i1, . . . , is) and (j1, . . . , js) each having distinct elements, there is a g ∈ G with g(ir) = jr for r = 1, . . . , s. The full symmetric group Sk is k-transitive and its alternating subgroup Ak of even permutations is (k−2)-transitive. There are few other highly transitive groups. This is explained in [9, § 4] and summarized in the following proposition, which follows from the O’Nan-Scott Theorem [29] and the classification of finite simple groups. Proposition 2.1 (Thm. 4.11 [9]). The only 6-transitive groups are the symmetric and alter- nating groups. The only 4-transitive groups are the symmetric and alternating groups, and the Mathieu groups M11, M12, M23, and M24. All 2-transitive permutation groups are known. Tables 7.3 and 7.4 in [9] list the 2-transitive permutation groups. Suppose that G is transitive on [k]. A block is a subset B of [k] such that for every g ∈ G either gB = B or gB ∩ B = ∅. The orbits of a block form a G-invariant partition of [k] into blocks. The group G is primitive if its only blocks are [k] or singletons, otherwise it is imprimitive. Any 2-transitive permutation group is primitive, and primitive permutation groups that are not symmetric or alternating are rare—the set of k for which such a nontrivial primitive permutation group exists has density zero in the natural numbers [9, § 4.9]. 2 Each G-orbit O ⊂ [k] determines a graphΓ O with vertex set [k]—its edges are the pairs in O. For the diagonal orbit {(a, a) | a ∈ [k]}, this graph is disconnected, consisting of k loops. Connectivity of all other orbits is equivalent to primitivity (see [9, § 1.11]). Proposition 2.2 (Higman’s Theorem [20]). A transitive group G is primitive if and only if 2 for each non-diagonal orbit O ⊂ [k] , the graph ΓO is connected.

Imprimitive groups are subgroups of wreath products Sa Wr Sb with ab = k and a, b > 1 where this decomposition comes from the blocks of a G-invariant partition. The dihedral group D4 of the symmetries of a square is isomorphic to S2 Wr S2, with an imprimitive action on the vertices—it preserves the partition into diagonals. More generally, the dihedral group Dk of symmetries of a regular k-gon is imprimitive on the vertices whenever k is composite. 4 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

2.2. Galois and monodromy groups. A map f : V → U between irreducible complex algebraic varieties of the same dimension with f(V ) dense in U is a dominant map. When f : V → U is dominant, the function field C(V ) of V is a finite extension of f ∗C(U), the pullback of the function field of U. This extension has degree k, where k is the degree of f, which is the cardinality of a general fiber. The Galois group G(V →U) of f : V → U is the Galois group of the Galois closure of C(V ) over f ∗C(U). This algebraically defined Galois group is also a geometric monodromy group. A dominant map f : V → U of equidimensional varieties is a branched cover. The branch locus B of f : V → U is the set of points u ∈ U such that f −1(u) does not consist of k reduced points. Then f : f −1(U rB) → U rB is a degree k . The group of deck transformations of this cover is a subgroup of the symmetric group Sk and is isomorphic to the Galois group G(V →U), as permutation groups. Hermite [19] realized that Galois and monodromy groups coincide and Harris [14] gave a modern treatment. The following is elementary.

Proposition 2.3. Let u ∈ U r B. Following points in the fiber f −1(u) along lifts to V of loops in U r B gives a homomorphism from the fundamental group π1(U r B) of U r B to the set of permutations of f −1(u) whose image is the Galois/monodromy group. There is a purely geometric construction of Galois groups using fiber products (explained s in [36, § 3.5]). For each 2 ≤ s ≤ k let VU be the s-fold fiber product, s s z }| { VU := V ×U V ×U · · · ×U V. s s −1 s We also write f for the map VU → U. The fiber of VU over a point u ∈ U is (f (u)) , the −1 s s set of s-tuples of points in f (u). Over U r B, VU is a covering space of degree k . This is decomposable, and among its components are those lying in the big diagonal∆, where some (s) s −1 coordinates of the s-tuples coincide. We define V to be the closure in VU of f (U rB)r∆. Then every irreducible component of V (s) maps dominantly to U and its fiber over a point u ∈ U r B consists of s-tuples of distinct points of f −1(u). This may be done iteratively as (s+1) (s) V is the union of components of V ×U V lying outside of the big diagonal. Suppose that s = k. Let u ∈ U r B and write the elements of f −1(u) in some order, −1 f (u) = {v1, v2, . . . , vk} .

(k) The fiber of V over u consists of the k! distinct k-tuples (vσ(1), . . . , vσ(k)) for σ in the symmetric group Sk.

Proposition 2.4. The Galois group G(V →U) is the subgroup of Sk consisting of all permu- (k) tations σ such that (vσ(1), . . . , vσ(k)) lies in the same component of V as does (v1, . . . , vk).

The function field of any component of V (k) is the Galois closure of C(V ) over f ∗C(U), and the construction of V (k) is the geometric counterpart of the usual construction of a Galois closure by adjoining successive roots of an irreducible polynomial. Proposition 2.4 implies that we may read off the Galois group from any irreducible component of V (k). In fact V (k−1) (k) (k−1) will suffice as V ' V . (Knowing k−1 points from {v1, . . . , vk} determines the kth.) Other properties of G as a permutation group may be read off from these fiber products. Proposition 2.5. The irreducible components of V (s) correspond to orbits of G acting on s-tuples of distinct points. In particular, G is s-transitive if and only if V (s) is irreducible. NUMERICAL COMPUTATION OF GALOIS GROUPS 5

Proof. This is essentially Lemma 1 of [34]. Let u ∈ U r B and suppose that v := (v1, . . . , vs) 0 0 0 s and v := (v1, . . . , vs) are points in the fiber in VU above u that lie in the same irreducible component X. Let σ be a path in X r f −1(B) connecting v to v0. Then f(σ) = γ is a loop in U r B based at u. Lifting γ to V gives a monodromy permutation g ∈ G with the property 0 0 that g(vi) = vi for i = 1, . . . , s. Thus v and v lie in the same orbit of G acting on s-tuples of points of V in the fiber f −1(u). Conversely, let v1, . . . , vs ∈ V be points in a fiber above u ∈ U r B and let g ∈ G. There is a loop γ ⊂ U r B that is based at U and whose lift to V gives the action of g on f −1(u). s Lifting γ to VU gives a path connecting the two points (v1, . . . , vs) and (g(v1), . . . , g(vs)) in s the fiber above u, showing that they lie in the same component of VU . Restricting to s-tuples of distinct points establishes the proposition.  2.3. Fundamental groups of complements. Classical algebraic geometers studied the n n fundamental group π1(P r B) of the complement of a hypersurface B ⊂ P . Zariski [37] showed that if Π is a general two-dimensional linear subspace of Pn, then the inclusion ι:Π r B → Pn r B induces an of fundamental groups, ∼ n (1) ι∗ : π1(Π r B) −−→ π1(P r B) . (As the complement of B is connected, we omit base points in our notation.) Consequently, it suffices to study fundamental groups of complements of plane curves C ⊂ P2. Zariski also showed that if ` is a line meeting B in d = deg B distinct points, so that the intersection is transverse, then the natural map of fundamental groups n ι∗ : π1(` r B) − π1(P r B) is a surjection. (See also [10, Prop. 3.3.1].) We recall some facts about π1(`rB). Suppose that B ∩` = {b1, . . . , bd} and that p ∈ `rB 1 is our base point. For each i = 1, . . . , d, let Di be a closed disc in ` ' CP centered at bi with Di ∩ B = {bi}. Choose any path in ` r B from p to the boundary ∂Di of Di and let γi be the loop based at p that follows that path, traverses the boundary of Di once anti-clockwise, and then returns to p along the chosen path. Any loop in ` r B based at p that is homotopy- equivalent to γi (for some choice of path from p to ∂Di) is a (based) loop in `rB encircling bi. The fundamental group π1(` r B) is a free group freely generated by loops encircling any d−1 points of B ∩ `. We record the consequence of Zariski’s result that we will use.

Proposition 2.6. Let B ⊂ Pn be a hypersurface. If ` ⊂ Pn is any line that meets B in finitely many reduced points, then a set of based loops in ` encircling each of these points n generate the fundamental group of the complement, π1(P r B). 2.4. Homotopy continuation and monodromy. Numerical algebraic geometry [5, 32] uses numerical analysis to study algebraic varieties on a computer. We present its core algorithms of Newton refinement and continuation, and explain how they are used to compute monodromy. Let F : Cn → Cn be a polynomial map with F −1(0) consisting of finitely many reduced points. To any x ∈ Cn that is not a critical point of F so that the Jacobian matrix JF (x) of F at x is nonsingular, we may apply a Newton step −1 NF (x) := x − JF (x) · F (x) . ∗ If x is sufficiently close to a zero x of F , then NF (x) is closer still in that the sequence ∗ 1−2i ∗ defined by x0 := x and xi+1 := NF (xi) for i ≥ 0 satisfies kx − xik < 2 kx − xk. 6 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

n n −1 A homotopy H is a polynomial map H : C × Ct → C that defines a curve C ⊂ H (0) which maps dominantly to Ct. Write f : C → Ct for this map. We assume that the inverse image f −1[0, 1] in C of the interval [0, 1] is a collection of arcs connecting the points of C above t = 1 to points above t = 0 which are smooth at t 6= 0. Given a point (x, 1) of C, standard predictor-corrector methods (e.g. Euler tangent prediction followed by Newton refinement) construct a sequence of points (xi, ti) where x0 = x and 1 = t0 > t1 > ··· > ts = 0 on the arc containing (x, 1). This computation of the points in f −1(0) from points of f −1(1) by continuation along the arcs f −1[0, 1] is called numerical homotopy continuation. Numerical algebraic geometry uses homotopy continuation to solve systems of polynomial equations and to study algebraic varieties. While we will not describe methods to solve systems of equations, we will describe other methods of numerical algebraic geometry. When U is rational, a branched cover f : V → U gives homotopy paths. Given a map ∗ g : Ct → U whose image is not contained in the branch locus B of f, the pullback g V is a curve C with a dominant map to Ct. Pulling back equations for V gives a homotopy for tracking points of C. We need not restrict to arcs lying over the interval [0, 1], but may instead take any path γ ⊂ Ct (or in U) that does not meet the branch locus. When γ ⊂ U rB is a loop based at a point u ∈ U r B, homotopy continuation along f −1(γ) starting at f −1(u) computes the monodromy permutation of f −1(u) given by the homotopy class of g(γ) in UrB. The observation that numerical homotopy continuation may compute monodromy is the point de d´epart of this paper.

2.5. Numerical algebraic geometry. Numerical algebraic geometry uses solving, path- tracking, and monodromy to study algebraic varieties on computer. For this, it relies on the fundamental data structure of a witness set, which is a geometric representation based on linear sections [30, 31]. Let F : Cn → Cm be a polynomial map and suppose that X is a component of F −1(0) of dimension r and degree d. Let L: Cn → Cr be a general affine-linear map so that L−1(0) is a general affine subspace of r. By Bertini’s Theorem, W := X ∩ L−1(0) consists of d distinct points, and we call the triple (F, L,W ) (or simply W ) a witness set for −1 X. If L varies in a family {Lt | t ∈ C}, then V ∩ Lt (0) gives a homotopy which may be used to follow the points of W and sample points of X. This is used in many algorithms to manipulate X based on geometric constructions. A witness superset for X is a finite subset W 0 ⊂ F −1(0) ∩ L−1(0) that contains W = X ∩ L−1(0). In many applications, it suffices to work with a witness superset. For example, if X is a hypersurface, then L−1(0) is a general line, `, and by Zariski’s Theorem (Prop. 2.6), the fundamental group of Cn r V is generated by loops in ` encircling the points of W , and hence also by loops encircling points of W 0. One algorithm is computing a witness set for the image of an irreducible variety under a linear map [16]. Suppose that F : Cn → Cm is a polynomial map with V ⊂ F −1(0) a component of dimension r as before, and that we have a linear map π : Cn → Cp. Let U = π(V ) be the closure of the image of V under π, which we suppose has dimension q and degree δ. To compute a witness set for U from one for V , we need an affine-linear map L: Cn → Cr adapted to the map π. Suppose that π is given by π(x) = Ax for a matrix A ∈ p×n. Let B be a matrix  B1  C B2 q×n where the rows of B1 ∈ C are general vectors in the row space of A and the rows of (r−q)×n n −1 B2 ∈ C are general vectors in C . Then B1 (0) is the pullback of a general linear subspace of codimension q in Cp. Choose a general vector v ∈ Cr, define L(x) := Bx − v, and set W := V ∩ L−1(0). The quadruple( F, π, L,W ) is a witness set for the image of NUMERICAL COMPUTATION OF GALOIS GROUPS 7

V under π. By the choice of B, the number of points in π(W ) is the degree δ of U, and for u ∈ π(W ), the number of points in π−1(u) ∩ W is the degree of the fiber of V over w, which has dimension r−q. The witness set (F, π, L,W ) for the image U may be computed from any witness set (F, L0,W 0) for V by following the points of W 0 along a path connecting the general affine map L0 to the special affine map L. Numerical continuation may be used to sort points in a general affine section of a reducible variety V into witness sets of its components. Let F : Cn → Cm be a polynomial map and −1 suppose that V = V1 ∪ · · · ∪ Vs is a union of components of F (0), all having dimension r, and that L: Cn → Cr is a general affine linear map with L−1(0) meeting V transversely in d −1 −1 points W := V ∩ L (0). The witness sets Wi := Vi ∩ L (0) for the components form the witness set partition of W that we seek. Following points of W along a homotopy as L varies, those from Wi remain on Vi. Conse- quently, if we compute monodromy by allowing L to vary in a loop, the partition of W into orbits is finer than the witness set partition. Computing additional monodromy permutations may coarsen this orbit partition, but it will always refine the witness set partition. Suppose that Lt depends affine-linearly on t. The path of w ∈ W under the corresponding homotopy will in general be a non-linear function of t. However if we follow all points in the n witness set Wi for a component, then their sum in C (the trace) is an affine-linear function of t. For general Lt, the only subsets of W whose traces are linear in t are unions of the Wi. Thus we may test if a union of blocks in an orbit partition is a union of the Wi. These two methods, monodromy break up and the trace test, are combined in the algorithm of numerical irreducible decomposition [32, Ch. 15] to compute the witness set partition. Remark 2.7. Oftentimes problems are naturally formulated in terms of homogeneous or multi- homogeneous equations whose solutions are subsets of (products of) projective spaces Pn. That is, we have a polynomial map F : Cn+1 → Cr and we want to study the projective variety given by F −1(0). Restricting F to any affine hyperplane not containing the origin of Cn+1, we obtain the intersection of F −1(0) with an affine chart of Pn. If the hyperplane is general, then the points of interest, including homotopy paths and monodromy loops, will lie in that affine chart, and no information is lost by this choice. When discussing computation, we will refer to the affine chart given by the vanishing of an affine form, as well as referring to the chart via a parameterization of the corresponding affine hyperplane. When performing computations, our software works in random affine charts.

3. Branch point method Given a branched cover f : V → U of degree k with branch locus B such that U is rational, we have the following direct approach to computing its Galois group G := G(V → U). Choose a regular value u ∈ U r B of f, so that f −1(u) consists of k reduced points. Numerically following the points of f −1(u0) as u0 varies along a sequence of loops in U r B based at u computes a sequence σ1, σ2,... of monodromy permutations in G ⊆ Sk. If Gi is the subgroup of G generated by σ1, . . . , σi, then we have

G1 ⊆ G2 ⊆ · · · ⊆ G ⊆ Sk .

This method was used in [24] (and elsewhere) to show that G = Sk by computing enough monodromy permutations so that Gi = Sk. When the Galois group is deficient in that G ( Sk, then this method cannot compute G, for it cannot determine if it has computed 8 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE generators of G. The results described in Section 2 lead to an algorithm to compute a set of generators for G and therefore determine G. As U is rational, we may replace it by Pn where n = dim U and assume that f : V → Pn is a branched cover of degree k. The branch locus B ⊂ Pn is the set of points b ∈ Pn where f −1(b) does not consist of k distinct (reduced) points. As V is irreducible, if k > 1, then B is a hypersurface. Suppose that B has degree d. Let ` ⊂ Pn be a that meets B transversally in d points, so that W = B ∩ ` is a witness set for B. By Bertini’s Theorem, a general line in Pn has this property. Let u ∈ ` r B and, for each point b of B ∩ `, choose a loop γb based at u encircling b as in Subsection 2.3. Let σb ∈ Sk be the monodromy permutation obtained by lifting γb to V . Theorem 3.1. The Galois group G(V →U) is generated by any d−1 of the monodromy per- mutations {σb | b ∈ B ∩ `}. n Proof. By Proposition 2.3, lifting based loops in P r B to permutations in Sk gives a surjec- n tive homomorphism π1(P rB) → G. By Zariski’s Theorem (Proposition 2.6) the fundamen- tal group of Pn rB is generated by loops encircling any d−1 points of `∩B, where d = deg B. Therefore their lifts to monodromy permutations generate the Galois group G.  It is not necessary to replace U by Pn. If we instead use Cn with B ⊂ Cn, then ` ⊂ Cn is a complex line, ` ' C. If B ∩ ` is d distinct points where d is the degree of the closure B in Pn, then the statement of Theorem 3.1 still holds, as B ∩ ` = B ∩ `. Lifts of loops encircling the points of a witness superset for ` ∩ B will also generate G. Corollary 3.2. Suppose that B0 is a reducible hypersurface in Pn that contains the hypersur- 0 0 face B and that ` meets B in a witness superset W = B ∩ ` for B. Then lifts {σw | w ∈ W } of loops {γw | w ∈ W } encircling points of W generate G. 3.1. Branch point algorithm. Theorem 3.1 and Corollary 3.2 give a procedure for deter- mining the Galois group G of a branched cover f : V → U when U is rational. Suppose that V ⊂ Pm × Pn is irreducible of dimension n and that the map f : V → Pn given by the projection to Pn is dominant, so that f : V → Pn is a branched cover. Algorithm 3.3 (Branch Point Algorithm). (1) Compute a witness set W = B ∩ ` (or a witness superset) for the branch locus B of f : V → Pn. (2) Fix a base point p ∈ ` r B and compute the fiber f −1(p). (3) Compute monodromy permutations {σw | w ∈ W } that are lifts of based loops in `rB encircling the points w of W . n The monodromy permutations {σw | w ∈ W } generate the Galois group G of f : V → P . The correctness of the branch point algorithm follows from Theorem 3.1 and Corollary 3.2. We discuss the steps (1) and (3) in more detail. 3.1.1. Witness superset for the branch locus. Suppose that V ⊂ Pm × Pn is an irreducible variety of dimension n such that the projection f : V → Pn is a branched cover with branch locus B. Since f is a proper map (its fibers are projective varieties), B is the set of critical values of f. These are images of the critical points CP, which are points of V where either V is singular or it is smooth and the differential of f does not have full rank. We use x for the coordinates of the cone Cm+1 of Pm and u for the cone Cn+1 over Pn. −1 m+1 n+1 r Then V = F (0), where F : Cx × Cu → C is a system of r ≥ m polynomials that are NUMERICAL COMPUTATION OF GALOIS GROUPS 9

j=0,...,m separately homogeneous in each set of variables x and u. Let JxF := (∂Fi/∂xj)i=1...,r be the r × (m+1)-matrix of the vertical partial derivatives of F .

Proposition 3.4. The critical points CP of the map f : V → Pn are the points of V where JxF has rank less than m. To compute a witness set for the branch locus B = f(CP) we will restrict f : V → Pn to a line g : ` ,→ Pn, obtaining a curve C := g−1(V ) ⊂ Pm × ` equipped with the projection f : C → `. We then compute the critical points on C of this map and their projection to `.

1 2 Example 3.5. Consider the irreducible two-dimensional variety V in Pxy × Puvw defined by the vanishing of F := ux3 + vy3 − wxy2. Write f for the projection of V to P2, which is a

C H V HHj

- CP   CP f

?

2 `1 Puvw

H B HHj HHj t

Figure 2. The surface ux3 + vy3 − wxy2 = 0. dominant map. This has degree three and in Example 3.7 we will see that the Galois group is the full symmetric group S3. Its critical point locus is the locus of points of V where the Jacobian JxyF = [∂F/∂x ∂F/∂y] has rank less than m = 1. This is defined by the vanishing of the partial derivatives as 3F = x∂F/∂x + y∂F/∂y. Eliminating x and y from the ideal these partial derivatives generate yields the polynomial u(27uv2 − 4w3), which defines the branch locus B and shows that both B and CP are reducible. In fact, B consists of the line u = 0 and the cuspidal cubic 27uv2 = 4w3. It is singular at the cusp [1 : 0 : 0] of the cubic and the point [0 : 1 : 0] where the two components meet. The cubic has its flex at this point and the line u = 0 is its tangent at that flex. The branch locus is also the discriminant of F , considered as a homogeneous cubic in x, y. We display V , CP, and B in Figure 2. 2 1 2 Consider the line `1 ⊂ P which is the image of the map g : P ,→ P defined by [s : t] 7−→ [s−t : 2s−3t : 5s+7t] . 1 1 −1 3 3 2 Let C ⊂ Pxy × Pst be the curve g (V ) defined by G := (s−t)x + (2s−3t)y − (5s+7t)xy . −1 Its Jacobian with respect to the x and y variables is simply g (JxyF ), and so the critical points and branch locus are pullbacks of those of F along g. They are defined by the two partial derivatives ∂G/∂x and ∂G/∂y. These equations of bidegree (1, 2) have four common 1 1 1 zeroes in P × P . Projecting to `1 = Pst and working in the affine chart where s = 1 yield √ √ (2) − 0.64366 + 0.95874 −1 , −0.18202 , −0.64366 − 0.95874 −1 , 1 . 10 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

The first three points lie in the cubic component of B, while the last is in the line u = 0 (so 1 1 that s = t). We display the curve C in the real affine chart on Pxy ×Pst given by 7x+3y = 58 1 and s = 1 as well as the branch locus in the affine chart of CPst(= `1) where s = 1. This 1 chart for Pxy has parameterization x = 4 + 9z and y = 10 − 21z for z ∈ C and is also used in Figure 2, where the t-coordinate is as indicated. z C 1 C 2 (3) t R 1

B ∩ `1

Remark 3.6. In this example (and, in fact, whenever V ⊂ Pm × Pn is a hypersurface so that m = 1), the critical point locus CP is defined by both vertical partial derivatives, and is therefore a complete intersection. In general, CP is defined by the polynomial system F and the condition on the rank of the Jacobian, and is not a complete intersection. In numerical algebraic geometry, it is advantageous to work with complete intersections. There are several methods to reformulate this system as a complete intersection. If r > m, then F may be replaced by a random subsystem of m polynomials. We could also require the vanishing of only a random linear combination of the maximal minors of the Jacobian matrix JxF . Another is to add variables, parameterizing a vector in the null space of JxF . m+1 That is, add the system JxF · v = 0 to F , where v spans a general line in C , so that v m m m m n n lies in an affine chart C of P , and then project from Cv × Px × Py to Py and obtain a witness set for B. This also has the advantage that the new equations JxF · v = 0 have total degree equal to those of F and are linear in the entries of v. These reductions to complete intersections will have not only the points of B∩` as solutions, but possible additional solutions, and will therefore compute a witness superset for B ∩ `. 3.1.2. Computing monodromy permutations. Suppose that we have a witness superset W ⊂ ` for B, so that W contains the transverse intersection B ∩ `. By Corollary 3.2, monodromy permutations lifting based loops encircling the points of W generate the Galois group G. To compute these encircling loops, we choose a general (random) base point p ∈ `rW and work in an affine chart of ` that contains p and W and is identified with C. After describing our construction of loops, we will state the condition for genericity. Let  > 0 be any positive number smaller√ than the minimum distance between points of W . For w ∈ W , the points w ±  and w ±  −1 are vertices of a square (diamond) centered at w that contains no other points of W . Traversing this anti-clockwise, √ √ w +  w +  −1 w −  w −  −1 w +  , gives a loop encircling the point w. To obtain loops based at p, we concatenate each square loop with a path from p to that loop as follows.√ If w − p has negative imaginary part, then this is the straight line√ path from p to w + −1 and if w −p has positive imaginary part, the path is from p to w − −1. Our assumption of genericity on the point p is that these chosen paths from p to the squares do not meet points of W , so that we obtain loops in ` r W . Observe that concatenating these loops in anti-clockwise order of the paths from p gives a loop whose negative encircles the point at infinity. NUMERICAL COMPUTATION OF GALOIS GROUPS 11

Example 3.7. We show this collection of based loops√ encircling the points W = B ∩ `1 from the witness set on the right in (3) where p = 0.4 + 0.3 −1.

p

Starting from the rightmost point 1 ∈ W and proceeding clockwise, we obtain the permuta- tions (2, 3), (1, 3), (1, 2), and (1, 3). These generate S3, showing that the Galois group of the 2 cover V → Puvw is the full symmetric group. 3.1.3. Implementation subtleties. In our computations, we do not work directly on , but rather in affine charts as explained in Remark 2.7, and not with general lines, but randomly chosen specific lines. We illustrate different ways that specific (unfortunate) choices of charts and lines may not give a witness set for the branch locus. While these are overcome in practice by working with affine charts and lines whose coefficients are randomly generated numbers in C, it is important to point out the subtleties of nongeneric behavior with examples.

2 Example 3.8. Recall the family V → P of cubics in Example 3.5. The line `2 given by the 2 map [s : t] 7→ [t+s : t−s : 0] ⊂ P which induces a curve C2 that is not general because the projection C2 → `2 does not have four distinct branch points. There are two critical points, each of multiplicity two, as two pairs of simple critical points came together over `2. This is observed in Figure 3 where we see that the line `2 contains both singular points q and r of the branch locus, so B ∩ `2 consists of two points of multiplicity two. The line `2 does not intersect the branch locus B transversally, so Zariski’s Theorem (Proposition 2.6) does not hold. Also, B ∩ `2 is not a witness set for B. Lifts of loops encircling the points of B ∩ `2 generate the cyclic group of order three, rather than the full symmetric group.

pB q

B `1 r

`2 `3

Figure 3. Branch locus and lines.

As V ⊂ P1 × P2, we choose affine charts for both factors. If the charts are not generic, they may omit points of interest. We illustrate some possibilities.

Example 3.9. Consider the affine chart on P2 given by u = 1, excluding points on the one- dimensional component u = 0 of the branch locus B. On the line ` this is the affine chart 12 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

where t − s = 1, which omits the fourth point of B ∩ `1 of (2), (p in Figure 3). Thus only three of the four branch points are on this affine chart of `1. Since B has degree four, lifting loops encircling these three points gives permutations that generate G, by Theorem 3.1. 3 Example 3.10. Suppose now that `3 ⊂ P has equation v = w. Then B ∩`3 consists of three points, with the point [1 : 0 : 0] at the cusp of B of multiplicity two. We may parameterize `3 by g :[s : t] 7→ [s−t : s : s]. Then the affine chart given by s = 1 does not contain the singular point of B ∩ `3. Even though the intersection is transverse in this affine chart, the two permutations we obtain by lifting loops encircling these points do not generate G, as Theorem 3.1 does not hold. The difference with Example 3.9 is that the branch point at infinity (not on our chosen chart) is singular in this case. Example 3.11. A choice of vertical affine chart may also be unfortunate. The affine chart 1 on Pxy where y = 1 does not meet the line component (u = y = 0) of the critical point locus CP. Computing a witness set for CP in this chart and projecting to compute a witness set B ∩ ` for B will only give points in the cubic component of B. When ` does not contain the point q, this is sufficient to compute G, for the same reason as in Example 3.10. If V is not a hypersurface so that m > 1, then there may be more interesting components of CP not meeting a given vertical affine chart. This may result in the computed points of the witness set B ∩ ` for B being insufficient to generate the Galois group G. 3.1.4. 27 lines on a cubic surface. A cubic surface S is a hypersurface in P3 defined by a homogeneous form of degree three. It is classical that a smooth cubic surface contains exactly 27 lines (see Figure 4), and these lines have a particular incidence structure (see Section 4.1). Jordan [23] studied the Galois action on the 27 lines. It turns out that the Galois group is the

Figure 4. Cubic surface with 27 lines (courtesy of Oliver Labs). group of symmetries of that incidence structure, which is isomorphic to the , a group of order 51,840. We formulate this as a monodromy problem f : V → U and use the Branch Point Algorithm to compute and identify this monodromy group. There are 20 homogeneous cubic monomials in the variables X,Y,Z,W for P3, so we identify the space of cubics with U = P19. For F ∈ P19, let V(F ) be the corresponding cubic surface. Let G be the of lines in P3, which is an algebraic manifold of dimension 4. Form the incidence variety 19 V := {(F, `) ∈ P × G | ` lies on V(F )} , NUMERICAL COMPUTATION OF GALOIS GROUPS 13 which has a map f : V → P19(= U). Algebraic geometry tells us that the cubics with 27 lines are exactly the smooth cubics, and therefore the branch locus B is exactly the space of singular cubics. That is, B is given by the classical multivariate discriminant, whose degree was determined by G. Boole to be 32. We summarize the computations associated with determining a witness set for this branch locus. Let G be a general cubic (variable coefficients) and consider the vectors v = (1, 0, k1, k2) 3 and w = (0, 1, k3, k4), which span a general line in P . This line lies on the cubic surface V(G) when the homogeneous cubic G(rv+sw) (the cubic restricted to the line spanned by v and w) 3 2 2 3 is identically zero. That is, when the coefficients K0,K1,K2,K3 of r , r s, rs , and s in 19 4 G(rv+sw) vanish. This defines the incidence variety V in the space P × Ck, as the vec- tors v, w and parameters ki give an affine open chart of G. These polynomials Ki are linear in the coefficients of G, which shows that the fiber of V above a point of G is a linear subspace of P19. Since G is irreducible, as are these fibers, we conclude that V is irreducible. 19 19 We choose an affine parameterization g : Ct → ` ⊂ P of a random line ` in P . Then ∗ 4 ∗ C := g (V ) is a curve in Ct × Ck defined by g (Ki) for i = 0,..., 3. There are 192 critical points of the projection C → Ct, which map six-to-one to 32 branch points. Since the branch locus B has degree 32, these branch points are B ∩ ` and form a witness set for B. Computing loops around the 32 branch points took less than 45 seconds using our imple- mentation in Bertini.m2 [3] using Macaulay2 [12] and Bertini [4]. This gave 22 distinct permutations, each a product of six 2-cycles. These are listed in Figure 5, and they generate the Weyl group of E6 of order 51,840 confirming that it is the Galois group of the problem of 27 lines on a cubic surface.

(1,3)(4,21)(7,27)(8,23)(9,10)(11,12) , (1,5)(2,11)(7,13)(8,15)(10,18)(20,21) , (1,6)(4,13)(8,25)(10,19)(11,16)(20,27) , (1,7)(3,27)(5,13)(16,22)(19,24)(25,26) , (1,8)(3,23)(5,15)(6,25)(14,22)(17,24) , (1,12)(3,11)(13,17)(15,19)(18,25)(20,22) , (1,17)(2,27)(8,24)(10,26)(12,13)(16,21) , (1,18)(4,24)(5,10)(12,25)(14,27)(16,23) , (1,19)(2,23)(6,10)(7,24)(12,15)(14,21) , (1,20)(5,21)(6,27)(9,24)(12,22)(23,26) , (1,26)(4,15)(7,25)(10,17)(11,14)(20,23) , (2,6)(5,16)(8,9)(10,23)(13,22)(17,20) , (2,7)(3,17)(4,16)(9,26)(11,13)(23,24) , (2,8)(3,19)(4,14)(6,9)(11,15)(24,27) , (2,12)(3,5)(4,20)(9,18)(13,27)(15,23) , (2,14)(4,8)(5,26)(13,25)(17,18)(21,23) , (2,18)(9,12)(10,11)(14,17)(16,19)(22,24) , (2,20)(4,12)(6,17)(11,21)(19,26)(24,25) , (3,16)(4,17)(6,12)(8,18)(10,15)(22,27) , (3,18)(5,9)(7,14)(8,16)(11,25)(21,24) , (3,26)(8,20)(9,17)(12,14)(15,21)(25,27) , (6,26)(7,8)(13,15)(14,16)(17,19)(23,27) .

Figure 5. Monodromy permutations.

4. Fiber Products Let f : V → U be a branched cover of degree k with Galois/monodromy group G. As ex- plained in Subsection 2.2, the action of G on s-tuples of points in a fiber of f is given by the decomposition into irreducible components of iterated fiber products. We discuss the com- putation and decomposition of iterated fiber products using numerical algebraic geometry. Computing fiber products in numerical algebraic geometry was first discussed in [33]. m n −1 Suppose that V ⊂ Cx × Cy is an n-dimensional irreducible component of F (0) where 14 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

m n m m n F : Cx × Cy → C and we write F (x, y) with x ∈ C and y ∈ C . There are several methods to compute (components of) iterated fiber products. n n n 2 n First, if ' ∆ ⊂ × is the diagonal, then V n = V × n V → is the pullback C C C C C C n n −1 2 of the product V × V → × along the diagonal ∆. Were V equal to F (0), then V n C C C equals G−1(0), where m m n m m G : C × C × C −→ C × C is given by G(x(1), x(2), y) = (F (x(1), y),F (x(2), y)) where x(1) lies in the first copy of Cm (2) 2 m m and x lies in the second. We also have V n = (V × V ) ∩ ( × × ∆). C C C −1 2 −1 In general, V is a component of F (0) and V n is a union of some components of G (0), C 2 and we may compute a witness set representation for V n using its description as the in- C tersection of the product (V × V ) with Cm × Cm × ∆ as in § 12.1 of [5]. Iterating this s computes V n , which has several irreducible components. Among these may be components C that do not map dominantly to Cn—these come from fibers of V → Cn of dimension at least one and thus will lie over a proper subvariety of the branch locus B as V is irreducible and B is a hypersurface. There will also be components lying in the big diagonal where some coordinates in the fiber are equal, with the remaining components constituting V (s), whose fibers over points of Cn r B are s-tuples of distinct points. n In practice, we first restrict V to a general line ` ⊂ C , for then V |` will be an irreducible s curve C that maps dominantly to `. It suffices to compute the fiber products C` , decompose them into irreducible components, and discard those lying in the big diagonal to obtain C(s) (s) (s+1) (s) which will be the restriction of V to `. As C is the union of components of C ×` C that lie outside the big diagonal, we may compute C(s) iteratively: First compute C(2), then (2) for each irreducible component D of C , decompose the fiber product D ×` C, removing components in the big diagonal, and continue. Symmetry may also be used to simplify this computation (e.g., as used in Subsection 4.1). We offer three algorithms based on computing fiber products that obtain information about the Galois/monodromy group G of f : V → U. Let k, `, and C be as above. Let p ∈ ` r B be a point whose fiber in C consists of k distinct points. Algorithm 4.1 (Compute G). (1) Compute an irreducible component X of C(k−1). (2) Fixing a k−1-tuple (x1, . . . , xk−1) ∈ X lying over p, let

G = {σ ∈ Sk | (xσ(1), . . . , xσ(k−1)) lies over p} . (3) Then G is the Galois monodromy group. Proof of correctness. Recall that C(k−1) ' C(k) since knowing k − 1 of the points in a fiber of C over a point p ∈ ` r B determines the remaining point, and the same for V . Since X (k−1) lies in a unique component of V , this follows by Proposition 2.4. 

Algorithm 4.2 (Orbit decomposition of G on s-tuples and s-transitivity). (1) Compute an irreducible decomposition of C(s), (s) C = X1 ∪ X2 ∪ · · · ∪ Xr . (2) The action of G on distinct s-tuples has r orbits, one for each irreducible component −1 (s) Xi. In the fiber f (p) of C these orbits are −1 Oi := f (p) ∩ Xi i = 1, . . . , r . NUMERICAL COMPUTATION OF GALOIS GROUPS 15

(3) If r = 1, so that C(s) is irreducible, then G acts s-transitively.

Proof of correctness. This follows by Proposition 2.5. 

Algorithm 4.3 (Test G for primitivity). (1) Compute an irreducible decomposition of C(2). (2) If C(2) is irreducible, then G is 2-transitive and primitive. (3) Otherwise, use Step 2 of Algorithm 4.2 to obtain the decomposition of (f −1(p))2 into G-orbits, and construct the graphs ΓO of Subsection 2.1. (4) Then G is primitive if and only if all graphs ΓO are connected when O is not the diagonal.

Proof of correctness. This follows by Higman’s Theorem (Proposition 2.2). 

Remark 4.4. Algorithm 4.1 to compute G using fiber products will be infeasible in practice: Even if we have C ⊂ P1 ×`, then C(k−1) ⊂ (P1)k−1 ×`, a curve in a k-dimensional space. Such a formulation would have very high degree, as C ⊂ P1 × ` would be defined by a polynomial of degree at least k. Worse than this possibly high dimension and degree of polynomials is that the degree of C(k−1) → ` will be k! with each irreducible component having degree |G|. For the computation in Subsection 5.1, k = 26 and G = 213 · 13! ≈ 5 × 1013. Nevertheless, the interesting transitive permutation groups will fail to be s-transitive for s ≤ 5 (Proposition 2.1), and interesting characteristics of that action may be discov- ered through studying C(2) using Algorithm 4.3, as shown in the Introduction. 4.1. Lines on a cubic surface. We briefly review the configuration of the 27 lines on a cubic surface, and what we expect from the decomposition of V (s) for s = 2, 3. This is classical and may be found in many sources such as [13, pp. 480–489]. 2 Let p1, . . . , p6 be six points in P not lying on a conic and with no three collinear. The 2 3 space of cubics vanishing at p1, . . . , p6 is four-dimensional and gives a rational map P − → P 2 whose image is a cubic surface S that is isomorphic to P blown up at the six points p1, . . . , p6. 2 That is, S contains six lines pb1,..., pb6 and has a map π : S → P that sends the line pbi to pi and is otherwise an isomorphism. The points of the line pi correspond to tangent directions 2 b 2 in P at pi, and the proper transform of a line or curve in P is its inverse image under π, with its tangent directions at pi (points in pbi) lying above pi, for each i. This surface S contains 27 lines as follows. • Six are the blow ups pbi of the points pi for i = 1,..., 6. 6 • Fifteen (= 2 ) are the proper transforms `cij of the lines through two points pi and pj for 1 ≤ i < j ≤ 6. • Six are the proper transforms Cbi of the conics through five points {p1, . . . , p6} r {pi} for i = 1,..., 6. Figure 6 gives a configuration of six points in P2, together with three of the lines and one of the conics they determine, showing some points of intersection. Each line λ on S is disjoint from 16 others and meets the remaining ten. With these ten, λ forms five triangles—the plane Π containing any two lines λ, µ on S that meet will contain a third line ν on S as Π ∩ S is a plane cubic curve containing λ and µ. We explain this in detail for the lines pb1, `c12, and Cc1. 16 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

` 16 p3

p4 C1

`12 p1 p2

`25 p5 p6

Figure 6. Six points, some lines, and a conic.

• The line pb1 is disjoint from pbi for 2 ≤ i ≤ 6 as the points are distinct. It is disjoint from `cij for 2 ≤ i < j ≤ 6, as no such line `ij meets p1, and it is disjoint from Cc1, as p1 6∈ C1. The line pb1 does meet the lines Cbi and `c1i for 2 ≤ i ≤ 6, as p1 lies on these conics Ci and lines `1i. • The line `c12 is disjoint from the lines pbi, `c1i, `c2i, and Cbi, for 3 ≤ i ≤ 6. We have seen this for the pbi. For the lines, `c1i and `c2i, this is because `12 meets the lines `1i and `2i at the points p1 and p2, but it has a different slope at each point, and the same is true for the conic Ci. We have seen that `c12 meets both pb1 and pb2. It also meets `cij for 2 ≤ i < j ≤ 6, as well as Cc1, and Cc2, because `12 meets the underlying lines and conics at points outside of p1, . . . , p6. (See Figure 6.) • Finally, the line Cc1 is disjoint from pb1, from `cij for 2 ≤ i < j ≤ 6, and from Cbi for 2 ≤ i ≤ 6. The last is because C1 meets each of those conics in four of the points p2, . . . , p6 and no other points. As we have seen, Cc1 meets pbi and `c1i for 2 ≤ i ≤ 6. We describe the decomposition of V (2) and V (3). Let V [2] be the closure in V 2 of its P19 restriction to P19 r B. Let p ∈ P19 r B. The fiber f −1(p) in V [2] consists of the 272 = 729 pairs (λ, µ) of lines λ, µ that lie on the cubic given by p. The variety V [2] has degree 729 over P19 and decomposes into three subvarieties. We describe typical points (λ, µ) in the fibers of each. (1) The diagonal ∆, whose points are pairs where λ = µ. It has degree 27, is irreducible and isomorphic to V . (2) The set of disjoint pairs, D, whose points are pairs of disjoint lines (λ, µ) where λ ∩ µ = ∅. It has degree 27 · 16 = 432 over P19. (3) The set of incident pairs, I, whose points are pairs of incident lines (λ, µ) where λ ∩ µ 6= ∅. It has degree 27 · 10 = 270 over P19. In particular, since V (2) decomposes into two components, which we verified using a numerical irreducible decomposition via Bertini [4], the action of G fails to be 2-transitive. However, G is primitive, which may be seen using Algorithm 4.3 and Higman’s Theorem (Proposition 2.2). As V is irreducible, G is transitive. Since D is irreducible, the 216 unordered pairs of disjoint lines form an orbit D of G. The graph ΓD is connected. Indeed, the only non-neighbors of pb1 are Ccj and `c1j for 2 ≤ j ≤ 6. As Ccj is disjoint from Cc1 and `c1j is disjoint from pbi for i 6= 1, j, and pb1 is disjoint from both Cc1 and pbi,ΓD is connected (and has diameter two). Similarly, as I is irreducible, the pairs of incident lines form a single orbit whose associated graph may be checked to have diameter two. NUMERICAL COMPUTATION OF GALOIS GROUPS 17

The decomposition of V (3) has eight components, which we verified using a numerical irreducible decomposition via Bertini [4]. These components have four different types up to the action of S3 on triples. (1) Triangles, τ. The typical point of τ is a triangle, three distinct lines that meet each 19 other. This has degree 270 over P and is a component of I ×P19 V . (2) Mutually skew triples, σ. The typical point of σ is three lines, none of which meet 19 each other. This has degree 4320 over P , and is a component of D ×P19 V . (3) There are three components ρi consisting of triples (λ1, λ2, λ3) of lines where the ith line does not meet the other two, but those two meet. Each has degree 2160 over P19 and µ3 is a component of I ×P19 V . (4) There are three components ξi consisting of triples (λ1, λ2, λ3) of lines where the ith line meets the other two, but those two do not meet. Each has degree 2160 over P19 and µ3 is a component of D ×P19 V .

5. Galois groups in applications We present three problems from applications that have interesting Galois groups, which we compute using our methods. 5.1. Formation shape control. Anderson and Helmke [2] consider a least-squares solu- d tion to a problem of placing agents at positions x1, . . . , xN ∈ R having preferred pairwise distances uij = uji for 1 ≤ i, j ≤ N, that is, minimizing the potential X 2 2 2 Ψu := kxi − xjk − uij . i,j They specialize to points on a line d = 1 and eliminate translational ambiguity by setting xN = 0. Then they relax the problem to finding the complex critical points of the gradient descent flow given by Ψu. This yields the system of cubic equations N X 2 2  0 = (xi − xj) − uij (xi − xj) i = 1,...,N−1 , xN = 0 . j=1 N−1 Thus when N ≥ 4 there are at most 3 isolated complex solutions for general uij, one of which is degenerate: xi = 0 for all i with the agents collocated at the origin. When the uij are real, there are always at least 2N−1 real critical formations. The symmetry xi 7→ −xi reflecting in the origin gives an involution acting freely on the nondegenerate solutions. This commutes with with complex conjugation and implies that there is an additional congruence modulo four in the number of real solutions (compare to [17, 18]). We compute the Galois group when N = 4. Anderson and Helmke show that the upper bound of 27 critical points is obtained for general uij, with 26 nondegenerate solutions having no two agents collocated. They also show that all possible numbers of real critical points (not including the origin), 6, 10, 14, 18, 22, 26 between 6 = 2N − 2 and 26 that are congruent to 6 modulo four do indeed occur. The symmetry xi 7→ −xi implies that the Galois group preserves the partition of the solutions into the pairs {xi, −xi}, which implies that it is a 13 subgroup of the wreath product S2 Wr S13, which has order 51,011,754,393,600 = 2 · 13!. The Branch Point Algorithm shows that the Galois group of this system is indeed equal to the wreath product S2 Wr S13. We found this by computing 144 critical points that map two-to-one to the 72 branch points. Taking loops around each of the 72 branch points can 18 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE be performed in under a minute using one processor on a laptop. Interestingly, while most critical points were simple in that their local monodromy was a 2-cycle, several were not. 5.2. Alt-Burmester 4-bar examples. In 1886, Burmester [8] considered the synthesis problem for planar four-bar linkages based on motion generation, specifying poses along a curve. Alt [1] proposed synthesis problems based on path generation, specifying positions along a curve. The synthesis problem consisting of some poses and some positions was called an Alt-Burmester problem in [35] with the complete solution to all Alt-Burmester problems described in [6]. We compute the Galois group for four of the Alt-Burmester problems having finitely many solutions. Figure 7 illustrates these problems. A four-bar linkage is a quadrilateral with one side fixed and four rotating joints. A triangle is erected on the side opposite the fixed side, and a tool is mounted on the apex of the triangle with a particular orientation. A pose is a position

tool position apex - pose

fixed side

Figure 7. A linkage, poses, positions, and a solution for 3 poses and 4 positions. together with an orientation for the tool. Specifying M poses and N = 10 − 2M positions, there will generically be finitely many linkages that take on the given poses and whose apex can pass through the given positions in its motion. Following [6] in isotropic coordinates, the M-pose and N-position Alt-Burmester problem is described by the following parameters:

positions: (Dj, Dj) , for j = 1,...,M+N

orientations: (Θj, Θj) , for j = 1,...,M with ΘjΘj = 1 .

With variables G1,G2, z1, z2, G1, G2, z1, z2, Θj, Θj for j = M+1,...,M+N, we consider

LrjLrj − Lr1Lr1 = 0 , for j = 2,...,M + N and r = 1, 2

ΘjΘj − 1 = 0 , for j = M + 1,...,M + N where

Lrj := Θjzr + Dj − Gr and Lrj = Θjzr + Dj − Gr . We first consider the classical case studied by Burmester, namely M = 5 and N = 0. As noted by Burmester, the system of 8 polynomials, using modern terminology, is a fiber product since the synthesis problem for four-bar linkages uncouples into two synthesis prob- lems for so-called RR dyads (left- and right- halves of the linkage). Each RR dyad synthesis NUMERICAL COMPUTATION OF GALOIS GROUPS 19

problem has 4 solutions with Galois group S4. Thus, the polynomial system for the four- bar linkage synthesis problem has 16 solutions which decomposes into two components: 4 points on the diagonal ∆ and 12 disjoint pairs. The Branch Point Algorithm uses homotopy continuation to track a loop around each of the 64 branch points. These loops yield the per- mutations listed in Figure 8. Cycles involving the first four solutions are in boldface, to help

(1,2,3,4) (5,8,13,15)(6,10,12,16)(7,9,11,14) , (3,4) (5,14)(6,15)(7,16)(8,9)(12,13) , (1,2,4,3) (5,16,8,11)(6,14,9,12)(7,15,10,13) , (2,3) (5,7)(8,10)(11,15)(12,14)(13,16) , (1,3,2,4) (5,9,15,12)(6,8,14,13)(7,10,16,11) , (1,3) (6,7)(8,15)(9,16)(10,14)(11,12) , (1,4,2,3) (5,12,15,9)(6,13,14,8)(7,11,16,10) , (1,2) (5,6)(8,12)(9,13)(10,11)(14,15) , (1,3)(2,4) (5,13)(6,12)(7,11)(8,15)(9,14)(10,16) , (2,4) (5,13)(6,11)(7,12)(9,10)(14,16) , (1,4)(2,3) (5,8)(6,9)(7,10)(11,16)(12,14)(13,15) , (1,4) (5,10)(6,9)(7,8)(11,13)(15,16) , (1,4,3) (5,14,10)(6,16,8)(7,15,9)(11,13,12) , (2,3,4) (5,12,16)(6,11,15)(7,13,14)(8,9,10) , (1,2,3) (5,7,6)(8,11,14)(9,13,16)(10,12,15) , (1,2,4) (5,9,11)(6,10,13)(7,8,12)(14,16,15) , (2,4,3) (5,16,12)(6,15,11)(7,14,13)(8,10,9) , (1,3,4) (5,10,14)(6,8,16)(7,9,15)(11,12,13) ,

Figure 8. Monodromy permutations for Burmester 5-0. see that these solutions are permuted amongst themselves while the other twelve solutions are permuted amongst themselves. This shows that the Galois group of each component and of their union is also S4. For the off-diagonal component, it is the action of S4 on ordered pairs of numbers {1, 2, 3, 4}. The remaining three cases under consideration are (M,N) = (4, 2), (3, 4), (2, 6) which have 60, 402, and 2224 isolated solutions, respectively [6, Table 1]. In each, the left-right symmetry of the mechanism (r = 1, 2 above) implies that the Galois group of a problem with k = 2m m solutions will be a subgroup of the group S2 Wr Sm of order 2 m!. We applied the Branch Point Algorithm first to the Alt-Burmester problem with M = 4 and N = 2. We tracked a loop around each of the 2094 branch points to compute generators of the Galois group, thereby showing the Galois group has order 284 813 089 515 958 324 736 640 819 941 867 520 000 000 = 230 · 30! , and is thus the full wreath product S2 Wr S30. This Galois group is the largest it could be given the left-right symmetry. For each of the cases when (M,N) is (3, 4) and (2, 6) we computed ten random permuta- tions, which was sufficient to show that the Galois groups of these problems are indeed equal 201 437 1112 3241 to S2 Wr S201 and S2 Wr S1112 having order 2 · 201! ≈ 5 · 10 and 2 · 1112! ≈ 10 , respectively. 5.3. Algebraic statistics example. Maximum likelihood estimation on a discrete algebraic u0 u1 un statistical model M involves maximizing the likelihood function `u(p) := p0 p1 ··· pn for data consisting of positive integers u0, . . . , un restricted to the model. The model M is defined by polynomial equations in the probability simplex, which is the subset of Rn+1 n where p0 + ··· + pn = 1 and pi ≥ 0. We consider the Zariski closure of M in P (also n written M), as p0 + ··· + pn = 1 defines an affine open subset of P . n n The variety V of critical points of `u on the model M lies in Pp × Pu. This is the Zariski closure of points (p, u) where p is a smooth point of M and a critical point of `u. Then V is n n-dimensional and irreducible, and its projection to Pu gives a branched cover whose degree 20 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE is the maximum likelihood degree [21, 22]. For an algebraic statistical model, we can ask for the Galois group of this maximum likelihood estimation (the branched cover V → Pn). The model defined by the determinant (4) has maximum likelihood degree 6, and has a Galois group that is a proper subgroup of the full symmetric group S6 [15].   2p11 p12 p13 (4) det  p21 2p22 p23  = 0 . p13 p23 2p33 Using the Branch Point Algorithm, we solve a system of equations to find 24 critical points of the projection (note the difference between critical points of the likelihood function and critical points of the projection). The critical points of the projection map 2 to 1 to a set of 12 branch points yielding a witness set for the branch point locus which is a component of the data discriminant1. The Branch Point Algorithm finds the following generating set of the Galois group, which has order 4! = 24 and is isomorphic to S4:  (12)(34), (26)(45), (14)(23), (15)(36), (16)(35), (126)(345) . The reason for the interesting Galois group is explained by maximum likelihood duality [11]. Moreover, in [27, § 5], it is shown that over a real data point, a typical fiber has either 2 or 6 real points. This further strengthens the notion that degenerate Galois groups can help identify the possibility of interesting real structures.

6. Conclusion We have given algorithms to compute Galois groups. The main contributions are two numerical algorithms [Algorithm 3.3 and 4.2], that allow for practical computation of Ga- lois groups. The first algorithm, the Branch Point Algorithm, has been implemented in Macaulay2 building on monodromy computations performed by Bertini and is publicly available2. Moreover, we have shown its effectiveness in examples ranging from enumerative geometry, kinematics, and statistics. The other algorithm uses fiber products to test for s-transitivity. This is practical as permutation groups that are not alternating or symmetric are at most 5-transitive (and k ≤ 24). These two algorithms demonstrate that homotopy continuation can be used to compute Galois groups.

References [1] H. Alt. Uber¨ die erzeugung gegebener ebener kurven mit hilfe des gelenkviereckes. Zeitschrift f¨urAnge- wandte Mathematik und Mechanik, 3(1):13–19, 1923. [2] B.D.O. Anderson and U. Helmke. Counting critical formations on a line. SIAM Journal on Control and Optimization, 52(1):219–242, 2014. [3] D.J. Bates, E. Gross, A. Leykin, and J.I. Rodriguez. Bertini for Macaulay2. preprint arXiv:1310.3297, 2013. [4] D.J. Bates, J.D. Hauenstein, A.J. Sommese, and C.W. Wampler. Bertini: Software for numerical alge- braic geometry. Available at http://bertini.nd.edu. [5] D.J. Bates, J.D. Hauenstein, A.J. Sommese, and C.W. Wampler. Numerically solving polynomial sys- tems with Bertini, volume 25 of Software, Environments, and Tools. Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 2013.

1 The defining polynomial of degree 12 was computed in [27, Ex. 6] and is available at the website https://sites.google.com/site/rootclassification/publications/DD. 2 http://home.uchicago.edu/~joisro/quickLinks/NCGG/ NUMERICAL COMPUTATION OF GALOIS GROUPS 21

[6] D.A. Brake, J.D. Hauenstein, A.P. Murray, D.H. Myszka, and C.W. Wampler. The complete solu- tion of Alt-Burmester synthesis problems for four-bar linkages. Journal of Mechanisms and Robotics, 8(4):041018, 2016. [7] C. Brooks, A. Mart´ındel Campo, and F. Sottile. Galois groups of Schubert problems of lines are at least alternating. Trans. Amer. Math. Soc., 367:4183–4206, 2015. [8] L. Burmester. Lehrbuch der Kinematic. Verlag Von Arthur Felix, Leipzig, Germany, 1886. [9] P.J. Cameron. Permutation groups, volume 45 of London Mathematical Society Student Texts. Cambridge University Press, Cambridge, 1999. [10] A. Dimca. Singularities and topology of hypersurfaces. Universitext. Springer-Verlag, New York, 1992. [11] J. Draisma and J. I. Rodriguez. Maximum likelihood duality for determinantal varieties. International Mathematics Research Notices, 2014(20):5648–5666, 2014. [12] D.R. Grayson and M.E. Stillman. Macaulay2, a software system for research in algebraic geometry. Available at http://www.math.uiuc.edu/Macaulay2/. [13] P. Griffiths and J. Harris. Principles of algebraic geometry. Wiley Classics Library. John Wiley & Sons, Inc., New York, 1994. Reprint of the 1978 original. [14] J. Harris. Galois groups of enumerative problems. Duke Math. J., 46:685–724, 1979. [15] J.D. Hauenstein, J.I. Rodriguez, and B. Sturmfels. Maximum likelihood for matrices with rank con- straints. Journal of Algebraic Statistics, 5:18–38, 2014. [16] J.D. Hauenstein and A.J. Sommese. Witness sets of projections. Appl. Math. Comput., 217(7):3349–3354, 2010. [17] N. Hein, F. Sottile, and I. Zelenko. A congruence modulo four for real with isotropic flags, 2016. Canadian Mathematical Bulletin, to appear. [18] N. Hein, F. Sottile, and I. Zelenko. A congruence modulo four in real schubert calculus, 2016. Journal f¨urdie reine und angewandte Mathematik, to appear. [19] C. Hermite. Sur les fonctions alg´ebriques. CR Acad. Sci.(Paris), 32:458–461, 1851. [20] D.G. Higman. Intersection matrices for finite permutation groups. J. Algebra, 6:22–42, 1967. [21] S. Ho¸sten, A. Khetan, and B. Sturmfels. Solving the likelihood equations. Found. Comput. Math., 5(4):389–407, 2005. [22] J. Huh and B. Sturmfels. Likelihood geometry. In Combinatorial algebraic geometry, volume 2108 of Lecture Notes in Math., pages 63–117. Springer, 2014. [23] C. Jordan. Trait´edes Substitutions. Gauthier-Villars, Paris, 1870. [24] A. Leykin and F. Sottile. Galois groups of Schubert problems via homotopy computation. Math. Comp., 78(267):1749–1765, 2009. [25] A. Mart´ındel Campo and F. Sottile. Experimentation in the Schubert calculus. arXiv.org/1308.3284, 2016. to appear in Schubert Calculus—Osaka 2012, ed. by H.Naruse, T.Ikeda, M.Masuda, and T.Tanisaki, Advanced Studies in Pure Mathematics, Mathematical Society of Japan. [26] D.K. Molzahn, M. Niemerg, D. Mehta, and J.D. Hauenstein. Investigating the maximum number of real solutions to the power flow equations: Analysis of lossless four-bus systems. arXiv/org:1603.05908, 2016. [27] J.I. Rodriguez and X. Tang. Data-discriminants of likelihood equations. In Proceedings of the 2015 ACM on International Symposium on Symbolic and Algebraic Computation, ISSAC ’15, pages 307–314, New York, NY, USA, 2015. ACM. [28] J. Ruffo, Y. Sivan, E. Soprunova, and F. Sottile. Experimentation and conjectures in the real Schubert calculus for flag manifolds. Experiment. Math., 15(2):199–221, 2006. [29] L.L. Scott. Representations in p. In The Santa Cruz Conference on Finite Groups (Univ. California, Santa Cruz, Calif., 1979), volume 37 of Proc. Sympos. Pure Math., pages 319–331. Amer. Math. Soc., Providence, R.I., 1980. [30] A.J. Sommese, J. Verschelde, and C.W. Wampler. Introduction to numerical algebraic geometry. In Solving polynomial equations, volume 14 of Algorithms Comput. Math., pages 301–335. Springer, Berlin, 2005. [31] A.J. Sommese and C.W. Wampler. Numerical algebraic geometry. In The mathematics of numerical analysis (Park City, UT, 1995), volume 32 of Lectures in Appl. Math., pages 749–763. Amer. Math. Soc., Providence, RI, 1996. 22 J. D. HAUENSTEIN, J. I. RODRIGUEZ, AND F. SOTTILE

[32] A.J. Sommese and C.W. Wampler. The numerical solution of systems of polynomials. World Scientific Publishing Co. Pte. Ltd., Hackensack, NJ, 2005. [33] A.J. Sommese and C.W. Wampler. Exceptional sets and fiber products. Found. Comput. Math., 8(2):171– 196, 2008. [34] F. Sottile and J. White. Double transitivity of Galois groups in Schubert calculus of . Algebr. Geom., 2(4):422–445, 2015. [35] Y. Tong, D.H. Myszka, and A.P. Murray. Four-bar linkage synthesis for a combination of motion and path-point generation. Proceedings o the ASME Interational Design Engineering Technical Conferences, DETC2013-12969, 2013. [36] R. Vakil. Schubert induction. Ann. of Math. (2), 164(2):489–512, 2006. [37] O. Zariski. A theorem on the Poincar´egroup of an algebraic hypersurface. Annals of Mathematics, 38(1):131–141, 1937.

Department of Applied & Computational Mathematics & Statistics, University of Notre Dame, Notre Dame, IN 46556, USA E-mail address: [email protected] URL: http://www.nd.edu/~jhauenst Department of Statistics, University of Chicago, Chicago, IL 60637, USA E-mail address: [email protected] URL: http://home.uchicago.edu/~joisro Department of Mathematics, Texas A&M University, College Station, TX 77843, USA E-mail address: [email protected] URL: http://www.math.tamu.edu/~sottile/