Abstract tropical linear programming

In this paper we develop a combinatorial abstraction of tropical linear programming. This generalizes the search for a feasible point of a system of min-plus-inequalities. It is based on the polyhedral properties of triangulations of the product of two simplices and the combinatorics of the associated set of bipartite graphs with an additional sign information which we call a signed tropical matroid. We demonstrate the connections with the classical simplex method, mean payoff games and scheduling.


Introduction
Tropical linear programming is a method to determine a feasible solution of a linear inequality system, where addition is replaced by minimum and multiplication is replaced by usual addition. It is intimately connected to the classical version of linear programming as tropical polyhedra are essentially projections of classical polyhedra [21]. Formulating linear programming over an appropriate valued field, one obtains tropical linear programming as a shadow through the valuation map. Even more, there is a tropical simplex method for which the sequence of bases is in bijection with the sequence of bases in a run of the classical simplex method [5].
The study of tropical linear programming is motivated by the connection with the following two major open problems. The first is Smale's 9th problem which asks for a strongly polynomial algorithm in linear programming. The connection of tropical and classical linear programming already resulted in the disproval of the continuous Hirschconjecture for the central path and a proof that log-barrier interior point methods are not strongly polynomial, both in [6]. Secondly, tropical linear programming is equivalent to mean payoff games, see [2] and Section A. 3. These games are of special interest in computer science as their complexity lies in NP ∩ co-NP but no polynomial algorithm is known [69]. This includes the subclass of parity games which lie at the heart of several hard instances for the classical simplex method [29,39] but which have recently shown to be at least quasipolynomial solvable [17].
In the history of linear programming, it was a conceptual breakthrough to formulate the simplex method in the more abstract language of oriented matroids. After the development of the simplex method by Dantzig [18], the sign vectors occurring in the pivoting steps were studied in a more axiomatic way. This abstraction was initiated by Rockafellar [59] and it led to the work of Bland [12], Fukuda [30] and Todd [65,66] on oriented matroid programming. Furthermore, it motivated the development of crisscross methods [64].
In this paper we formulate an abstract version of tropical linear programming. This is based on signed tropical matroids, a tropical analogue of oriented matroids. An axiomatic study of "tropical oriented matroids" originated in the work by Ardila and Develin [8] to describe and generalize the combinatorics of tropical point configurations. It was further developed by Oh and Yoo [54] and Horn [43]. The latter established a realizability result with "tropical pseudohyperplanes", that also proved the bijection of this concept of tropical oriented matroids with not necessarily regular subdivisions of the product of two simplices ∆ n−1 × ∆ d−1 . Recall from [19, §2.2.3] that a subdivision is regular if it is induced by a height function but not all subdivisions are of this form.

Our results
The abstraction of a tropical linear inequality system by a signed tropical matroid is described in terms of a well-structured set of bipartite graphs on the node set [d] [n] where each edge is labeled by '+' or '−'. Building on an axiomatic way for defining the set of these covector graphs, we extend the notion of feasibility and infeasibility to signed tropical matroids using the signs on the edges. These graphs are the analogue of the sign vectors of an oriented matroid, but contain primal and dual information.
The overall structure of our algorithm is motivated by the simplex method, which we recall in Appendix A.1. We adapt the scheme of iterating over bases with local exchanges. The role of basic solutions is taken by the important concept of a basic covector (graph), see Section 3.3. We iterate as long as the current basic covector contains a negative edge connecting a leaf in [n] and a certain subset of [d], which is motivated by the greedy approach of successively satisfying violated inequality.
While the correctness and termination of the simplex method can be shown by the increase in an objective function, we mimic this by distinguishing one particular node in [d] of each basic covector and consider paths emerging from it. The arguments leading to the combinatorial analogue of an increase rely on the parity, even or odd, of the distance of an edge from the distinguished node. Together with the particular structure of matchings in basic covectors, this allows us to deduce a process which is guaranteed to terminate with a certificate of feasibility or infeasibility (Theorem 41). Note that our scheme has a lot of freedom in the actual choice of the pivot element. The abstract pivoting allows us to deduce a generalized tropical duality theorem (Theorem 44) and a new algorithm for tropical inequality systems (Algorithm 6).
Our definition of signed tropical matroids is motivated by the correspondence with subdivisions of ∆ n−1 × ∆ d−1 . We use the axiomatic description of polyhedral subdivisions [19] and enrich it with an additional sign information. Using the equivalence shown in [43] of tropical oriented matroids and subdivisions of ∆ n−1 × ∆ d−1 one could also use the axioms in [8] and equip it with an additional sign information. However, as our arguments mainly rely on the characterization of triangulations in [7], going back to [60], we restrict ourselves to these purely polyhedral notions.
To keep the exposition of the algorithm as simple as possible, we start with a generic subclass of signed tropical matroids given by a short list of axioms in Definition 12.
To make the algorithm applicable to general signed tropical matroids, we employ the concepts of extension and refinement from polyhedral geometry in our setting. We mainly translate the polyhedral constructions to operations on the set of bipartite graphs. Similar techniques have been used in related works by Allamigeon et al. [4] and Horn [43].
We use global geometric properties of the occurring polyhedral subdivisions related to generalized permutohedra [56] to ensure the existence of basic covectors by an abstract Cramer theorem in Section 3.2. This can be seen as a polyhedral generalization of [1, Theorem 6.1], as well as [58,Corollary 5.4], and it is related to the linkage trees in [63,Theorem 2.4].
The running time of our algorithm applied to tropical linear inequality systems (Algorithm 6) is related to the minimal length of integer vectors in the secondary fan of ∆ n−1 × ∆ d−1 . This follows as we show that the number of iterations can be bounded by a polynomial in the coefficients of the inequality system. Furthermore, the behaviour of the algorithm only depends on the triangulation. Hence, a minimal representative of a coefficient matrix in the containing cone of the secondary fan of ∆ n−1 × ∆ d−1 yields an upper bound.
Through this result one obtains a connection between the complexity of a simplex-like algorithm for (tropical) linear programming and the length of a minimal lattice vector in a cone. In particular, this establishes the length of a minimal lattice vector as a natural complexity measure of a subdivision and of an algorithm. The secondary fan of ∆ n−1 × ∆ d−1 can be seen as the tropical analogue of the realization space of polytopes for fixed parameters, cf. [57]. In this vein, finding a minimal realization of the combinatorial type of a tropical point configuration is related to the determination of a shortest non-zero lattice vector which was tackled in the pioneering work [50].
The exposition is complemented by the formal relations between tropical linear programming and some other algorithmic problems. We formulate a tropical inequality system which is equivalent to a given AND-OR-network [52]. Furthermore, we show how our results tie in with the equivalence of the feasibility problem for tropical linear inequality systems and finding winning states of a mean payoff game.

Organization of the paper
Section 2 is dedicated to the introduction of the main concepts for describing the combinatorics of tropical linear inequality systems. Our main algorithm is presented in Section 3. Note that the algorithms are rather simple in the required terminology, however, we need the technical tools to prove the correctness. We move on to define general signed tropical matroids, the abstraction of tropical linear inequality systems, in Section 4. Building on polyhedral methods, we show in Section 5 how one can reduce signed tropical matroids to the subclass for which we formulate our algorithm. This is followed by an application to the special case of tropical linear inequality systems in Section 6. For this, we can drop some requirements on the input and deduce upper bounds on the number of iterations.
We give an overview of related algorithmic problems, the simplex method, AND-ORnetworks and mean payoff games, in Appendix A. The main polyhedral prerequisites are collected in Appendix B. We finish in Appendix C with applications of our algorithm to analyze mean payoff games and tropical linear inequality systems, in particular for finding the maximal support of a feasible point.

Related algorithms
The tropical linear feasibility problem has connections to several other problems as further described in Section A. Therefore, algorithms for scheduling with AND-OR-networks [52], mean payoff games [24,69,38] and classical linear programming [5,4,10] are applicable to this problem. Furthermore, beside the algorithms for tropical inequality systems [14,15], one can also use algorithms for tropical equality systems [35,16] which are equivalent via the reformulation a b ⇔ a = min(a, b). The algorithms with the currently fastest runtime for mean payoff games are [23] and [26]. We consider mean payoff games on a bipartite game graph with (n + d) nodes, m edges and maximal weight ω. The algorithm presented in [23] has a provable runtime of O(min m(n + d)ω, m(n + d)2 (n+d)/2 log ω and [26] takes O m(n + d)((n + d)ω) 1−1/(n+d) . Theorem 75 gives a rough upper bound for our algorithm in the realizable case of O(d 3 (n + d 2 )ω). However, as discussed above, the runtime depends on a potentially smaller pseudo-polynomial parameter than ω. We note that, in the realizable case, our algorithm is similar to the method developed in [11] as the latter is also combinatorial and pseudopolynomial. The precise relation is subject to further work.
The presented results are part of the dissertation of the author [51].

Covector graphs for signed systems
The tropical numbers consist of the set T min = R∪{∞}. Equipped with the two operations ⊕ and , where x ⊕ y := min(x, y) and x y := x + y for x, y ∈ T min , they form the tropical semiring. Just as well, we could consider ⊕ = max as tropical addition. The operations extend to vectors and matrices componentwise and we can define a matrix product analogously to the classical case.
We use the notation [d] = {1, . . . , d} and define the sum over an empty set to be ∞. Furthermore, the symbol denotes the disjoint union of the two (color) classes of nodes of a bipartite graph.
We define a (tropical) signed system as a pair (A, Σ) with (a ji ) = A ∈ T n×d min and (σ ji ) = Σ ∈ {+, −, •} n×d , where a ji = ∞ ⇔ σ ji = •. It defines a homogeneous tropical linear inequality system by The set of feasible points in TA d is the feasible region. Such a feasible region is a tropical cone, which means that it is closed under tropical addition and scalar multiplication. A tropical halfspace is the feasible region of a single tropical linear inequality.
Note that the sign information which we encode in the sign matrix Σ occurs in the patchworking method of Viro [67] and is, alternatively, added to the tropical semiring to form the "symmetrized tropical semiring" [1].
, a jk = ∞}. This means that the covector graph encodes those entries in each row of the product A x where the minimum is attained.
Note that we label the entries of A by pairs (j, i) ∈ [n] × [d] and choose the reverse order to denote the edges (i, j) ∈ [d] × [n] of a covector graph. We will write pairs for the edges even if we consider it as an undirected graph. Often, we will call tropical covector graphs just covectors.
The nodes in [d] are coordinate nodes and in [n] are the apex nodes. Coordinate nodes correspond to the variables and are visualized by square nodes. Apex nodes correspond to the rows and the inequalities, respectively. They are depicted by circle nodes. Depending on the sign given by Σ, we call an edge in a covector graph negative or positive.
On the left of Figure 1, we put the plain covector graphs whereas, on the right, we add the sign information given by Σ. Directly from the definition, we obtain a characterization of finite feasible points.

Proposition 3.
A point x ∈ R d is feasible for the signed system (A, Σ) if and only if no apex node is only incident with negative edges in G A (x).

