1 Introduction

A simplicial arrangement is a finite set of linear hyperplanes in a real vector space which decomposes its complement into open simplicial cones, cf. [17]. A classification of simplicial arrangements, even in the case of dimension three, has not been achieved in full generality yet. There is a topological result by Deligne [13] and there are some classifications of smaller classes, as in [9, 10], or [12]. But until now, no explicit approach to a classification is known. In this early stage of investigations, it is common to collect examples as in [2, 6, 15, 16].

In many areas of mathematics, examples are mainly used as counter-examples in order to demonstrate that certain propositions do not hold. When dealing with discrete structures however, one often encounters a finite set of exceptions. For instance, the discovery of some of the finite simple groups has been celebrated although each such group is “merely” an example. Reflection groups are a further example of a structure with sporadic cases in which the situation is less difficult (a classification of finite real reflection groups is even accessible to students). The situation is, albeit less prominent, apparently similar in the case of simplicial arrangements (note that real reflection groups “are” very special simplicial arrangements). For the case of rank three it is conjectured that there is, apart from three infinite series, only a finite number of sporadic examples. This is why a classification will ultimately probably be found via a combination of theoretical arguments and a collection of examples.

Fig. 1
figure 1

Our newly found simplicial arrangement of rank three with 35 hyperplanes (from two different perspectives)

In this paper, we introduce an algorithm to approximate arrangements of lines with respect to a given property. This algorithm works surprisingly well in the case of simpliciality, since its implementation finds all known simplicial arrangements (with up to 50 linesFootnote 1) in a few minutes on an ordinary computer (i.e., those listed in [6, 16]). Using a computer cluster we even find a yet unknown simplicial arrangement of lines with 35 lines (Fig. 1). Moreover, this algorithm may also be used to attack other open problems as for example Terao’s conjecture, where one difficulty is to find matroids with an infinite moduli space of realizations. Again, our implementation finds all known prominent examples (free but not recursively free or with similar properties) within a short time.

The algorithm is based on the following intuition. Simplicial arrangements of lines, like most “interesting” arrangements (as for example those considered in the context of Terao’s conjecture), have few double points. In fact, it even turns out that simpliciality is closely related to the property to have few double points, as demonstrated for example in [14], where it is shown that asymptotically, an arrangement of lines with few double points is close to be a simplicial arrangement belonging to one of the infinite series. Moreover, it is easy to associate an invariant in \(\mathbb {Z}\) to each matroid of rank three which is zero if and only if any realization of the matroid is simplicial and which quantifies how “far” it is from being simplicial.

Now the key idea in the algorithm is: take an arrangement of lines, remove a line, and replace this line by a line through two intersection points of the arrangement. This will often reduce the number of double points. If the new arrangement “improves” the chosen invariant, then discard the old arrangement and repeat the procedure with the new one until the invariant is zero. This idea alone is not sufficient to obtain all the desired examples. In this primitive version, an arrangement will tend to become rational during the procedure (see Remark 4.4 for an explanation). It is thus important to include algebraic numbers or possibly transcendents if requested (see Remark 4.7). Further technical improvements which are necessary to produce a working implementation are discussed in Sect. 4. As a result we present several yet unknown arrangements of lines:

  • We find a real simplicial arrangement of rank three with 35 lines which does not appear in any previous table of simplicial arrangements.

  • We collect a database with 1318 combinatorially simplicial arrangements of lines with up to 50 lines over \(\mathbb {C}\).

  • This database includes several matroids of rank three which are combinatorially simplicial and have infinite moduli space in characteristic zero.

In Sects. 2 and 3 we recall all required notions on simplicial arrangements and moduli spaces of matroids of rank three, including some (maybe new) open problems. Section 4 is devoted to the description of the algorithms, results of our implementations are collected in Sect. 5.

All data generated or analysed during this study are included in this published article and its supplementary information files.

2 Simplicial Arrangements

The main application of our algorithm is to produce simplicial arrangements, so let us recall the basic notions in this section.

Definition 2.1

Let K be a field, \(r\in \mathbb {N}\), and \(V:=K^r\). An arrangement of hyperplanes \((\mathcal {A},V)\) (or \(\mathcal {A}\) for short) is a finite set of hyperplanes \(\mathcal {A}\) in V. It is central if all elements of \(\mathcal {A}\) are linear subspaces and essential if \(\bigcap _{H\in \mathcal {A}} H=0\).

Definition 2.2

Let \(r\in \mathbb {N}\), \(V:=\mathbb {R}^r\), and \(\mathcal {A}\) an arrangement in V. Let \(\mathcal {K}(\mathcal {A})\) be the set of connected components (chambers) of \(V\setminus \bigcup _{H\in \mathcal {A}} H\). If every chamber K is an open simplicial cone, i.e., there exist \(\alpha ^\vee _1,\ldots ,\alpha ^\vee _r \in V\) such that

$$\begin{aligned} K = \left\{ \sum _{i=1}^r a_i\alpha ^\vee _i \;\Big |\; a_i> 0 \ \text{ for } \text{ all }\ i=1,\ldots ,r \right\} =: \langle \alpha ^\vee _1,\ldots ,\alpha ^\vee _r\rangle _{>0}, \end{aligned}$$

then \(\mathcal {A}\) is called a simplicial arrangement.

Example 2.3