Proof. By definition, a point is infeasible if and only
This means that the minimum is attained only for entries with a minus sign. From this follows the claim with Definition 1.
The cells x ∈ R d G A (x) const define a covector decomposition of R d . This is the same polyhedral subdivision of R d as in [45] if we replace max by min.
Notice that the covector graphs are homogeneous in the sense that adding an element of R·1 = R·(1, . . . , 1) to a cell yields the same covector graph and the cells in the covector decomposition all contain R · 1 as lineality.
We fix a matrix A ∈ T n×d min , for which every row contains a finite entry, and denote by Γ the complete bipartite graph K d,n on the node set [ and |D| = |N |. Then µ is a minimal matching in Γ.
3. Let µ and η be minimal matchings in Γ. If µ is contained in G, so is η.

Generalized covector graphs
To make use of covector graphs also for points in T d min with ∞ coordinates, we introduce a generalized notion that is slightly different from the approach chosen in [45, §3.5].
We denote it by G A (x), like the covector graphs from Definition 1. In contrast to covector graphs of points in R d the generalized covector graphs possibly have isolated apex nodes. A (generalized) covector graph without an isolated apex node is called proper.
Note that a generalized covector graph can also be the empty graph and the corresponding point is feasible. The empty graph is the covector graph of (∞, . . . , ∞) but also for (0, ∞, ∞) with respect to (∞, 0, 0). This happens, if the support of all the rows is contained in a common proper subset of [d].
Definition 6. A (generalized) covector graph G is infeasible if there is an apex node which is only incident with negative edges. If G is not infeasible we call it feasible.
We obtain the following more general version of Proposition 3. It assures that the two notions of feasibility agree for points with finite components and it is the suitable formulation for defining the feasibility in signed tropical matroids, see Section 4.

Proposition 7.
A point x ∈ T d min is feasible for the signed system (A, Σ) if and only if no apex node is only incident with negative edges in the generalized covector graph G A (x).
Proof. Fix j ∈ [n] and consider the corresponding inequality Equation 1. If j is only incident to negative edges the right hand side is surely smaller and the inequality is not fulfilled. If j has no neighbors in G A (x) then both sides of the inequality are ∞ and the inequality is fulfilled. Otherwise, it is also a valid inequality.
This allows us to examine the feasibility of general tropical inequality systems via generalized covector graphs.  Figure 2: As always, we set x 1 = 0 to cancel out the lineality R · 1. The shaded area is the feasible region of a signed system formed by the four inequalities from Example 8. The crooked lines are the boundaries of the tropical halfspaces. The bipartite graph is the covector graph of (0, 2, 4.5), where the negative edge is red.
Example 8. The left part of Figure 2 depicts the feasible region of the signed system (A, Σ) with This gives rise to the inequality system The covector graph of the point (0, 2, 4.5) is shown in the right part of Figure 2. It is feasible since each apex node is incident with a positive edge. The covector graph of the point (∞, 0, ∞) has the edges (2, 1), (2,2) and (2,3). It is not proper and infeasible.

Computations for realizable covector graphs
Starting from a proper covector graph, the next lemma allows us to compute a point with given covector graph.
Let G be a connected covector graph with respect to A ∈ T n×d min and δ ∈ [d] a coordinate node. For any other coordinate i ∈ [d], let δ = i 1 , j 1 , i 2 , . . . , i s , j s , i s+1 = i be any path from δ to i in G. By the definition of a covector graph, we obtain the sequence of equations a jtit + x it = a jti t+1 + x i t+1 for all the tuples (i t , j t , i t+1 ) with t ∈ [s]. Summing up these equations yields s t=1 (a jtit + x it ) = s t=1 (a jti t+1 + x i t+1 ). Equivalently, we obtain . These equations define x uniquely up to adding multiples of the all ones vector. Since we assumed G to be a covector graph, these necessary conditions are also sufficient. This construction is visualized in Figure 3. It proves the following.
Lemma 9. The covector graph of x with respect to A is G.
To cover the case J = ∅, we set tdet(A ∅,∅ ) = 0. These vectors occur as solutions to homogeneous tropical equality systems, see, e.g., [31,Theorem 18], [58,Corollary 5.4], in analogy to Cramer's rule in linear algebra. That means, a Cramer solution has the property that the minimum in the computation of each entry of A J,I A[J|I] is attained at least twice. We mention the computational problem in Section 6, for an extensive study see [3].
We denote the generalized covector graph of A[J|I] by C A (J, I).
Example 10. Consider again the matrix A from Example 8. The point (0, 1, 3) has the covector graph depicted on the left of Figure 3. On the right is the auxiliary weighted directed graph for computing the point from the covector graph. It is the Cramer solution C A ({2, 3}, {1, 2, 3}).
Lemma 11. Let A ∈ T (d−1)×d with d ∈ N and x the Cramer solution for this matrix.
Proof. This follows from the definition of Cramer solution with the triangle inequality.

Abstract tropical linear programming
The generalization of the simplex method to oriented matroids in [12,30,66,64], was a powerful step in the understanding of linear programming. The basic idea of the simplex method, considered as a feasibility algorithm, is taking a finite walk along edges and vertices in an arrangements of halfspaces as depicted in Figure 4. This is further explained in the Appendix A.1. In this section, we present an algorithm which finds a feasible cell in a tropical analogue of an oriented matroid and does not cycle. This is an abstraction of the feasibility problem for signed systems. We already saw in Proposition 3 and Proposition 7 that the feasibility of a point can be characterized by its covector graph with the signs on its edges. Hence, we will use an abstract version of covector graphs.
A purely axiomatic approach to grasp the crucial properties of the collection of covector graphs was started by Ardila and Develin in [8]. They introduced the name tropical oriented matroid. This approach was further developed in [54] and [43]. Finally, Horn proved in [43] that tropical oriented matroids encode exactly all subdivisions of ∆ n−1 × ∆ d−1 , not only regular ones, and also the so called tropical pseudo-hyperplane arrangements.
In this section, we introduce a special class of signed tropical matroids and postpone their general introduction to Section 4. The class of signed tropical matroids treated here is the generalization of the set of covector graphs arising from generic matrices with only finite entries. In Section 5, we describe how one can reduce the general case to this. It follows from Lemma 54, Proposition 57 and Proposition 62.

Generic full signed tropical matroids
The following definition is based on the axioms for the maximal simplices in a triangulation of a product of two simplices given in [7,Proposition 7.2]. This is discussed further in Section 4.1. 1. For each tree G and each edge e of G either G − e has an isolated node or there is another tree G containing G − e.
2. There do not exist two distinct trees G and H, and a cycle of K d,n which alternates between edges of G and H, One can equivalently just consider the collection of trees without their subgraphs. We will refer to the last condition as comparability. Equivalently, one could require, that for all D ⊆ [d] and N ⊆ [n] with |D| = |N | there is at most one matching on D N which is contained in a tree in T .
Remark 13. The covector graphs of a signed system with a generic coefficient matrix and finite entries gives rise to a GFSTM. Such a GFSTM is realizable.
Extending the terminology for signed systems, we call the elements of T covector graphs. The nodes in [d] are coordinate nodes and the nodes in [n] are the apex nodes. Depending on the corresponding sign in the sign matrix, we say that an edge of a covector graph is negative or positive.
That signed system (A, Σ) gives rise to the GFSTM depicted in Figure 5. The bipartite trees are just the maximal covector graphs as defined in Definition 1.
We give examples of GFSTMs, which do not come from signed systems, at the end of the section in Examples 45 and 46.
Proposition 7 justifies the following definition. Definition 15. A covector graph G is infeasible if and only if there is an apex node in G which is only incident with negative edges. If G is not infeasible we call it feasible. A covector graph G is totally infeasible, if it is infeasible and every coordinate node is incident with a negative edge.
A GFSTM is feasible, if it contains a feasible covector graph; otherwise we call it infeasible.
The property 'totally infeasible' is far stronger than just infeasible. In Lemma 17, we see that it forms a certificate that there is no feasible covector graph in the GFSTM and, hence, that the GFSTM is infeasible. It is in some sense dual to the notion of a feasible covector graph via the duality between the two parts of the node set of the bipartite graphs. In the generic case, the infeasibility of a totally infeasible covector graph already follows from the second condition.
The following operation corresponds to the treatment of points with infinite entries. We will treat this in more generality in Section 4.2.
Definition 16 (Contraction). For a coordinate node i ∈ [d], the contraction S /i is the set of graphs which arise from those graphs of S, for which i is isolated, by deleting the node i. We delete the ith column in the sign matrix.
For the contraction S /([d]\D) , where S is defined on [d] and D = ∅, we will also write S| D . In the realizable case, these are the covectors of the points with support D. We only consider points in TA d = T d min \ {(∞, . . . , ∞} which corresponds to D = ∅. If (S, Σ) is induced by a signed system (A, Σ) then the operation corresponds to deleting the ith column of A. By construction, a contraction of a GFSTM is again a GFSTM.
With the latter notion we can now formulate an important consequence of the existence of a totally infeasible covector in a GFSTM. This is visualized in Figure 6.
Lemma 17 (Infeasibility certificate). If a covector graph G in a generic full STM (T , Ξ) is totally infeasible, then in every covector graph H of any contraction of (T , Ξ) there is a node in [n] which is only incident with a negative edge.
Proof. Notice that each covector graph in a contraction is constructed from a covector graph of (T , Ξ). Since one only removes isolated coordinate nodes to obtain the contraction, all covectors in every contraction is infeasible if so are all covector graphs in the original GFSTM.
By definition, G is infeasible and there is a set µ of negative edges on [d] N for some subset N ⊆ [n], such that each node in [d] is incident with exactly one edge in µ and each node in N is incident with at least one edge in µ. Now, let H be any covector graph in (T , Ξ). Assume H is feasible. This implies that each apex node j ∈ N is incident with a positive edge, which therefore does not lie in µ. Pick for each node in N one incident positive edge from H. This forms a cover η of N . Moreover, let D be the subset of the coordinate nodes [d] which is covered by η. Then the graph on D N with edge set µ| D ∪ η, where µ| D are those edges in µ incident with D, has |D| + |N | nodes and |µ| D | + |η| |D| + |N | edges. This implies that it contains a cycle C. Since every node in D is only incident with one edge from µ| D and every node in N is only incident with one edge from η, the cycle C has to be alternating between µ and η. However, this contradicts the comparability in Definition 12.

Existence of particular covector graphs
We start with a Menger-type lemma; see [13, §3] for similar results. It is purely graph theoretic but contains an important property for covector graphs.
Lemma 18. Let G be a bipartite tree on the node set D N for arbitrary sets D and N with |D| = k + 1 and |N | = k with a positive integer k. If the nodes in N all have degree 2 then, for each i ∈ D, the graph G with i deleted contains a perfect matching. Furthermore, G is the union of these matchings.
Proof. Fix an arbitrary i 0 ∈ D. Since G is a tree, it has at least two leafs. In particular, there is an i ∈ D \ {i 0 } which is a leaf in G. Let j ∈ N be the node adjacent to i. Deleting i and j yields a graph H on (D \ {i}) (N \ {j}) for which each node in N \ {j} has degree 2.
Proceeding by induction implies the claim about the containment of the matchings. Furthermore, each edge is contained in such a perfect matching. For this, pick an arbitrary edge (i, j) ∈ G. Let ∈ D be the node distinct from i which is adjacent to j.
The following result guarantees the existence of covector graphs with specific degree conditions. It can be seen as the theoretical justification of an oracle which provides us with the next covector graph in the iteration later on. Let T be a collection of spanning trees on [d] [n] fulfilling the two properties listed in Definition 12.
There is exactly one tree in T for which each node j ∈ [n] has degree d j .
The origin and a proof of the last statements are further discussed in the Appendix. Our algorithm presented in Section 3.3 relies on the idea of pivoting between basic points similar to the simplex method. As further elaborated in Section A.1 the simplex method iterates over basic points. These are solutions of linear equality systems which can be computed by Cramer's rule. The next definition is motivated by the properties of the covector graph of a tropical Cramer solution as defined in (2).
We Cramer covectors are similar to linkage trees in the sense of [63] which were defined for the study of matching fields. Linkage trees are spanning trees on k +1 nodes for which the k edges are bijectively labeled by the numbers in [k]. We replace each edge connecting j 0 with j 1 for j 0 , j 1 ∈ [k + 1] with label i for i ∈ [k] by a new node with label i and two edges connecting j 0 with i, respectively j 1 with i. This yields a bipartite graph as in Lemma 18 which is essentially a Cramer covector.
Remark 20. [3,Theorem 4.18] implies that the covector graph of A[J|I] for a generic, finite A is just the Cramer covector C(J, I) since there is a unique covector graph with the prescribed degree sequence. We will determine the covector graph for the non-generic case in Lemma 56.
We saw already in Lemma 19 and Lemma 18 that Cramer covectors have a particularly useful structure. We exploit this to construct Cramer covectors in a fixed GFSTM inductively.

Description of the algorithm
We introduce an algorithm which either finds a feasible or a totally infeasible covector graph in a GFSTM. By Lemma 17, a totally infeasible covector is a certificate that such a GFSTM does not contain a feasible covector.
Like the variant of the simplex method presented in Subsection A.1, the algorithm constructs a sequence of subsets (a basis) of apex nodes (which correspond to inequalities). In each step, we consider a covector which is defined by this sequence and check if it is feasible. Here, we assume that we have an oracle which gives us a basic covector defined by a basis formed of apex nodes. If it is not feasible yet, there is an apex node which is only incident with negative edges (corresponding to a violated inequality). This determines which apex (variable) will enter the basis. For classical oriented matroid programming, this is described in, e.g., [12,Theorem 4.5]. Now, our approach diverges. While in the simplex method, one has to compute which variable leaves the basis, we deduce from Lemma 23 with the properties of a basic covector which apex leaves the basis. This can already be seen in Figure 7. To arrive at this insight, we will prove in Subsection 3.4 that moving along abstract tropical lines yields a basic covector if we start from one.
Furthermore, the termination of the simplex method is guaranteed by the increase of a linear functional. As we are working in a setting without weights such an argument is not at hand. However, again the special structure, in particular the preservation of the distinguished direction, of the basic covectors yields a purely combinatorial tool to measure the progress of the algorithm. The distinguished direction corresponds to the coordinate with respect to which one would dehomogenize the tropical linear inequality system.
The powerful definition of a basic covector comes with the additional difficulty to find one. We will solve this in Subsection 3.5 by an inductive construction via contractions of a GFSTM.
To emphasize that covector graphs take the role of vectors in the classical simplex method we denote them by y.
A basic covector (graph) y with distinguished direction δ and support there is a |D|-set of apex nodes N ⊆ [n], called basis, so that each node in N has degree 2 in y, 4. δ is not adjacent to an apex node in N via a negative edge, 5. each apex node in N is incident with a positive and a negative edge, 6. no two negative edges, each of which is incident with some node in N , are adjacent.
The apex nodes in the basis are called basic apices, the others non-basic apices. If Σ has a '−' at position i ∈ [d] in row j ∈ [n], we say that the apex node j has shape i resp. it is i-shaped. Later on, we will construct a sequence of basic covectors. If there are apex nodes p = q ∈ [n] so that N and N \ {p} ∪ {q} are bases, we say that p is the leaving apex and q is the entering apex. We start with the nice structural property of basic covectors which connects the sign structure with the matching structure.
Lemma 23. The negative edges which are incident with a basic apex form a perfect matching on D N in y. Furthermore, the edges in a path emerging from δ to another coordinate node are alternatingly positive and negative.
Proof. Consider the induced subgraphỹ of y on (D ∪{δ}) N . Each apex node is incident with a negative edge. By (5) and (6) in the definition, no two negative edges are incident, and by (4), δ is not incident with a negative edge. Hence, the negative edges define an injective function from N to D. Because of |N | = |D|, this function is also bijective. This yields the required matching.
Since each node in N has degree 2 and the nodes in [d] \ (D ∪ {δ}) are isolated,ỹ is a tree. Fix an arbitrary i ∈ D and let ρ = (e 0 , e 1 , . . . , e k ) be the edge sequence from δ to i iñ y. Since e 0 is positive and incident with the same apex node as e 1 we conclude that e 1 is negative. Therefore, e 2 has to be positive again as it is incident with the same coordinate node as e 1 . Iterating this argument, we obtain that the edges in ρ are alternatingly positive and negative.
The former lemma tells us that there is exactly one i-shaped apex node for each i ∈ D in the basis N . From Proposition 19, we know that there is at most one basic covector defined by (D ∪ {δ}) and N . If the Cramer covector C(N, D ∪ {δ}) fulfills the conditions 4, 5 and 6, it is the basic covector with these parameters and we denote it by B(N, D, δ).

Pivoting between basic covectors
The crucial piece for our feasibility algorithm is a method to find a new basic covector which is 'in the right direction' and 'similar to the old one'. In particular, the new basic covector should have the same distinguished direction. We present two variants for this in Algorithm 1 and Algorithm 2. The second one will evolve as an iteration over the first one. We need the first one for technical reasons in the proofs. Assumption 1. The GFSTM is trimmed which means that Ξ has exactly one '−' entry in each row.
We discuss in Section 5.3 how one can make sure that this assumption is fulfilled. Now, the idea for the pivoting is the following. If we remove a negative edge e which is incident to a basic apex p in a basic covector y with basis N then we obtain the covector graph y − e having two trees as connected components and p leaves the basis. In this context, − denotes set difference of the edge sets. We know from Definition 12 that there is exactly one other tree w containing this graph. Hence, there is an edge f such that w = y − e + f where + denotes union. Now, three cases can occur. If w is again a basic covector graph with distinguished direction δ, we are done. Otherwise, either an apex node in N has degree 3 or another apex node has degree 2. We continue the iteration by removing an edge. This edge is chosen such that no node becomes isolated and all nodes in N \ {p} have degree 2 as well as one negative incident edge. This ensures that δ remains the distinguished direction and yields the case distinction of Algorithm 1. A closer inspection reveals that we do not need to iterate over all these covectors to find another basic covector but can construct it directly which results in Algorithm 2. For the proof of this, we assigned the variable completed in Line 11 of Algorithm 1. The latter algorithm is merely a technical tool to show that the other algorithms building on it behave correctly.
Remark 25. The iteration in Algorithm 1 moves along an abstract version of a "tropical line". A tropical line is a sequence of ordinary lines as explained in [20,Proposition 3]. A more refined version for this is given in [5, §4]. Note that their description in terms of the "tangent digraph" is essentially the same as in terms of covector graphs in the realizable case. However, our approach also works in the non-realizable case.
Algorithm 1 Finding the next basic covector; see also Algorithm 2 Input: Basic covector graph y = B(N, D, δ) and a non-basic apex r that is adjacent to D via a negative edge in y Output: Basic covector graph with support D ∪ δ and distinguished direction δ 1: procedure NextBasicCovector(y,r)

2:
i ←coordinate node adjacent to r 3: p ←basic apex adjacent to i via a negative edge the i-shaped basic apex of the basis N . It leaves the basis.  if q is adjacent to i via a negative edge then 10: w is the basic covector B(N \ p ∪ q, D, δ).

11:
completed← (q = r) 12: else if q has degree 3 in w then 13: e ← the positive edge incident with q in y − e = w − f . 14: else In this case, q is incident with two edges.

15:
e ← the edge incident with q in y − e = w − f .

16:
end if 17: y ← w 18: while y is no basic covector 19: return y 20: end procedure We build our arguments for the correctness of the algorithms on properties of the paths in basic covectors. Let the length of a path in a graph be the number of nodes contained in the path. Define the δ-distance of an edge e in the covector graph y as the minimum of the two lengths of the paths from a fixed coordinate node δ to the nodes which are incident with e. Note that the path between two nodes in a tree is unique. We call the edge e even in y if the distance to the coordinate node δ is even, otherwise odd. We call this property the δ-parity of an edge in y.

Finding the next basic covector
Let y 0 be the input covector, r the input basic apex and p the leaving basic apex of shape i. We consider the sequence y 1 , y 2 , . . . of covectors which arise in Algorithm 1 in Line 6. Such a sequence is depicted in Figure 8. Then we can write y 1 = y 0 −e 0 +f 1 , y 2 = y 1 −e 1 +f 2 , . . . for appropriate edges e and f with ∈ N. Furthermore, let q be the apex node, which is incident with f in y .  In the realizable case, the two apices 2 and 3 would define a tropical line which eventually has to hit the halfspace defined by the apex node 5.
Lemma 27. The covector graph y − e has two connected components for all 0. Each node in N \ {p} has degree 2 and is incident with a positive and a negative edge. All other apex nodes have degree 1. The negative edges, which are incident with a node in N \ {p}, are pairwise not adjacent.
Proof. By construction, y is always a tree, hence y − e has two connected components. Line 13 ensures the properties of the nodes in N \ {p}. Line 15 guarantees that the other apex nodes have degree 1. The last claim follows as the negative edges, which are incident with a node in N \ {p}, are the same as in y 0 .
Since we started the iteration with a basic covector, we obtain a nice invariant which is fulfilled by the edges which are removed and added.
Lemma 28. Let y and y +1 = y − e + f +1 be two consecutive covector graphs for 0. Then e is even in y and f +1 is odd in y +1 .
Proof. We proceed by induction. The first covector graph y 0 in the iteration is a basic covector.
From Lemma 23, we know that the paths from δ to another coordinate node are alternatingly positive and negative. We conclude that all the negative edges which are incident with a basic apex are even. Hence, line 4 in Algorithm 1 yields that e 0 is even as it is negative. Now fix an 1 and consider the union Y := y −1 + f = y + e −1 of y −1 and y . There is a unique fundamental cycle in Y which contains f and e −1 . An example for this is depicted in Figure 9. Consider the path ρ in Y that contains e −1 and goes from δ to the first node incident with f . By the induction hypothesis, e −1 is even in y −1 . By the comparability condition in Definition 12, the fundamental cycle must not be alternating between edges of y −1 and y . Therefore, with the evenness of e −1 , the number of nodes in ρ must be even as well. Since the number of edges forming a cycle in a bipartite graph is even, this implies that the other path from δ to the first node incident with f in Y contains an odd number of nodes. This is exactly the path defining the δ-distance of f in y , hence, this δ-distance is odd.
To show that f and e have different parity in y we consider the two cases in Algorithm 1 lines 13 and 15. The first case occurs if q is a basic apex. Consider the path from δ to q . By Lemma 27, the apex nodes along this path are only nodes in N \ {p} and analogously to Lemma 23, we get that the path is alternatingly positive and negative. In particular, the path to the positive edge incident with q with the higher δ-distance contains the other positive edge. Therefore, these two edges have different parity.
The second case occurs if q is an apex node in [n] \ (N \ {p}) which has degree 2 in y but is not of shape i. In this case, f and e are again incident with the same apex node q . There is a unique path from δ to q . Since it has to contain one of the two edges the claim follows. Now, we have the tools to prove a first lemma which guarantees termination.

Lemma 29. For
1, let C −1 be the set of nodes in the connected component of the distinguished direction δ in y −1 − e −1 . Then q ∈ C −1 , q ∈ C and C 1 C 2 . . ..

Proof. Fix an arbitrary
1 indexing an element of the sequence (q ). Not both endpoints of f can be contained in C −1 as f connects the two components of y −1 − e −1 . The path from δ to the endpoint of f in y has to be odd, by Lemma 28. Since such a path has to alternate between coordinate and apex nodes, this endpoint has to be a coordinate node. Hence, q is not contained in C −1 .
By the choice of e in Line 13 or Line 15 of Algorithm 1, e is incident with q . Since e is contained in y −1 − e −1 , the endpoint of e different from q must not lie in C −1 , otherwise q would lie in C −1 . Subsuming, no endpoint of e lies in C −1 . Therefore, q and the nodes in C −1 cannot be disconnected from δ in y − e . Hence, q ∈ C and C −1 C . Proof. Note that the condition in Line 9 is fulfilled if q equals r. By Lemma 29, the set C is increased by at least one apex node. Since there are only n apex nodes and the set fulfilling the condition in Line 9 is not empty, the algorithm terminates after less than n iterations.
Furthermore, the condition that w ∈ T | D∪{δ} ensures that each coordinate node in [d] \ (D ∪ {δ}) is isolated. The condition in Line 9 together with Lemma 27 yields that the resulting covector graph is indeed a basic covector with distinguished direction δ.
If r does not enter the basis to form the new basic covector in Algorithm 1, it is still a non-basic apex, which is incident with a negative edge. Therefore, the following block yields the basic covector y = B(N \ p ∪ r, D, δ) where p is the leaving basic variable which has the same shape as r.

completed← FALSE while not completed do
NextBasicCovector(y,r) see Algorithm 1 end while If r does not become a basic apex it can be used again.
This implies that C(N \ p ∪ r, D ∪ {δ}) is indeed a basic covector. The former observations imply the following.
Corollary 32. Algorithm 2 is correct and has the same result as an iterative application of Algorithm 1.
Algorithm 2 Simplified variant of Algorithm 1 for finding the next basic covector Input: Basic covector graph y = B(N, D, δ) and a non-basic apex r that is adjacent to D via a negative edge in y Output: The basic covector graph B(N \ p ∪ r, D, δ) where p is of the same shape as r 1: procedure NextBasicCovector(y,r) 2: i ←coordinate node adjacent to r 3: p ←i-shaped basic apex of the basis N

Finding an extreme basic covector
Eventually, we want to determine a feasible or totally infeasible basic covector. A feasible covector cannot have an apex node of degree one which is incident with a negative edge. Therefore, we want to construct a new basic covector if there is such an edge. We know from the former section how this can be achieved. Iterating this approach yields Algorithm 4. To check if we reached a feasible or totally infeasible basic covector we need the subroutine CheckFeasible from Algorithm 3. It is just the algorithmic manifestation of Definition 15.
Remark 34. We are left with some freedom of choice for the entering apex at each basic covector. We do not specify a rule to choose the apex, the algorithms work for any choice. For an implementation we suggest to use the smallest index, like in Bland's rule for the simplex method. Proof. If the condition in Line 2 is fulfilled, the covector y is surely infeasible. Since, in a basic covector graph, all the coordinate nodes in D are incident to a basic apex via a negative edge, the condition in Line 3 implies that y is totally infeasible. The claim follows as feasible is the opposite of infeasible.
Algorithm 4 successively constructs basic covector graphs with Algorithm 2 until the result is feasible or totally infeasible.
At first, it is not clear that this terminates. We consider a run of this algorithm starting with the arbitrary basic covector y 0 . Let y k be a basic covector which is assigned in Line 5 of Algorithm 4 during this run. By Corollary 32, there is a sequence of covectors y 0 , y 1 , . . . , y k (most of them not basic) which would occur as intermediate results by using Algorithm 1 instead of Algorithm 2. if there is a non-basic apex node only incident with a negative edge then 3: if there is a negative edge incident with δ then r ←non-basic apex in y which is incident to D via a negative edge such an r exists if y is infeasible, see Algorithm 3 Line 2 and 3 4: p ←basic apex of y of the same shape as r 5: Let E be the graph on (D ∪ {δ}) [n] whose set of edges are exactly those which are contained in all the graphs y 0 , . . . , y k . Denote by E(δ) the connected component in E containing δ and by I(δ) the subset of the coordinate nodes in E(δ).

Proposition 36.
There is an apex node j ∈ [n] and an h ∈ [k] such that j has degree 2 in y 0 and degree 1 in y for h. In particular, y k = y 0 .
Proof. Since y 0 is connected there is an apex node j in y 0 which is connected to I(δ) and to (D ∪ {δ}) \ I(δ). The covector y 0 is basic and j has degree 2. Therefore, j is a basic apex.
If both edges incident with j are contained in E this would contradict the definition of I(δ). Therefore, there is an h so that the edge e h , which is removed in step h, is incident with j. Since the edges of E are contained in all the graphs y 0 , . . . , y k , the edge e h has the same δ-distance in y h as in y 0 . With Lemma 23 and 28, the edge e h is even and negative in y h . Furthermore, the positive edge incident with j is incident with I(δ).
For h, no edge in E(δ) is removed. Assume there would be an 0 h so that f 0 is incident with j. Then f 0 would be even in y 0 . However, this contradicts Lemma 28. Subsuming, j has degree 1 in y for h.
Remark 37. Geometrically, for the realizable case the set E(δ) defines a lower dimensional tropical hyperplane, which contains all the points y 1 , . . . , y k+1 . It is given by the intersection of the boundaries of the tropical halfspaces which correspond to the apex nodes which are internal nodes of E(δ).
For the non-realizable case, we only give the following rough upper bound. It is just the number of |D|-tuples analogously to the number of possible bases for the classical simplex method. We will give a better upper bound for the realizable case in Theorem 75.
Theorem 38. Algorithm 4 terminates after less than n |D| iterations. Proof. By Proposition 36, any two basic covectors arising in Line 5 are distinct. Furthermore, the assignment of y as Cramer covector in that line yields an injective function from the |D|-subsets of [n] to the basic covectors. This implies the claim.
Remark 39. In Algorithm 4, we could continue the iteration until only δ is incident with non-basic apices via negative edges. For other basic covectors, one still can apply Algorithm 2 to construct a new basic covector.

Finding a basic covector and even more
Until now, we assumed a basic covector to be given. Indeed, one easily finds a basic covector for each δ ∈ [d], namely the Cramer covector C(∅, {δ}). Algorithm 4 allows us to determine a feasible or totally infeasible covector, which is even a basic covector. This covector lives in T | (D∪{δ} . If it is feasible then we are finished as we are only looking for a feasible covector in a contraction. However, a totally infeasible covector in T | (D∪{δ} is not enough to guarantee the infeasibility of T . On the other hand, we demonstrate how one can construct a new basic covector in a contraction with a bigger support from a totally infeasible basic covector y = B (N, D, δ).
This is based on the following proposition. Proof. From the discussion above the theorem, we know that the covector in Line 20 is indeed a basic covector. By Theorem 38, y is a feasible or totally infeasible basic covector after Line 9, and Lemma 35 shows that CheckFeasible correctly determines the feasibility status of a basic covector. In each iteration of the while-loop in Line 4, the algorithm either terminates or D is increased by one element.
Since D is a subset of [d] with at most d − 1 elements, the claim follows.
Remark 42. The only passages in the algorithm where the data of the GFSTM is needed are the assignments of the Cramer covectors. In the realizable case, the input for Algorithm 5 is supposed to be given as a signed system (A, Σ). We discuss this further in Section 6.1.
In the non-realizable case, we assume to have an oracle which returns a Cramer covector for each fixed δ, D and N . Recall their guaranteed existence by Proposition 19.
The requirements on this oracle should be further investigated in the context of matching ensembles [55]. end if at this point y is guaranteed to be feasible or totally infeasible 10: if check = FEASIBLE then 11: return "feasible",y 12: end if at this point y is guaranteed to be totally infeasible 13: if D ∪ {δ} = [d] then 14: return "infeasible",y • or a totally infeasible covector, but not both.
Proof. By Theorem 41, Algorithm 5 returns a feasible or a totally infeasible covector. If the result is totally infeasible, Lemma 17 implies that the STM does not contain a feasible covector. This implies the claim.
We demonstrate the course of the algorithms on two Examples from [42,19] which are listed in Table 1. They are derived from two non-regular triangulations of ∆ 5 × ∆ 2 and ∆ 3 × ∆ 3 ; the connection between the covector graphs and triangulations is further described in Section 4.
The rows contain the covectors corresponding to the maximal simplices. The jth entry of a tuple contains the coordinate nodes which are adjacent to the apex node j. This is the compact form to write a covector, which was also used in, e.g., [20,8].
Example 45. Figure 11 shows a sequence of basic covector graphs from the GFSTM given by the non-regular triangulation on the left of Table 1 and the sign matrix the electronic journal of combinatorics 27(2) (2020), #P2.51 The last four covectors are depicted in Figure 11. The non-regular subdivision is visualized in Figure 12 as a mixed subdivision via the Cayley trick. The black lines form "tropical pseudohyperplanes" in the sense of [8, §5] and [43,Theorem 4.2] which are dual to the mixed subdivision. The red points mark the cells which correspond to the basic covector graphs shown in Figure 11.
Example 46. Furthermore, we demonstrate a run of Algorithm 5 on the GFSTM given by the non-regular triangulation T on the right of Table 1 and the sign matrix We start the algorithm with δ = 1. The maximal covectors in the contractions are found by removing the nodes in [d] \ (D ∪ {δ}) and taking only those resulting graphs without isolated apex nodes.

Signed tropical matroids
We considered a special class of signed tropical matroids to describe the algorithm in the previous section. Now, we introduce general signed tropical matroids. This relies on the notion of polyhedral subdivisions. We give a short introduction to the necessary polyhedral notions in the Appendix B.1 and refer to [68,19] for further reading.   Table 1: Non-regular triangulations of ∆ 5 × ∆ 2 and ∆ 3 × ∆ 3 from [42,19]. The rows contain the covectors of the maximal simplices. The jth entry of a tuple contains the coordinate nodes which are adjacent to the apex node j.
For a matrix A ∈ R n×d , it was shown in [20, Theorem 1] that the collection of covectors is in bijection with the cells in the regular subdivision of ∆ n−1 × ∆ d−1 with height function A. This was generalized in [27] and in [45] to matrices with ∞ entries. For those, the collection of covectors defines a regular subdivision of a subpolytope of ∆ n−1 × ∆ d−1 , see [45,Corollary 34].
While regular subdivisions are not characterized by purely combinatorial axioms, one can use the defining properties of a polyhedral complex to describe not necessarily regular subdivisions. Hence, we start with a not necessarily regular subdivision of a subpolytope of ∆ n−1 × ∆ d−1 and derive a signed tropical matroid from this. Note that non-regular triangulations of ∆ n−1 × ∆ d−1 exist if and only if (n − 2)(d − 2) 4, see [19, Theorem 6.2.19].

Axiom systems
Let R be a subdivision of a subpolytope F of ∆ n−1 × ∆ d−1 . We identify subpolytopes of ∆ n−1 × ∆ d−1 and therefore the cells in R with subgraphs of the complete bipartite graph K d,n via the identification of the vertex (e j , e i ) with the edge (i, j) ∈ [d] × [n]. In this spirit, we define conv(G) = conv {(e j , e i ) | (i, j) ∈ G} for each subgraph G of K d,n . Since all these graphs share the same node set [d] [n], we will often even identify them To emphasize the dependence on n and d we also say that (S, Σ) is a signed tropical (n, d)-matroid. We will often identify S with the subdivision corresponding to the set of bipartite graphs. The bipartite graphs are the covector graphs or just covectors in analogy with classical oriented matroids. An STM is realizable if it is induced by a matrix A, which means that the covector graphs are generalized covector graphs in the sense of Definition 5 or, equivalently, that the polyhedral subdivision corresponding to S is regular. In this case, we will also use the notation S(A). Note that the collection of generalized covectors graphs in the realizable case fulfills all the properties which are listed in the last definition.
As in the realizable case, we consider the entries of Σ as signs on the edges; we call an edge with + a positive edge and with − a negative edge. Apex nodes are the nodes in [n] and coordinate nodes are those in [d].
Remark 48. For each apex node j ∈ [n], the set of covector graphs, in which j is only incident with negative edges, and the set of covector graphs, in which j is only incident with positive edges, form complementary pseudohalfspaces in the sense of [42, Definition 5.5.8].
Example 49. The three full-dimensional simplices in the regular subdivision of ∆ 1 × ∆ 2 in Figure 14 correspond to the three trees on [2]  The vertex of ∆ 1 × ∆ 2 with label (2, 1) is hidden in the figure.
On the other hand, Figure 15   In Section 5, we describe a way to modify a given signed tropical matroid (S, Σ) to obtain a generic full signed tropical matroid (T , Ξ) which is trimmed in the sense of Assumption 1.
In the generic full case, we have a particularly nice characterization of the bipartite graphs which are trees and correspond to the maximal cells in the subdivision. Then Definition 47 boils down to the conditions of [7, Proposition 7.2]. This was used for introducing a GFSTM in Definition 12 and justifies the terminology. Figure 15: A non-regular subdivision of ∆ 3 × ∆ 3 . It is visualized as a non-regular mixed subdivision of 4∆ 3 . This picture was created with the polymake extension tropmat by Silke Horn [41].

Matroid operations and feasibility
The following operations are useful for inductive arguments and yield the polyhedral methods to examine the boundary strata of the tropical projective space.
Analogously to classical oriented matroids one can define a tropical variant of the operations deletion and contraction, like in [8]. In the following, let (S, Σ) be a signed tropical (n, d)-matroid For an apex node j ∈ [n], the deletion S \j is the set of graphs which arise from the graphs of S by deleting the node j and the incident edges. These graphs describe the cells on the face {e | ∈ [n] \ j} × ∆ d−1 of ∆ n−1 × ∆ d−1 . We delete the jth row in the sign matrix. If (S, Σ) is induced by a signed system (A, Σ) then the operation corresponds to deleting the jth row of A.
For a coordinate node i ∈ [d], the contraction S /i is the set of graphs which arise from those graphs of S for which i is isolated by deleting the node i. These graphs describe the cells on the face ∆ n−1 × { e | ∈ [d] \ i} of ∆ n−1 × ∆ d−1 . We delete the ith column in the sign matrix. If (S, Σ) is induced by a signed system (A, Σ) then the operation corresponds to deleting the ith column of A.
By construction, a deletion and a contraction of an STM is again an STM.
Remark 51. Note that the formerly described operations are also related to classical matroid operations since products of simplices are matroid polytopes in the classical sense; see [33]. However, there is no direct translation and one should be careful not to confuse the tropical with the classical operation.
Then the generalized covector graph of x is the same as the proper covector graph of the point z ∈ R d with The other inclusion follows by setting the coordinates of isolated coordinate nodes to ∞.
Recall that a signed system (A, Σ), with coefficient matrix A ∈ T n×d min , is feasible if and only if there is a point x ∈ TA d which fulfills the corresponding homogeneous tropical inequality system. Otherwise, we call it infeasible.
With Lemma 52, this translates to the following for systems with finite coefficients.

Corollary 53. A signed system (A, Σ), with finite coefficients A ∈ R n×d , is infeasible if and only if every covector graph in every contraction is infeasible.
This motivates the definition of the feasibility of a full STM as generalization of the feasibility of a tropical linear inequality system. A full STM (T , Σ) is feasible if there is a contraction which contains a feasible covector graph, otherwise we call it infeasible.
We do not give the definition of feasibility for a general non-full STM, as a more axiomatic approach for collections of generalized covectors would be necessary. Our suggestion is the following: An STM is feasible if there is an extension that is feasible. For this, it would be nice to show that this is indeed the case if and only if all extensions are feasible.

Polyhedral constructions
In the last section, we introduced the concept of signed tropical matroids as a natural generalization of tropical linear inequality systems. To make the algorithm developed in Section 3 applicable to all signed tropical matroids, we provide the three concepts refinement, extension and splitting. As infinite coordinates and genericity often impose additional obstacles in tropical geometry, our techniques resemble those used in [4] and [43]

Refinement
The graphs in an STM (S, Σ) have a particularly simple form if S is a triangulation. Recall from Definition 50 that, in this case, we call the STM generic and [19, Lemma 6.2.8] tells us that all the graphs are forests and, especially, that the maximal polytopes in the subdivision are represented by trees. A method to construct a generic STM is by refining our subdivision S. This means that we construct a triangulation T such that each polytope in S is the union of simplices in T . Hence, every covector graph of T is a forest and contained in a covector graph of S. This idea is implicitly used in [4] in the perturbation of tropical linear inequality systems.
Since we want to preserve the feasibility of our system, we choose to refine our subdivision with heights defining a lexicographic triangulation. By [19,Definition 4.3.8], the lexicographic triangulation for a point configuration with k ∈ N points is the regular triangulation with heights ψ i · c i for i ∈ [k] where (ψ 1 , . . . , ψ k ) ∈ {−, +} k is a sign vector and c is a sufficiently big positive number. Now, let the matrix (m ji ) = M ∈ R n×d contain the heights for a lexicographic triangulation of ∆ n−1 × ∆ d−1 for which we only require that the sign pattern of M is the negative of the sign pattern of Σ and that m ji = ∞ ⇔ σ ji = •.
By In the realizable case, [19,Lemma 2.3.16] implies that the height matrix corresponding to the refined subdivision is obtained by adding a small multiple of the perturbation matrix M .
The refinement T of the subdivision S with the matrix M fulfills the following: Lemma 54. Let G be a maximal covector graph of S and G 1 , . . . , G k the maximal covector graphs of T contained in G. Then G is infeasible if and only if G is infeasible for every Proof. If G is infeasible, there is an apex node which is only incident with negative edges. Since each G is a connected subgraph of G without isolated nodes it also contains an apex node which is only incident to negative edges. Hence, it is infeasible. Now, let G be feasible. For the covector graph G we define the matrix M | G by replacing every entry m ji of M by ∞ for which (i, j) is not an edge of G. By construction, the polytope in the subdivision S corresponding to the covector graph G is split up in those polytopes whose corresponding graphs occur as maximal covector graphs in the covector decomposition with respect to M | G . Since no apex node in G is only incident with negative arcs, the signed system (M | G , Σ) has the feasible point 0 by the choice of M . Then the maximal covector graphs which contain the covector of 0 are feasible. This implies the existence of a feasible covector. A + ε · M = −εc 1 −εc 2 εc 3 −εc 4 −2 + εc 5 −εc 6 and where ε > 0 is sufficiently small. Figure 16 shows We also apply the perturbation technique to get a description of a Cramer solution in the non-generic case. Proof. Let A be any matrix which induces a triangulation that refines the subdivision induced by A in the sense of [19,Lemma 2.3.16]. Then there is a covector graph H with respect to A, which contains G = C A (J, I).
By Proposition 4, each matching in H is a minimal matching. Since H contains matchings on (I \ {i}) J for all i ∈ I and I (J ∪ {j}) for all j ∈ [n] \ J, it contains all minimal matchings on these vertex sets by the same Proposition. Therefore, we have to show that H = C A (J, I).
Since G is connected, so is H, and we can apply Lemma 9 to construct a point x ∈ R d which has H as covector graph with respect to A.
Fix a coordinate node δ ∈ I. For any i ∈ I \ {δ}, the path from δ to i is the symmetric sum of the perfect matchings in G on (I \ {δ}) J and (I \ {i}) J. With Lemma 9, we obtain that x i − x δ is the difference of the values of the two matchings. As these are minimal matchings, the values equal the determinants. This implies x i − x δ = tdet(A J,(I\{i}) ) − tdet(A J,(I\{δ}) ). As x is defined by its covector graph only up to addition of multiples of 1, the claim follows.

Extension from a subpolytope to ∆
We introduce a construction which allows us to reduce the general case, where the finity graph is a subgraph of K d,n , to the complete bipartite graph. This is particularly important as we define the algorithms in Section 3 only for a full STM. We give the justification for why we do not lose generality, and provide technical details for later reductions. We achieve this again by polyhedral means. The following technique was also applied to tropical oriented matroids in [43].
Let F be a subpolytope of ∆ n−1 × ∆ d−1 and S a subdivision of F. An extension of S is a subdivision T of ∆ n−1 × ∆ d−1 which coincides with S on F.
Placing triangulations provide a tool to construct an extension of a subdivision, see [19,Lemma 4.3.2]. In particular, for each subdivision of a subpolytope of ∆ n−1 × ∆ d−1 there is always an extension. To resolve the • entries of the sign matrix, we just replace them by +. We denote the modified sign matrix by Ξ. Note that the (in)feasibility of the covector graphs in S is preserved in T .
We summarize these considerations. We study in more detail how an extension can be produced in the realizable case. [19,Lemma 4.3.4] shows that a placing triangulation can be obtained by taking a rapidly increasing height function. Namely, if there are k < n · d entries with ∞ in A ∈ T n×d min , let Ω = (Ω 1 , . . . , Ω k ) be a vector of "big" numbers. We require that We will calculate with the entries of Ω just formally and denote the resulting matrix by A(Ω).
Remark 58. One can think of these Ω as artificial infinities. One approach to formalize this is by successively adjoining elements to R. Here, the order extends the natural order on R such that Ω is the biggest element in each extension step. In [4, §3.2], a similar technique with "infinitely small" values is used to reduce the case with −∞ to the finite case.
To show that the matrix A(Ω) induces an extension of the subdivision of F by A, we iteratively replace the ∞ entries by the entries of Ω. Let A 1 be obtained from A by replacing one ∞ entry, which belongs to the edge e, with a positive number Ω 1 which is bigger than the sum of the absolute values of the finite entries of A. Consider an arbitrary maximal covector graph G with respect to A and let µ be a perfect matching on D N ⊆ [d] [n] in G. By Proposition 4, the matching µ is minimal with respect to the coefficients of A 1 . Hence, by definition of Ω 1 , the edge e cannot be contained in µ. Since this is true for any matching in G, again by Proposition 4, the graph G is also a covector with respect to A 1 . By iteratively inserting Ω 1 , Ω 2 , . . . , Ω k for the ∞ entries, this implies that the subdivision induced by A(Ω) extends the subdivision induced by A, since a polyhedral complex is given by its maximal cells. Furthermore, if A induces a triangulation, so does A(Ω).
We say that the signed system (A(Ω), Ξ) extends the signed system (A, Σ). Proof. Within the proof, we denote A(Ω) by ( a ji ) = A. Fix an arbitrary x ∈ TA d . If the generalized covector graph G A (x) is infeasible, there is a j 0 ∈ [n], which is only incident with negative edges in G A (x). Let I be the set of coordinate nodes adjacent to j 0 . Since the entries of A are finite, G A (x) is a proper covector graph on the support of x. Hence, using the definition of the covector graph, we see that x fulfills the inequalities Each entry a j 0 i with i ∈ I equals a j 0 i = ∞ because (j 0 , i) is negative. With a j 0 a j 0 for ∈ supp(x) \ I, we obtain This implies that G A (x) is infeasible.    1, Ω 1 + 1, 1, 1). The corresponding covector graphs are left and right in Figure 18. The relation between the left and middle covector illustrates Lemma 59.

Splitting apex nodes
To apply the algorithms that will be presented in Section 3 and 6 to an STM (A, Σ), we require that each row of Σ contains at most one negative entry. We call this property trimmed.
In the realizable case, this can be obtained very easily. Through the conversion for arbitrary c 0 , c 1 , . . . , c m ∈ T min each tropical inequality system is equivalent to a system for which the minimum on the bigger side of the new inequalities contains only one term.
Here, the number of inequalities is increased by a factor which is at most the number of coordinates, see Figure 19.  Figure 19: An apex node whose corresponding row in the sign matrix has three negative entries is replaced by three apex nodes.
This splitting of apex nodes was similarly used in [52, §7.4].
For the non-realizable case, we use a more complicated polyhedral construction, which uses local changes. In two steps, we obtain a bigger STM which mimics a splitting of the inequalities in its covector graphs. A similar technique was used in [43, §7.2]. We know how to extend a non-full STM, by Subsection 5.2, and can assume that the STM is full.
Lemma 61. The preimage under π of a simplex in ∆ n−1 × ∆ d−1 , given by the bipartite Proof. Let H be any spanning subgraph of K d,n+k−1 . This defines a subpolytope of ∆ n−1+k−1 × ∆ d−1 . A convex combination of its vertices is given by (i,j)∈H λ i,j (e j , e i ) with (i,j)∈H λ ij = 1. With the linearity of π, the projection of this point is (i,j)∈H,j n−1 λ i,j π((e j , e i )) + (i,j)∈H,j n λ i,j π((e j , e i )) which evaluates to Such a point lies in conv { (e j , e i ) | (i, j) ∈ G} if and only if, for λ ij = 0, With the linearity of π, the claim follows.
Fix an arbitrary ε > 0 and let i 1 , . . . , i k be the indices where the nth row of Σ is '−'. We define the matrix (m ji ) = M ∈ R (n+k−1)×d by m ji = ε for j n, i = i j 0 else .
We refine the subdivision of ∆ n−1+k−1 × ∆ d−1 , which we just constructed, with this matrix M to obtain a subdivision S. Additionally, we replace the nth row of Σ with k copies of this row, where we replace all the − entries in every row j for j > n − 1 by + except for (j, i j−(n−1) ), where we keep the −.
Finally, the following is similar to Lemma 54 and justifies the construction. Let (S, Σ) be the original and ( S, Σ) the modified STM.
Proposition 62. Let G be a maximal covector graph of S and G 1 , . . . , G m the maximal covector graphs of S which is mapped to G by π. Then G is infeasible if and only if G is infeasible for every ∈ [k].
Proof. Let G be the covector graph from Lemma 61 which is obtained by adding k copies of the apex node n. We define the matrix M | G by replacing every entry m ji of M by ∞ for which (i, j) is not an edge of G.
By construction, G 1 , . . . , G m are exactly the maximal covector graphs with respect to M | G .
Since feasibility is a property which can be checked independently for all apex nodes, it suffices to consider the apex node n in G resp. n, . . . , n + k − 1 in G 1 , . . . , G m .
Hence, the rows n, . . . , n + k − 1 of M | G are, up to reordering of columns, of the form where each 0 entry in the left part of the matrix is assigned a − in Σ. If G is infeasible, the right part of the matrix does not contain any columns and the corresponding inequality system is infeasible.
Otherwise, 0 is a feasible point. Therefore, at least one of the covectors G 1 , . . . , G m is feasible.
In this way, we can construct a signed tropical matroid ( S, Σ) such that the number of apex nodes is bounded by n · d and every row of Σ contains exactly one negative entry.
In the realizable case, this translates to the following.

Feasibility of signed systems
We developed an algorithm to examine if a signed tropical matroid contains a feasible covector. The clearest form of the algorithm is given in Section 3 for a trimmed GFSTM. We saw in Section 5 that each STM can be transformed into a trimmed GFSTM with the same feasibility status.
In this section, we demonstrate that the modifications are not necessary under the assumption of realizability. Furthermore, we derive a stronger upper bound on the runtime of the algorithm. As the algorithm terminates with an arbitrary solution, not necessarily the one with maximal support, we discuss how this can be determined in Appendix C. There, we also relate the outcome of the algorithm to the associated mean payoff game as explained in Appendix A.3.
In this section we assume that (A, Σ) is a trimmed signed system. We can always transform a general signed system to a trimmed one with Equation 4. Note that this is not a restriction on the corresponding inequality system but merely a requirement on the representation.

Solving general signed systems
The part in Algorithm 5, where the data of the STM is invoked, is the computation of a Cramer covector. For a general non-full STM, the Cramer covectors can be quite degenerated as one can see in Figure 18. However, Proposition 70 will ensure that it carries all the necessary information. While we invoked an oracle based on the existence of a Cramer covector following from Proposition 19 in the non-realizable case, we can explicitly determine a Cramer covector as the covector graph of a Cramer solution (2) in the realizable case. Furthermore, the role of a "totally infeasible" covector is not so clear as Lemma 17 shows the infeasibility implication only under the condition, that the STM is generic and full. However, we will see that this termination criterion can be replaced by a similar condition. Note that we modify the iteration slightly in the spirit of Remark 39. We continue the iteration until no node in D is incident with a negative leaf.
Again, we start with an element δ ∈ [d], D = ∅ and N = ∅. As long as there is an apex node in [n] \ N of degree 1 in y incident to D via a negative edge this apex enters the basis N and the apex of the same shape is removed from N . Note that in the non-generic case there can be non-basic apex nodes of degree 2. However, since we assume that the STM is trimmed they cannot be incident with more than one negative edge. After this iteration two cases can occur. If the result is already feasible, we terminate and return this feasible point. Otherwise, there is still an apex node of degree 1 incident with a negative edge. By construction, it cannot be adjacent to D and hence it is adjacent to δ. If the Cramer covector is already defined on the whole of [d] this yields a point which certifies infeasibility. If this is not the case, we can add δ to D and obtain a covector graph which is defined on a bigger set of coordinates. Due to infinite entries of A, its coordinates in D ∪ {δ} can be infinite, though.
Remark 66. An alternative way to start the algorithm in the realizable case is by adding d inequalities of the form x i M i for sufficiently small numbers M 1 , . . . , M d ∈ R d . Here, one can pick numbers with are smaller than d times the minimal entries of A. The intersection if these special inequalities also yield a starting basis.
To deduce the correctness of Algorithm 6, we relate the sequence of points in the iteration in the non-generic non-full situation with a run of Algorithm 5.

Correctness and implications of the algorithm
To show the correctness of Algorithm 6, we reduce it to the correctness for full generic signed systems by exploiting the techniques established in Section 5. For this, fix an arbitrary trimmed signed system (A, Σ) and subsets J ⊆ while TRUE do 6: while there is a non-basic apex node of degree 1 in y incident to D via a negative edge do 7: r ←the apex fulfilling the while-condition 8: p ←basic apex of y of the same shape as r p is an element of N . end while at this point, δ is the only coordinate node which can be incident with an apex node of degree 1 via a negative edge 12: if δ is incident with an apex node of degree 1 via a negative edge then 13: if |D| = d − 1 then  Combining these two lemmata yields the desired relation between the covector in the original and the modified signed system.
Proposition 70. Each apex node of degree 1 in C A (J, I) also has degree 1 in C A(Ω) (J, I) and is incident with the same coordinate node.
Proof. By Lemma 67, the edge is also an edge of C A(Ω) (J, I). Furthermore, by Lemma 69, it is an edge of C A(Ω) (J, I).
Now, we gathered the necessary tools to prove termination and correctness.
Theorem 71. Algorithm 6 computes a covector graph, which certifies the feasibility or infeasibility of the signed system (A, Σ). By the iteration condition of the while-loop in Line 6, the apex node r is not in N , it is of degree 1, and it is incident with a negative edge (i , r ) in C A (N , D ∪ {δ}). Proposition 70 implies that r also has degree 1 and is incident with (i , r ) in , since p is chosen just to match the shape of r , independent of the covector graph.
Hence by induction, C A(Ω) (N , D ∪ {δ}) is a basic covector for all ∈ [k]. By Theorem 38 and Remark 39, there is an h ∈ N so that in C A(Ω) (N h , D ∪ {δ}) no non-basic apex node is incident with D via a negative edge. Proposition 70 yields that no non-basic apex node of degree 1 is of degree 1 in C A (N h , D ∪ {δ}). Therefore, this covector graph is either feasible, which means that we are finished, or δ is incident with an apex node j of degree 1 via a negative edge. In the latter case, again with Proposition 70, this also holds in C A(Ω) (N h , D ∪ {δ}).
If Example 73. Consider the signed system (A, Σ) with Note that the last two rows are obtained by splitting the inequality We want to execute Algorithm 6 for (A, Σ) and start with δ = 2. The iterations are shown in the table. We choose j = 1 as first entering apex. The final result (−5, 2, 4, −4) is a feasible point for the signed system.

Refined analysis of the runtime
For the abstract setting in Section 3, we gave only a rough upper bound on the number of iterations. For the realizable case, we obtain a better bound by combining Lemma 11 with the following Lemma. We show that Algorithm 6 is pseudopolynomial and only depends on the combinatorial structure of a triangulation of ∆ n−1 × ∆ d−1 .
Lemma 74. Let x ∈ T d min such that y is the covector graph of x , which can be constructed from A by Lemma 9. For each ∈ [k], we get the inequalities Proof. Lemma 9 allows us to express x −1 resp. x i − x δ as a sum along the path from δ to i in y −1 resp. y , with the weights given by A.
For each i in the connected component C −1 of δ in y −1 −e −1 , there is exactly one path from δ to i and it is the same in y −1 and y . Therefore, we obtain x −1 Then the path from δ to i in y −1 contains e −1 and the one in y contains f . Denote the paths by ρ −1 and ρ . Their symmetric sum is a subgraph of y −1 + f and is a union of cycles. Since y −1 is a tree, y −1 + f contains only the elementary cycle formed by f . It decomposes into two matchings µ 0 and µ 1 where one of them, without loss of generality µ 0 , contains both the edges e −1 and f by the comparability condition in Definition 12.
In the formula for Lemma 9, odd edges get a positive sign and even edges a negative sign. Furthermore, we see that ( is given by the difference of the sums over the two matchings µ 0 and µ 1 . By Lemma 28, f is odd in y . This implies Finally, Proposition 4 yields that the difference (j,i)∈µ 0 a ji − (j,i)∈µ 1 a ji is positive, since µ 1 is contained in the covector graph y and hence minimal.
where at least one inequality is strict for each .
If A is an integer matrix, then the points z have only integer entries. Hence, for all ∈ [h − 1], the difference z +1 − z is a non-negative integer vector with at least one non-zero entry. We deduce i∈(D∪{δ} We conclude the following. We deduce the following by combining the theorem with Remark 65 and the observation that D is increased by one element at each step of the while-loop in Line 65 of Algorithm 6. Corollary 76. Algorithm 6 determines a certificate of feasibility or infeasibility of a tropical linear inequality system in O(d 3 (n + d 2 )ω) iterations.
Note that a similar idea is used to give bounds on the runtime in [10, §5.2] by using [28,Theorem 3.3].
To examine the parameter ω further, recall that each matrix in R n×d defines a height function for a regular subdivision of ∆ n−1 × ∆ d−1 .
The set of all matrices which induce the same regular subdivision defines an open polyhedral cone. The collection of these cones is a complete fan, the secondary fan. For an introduction to secondary fans see [19, §5].
Since the secondary fan is the normal fan of the secondary polytope, see [34, §7] or [19, §5], which is a rational polytope for ∆ n−1 × ∆ d−1 , every cone contains a rational and, hence, an integer vector.
Inspired by Theorem 75, we leave it as future work to give bounds on the minimal integer vectors in the cones of the secondary fan of ∆ n−1 × ∆ d−1 . This might reveal either a good upper bound on the runtime of Algorithm 6 or special classes of instances which are particularly hard. Furthermore, it is interesting to consider the cones in the secondary fan which contain the weight functions describing parity games, see Subsection A.3.

Further questions
In the last section, we came up with an upper bound for the number of iterations in terms of integer vectors in the secondary fan of ∆ n−1 × ∆ d−1 . This raises the question to determine lower or upper bounds on the maximal entry of minimal representatives in each cone of the secondary fan; such a study was started in [9]. Upper bounds that are polynomial in n and d would imply a polynomial runtime of Algorithm 6. In general, we propose the length of such a shortest vector as complexity measure for subdivisions. In this sense, our analysis connects the geometric complexity with the algorithmic complexity. Considering the secondary fan of ∆ n−1 × ∆ d−1 as an analogue of the space of all realizations of a tropical oriented matroids, cf. [57], it is an interesting question to examine the complexity to determine a minimal realization. The latter problem could be solved through an adaptation of the famous algorithm in [50] for the shortest vector problem.
To justify this complexity measure, one should be able to show that cones without 'short' integer vectors correspond to hard instances for parity games, respectively the simplex method provided e.g. in [29].
It needs to be clarified how the complexity of Algorithm 5 can be measured for nonregular subdivisions. Considering non-regular subdivisions which can be constructed from a regular subdivision by a finite sequence of flips, one can ask for the running time of the algorithm in terms of a weight matrix of the regular subdivision and the encoding of the flips. This gives a notion of the complexity of a subdivision in the non-regular case.
Furthermore, we remark that the algorithm defines a direction on the cells of the subdivision of a product of two simplices. This orientation is independent of an objective vector and also defined for non-regular subdivisions. It would be interesting to see how the orientation provides a tool to study the topological and geometric properties of this polyhedral complex in a similar vein as a discrete Morse function.
Finally, one should study the similarity between the presented algorithm and the tropicalized simplex method in [5]. This allows one to exploit the combinatorics of a product of two simplices to study the complexity of the classical simplex method. In this vein, we wonder if there is a direct connection between the diameter of a polytope and the length of integer vectors in cones of the secondary fan of ∆ n−1 × ∆ d−1 .

A Related algorithmic problems
The feasibility problem for tropical linear inequality systems is the problem of finding a feasible point of the system. We highlight the relation of this problem to scheduling, mean payoff games and classical linear programming.
The complexity of the decision problems for scheduling AND-OR-networks with arbitrary coefficients and mean payoff games is known to be in NP ∩ co-NP and even more in UP ∩ co-UP, see [46,69,24,52], but there is no polynomial time algorithm known. This was also unclear for classical linear programming while the containment in the complexity class NP ∩ co-NP follows easily from linear programming duality. Finally, Khachiyan [48] and, not long after, also Karmarkar [47] provided polynomial-time algorithms. However, it is still unclear if there is a pivoting rule for the simplex method for which it runs in weakly or even strongly polynomial time, see, e. g., [18,12,49]. The close relations between tropical linear programming, mean payoff games and classical linear programming, in particular the simplex method, are demonstrated in [62,2,5,4].

A.1 The simplex method
In [5], it was shown how a run of the classical simplex method translates to a run of a tropical simplex method under some technical assumptions on the input and the requirement that the pivoting rule is combinatorial. This led to a new algorithm for solving mean payoff games presented in [4] which is polynomial time equivalent to the simplex method with the given pivoting rule. A reduction from mean payoff games to linear programming was already given in [62]. However, this approach requires exponentially large coefficients which results in a pseudopolynomial running time due to cost of the arithmetic operations. This is resolved in the approach in [5] by considering only the signs determining the pivoting which can be computed directly from the input data.
We give a short introduction to the classical simplex method [18]. We present it as an algorithm to determine the feasibility of a classical linear inequality system. Our exposition is inspired by [53, §4.5].
It is important to observe the similarity between this variant of the simplex method and the algorithms in Section 3, in particular Algorithm 2. To obtain that algorithm as a tropicalization of the following variant of the simplex method, one would have to ensure that x 0.
The feasibility problem is the task to find an x ∈ R d which fulfills the system The following is meant to highlight that we can consider it as a method which traverses the vertex-edge graph of the affine hyperplane arrangement given by the equations a j ·x = b j for j ∈ [n]. Here, a j is the jth row of A. At each vertex, one is given a rule for choosing the consecutive vertex in a way that guarantees termination.
We assume that the system (A|b) is generic by which we mean that the d-sets J ⊆ [n] are in bijection with the points z which fulfill the subsystem A J z = b J with row indices in J. Start with an arbitrary d-set J 0 from [n] and define x 0 := A −1 J 0 b J 0 . Then [n] is partitioned into three sets, namely J 0 , K + 0 := {j ∈ [n] | a j x 0 < b j } and K − 0 := {j ∈ [n] | a j x 0 > b j }. The set J 0 denotes the basic variables and [n] \ J 0 = K + 0 ∪ K − 0 the non-basic variables.
Fix an arbitrary vector y 0 ∈ R n with y 0 0 whose support is J 0 , e.g. the characteristic vector of J 0 and define In this way, we obtain a primal linear program (P) and its dual linear program (D) By construction, y 0 is a feasible point of the dual linear program. Therefore, we can apply "Phase II" of the simplex method as we are already equipped with a feasible point. We want to consider it as a feasibility algorithm for (P). In particular, we want to reach a point x where K − = ∅. First, pick an index r 0 ∈ K − 0 . We want to change x 0 such that the index r 0 of the violated inequality enters the basis. This means that r 0 becomes a basic variable. Define and λ 0 as the value of this minimum. In the generic case, this minimum is attained at most once. If this minimum does not exist, the inequality system of (P) is infeasible. Note that the existence of this minimum is independent of the choice of c since the occurring numerators are the positive components of y 0 . Let j 0 be the i 0 -th element of J 0 considered as an ordered index tuple for the rows of A J 0 . Then j 0 is the leaving variable and J 1 = J 0 \ {j 0 } ∪ {r 0 } becomes the new basis. Now, we can restart the iteration. However, we keep c fixed and for 1 choose y iteratively in the following way: Theorem 77. The vector y 1 ∈ R n fulfills y 1 0, c = A y 1 and b y 1 < b y 0 .
Proof. Consider the linear equality system For z d+1 = 0 we get the solution y 0 J 0 = (A J 0 ) −1 c and for z i 0 = 0 we obtain the solution y 1 J 1 = (A J 1 ) −1 c (up to relabeling of the coordinates).
Furthermore, by multiplying both sides with A −1 J 0 from the left, we obtain This is equivalent to Choosing z d+1 as λ 0 , we obtain z i 0 = 0 and hence, y 1 J 1 = z [d]\i 0 . Moreover, Equation 6 implies y 1 0 and c = A y 1 . Finally, we obtain the difference Remark 78. We could change y after each iteration in a way that preserves the objective function value b · y and the support. This would require a new computation of c. All the statements, in particular the ones concerning the termination of the algorithm, would remain valid.

A.2 Scheduling with AND-OR-networks
Scheduling is concerned with the task of putting several jobs into an order in which they are worked through such that certain constraints are fulfilled. We give a short introduction to a special class of scheduling problems, namely AND-OR-networks. They occur in project management with particular temporal dependencies and can be used to model resource constraints. They were extensively studied in, e.g., [52]. In particular, that work contains a formulation of the precedence relations for the starting times with min-and max-inequalities. It also shows the polynomial time equivalence with a decision problem associated to a mean payoff game. We display a tropical geometric relation between the formulation of the set of vectors of starting times and the feasible region of a suitable tropical signed system. For other instances of scheduling problems which can be expressed in terms of tropical inequalities or equations see, e. g., [14, §1].
To explain an AND-OR-network we consider the planning of a project. The single jobs depend on each other and are in some precedence relation. We assume that a started job may not be interrupted. If a job can only start if all its predecessor jobs are finished, we call this an AND-constraint. If a job can start if at least one of its predecessors is finished, we call this an OR-constraint.
In Figure 21, one can see the Gantt chart of an AND-constraint and of an ORconstraint visualizing the dependence of the start and finish dates of jobs in these predecessor relations. Here, the dashed line denotes the starting time of the next job which is represented by the bottom bar, its predecessors forming the top three. The lengths of the bars illustrate the processing times. Notice that usually one requires the special starting condition that every job has to begin after some given point in time. In our model, this is covered by the fact that the expressions are additively homogeneous and hence, one can just mark one node and dehomogenize with respect to this coordinate.
For a broader introduction of scheduling with AND-OR-constraints see [52]. We give a formal definition to work with.

A.3 Mean payoff games
The connection between mean payoff games and tropical linear inequality systems, which we describe below, was established in [2]. A similar result implicitly occurs in [

A.3.1 Introduction to mean payoff games
We briefly introduce mean payoff games. Let G be a finite directed bipartite graph with node set V 0 V 1 , arc set A and a weight function ω : A → Q on the arcs. Without loss of generality, we can assume that V 0 = [d] and V 1 = [n]. We define a finite two-player game with full information on G, following [69]. At a node in V p , it is the turn of player p, for p ∈ {0, 1}. Starting from a fixed node k ∈ V 0 V 1 , the players alternatingly choose an outgoing arc of the current node and move to the tip of the arc. If a player cannot move because there is no outgoing are, she looses. As soon as the directed path formed in this way produces a cycle, the game finishes. The outcome of the game with starting point k is the mean weight of the arcs in that cycle. One player tries to maximize, while the other player tries to minimize the outcome of the game.
A positional strategy for player p ∈ {0, 1} is a subset τ p of the arcs A, such that each vertex in V p is either isolated or incident to exactly one outgoing arc in τ p . By [24], a mean payoff game has an optimal positional strategy.
Following [36, §7], we say that a position i ∈ V 0 is non-losing for player 1 if there is a strategy for player 1 such that the outcome of the game starting with i is non-negative. As we are only interested in the distinction between losing or non-losing this essentially amounts to considering energy games instead, see [23].
We construct a signed system from the bipartite graph G with the weights ω similar to Section A.2, but with switched signs.
Let |V 0 | = d and |V 1 | = n. Then we define matrices (a ji ) = A ∈ T n×d min and (σ ji ) = Σ ∈ {+, −, •} n×d by identifying each node in V 0 resp. V 1 with indices in [d] resp. [n] and x 2 a 1 a 2 Figure 23: A bipartite graph G depicting the mean payoff game from Example 84 and a non-losing strategy τ for player 1 owning the circle nodes. setting for v 0 ∈ V 0 and v 1 ∈ V 1 . Note that the former construction is reversible. We state the main theorem connecting tropical linear inequality systems and mean payoff games, see [2,Theorem 3.2].
Theorem 83. The set of non-losing states in V 0 for player 1 equals the set of those i ∈ [d] for which there is a feasible point x for (A, Σ) with x i = ∞.
We sketch one direction of an independent proof to demonstrate how this ties in with the properties of covector graphs. Let x ∈ T d min be a feasible point for (A, Σ) with support D = ∅. Since its covector graph G is feasible, each node in [n] is either isolated or incident with a positive edge in G. If an apex node j ∈ [n] is isolated in G, there is no arc between D and j in G either. For an isolated node, we pick no edge and for a non-isolated apex node, we pick one incident positive edge in G. This yields a strategy τ for player 1.
If a run of the game with starting node in D and fixed strategy τ for player 1 produces a cycle, it can only be a non-negative cycle by [45,Proposition 38]. This implies the claim.
Example 84. The signed system for the graph G from Figure 23 is given by The corresponding inequality system is x 1 − 1 x 2 , x 2 + 3 x 1 + 4. The non-losing strategy is obtained from the positive edges of the feasible point (0, −1).
We also relate the example for AND-OR-networks with the corresponding mean payoff game.

A.3.2 Parity games as special mean payoff games
Parity games [25,46] also are two player games with perfect information. However, we have no weights on the edges but on the vertices of the game graph. The vertices are assigned to the two players, even and odd. Even vertices are labeled by an even integer weight, odd vertices by an odd integer weight. Player even wins if the maximal number in the terminating cycle is even, otherwise odd wins.
Let M = d + n be the number of vertices in the two classes. We can consider a parity game as a special mean payoff game where the outgoing edges of a vertex with label k ∈ Z get the weight (−M ) k . Then the winning states of the so constructed mean payoff game for player 0 resp. 1 are exactly the winning states of player even resp. odd in the parity game. For more details see, e.g., [46].
Recently, it was shown in [17] that parity games can be solved in quasipolynomial time. Parity games have served as suitable instances to demonstrate the worst-case complexity of many algorithms, see, e.g., [29,39].

B Polyhedral prerequisities B.1 Polytopes and polyhedral subdivisions
The convex hull of a subset V = {v 1 , . . . , v k } ⊂ R d is defined as A polytope is the convex hull of finitely many points. A (affine) halfspace is a set of the form x ∈ R d a · x b , for some a ∈ R d and b ∈ R. A polyhedron is the intersection of finitely many halfspaces. By the Minkowski-Weyl theorem, polytopes are exactly the bounded polyhedra. The face of a polyhedron P is the intersection of P with a halfspace that does not contain an interior point of P . A subpolytope of a polytope P is the convex hull of a subset of the vertices of P . The convex hull of k affinely independent points, for k ∈ N, is a (k − 1)-simplex and is denoted by ∆ k−1 . In the following, ∆ k−1 stands for the convex hull of the k standard basis vectors e 1 , e 2 , . . . , e k in R k , which is an instance of a (k −1)-simplex. The product of two polytopes P ⊆ R d and Q ⊆ R n is the convex hull of the pairs (p, q) ∈ R d+n where p resp. q ranges over all the vertices of P resp. Q.
Hence, s 0 and s 1 are trees on the vertices [d] R, where R is the d-set formed by the old apex nodes of degree 2 and the new apex nodes which arose from replacing apex nodes of degree > 2. By Lemma 18, these trees are the union of (d − 1) × (d − 1)-matchings on [d] \ {i} R for all i ∈ [d]. From the uniqueness of the construction of s 0 resp. s 1 from t 0 resp. t 1 we deduce that s 0 and s 1 are also distinct. Therefore, there is an i ∈ [d] for which the perfect matching µ 0 in s 0 on [d] \ {i} R and the perfect matching µ 1 in s 1 on [d] \ {i} R disagree. We conclude that their symmetric difference contains a non-trivial simple cycle C. If we contract the nodes k j 1 , . . . , k j d j −1 back to the single node j for each apex node j ∈ [n] of degree d j > 2, then C becomes a cycle (where a node can appear multiple times). Since t 0 and t 1 are distinct, the cycle has to contain more than 1 apex node. Such a cycle is an alternating cycle in the sense of the comparability. This implies that t 0 and t 1 cannot both occur in the same triangulation.

C Maximal support and partial strategies
Since the tropical sum of two feasible vectors is feasible again, the union of the supports of the feasible points is the support of a feasible point, see also [2,Theorem 3.2]. We call this the feasible support. For the top left one, it finds a feasible point with support {3} but needs a second run to find the certificate that this is already the feasible support.
For the top right one, it finds a feasible point whose support has 2 elements and needs a second run to determine the feasible support {1, 2, 3}.
For the bottom left one, it needs only one run to determine that the support is just the empty set.
For the bottom right one, starting with δ = 1 and continuing with δ = 2 or δ = 3 yields feasible points with different supports. In the former case, we arrive at a basic point with support {1, 2, 3}. For the latter, the resulting basic point only has support {1, 3}. Moreover, we can use the former considerations to find a point, whose support is the feasible support, and a point which certifies that the feasible support cannot be bigger. The sufficiently infeasible covector graphs correspond to the generalized cycles with negative weight in [52]. We show how one can construct a sufficiently infeasible covector graph for a signed system. Cramer solution C A(Ω) ({1, 3, 4}, [4]) = (0, 0, Ω 4 , Ω 4 + 2) has a totally infeasible covector graph. From this, we can obtain the point x = (1, 0, Ω 4 , Ω 4 + 1) which has a sufficiently infeasible covector graph. This point also yields a sufficiently infeasible covector graph for the signed system (A, Σ 2 ). We conclude by interpreting a sufficiently infeasible covector graph in terms of mean payoff games. Recall the connection from Theorem 83. Extending the notions from Subsection A.3, we say that a coordinate node or an apex node is winning for the player on the coordinate nodes if there is a winning strategy meaning that the value of the game is negative when we start from such a position and this strategy is used on the coordinate nodes.
Let H be a sufficiently infeasible covector graph for the signed system (A, Σ) which negatively covers D ⊆ [d].
Theorem 93. The coordinate nodes in D and the apex nodes, whose support is contained in D, are winning positions for the strategy formed by the perfect matching µ consisting of negative edges contained in H.
Proof. Let N be the set of the apex nodes, whose support is contained in D. Then the player on the apex nodes is forced to go back to D on N . Furthermore, the arcs formed from µ only go to N by the properties of H. Since H is a covector graph, Proposition 4 implies with the construction of the mean payoff graph in Equation 11 that all cycles reachable from N and from D through µ are negative.
With Theorem 83, we deduce an extension of Lemma 17 for the realizable case. Proof. Theorem 93 implies that the player on the coordinate nodes has a winning strategy which secures a negative value. Therefore, there cannot be a feasible point z with supp(z)∩ D = ∅ since this would imply a non-losing strategy for the player on the apex nodes with starting positions supp(z) by Theorem 83.
Example 95. Figure 26 shows winning strategies in the mean payoff game corresponding to the signed system (A, Σ 1 ) from Example 92. The blue arcs form a non-loosing strategy for the player on the circle nodes. They are the positive edges in the covector graph of the feasible point (0, 0, ∞, ∞). The purple arcs form a winning strategy for the player on the square nodes. They are the edges in the sufficiently infeasible covector graph of the point (∞, ∞, 0, 1).