\(\bullet \) Figure 1 displays an example for \(r=3\), displayed in the real projective plane. Simpliciality of the chambers translates to the fact that all regions are triangles in the picture.

\(\bullet \) Let W be a real reflection group, \(R\subseteq V^*\) the set of roots of W. Then \(\mathcal {A}= \{\ker \alpha \mid \alpha \in R\}\) is a simplicial arrangement.

Since a hyperplane is uniquely determined by a linear form up to scalars, i.e., a one dimensional subspace of the dual space, it is often easier to work in the projective space instead of V. We will mostly concentrate on the case of rank three, thus we are working with lines in the projective plane. We denote \(\mathbb {P}^2 K\) the projective plane over K and \({{\,\mathrm{PG}\,}}(2,q)=\mathbb {P}^2\mathbb {F}_q\). Moreover, we will sometimes denote both projective lines and points with coordinates \((a\,{:}\,b\,{:}\,c)\) since points and lines are dual to each other in the plane. So it makes sense to write \((a\,{:}\,b\,{:}\,c)\), \(a,b,c\in K\), for a hyperplane in an arrangement of rank three over K.

Definition 2.4

([18, Defn. 1.12])   Let \((\mathcal {A},V)\) be an arrangement. The intersection lattice \(L(\mathcal {A})\) of \(\mathcal {A}\) consists of all intersections of elements of \(\mathcal {A}\) including V as the empty intersection. The rank \({{\,\mathrm{rk}\,}}(\mathcal {A})\) of \(\mathcal {A}\) is defined as the codimension of the intersection of all hyperplanes in \(\mathcal {A}\). For \(0 \le k \le r\) we write \(L_k(\mathcal {A}) := \{ X \in L(\mathcal {A}) \mid r(X) = k \}\).

Definition 2.5

([18, Defn. 1.13])   Let \((\mathcal {A},V)\) be an arrangement. For \(X\in L(\mathcal {A})\), we define the localization

$$\begin{aligned} \mathcal {A}_X := \{ H \in \mathcal {A}\mid X \subseteq H \} \end{aligned}$$

of \(\mathcal {A}\) at X, and the restriction \((\mathcal {A}^X,X)\) of \(\mathcal {A}\) to X, where

$$\begin{aligned} \mathcal {A}^X := \{ X\cap H \mid H \in \mathcal {A}\setminus \mathcal {A}_X \text { and } X\cap H\ne \emptyset \}. \end{aligned}$$

Remark 2.6

If \(\mathcal {A}\) is simplicial, then all localizations and restrictions to elements of its intersection lattice are simplicial.

Proposition 2.7

(e.g. [8, 2])   Let \(\mathcal {A}\) be a central essential arrangement of hyperplanes in \(\mathbb {R}^r\), \(r\ge 2\). Then \(\mathcal {A}\) is simplicial if and only if

$$\begin{aligned} r |\mathcal {K}(\mathcal {A})| = 2 \sum _{H\in \mathcal {A}} |\mathcal {K}(\mathcal {A}^H)|. \end{aligned}$$
(1)

Remark 2.8

By Zaslavsky’s theorem, \(|\mathcal {K}(\mathcal {A})| = (-1)^r\chi _\mathcal {A}(-1)\) where \(\chi _\mathcal {A}\) is the characteristic polynomial. This depends only on the intersection lattice of \(\mathcal {A}\). Thus simpliciality is a purely combinatorial property.

In this article the following equivalent formulation is more convenientFootnote 2.

Corollary 2.9

Let \(\mathcal {A}\) be a central essential arrangement in \(V=\mathbb {R}^3\). Then \(\mathcal {A}\) is simplicial if and only if \(\sigma (\mathcal {A})=0\), where

$$\begin{aligned} \sigma (\mathcal {A}) = \sigma (L(\mathcal {A})) := 3 +\! \sum _{v\in L_2(\mathcal {A})} \!(|\mathcal {A}_v|-3) \in \mathbb {Z}. \end{aligned}$$
(2)

It is interesting to extend the definition of simpliciality to arbitrary arrangements although the original motivation using chambers is lost.

Definition 2.10

Let K be a field and \(\mathcal {A}\) an arrangement of hyperplanes in \(K^3\). Then \(\mathcal {A}\) is (combinatorially) simplicial if \(\sigma (L(\mathcal {A}))=0\).

For example, simplicial arrangements over \(\mathbb {C}\) have many other nice properties and seem to be rare like real simplicial arrangements.

3 Matroids and Moduli Spaces

Definition 3.1

(cf. [1])   Let K be a field and \(\mathcal {A}=\{H_1,\dotsc ,H_\ell \}\) be a central arrangement in \(K^n\) ordered by the indices of the hyperplanes. To a matrix \(M=[m_1,\dotsc ,m_\ell ]\in K^{n\times \ell }\), we attach a central arrangement \(\mathcal {B}_M=\{H_i'=\ker (m_i)\mid 1\le i\le \ell \}\setminus \{K^n\}\) in \(K^n\). Consider the following condition for M:

figure a

For a lattice L on \(\{1,\ldots ,\ell \}\), Yuzvinsky [20] analyzes the following space:

$$\begin{aligned} {\mathcal U}(L)=\{M\in K^{n\times \ell } \mid M \text {\ satisfies\ }{(*)}\}.\end{aligned}$$

Since the condition (*) is determined in terms of vanishing or non-vanishing of minors of M, it follows that \({\mathcal U}(L)\) is an algebraic variety. We define the moduli space \(\mathcal {V}_K(L)\) of arrangements whose intersection lattice is L as

$$\begin{aligned} \mathcal {V}_K(L) := {{\,\mathrm{PGL}\,}}(n,K)\setminus ({\mathcal U}(L) / (K^\times )^\ell ). \end{aligned}$$

For a lattice L, we write \({{\,\mathrm{Aut}\,}}(L)\) for the set of automorphisms of posets, i.e., the set of bijections preserving the relations in the poset.

The intersection lattices of arrangements of lines with few double intersection points (except the pencil and near-pencil) have mostly a very small moduli space.

Example 3.2

Let \(\mathcal {A}\) be the reflection arrangement of an irreducible complex reflection group of rank three. Then the moduli space \(\mathcal {V}_\mathbb {C}(L(\mathcal {A}))\) is finite and these finitely many realizations of \(L(\mathcal {A})\) in \(\mathcal {V}_\mathbb {C}(L(\mathcal {A}))\) are Galois conjugate under automorphisms of the smallest field extension of \(\mathbb {Q}\) over which \(L(\mathcal {A})\) is realizable:

  1. (1)

    Let \(\mathcal {A}\) be the reflection arrangement of type \(B_3\). Then \(\mathcal {V}_\mathbb {C}(L(\mathcal {A}))\) consists of one point since any realization of \(L(\mathcal {A})\) over \(\mathbb {C}\) is the same up to projectivities.

  2. (2)

    Let \(\mathcal {A}\) be the reflection arrangement of type \(H_3\). Then \(\mathcal {V}_\mathbb {C}(L(\mathcal {A}))\) consists of two points since there are two realizations of \(L(\mathcal {A})\) over \(\mathbb {C}\) up to projectivities; these two points are Galois conjugate under the automorphism \(\sqrt{5}\mapsto -\sqrt{5}\).

Open Problem 3.3

Is it true that the moduli space of an irreducible simplicial arrangement over the real numbers is always finite?

We will see in the last section that our algorithm produces examples of irreducible simplicial arrangements over \(\mathbb {C}\) with infinite moduli space.

Definition 3.4

Let L be a matroid of rank three, for instance the intersection lattice of an arrangement of rank three. Let us call the one-dimensional elements points and the two-dimensional elements (hyperplanes) lines. We say that the lines \(H_1,\ldots ,H_n\) of L generate L if there is a sequence of points and lines \(U_1,\ldots ,U_m\) of L such that:

  1. (1)

    \(U_i=H_i\) for \(i=1,\ldots ,n\).

  2. (2)

    For all \(i>n\) there exist \(j,k<i\) such that \(U_i \in \{ U_j\cap U_k, U_j+U_k\}\).

  3. (3)

    Every line of L is in \(\{U_1,\ldots ,U_m\}\).

We write

$$\begin{aligned} g(L) := \min { \{ n\in \mathbb {N}\mid L \text { is generated by } n \text { lines}\}}. \end{aligned}$$

In other words, an intersection lattice is generated by lines \(H_1,\ldots ,H_n\) if all the lines in L are obtained by inductively adding intersection points of two lines or lines through two points.

Example 3.5

Let \(\mathcal {B}\) be the reflection arrangement of type \(B_3\). Then \(g(L(\mathcal {B}))=4\). Let \(\mathcal {A}\) be the reflection arrangement of type \(H_3\). Then \(g(L(\mathcal {A}))=5\).

Lemma 3.6

Let L be a matroid of rank three generated by at most 4 lines in general position. Then \(|\mathcal {V}_K(L)|\le 1\) for any field K.

Proof

Let \(H_1,\ldots ,H_n\), \(n\le 4\), be lines generating L. Since these lines generate L, any realization of L is uniquely determined by a choice of n hyperplanes and by the matroid structure L. But all realizations are equivalent up to projectivities because \(H_1,\ldots ,H_n\) are in general position. \(\square \)

Corollary 3.7

Let L be a matroid of rank three. If \(g(L)\le 4\) and L is realizable over \(\mathbb {C}\), then L is realizable over \(\mathbb {Q}\).

Open Problem 3.8

What is the relation between g(L) and \(|\mathcal {V}_K(L)|\) for arbitrary matroids L of rank three?

For most experiments with arrangements of hyperplanes, it is useful to have an algorithm which computes realizations of matroids. Although it is known that this is a difficult problem (see for example [3, 8]), in practice (and in rank three), using generating sets of lines one can compute the moduli space for sufficiently large matroids (compare [5] or [6]):

Algorithm 3.9

ModuliSpace  (LK)

Compute the moduli space of a matroid of rank three

  • Input: A matroid L of rank three, a field K.

  • Output: A pair of algebraic varieties VE such that \(\mathcal {V}_K(L)\cong V\setminus E\).

    • 1. Choose a set of generating lines \(G:=\{H_1,\ldots ,H_n\}\) of L.

    • 2. For a largest subset \(S:=\{H_{i_1},\ldots ,H_{i_k}\}\) of G in general position, choose basis elements of \(K^3\) as coordinate vectors. For the remaining \(d=|G\setminus S|\) lines in \(G\setminus S\), choose coordinate vectors consisting of variables in a polynomial ring \(K[X_1,\ldots ,X_{3d}]\).

    • 3. Every triple of lines in L gives a conditions on the determinant of the corresponding coordinate vectors, yielding varieties V and E as required depending on whether the determinant has to be zero or not.

Remark 3.10

There are many possible technical improvements to Algorithm ModuliSpace but they are not relevant for the goals of this article.

4 Greedy Algorithms

4.1 The Prototype

We begin with a naive version of a greedy algorithm to compute arrangements with a given property P. In practice, P will be a map assigning a number to each matroid \(L(\mathcal {A})\) in such a way that P is satisfied if and only if this number is 0. For example, \(\mathcal {A}\) is simplicial if and only if \(\sigma (\mathcal {A})=0\).

The very first step is to find an arrangement over a finite field:

Algorithm 4.1

GreedyArrFiniteField  (Pnq)

Greedy search for arrangements of hyperplanes over a finite field

  • Input: \(n\in \mathbb {N}\), a field \(\mathbb {F}_q\), a property P.

  • Output: An arrangement with n lines in \({{\,\mathrm{PG}\,}}(2,q)\) with P if the algorithm terminates.

    • 1. Choose a random set of lines \(\mathcal {A}\subseteq {{\,\mathrm{PG}\,}}(2,q)\), \(|\mathcal {A}|=n\).

    • 2. While \(\mathcal {A}\) does not satisfy P:

      • Choose two random points \(p_1\ne p_2\) in \(L_2(\mathcal {A})\), such that the line \(\ell \) through \(p_1\) and \(p_2\) is not in \(\mathcal {A}\).

      • Let \(\ell '\ne \ell \) be a random line of \(\mathcal {A}\) and \(\mathcal {A}':=(\mathcal {A}\cup \{\ell \}) \setminus \{\ell '\}\).

      • If \(\mathcal {A}'\) “is closer to satisfying P” than \(\mathcal {A}\), then \(\mathcal {A}\leftarrow \mathcal {A}'\).

    • 3. Print \(\mathcal {A}\).

Remark 4.2

There are several reasons why finite fields are useful in this context.

  • The most important reason is that the above algorithm may produce matroids requiring interesting relations with the “same” algebraic equations in realizations over any other fields. For example, if one chooses \(\mathbb {F}_{241}\), then the algorithm will automatically consider matroids enforcing certain n-th roots of unity for n a divisor of 240.

  • The second reason is of technical nature: an implementation is much faster over a finite field than over some rational number field.

  • A third reason is that the random set of lines at the beginning is “less random” if the underlying field has few elements. With a small field, the probability of finding an interesting intersection lattice by chance is higher.

Algorithm GreedyArrFiniteField produces an arrangement over \(\mathbb {F}_q\). But since we are interested in real (or complex) arrangements, we still need to compute realizations of its intersection lattice in characteristic 0, for instance with Algorithm ModuliSpace.

Example 4.3

Choose a finite field \(\mathbb {F}_q\) with large q, for example \(q=14639\). Algorithm GreedyArrFiniteField with \(P=\)“simplicial”, \(n=6,\ldots ,37\) and \(q=14639\) recovers all known rational simplicial arrangements within a few minutes.

4.2 Number Fields

Remark 4.4

Now there is another problem with GreedyArrFiniteField. Since lines are repeatedly replaced with lines through existing intersection points, this algorithm tends to replace the original random arrangement by an arrangement whose intersection lattice has a small number of generators in the sense of Definition 3.4. But then in most cases, a set of generators with four elements is attained and thus the resulting matroid is realizable over \(\mathbb {Q}\) by Corollary 3.7 (if it is realizable in characteristic zero).

This is why the above algorithm will mostly find matroids with rational realizations and thus miss most of the interesting examples. To address this problem we just choose a subset F of the lines which should never be removed. This way the algorithm will regularly add lines generated by F, hence if F contains some “irrational” entries, they will remain all the time and it is more likely that these “irrationalities” are enforced by the resulting matroid structure:

Algorithm 4.5

GreedyArrFiniteFieldAlgebraic  (Pnqwg)

Greedy search for arrangements of hyperplanes over a finite field with given algebraic elements

  • Input: \(n\in \mathbb {N}\), a field \(\mathbb {F}_q\), a property P, an element \(w\in \mathbb {F}_q\) which is a root of a given polynomial g.

  • Output: An arrangement with n lines in \({{\,\mathrm{PG}\,}}(2,q)\) with P if the algorithm terminates, possibly such that the field of definition of its moduli space in characteristic zero contains roots of the polynomial g.

    • 1. Choose a random set of lines \(\mathcal {A}\subseteq {{\,\mathrm{PG}\,}}(2,q)\), \(|\mathcal {A}|=n\) such that the first five lines are defined by the coordinate vectors \(F=\{(0\,{:}\,0\,{:}\,1),(0\,{:}\,1\,{:}\,0),(1\,{:}\,0\,{:}\,0), (1\,{:}\,1\,{:}\,1),(1\,{:}\,0\,{:}\,w)\}\) and such that the other lines have “small” coefficients (e.g. in \(\{\pm a\pm b w \mid a,b \in \{0,1,2\}\}\)).

    • 2. While \(\mathcal {A}\) does not satisfy P:

      • Choose two random points \(p_1\ne p_2\) in \(L_2(\mathcal {A})\), such that the line \(\ell \) through \(p_1\) and \(p_2\) is not in \(\mathcal {A}\).

      • Let \(\ell '\ne \ell \) be a random line of \(\mathcal {A}\) which is not one of the first five lines and \(\mathcal {A}':=(\mathcal {A}\cup \{\ell \}) \setminus \{\ell '\}\).

      • If \(\mathcal {A}'\) “is closer to satisfying P” than \(\mathcal {A}\), then \(\mathcal {A}\leftarrow \mathcal {A}'\).

    • 3. Print \(\mathcal {A}\).

Example 4.6

Let \(w_0\in \mathbb {R}\) be a root of \(X^2-X-1\in \mathbb {Q}[X]\), i.e., the golden ratio or its conjugate. Choose a finite field \(\mathbb {F}_q\) with large q, for example \(q=14639\) and \(w:=9420\in \mathbb {F}_q\). Then \(w^2-w-1=0\) and we may view w as a golden ratio for \(\mathbb {F}_q\). Algorithm GreedyArrFiniteFieldAlgebraic with \(P=\)“simplicial”, \(n=15\), \(q=14639\), and \(w=9420\) will produce an arrangement with the same intersection lattice as the reflection arrangement of type \(H_3\). This matroid is almost impossible to obtain with the first version of the algorithm since it mostly finds rational arrangements and \(\mathbb {Q}(w_0)\) is the field of definition of the arrangement of type \(H_3\).

Remark 4.7

Of course, the ideas for GreedyArrFiniteFieldAlgebraic only increase the chance of finding interesting examples, the algorithm fails in many cases. In particular, if q is too small then often the resulting matroid will not be realizable in characteristic zero or the coordinate corresponding to the entry “w” will be rational in a realization over \(\mathbb {C}\). If we choose q large enough, then it is important to choose an original random arrangement with “small coordinates” since otherwise the greedy search fails to improve the property.

As an example, a good choice is \(q=55441\). Then all minimal polynomials of \(\cos (\pi /(2n))\) for \(n=4,\ldots ,12\) have roots in \(\mathbb {F}_q\). Since these algebraic numbers appear in the arrangements which form infinite families and in most of the known sporadic simplicial arrangements, this \(\mathbb {F}_q\) is a good choice to recover known examples with up to say 40 lines.

One is tempted to increase the size of the set F in such a way that every realization of its matroid requires the desired irrationalities. However in practice it turns out that this is too restrictive in most cases (because it predetermines too much from the arrangement) and that the greedy search then fails to reach the property P.

Remark 4.8

Since GreedyArrFiniteFieldAlgebraic is restricted to arrangements with the particular algebraic root w, it is necessary to call this procedure with many different values of w. To obtain evidence that possibly all known arrangements with a certain number of lines and property P were found, it is not reasonable to “guess” the algebraic numbers a priori.

A good solution to this problem is to take many primes, for example all primes from 53 to 5987, and for each prime q to consider every possible value \(w\in \mathbb {F}_q\). Most of these choices will find arrangements whose matroid is realizable over \(\mathbb {Q}\), but since these primes are not so large (compared to 55441), the considered w will often satisfy algebraic equations with small coefficients.

Note that the first prime we consider is 53 because for arrangements with at most 50 lines, primes greater than or equal to 53 will almost only produce arrangements whose matroids are realizable in characteristic zero (which is not the case at all if one chooses for example \(q=11\)). This comes from the fact that there are \(q^2+q+1\) hyperplanes in \(\mathbb {F}_q^3\) and this number has to be much larger than 50 (see [8] for examples of simplicial arrangements over \(\mathbb {F}_q\) with \(\mathcal {A}= 3q\)).

Remark 4.9

(symmetry)   It may seem surprising that the algorithm, depending on the property P, produces so many highly symmetric arrangements, i.e., whose matroids have large automorphism groups, although the set of lines is completely random at the beginning. In the case of simpliciality, this could be regarded as a strong hint that simplicial arrangements are built together using smaller symmetric pieces like the arrangements from the infinite series. Another explanation is that arrangements with few double points only exist with symmetry: if an arrangement has a large symmetry group and contains a point which is not a double point, then its orbit consists of several points which will neither be double points.

4.3 Infinite Moduli Space

Another interesting variation of GreedyArrFiniteFieldAlgebraic is to choose a \(w\in \mathbb {F}_q\) which is not a root of a polynomial with small coefficients. If w only satisfies algebraic relations with large coefficients, then a realization of the resulting matroid over \(\mathbb {C}\) is likely to replace w by a transcendental number. But if a realization has a transcendental coordinate, then the matroid has less linear dependencies, i.e., its moduli space will possibly be infinite.

Algorithm 4.10

GreedyArrFiniteFieldTranscend \((P,n,q,(w_1,\ldots ,w_k))\)

Greedy search for arrangements of hyperplanes over a finite field whose matroid has infinite moduli space in characteristic zero

  • Input: \(n\in \mathbb {N}\), a field \(\mathbb {F}_q\), a property P, elements \(w_1,\ldots ,w_k\in \mathbb {F}_q\) which do not satisfy algebraic relations with small coefficients.

  • Output: An arrangement with n lines in \({{\,\mathrm{PG}\,}}(2,q)\) with P if the algorithm terminates, possibly such that the moduli space in characteristic zero has dimension up to k.

    • 1. Choose a random set of lines \(\mathcal {A}\subseteq {{\,\mathrm{PG}\,}}(2,q)\), \(|\mathcal {A}|=n\), such that the first four lines are defined by the coordinate vectors \((0\,{:}\,0\,{:}\,1),(0\,{:}\,1\,{:}\,0), (1\,{:}\,0\,{:}\,0),(1\,{:}\,1\,{:}\,1)\), such that the next m lines have coordinates including \(w_1,\ldots ,w_k\), and such that the other lines have “small” coefficients (e.g. in \(\{-2,-1,0,1,2\}\)).

    • 2. While \(\mathcal {A}\) does not satisfy P:

      • Choose two random points \(p_1\ne p_2\) in \(L_2(\mathcal {A})\), such that the line \(\ell \) through \(p_1\) and \(p_2\) is not in \(\mathcal {A}\).

      • Let \(\ell '\ne \ell \) be a random line of \(\mathcal {A}\) which is not one of the first \(m+4\) lines and \(\mathcal {A}':=(\mathcal {A}\cup \{\ell \}) \setminus \{\ell '\}\).

      • If \(\mathcal {A}'\) “is closer to satisfying P” than \(\mathcal {A}\), then \(\mathcal {A}\leftarrow \mathcal {A}'\).

    • 3. Print \(\mathcal {A}\).

Example 4.11

For example, if \(q=55441\) and \(w=31816\in \mathbb {F}_q\), then w is “quite transcendental” because it is not a root of any polynomial of degree less than 10 with coefficients in \(\{-2,\ldots ,2\}\).

5 Results and Examples

5.1 Simpliciality

Using the method proposed in Remark 4.8 we obtain a large database of simplicial arrangements. Notice that we have to call the algorithm with all these primes from 53 to 5987 and all possible values w many times before no further matroids are found any more. More precisely, even with a highly optimized and parallelized program in C++ running on a cluster with 1024 cores, the algorithm still finds new examples after a week of computations.

In the following sections, we exhibit some of the most interesting arrangements found within this experiment.

5.2 A Simplicial Arrangement with 35 Lines

Let \(\omega \in \mathbb {R}\) be a (real) root of \(X^4 - 3X^3 + 3X^2 - 3X + 1\) and

$$\begin{aligned} R&:=\bigl \{(1,0,0),(0,1,0),(0,0,1),(1,1,1),(1,0,\omega ),(1,\omega ^3-2\omega ^2+\omega -1,0),\\&\ \qquad (0,1,-\omega +1),(1,1,-\omega +1), (1,-\omega +1,-\omega +1),(1,\omega ^2-\omega +1,\omega ),\\&\ \qquad (1,-\omega +1,0),(1,-\omega +1,\omega ^2-2\omega +1),\\&\qquad \ (1,-\omega ^3+3\omega ^2-3\omega +2,-\omega ^3+3\omega ^2-2\omega +1),\\&\ \qquad (1,1,-\omega ^2+2\omega ),(1,-\omega ^3+2\omega ^2-2\omega +2,1),\\&\qquad \ (1,-\omega ^3+2\omega ^2-2\omega +2,-\omega ^3+2\omega ^2-\omega +1),\\&\ \qquad (1,\omega ^2-\omega +1,-\omega ^3+2\omega ^2-\omega +1),\\&\,\,\qquad (1,\omega ^2-\omega +1,-\omega ^3+3\omega ^2-2\omega +1),\\&\qquad \ (3,-\omega ^3+2\omega ^2-2\omega +3,-\omega ^2+2\omega +1),\\&\,\,\qquad (1,-\omega ^3+2\omega ^2-\omega +1,-\omega ^2+2\omega ),\\&\qquad \ (0,1,\omega ^3-2\omega ^2),(1,-\omega ^3+3\omega ^2-2\omega +1,-\omega ^3+\omega ^2+3\omega -1), \\&\ \qquad (1,0,-\omega ^2+2\omega -1),(1,-\omega ^3+2\omega ^2-2\omega +2,\omega ),\\&\,\,\qquad (1,-\omega ^3+\omega ^2-\omega +1,\omega ), \\&\qquad \ (1,-\omega ^3+2\omega ^2-2\omega +2,0),(1,-\omega ^3+2\omega ^2-\omega +1,-\omega ^2+3\omega -1),\\&\qquad \ (1,0,-\omega ^2+3\omega -1), (0,1,\omega ^3-2\omega ^2-\omega +1),\\&\,\,\qquad (1,-\omega +1,-\omega ^3+3\omega ^2-2\omega +1),\\&\qquad \ (1,-\omega ^3+2\omega ^2-3\omega +2,-\omega ^3+3\omega ^2-2\omega +1),(1,\omega ^2+1,-\omega ^2+2\omega ),\\&\qquad \ (1,-\omega ^3+3\omega ^2-3\omega +2,-2\omega ^3+5\omega ^2-2\omega +1),\\&\ \qquad (1,-\omega ^3+2\omega ^2-\omega +1,-\omega ^3+\omega ^2+3\omega -1),\\&\,\,\qquad (1,-\omega ^3+\omega ^2-\omega +1,-\omega ^2+2\omega )\bigr \}. \end{aligned}$$

Notice that the golden ratio is one of \(\omega ^3-3\omega ^2+2\omega -1\) or \(-\omega ^3+3\omega ^2-2\omega +2\) depending on the choice of \(\omega \). Then viewed as linear forms the coordinate vectors in R define an arrangement \(\mathcal {A}\) with 35 hyperplanes which is real and simplicial. The two possible real values for \(\omega \) give arrangements with isomorphic oriented matroids; Fig. 1 is a picture of \(\mathcal {A}\). The automorphism group of the intersection lattice of \(\mathcal {A}\) is the dihedral group with 20 elements. The characteristic polynomial of \(L(\mathcal {A})\) is \((t-1)(t^2-34t+305)\), hence it is not free.

This arrangement is related to the reflection arrangement of type \(H_3\) (which is contained in \(\mathcal {A}\)). However, despite the appearance, it is substantially different in the sense that there is no easy way to construct \(\mathcal {A}\) starting from the arrangement of type \(H_3\), because the required field extension is larger; it is not clear whether \(\omega \) has a natural interpretation in mathematics (like the golden ratio).

5.3 Simplicial Arrangements with 1-Dimensional Moduli Space

Apart from the newly found real simplicial arrangement with 35 lines, the biggest surprise from this computation is the existence of combinatorially simplicial arrangements over \(\mathbb {C}\) whose matroids have an infinite moduli space. Simpliciality is an extremal property (in the real case, every chamber has the least number of walls), so a simplicial arrangement should be quite rigid and should not allow small modifications preserving the matroid. We still conjecture that the moduli space of the matroid of a real simplicial arrangement is always finite. With our greedy algorithm, we have found 11 pairwise non isomorphic combinatorially simplicial matroids with 1-dimensional moduli space over \(\mathbb {C}\). There is one with 16 lines, four of them have 21 lines, and six of them have 23 lines (see Sect. A.1 in the appendix for the explicit matroids).

Let us consider the smallest example L in detail. It has 16 lines and 38 points. The lines \(1,\ldots ,16\) contain the points

$$\begin{aligned}&\{1,29,30,31,32,33,34,35,36,37,38\},\ \{2,5,12,15,26,2,35\},\{2,11,21,22,23,25,36\},\\&\{3, 4,5,6,9,23,33\},\ \{3,7,10,11,16,26,30\},\{2, 6,13,16,17,24,38\},\\&\{2, 8,9,10,18,19,31\},\ \{2, 4,7,14,20, 27,37\},\{3,12,19,20,21,24,29\},\\&\{3,8,13,14,15,22,34\},\ \{3,17,18,25,27,28,32\},\{1,6,8,21,26,27\},\\&\{1,5,10,17,20,22\},\ \{1,7,12,13,18,23\},\ \{1,4,15,16,19,25\}, \{1, 9,11,14,24,28\}, \end{aligned}$$

respectively; this completely determines the matroid L. This matroid is generated by 5 lines, \(g(L)=5\) and Algorithm ModuliSpace yields a 1-dimensional variety \(V\setminus E\) defined by the ideal generated by \(X_1^4 - 3 X_1^3 X_2 + 4 X_1^2 X_2^2 - 2 X_1 X_2^3 + X_2^4\) and some equations for E. It is easy to see that every solution \((X_1,X_2)\in (\mathbb {C}^\times )^2\) is such that the quotient \(X_1/X_2\) lies in \(\mathbb {C}\setminus \mathbb {R}\). On the other hand, the cases \(X_1=0\) or \(X_2=0\) are excluded by the equations for E, thus there is no point in the moduli space with real coordinates and there are no real realizations of L.

We can proceed similarly for the other example matroids with 1-dimensional moduli space. None of them admits a real realization.

5.4 Simplicial Arrangements Over the Complex Numbers

The large part of the matroids found in the experiment have no apparent interesting properties. Since we have found 1318 simplicial arrangements over \(\mathbb {C}\) with up to 50 lines, we content ourselves with some statistics instead of a complete enumeration.

5.4.1 Number of Lines

Fig. 2
figure 2

Numbers of found combinatorially simplicial matroids up to isomorphisms which are realizable over \(\mathbb {C}\)

Figure 2 displays the numbers of combinatorially simplicial arrangements over \(\mathbb {C}\) that we found with the greedy algorithm.

Remark 5.1

  • The picture suggests that there will be a maximum for 24 lines and that the set of simplicial arrangements could be finite when excluding the infinite series. However, we have to be careful with such a conjecture: for most of the choices of primes and of values w, the algorithm does not terminate in a short time (perhaps because there is no such arrangement). This is why we have to add a bound for the number of passes through the loop. Since this bound is the same for all numbers of lines, it is conceivable that this bound was too small for the higher numbers of lines and that we therefore missed many examples with more than 25 lines. On the other hand, the classification of crystallographic arrangements sets a precedent for a finite class of simplicial arrangements. I still conjecture that the set of non-supersolvable arrangements \(\mathcal {A}\) with fixed \(\sigma (\mathcal {A})\) is finite in characteristic zero. In this case, Fig. 2 could be quite close to the actual picture.

  • We did not find all the arrangements from the infinite series, probably because the required algebraic numbers are difficult to obtain in “small” finite fields. Thus it is very likely that we missed several other examples which require further algebraic relations.

  • It is unclear why the number of found arrangements with 23, 26, and 28 lines is so small. A possible explanation is that these numbers do not allow matroids with many symmetries.

5.4.2 Number Fields

We list here the number fields that appear as minimal fields of definition for the simplicial matroids in the database (except for those with infinite moduli space):

  1. (i)

    Cyclotomic fields: \(\mathbb {Q}(\zeta )\) for \(\zeta \) a primitive e-th root of unity, \(e\in \{3,4,5,7,8\}\).

  2. (ii)

    Quadratic fields: \(\mathbb {Q}(\sqrt{a})\) for \(a\in \{2,3,5,-2,-7\}\).

  3. (iii)

    The fields \(\mathbb {Q}(\zeta +\zeta ^{-1})\) for \(\zeta \) an e-th root of unity, \(e\in \{7,9,11\}\).

  4. (iv)

    The fields

    $$\begin{aligned} K_1:=\mathbb {Q}[X]/(X^3-X+1),\ \quad K_2:=\mathbb {Q}[X]/(X^4 - 3X^3 + 3X^2 - 3X + 1) \end{aligned}$$

    which have embeddings into \(\mathbb {R}\).

  5. (v)

    The fields \(\mathbb {Q}[X]/(f)\) for f in

    $$\begin{aligned}&\{4X^4 + 8X^2 + 1, X^4 - 4X^3 + 8X^2 - 5X + 1,\\&\quad X^4 - 5X^3 + 11X^2 - 10X + 4, X^4 - X^3 + 2X + 1 \}. \end{aligned}$$

Remark 5.2

  • The fields \(\mathbb {Q}(\zeta _e+\zeta _e^{-1})\) for \(\zeta _e\) a primitive e-th root of unity are also the minimal fields of definition of the arrangements of the infinite series (see [5, Thm. 3.6]). Moreover, \(\mathbb {Q}(\sqrt{2})=\mathbb {Q}(\zeta _8+\zeta _8^{-1})\), \(\mathbb {Q}(\sqrt{3})=\mathbb {Q}(\zeta _{12}+\zeta _{12}^{-1})\), \(\mathbb {Q}(\sqrt{5})=\mathbb {Q}(\zeta _{10}+\zeta _{10}^{-1})\), so one could move these fields from (ii) to (iii).

  • The field \(K_1\) is the minimal field of definition for A(15, 5) and A(21, 7) in the numbering by Grünbaum [16]. Note that this field was defined as \({\mathbb {Q}[X]/(X^3-3X+25)}\) in [5] (which is isomorphic to \(K_1\)), but the polynomial given here looks somewhat more natural.

  • The field \(K_2\) is the minimal field of definition for the newly found arrangement with 35 lines.

  • I have no good explanation for the four fields in (v).

  • None of the extensions \(K_1/\mathbb {Q}\) nor \(K_2/\mathbb {Q}\) is Galois.

5.4.3 Automorphism Groups

We find 47 different groups of automorphisms of matroids up to isomorphisms. Their orders are

$$\begin{aligned} 1, 2, 3, 4, 6, 8, 12, 16, 18, 20, 24, 32, 36, 40, 42, 48, 54, 64, \\ 84, 96, 108, 110, 120, 128, 192, 200, 432, 600, 1536, 1764. \end{aligned}$$

Since some of the (complex) reflection arrangements are combinatorially simplicialFootnote 3 (see [8]), as for example the series of imprimitive reflection groups G(e, 1, r), these large groups appear in the list. Some of the other complex examples are probably related to reflection groups and inherit the symmetries.

5.5 Free Arrangements

We would like to use our greedy algorithm with the property “counterexample to Terao’s conjecture” (see [18] for details). Since such a counterexample should be a matroid which has at least one free realization, we need a matroid whose characteristic polynomial has only integral roots [18, Thm. 4.137]. The degrees of a free arrangement are the roots 1, ef of its characteristic polynomial. For an arbitrary arrangement, if 1, ef are the roots of the characteristic polynomial, then the number \(m(L):=(f-e)^2\in \mathbb {Z}\) (possibly negative if \(e,f\in \mathbb {C}\setminus \mathbb {R}\)) is easy to compute from the intersection lattice. We can call our greedy algorithm with the goal to optimize \(m(L)\ge 0\), m(L) a square. This way we obtain many matroids which may be filtered using several conditions (see for example [19] for a good overview). As a result we recover all the presently known examples of free but not inductively and free but not recursively free arrangements over \(\mathbb {C}\) including those with infinite moduli space (see [1, 11]). We skip the details here because the experiment gave no new insight in this direction.

5.6 \((n_k)\)-Configurations

An (nk)-configuration of lines and points consists of a set of n lines and a set of n points such that k of the points are on each line and k of the lines go through each point (see [4] for previous results). We have tried to find some interesting \((n_k)\)-configurations with the greedy algorithm. It is in particular still open, whether a \((23_4)\)-configuration exists. Although our algorithm comes very close to such a configuration (we find configurations with 23 lines and points such that only one or two points lie on less than four lines), the method presented in [7] seems to be more adequate for this problem: it finds several complex arrangements which we do not obtain with the greedy algorithm.

5.7 Few Double Points

Of course one can run the greedy algorithm with the goal to minimize the number of double points. A short experiment in this direction produced exactly the known examples, amongst others the reflection arrangements of imprimitive reflection groups (including the Hesse configuration) and some of the simplicial arrangements from the infinite series.