University of Birmingham On the integer max-linear programming problem

program


Introduction
This paper deals with the task of finding integer solutions to two-sided max-linear systems and the integer max-linear programming problem.
In max-algebra, for a, b ∈ R = R ∪ {−∞}, we define a ⊕ b = max(a, b), a ⊗ b = a + b and extend the pair (⊕, ⊗) to matrices and vectors in the same way as in linear algebra, that is (assuming compatibility of sizes), Throughout this paper we will use ε to denote the zero element −∞ as well as any vector or matrix whose every entry is −∞.
Except for complexity arguments, all multiplications in this paper are in max-algebra, and where appropriate we will omit the ⊗ symbol.
A two-sided max-linear system (TSS) is of the form where A, B ∈ R m×n and c, d ∈ R m .If c = d = ε, then we say that the system is homogeneous; otherwise, it is called nonhomogeneous.Nonhomogeneous systems can be transformed to homogeneous systems [3].If B ∈ R m×k , a system of the form Ax = By is called a system with separated variables.
The problems of finding solutions to Ax = By (1.1) and have been studied previously, and one solution approach is to use the Alternating Method [3,9].If A and B are integer matrices, then the solution found by the Alternating Method is integer; however, this cannot be guaranteed if A and B are real.
In Section 3, we show that we can adapt the Alternating Method in order to obtain algorithms which determine whether integer solutions to these problems exist for real matrices A and B, and find one if it exists.Note that various other methods for solving a TSS are known [1,5,12], but none of them has been proved polynomial, and there is no obvious way of adapting them to integrality constraints.In Section 4, we show that, for a certain class of matrices, which represents a generic case, the problem of finding an integer solution to both systems can be solved in strongly polynomial time, and give a method in this case.
If f ∈ R n , then the function f (x) = f T ⊗ x is called max-linear.Max-linear programming problems (MLPs) seek to minimise or maximise a max-linear function subject to constraints given by max-linear equations.Note that unlike in linear programming there is no obvious way of converting maximisation of max-linear functions to minimisation of the same type of functions, and vice versa.
For A, B ∈ R m×n , c, d ∈ R m , f ∈ R n , the integer max-linear program (IMLP) is given by Solution methods to solve the MLP are known; for example, in [3,4], a bisection method is applied to obtain an algorithm that finds an approximate solution to the MLP.Also, a Newton-type algorithm has been designed [10] to solve a more general max-linear fractional programming problem by a reduction to a sequence of mean payoff games.Again, an integer solution is found for any instances of the MLP with integer entries, but the problem with integrality constraints is very different if the entries are real.In Section 5, we develop an algorithm based on the bisection method which will find an optimal solution to the IMLP, or determine that no solution exists.In Section 6, we show that, in the generic case, the IMLP can be solved in polynomial time.
It should be noted that the solution set of a max-linear system with all variables on one side can be described in terms of set coverings and can easily be solved [2,3].Consequently, the corresponding systems with integrality constraints can also be easily solved, as can max-linear programs and integer max-linear programs with constraints of this type.
As an example of an application of a TSS and the IMLP, consider the following multiprocessor interactive system (MPIS) as described in [4]; see also [8].
Products P 1 , . . ., P m are made up of a number of components which are prepared using n processors.Each processor contributes to the final product P i by producing one of its components.We assume that each processor can work on a component for every product simultaneously, and that work begins on all products as soon as the processor is switched on.Let a ij be the time taken for the jth processor to complete its component for P i (i = 1, . . ., m; j = 1, . . ., n).Denote the starting time of the jth processor by x j (j = 1, . . ., n).Then, for each product P i , all of its components will be completed at time max(x 1 + a i1 , . . ., x n + a in ).
Now suppose that, independently, k other processors prepare components for products Q 1 , . . ., Q m and that the duration and starting times of these are b ij and y j , respectively.Then the synchronisation problem is to find starting times of all n + k processors so that each pair (P i , Q i ) (i = 1, . . ., m) is completed at the same time.This task is equivalent to solving the system of equations max(x 1 + a i1 , . . ., If, additionally, we require that P i and Q i are not completed before a particular time, c i and d i , say, then the equations are max(x 1 + a i1 , . . ., which is equivalent to the two-sided system Ax ⊕ c = By ⊕ d.
When solving the MPIS it may be required that the starting times are restricted to discrete values, in which case we would want to look for integer solutions to the TSS.
In applications it may also be required that the starting times of the MPIS are optimised with respect to a given criterion.In this paper, we consider the case when the objective function is also max-linear and it has to be either minimised or maximised.As an example, it may be required that all processors in an MPIS begin as soon [late] as possible; that is, the latest starting time of a processor is as small [big] as possible.In this case, we would set f j = 0 and seek to minimise With this extra requirement we obtain the following MLP: If the starting times are restricted to discrete values, then the MLP is transformed to an IMLP.

Preliminaries
We will use the following standard notation and terminology.The symbol α −1 stands for −α, and for a vector γ we use γ −1 to mean the vector with entries γ −1 i .A vector [matrix] whose every entry belongs to R is called finite as is any scalar from R. If a matrix has no ε rows [columns], then it is called row [column] R-astic, and it is called doubly R-astic if it is both row and column R-astic [3,8].
For a ∈ R, the fractional part of a is fr(a) := a − ⌊a⌋.For a matrix A ∈ R m×n , we use ⌊A⌋ (⌈A⌉) to denote the matrix with (i, j) entry equal to ⌊a ij ⌋ (⌈a ij ⌉), and similarly for vectors.We define ⌊ε⌋ = ε = ⌈ε⌉.
where max(∅) = ε by definition.Note that this definition is independent of whether we allow cycles to contain repeated nodes [3].The maximum cycle mean can be calculated in O(n 3 ) time [3,11].
An n × n matrix is called diagonal, written diag(d 1 , . . ., d n ) = diag(d), if its diagonal entries are d 1 , . . ., d n ∈ R and off-diagonal entries are ε.We use I to denote the identity matrix, I = diag(0, . . ., 0), of appropriate size. If is extended to matrices and vectors similarly as (⊕, ⊗).
It can be shown [3,8] that Next, we give an overview of some basic properties.
Proof.Straightforward from the definitions.
Corollary 2.3 ([3,8]).If A, B ∈ R m×n and x ≤ y, then The cancellation law in max-algebra is as follows.
Lemma 2.5 ([3]).Let v, w, a, b ∈ R, a > b.Then, for any real number x, we have For any matrices of compatible sizes [3,8], (2.2) If an integer solution exists, then all integer solutions can be described as the integer vectors x satisfying x ≤ x with  We define x = ⌊A # ⊗ ′ b⌋.Then, from Proposition 2.6 and (2.2), we conclude the following.
Then the following hold.
(a) x is the greatest integer solution to Ax ≤ b (provided x is finite).
(b) Ax = b has an integer solution if and only if x is an integer solution.
Consider the matrix inequality AX ≤ B, where A ∈ R m×n , B ∈ R m×k , X ∈ R n×k , and let X = ⌊A # ⊗ ′ B⌋.This system can be written as a set of inequalities of the form Ax ≤ b in the following way, using the notation X r , B r to denote the rth column of X and B, respectively: This allows us to state the following result.
Then the following hold.
(a) X is the greatest integer solution to AX ≤ B (provided subeigenvector of A with respect to subeigenvalue λ.In this paper, we only need results on finite subeigenvectors.The set of all [integer] subeigenvectors with respect to subeigenvalue λ is denoted The existence of [integer] subeigenvectors can be determined, and the whole set can be described, using the following result. Theorem 2.9 ([3,7]).

Alternating Method for integer solutions
In this section, we show that the Alternating Method [3,9] can be easily adapted to design algorithms that determine whether integer solutions to (1.1) or (1.2) exist, and if so find one.This method will be crucial for the solution of the IMLP.We first detail an algorithm to solve systems with separated variables, and then a second algorithm to solve general systems.Since the justification behind the construction of the two algorithms in this section is similar to the arguments in [3,9], we only outline the key results here; full details can be found in [6].
If the ith row of either A or B is ε, then we have (Ax) i = ε = (By) i , which, since x and y are finite, means that the ith row of the other matrix is also ε.Thus we may remove the redundant ith equation from the equality.If, instead, either of A or B has an ε column, then this column may be removed without affecting the solution.Hence we assume without loss of generality that A, B are doubly R-astic.

For any matrix
We propose the following algorithm to find integer solutions to the system with separated variables (1.1).

Algorithm: SEP-INT-TSS
Output: An integer solution (x, y) to Ax = By or indication that no such solution exists.

Theorem 3.1 ([6]). Algorithm SEP-INT-TSS is correct and terminates after
operations, if applied to instances where the matrix A is finite.Lemma 2.4 allows us to write any general two-sided system as a homogeneous system, (1.2), so to find integer solutions to general systems it is sufficient to develop a method to solve homogeneous systems.The following statement is obvious.
We propose the following algorithm to find integer solutions to (1.2).

Theorem 3.3 ([6]). Algorithm GEN-INT-TSS is correct and terminates after
) operations, if applied to instances where both of the matrices A ′ , B ′ are finite.

A polynomially solvable case
In this section, we give a generic condition on the matrices A, B, which, if satisfied, means that we can determine in polynomial time whether a solution to (1.1) or (1.2) exists, and if so find one.We then show that the method for these matrices can be extended to find integer solutions to any two-sided systems, but at a cost to efficiency.

Description of the generic case: Property OneFP
A key observation is that, if Ax = z = By, where x and y are integer vectors, then, for each i, there exist j, t such that fr(z i ) = fr(a ij ) = fr(b it ).
Recall that we assume without loss of generality that A, B are doubly R-astic.
We define the following properties on a pair of matrices (A, B).
(a) We say that the pair (A, Therefore, for each i, there exist r(i), r But fr(a i,r(i) So a necessary condition for a two-sided system to have an integer solution is that (A, B) satisfies Property One + FP, and therefore any TSS where the pair (A, B) satisfies Property ZeroFP has no integer solutions.The aim of this section is to show that, when the pair (A, B) satisfies Property OneFP, the problem of finding integer solutions can be solved in polynomial time.
For such a pair of matrices, we define the pair (r(i), r ′ (i)) to be the indices such that fr(a i,r(i Without loss of generality we may assume that the entries (a i,r(i) , b i,r ′ (i) ) are integer, and that no other entries in the equation for either matrix are integer (this is since we may subtract a constant from each row of the system without affecting the answer to the question).
If we randomly generated two real matrices A ∈ R m×n , B ∈ R m×k , then we would expect there to be very few pairs of entries (a ir(i) , b ir ′ (i) ) which share the same fractional part.So, when given a random two-sided system, the most likely outcome is that there is no integer solution (that the matrices satisfy Property ZeroFP).Among matrices which satisfy Property One + FP, the next most likely outcome is that the pair (A, B) satisfies Property OneFP.While this discussion is not mathematically rigorous, it does allow us to conclude that matrices (A, B) satisfying either Property ZeroFP or Property OneFP represent a generic case.
We say that an element a ij of A is active with respect to x if a ij + x j = (Ax) i , and inactive otherwise.A consequence of Proposition 4.1 is the following.

Systems with separated variables
Let A ∈ R m×n , B ∈ R m×k .First, we consider the question of whether there exist x ∈ Z n , y ∈ Z k such that Ax = By when (A, B) satisfies Property OneFP.

Observe that
Thus we conclude the following.Proof.Assume that z satisfies (4.1).Then, for each i, the entry a i,r(i) is the only active entry of A in the ith row (equivalently, is the only active entry in the ith row of diag(z)A).This implies that, if there exist i, t ∈ M such that r(i) = r(t), and Proof.Consider (4.1).We have that, for each i, the integer entry a i,r(i) + z i is the only possible active entry of diag(z)A with respect to an integer vector x.From Proposition 2.6 we have that an integer solution to (4.1) exists exactly when the integer column maxima of diag(z)A cover all rows.A similar argument holds for (4.2).Hence we require that ) ) For any other column (those not containing integer entries) we do not get any additional constraints, since we may set the corresponding entry of x or y to be small enough so that the column has no effect on the product Ax or By.This set of inequalities is equivalent to Then, by Proposition 4.5, for solving (1.1), we need to determine whether there exists z ∈ Z m satisfying (∀i This is exactly the condition for z ∈ IV * (W , 0), which can be checked using Theorem 2.9.We conclude the following.Theorem 4.6.Let A ∈ R m×n , B ∈ R m×k satisfy Property OneFP.For all i, j ∈ M, let .
Then an integer solution to Ax = By exists if and only if λ(W ) ≤ 0. If this is the case, then Ax = By = z −1 , where z ∈ IV * (W , 0), and x and y can be found using Proposition 2.6.
Note that, for all i ∈ M, w ii = 0, and therefore W is doubly R-astic and λ(W ) ≥ 0. Therefore the condition for existence of an integer solution is equivalent to λ(W ) = 0.
Observe that, if (A, B) satisfies Property OneFP, then so does ( Â, B), where Â = Thus to solve a general two-sided system satisfying Property OneFP we may convert it into a system with separated variables and solve using Theorem 4.6.By Corollary 4.7, we have the following.
Corollary 4.9.For A, B ∈ R m×n satisfying Property OneFP, we can decide whether an integer solution to Ax = Bx exists in Remark 1.The transformation described in Proposition 3.2 is not suitable here, since it has y ∈ R, whereas to use Theorem 4.6 we want to be able to look for integer solutions.Conversely, the transformation described in Proposition 4.8 is not suitable to use when discussing the Alternating Method, since we need at least one of the matrices to be finite for our complexity arguments to hold.

Some special cases
We now present a couple of cases where we can give simpler conditions, both for systems with separated variables.
The first case occurs when we have r( 1 We assume without loss of generality that the former occurs. Proof.Observe that an integer solution to Ax = By exists if and only if an integer solution to A ′ x = B ′ y exists.Assume first that x, y are integer vectors satisfying A ′ x = B ′ x.Now, from Corollary 4.2, we know that the active entries in A ′ with respect to x are the zero entries in column p.Thus A ′ ⊗ x = (x p , x p , . . ., x p ) T .Therefore B ′ y = (x p , x p , . . ., x p ) T , which implies that B(x −1 p ⊗ y) = 0, and hence, using Corollary 2.7, we know that For the other direction, assume that B ′ ⊗⌊(B ′ ) # ⊗ ′ 0⌋ = 0. Choosing x ∈ Z n such that x = (x 1 , . . ., x p−1 , 0, x p+1 , . . ., x n ) T with x j small for j ̸ = p gives us that A ′ ⊗ x = 0, and thus setting then the only candidates for active entries are found in columns A p and B q .So, if Ax = By, then x p A p = y q B q , and the other components of x and y are small enough not to affect the outcome.Thus a solution to (1.1) exists if and only if A p is a max-multiple of B q .
The second case occurs when A, B are square, satisfy Property OneFP, and for one matrix the active entries are spread over all columns.Without loss of generality, assume that it is matrix A, so {r(1), . . ., r(m)} = M.
Proposition 4.11.Assume that A, B ∈ R m×m satisfy Property OneFP.Suppose further that r(i) ̸ = r(t) for all i, t ∈ M with i ̸ = t.
Let A ′ be obtained from A by subtracting a i,r(i) from row i for each i and permuting the columns so that the zero entries appear on the leading diagonal.If λ(⌈A ′ ⌉) ̸ = 0, then no integer solution to A ⊗ x = B ⊗ y exists.
Proof.Let B ′ be obtained from B by subtracting a i,r(i) from row i for each i.Assume that an integer solution to Ax = By exists.Then an integer solution to A ′ x = B ′ y exists, and the active entries in A ′ are the zeros on the diagonal by Corollary 4.2.Thus (A ′ x) i = a ii + x i = x i , and hence x ∈ IV * (A ′ , 0).By Theorem 2.9 we have λ(⌈A ′ ⌉) = 0.

Adapting the method to solve any TSS
We end this section by giving a brief description of how the solution method for systems satisfying Property OneFP could be adapted to find integer solutions to any TSS, but that in doing so we may lose efficiency.Since we can convert any general two-sided system into a system with separated variables, we discuss systems with separated variables only.
Let A ∈ R m×n , B ∈ R m×k , and suppose that (A, B) satisfies Property One + FP.In this case, for each row i of Ax = By, we will have a number of pairs (a ir(i,s) , b ir ′ (i,s) ) for some integer s ≤ nk, such that fr(a ir(i,s) ) = fr(b ir ′ (i,s) ).Observe that, for any x ∈ Z n , y ∈ Z k satisfying Ax = By, we can identify a single pair of active entries for each row of the equation, and hence the pair (x, y) is also an integer solution to the system Ax = B − y, where (A, B − ) satisfies Property OneFP and B − is obtained from B by subtracting a small real number 0 < δ ≪ 1 from every entry in B except the single active entry per row in B with respect to y.
In general, Ax = By if and only if there exists an m-tuple (k 1 , . . ., k m ), k i ∈ K , and a matrix Hence, given a pair (A, B) satisfying Property One + FP, we can generate a number of pairs (A, B (g) ), g ∈ N such that x, y is an integer solution to Ax = By if and only if there exists g such that Ax = B (g) y.Note that each B (g) is obtained from B by subtracting δ from all but one element, b ir ′ (i,s) , per row, and that the pairs (A, B (g) ) satisfy Property OneFP.We can therefore determine whether an integer solution to Ax = B (g) y exists in strongly polynomial time.
Unfortunately, in the worst case, there could be as many as nk pairs per row, and thus (nk) m matrices to check, so the complexity of this method is O(m 3 n m k m ).However we can say that, for fixed m, a polynomial method for finding integer solutions to a TSS exists.

Integer max-linear programs
In this section, we develop algorithms to solve the IMLP for problems with finite entries.We will write IMLP max to mean the integer max-linear program which maximises f T x, and IMLP min to denote the program minimising The method described here is based on the bisection method used to find real optimal solutions to max-linear programs described in [3].
The justification for using a bisection method for problems with integrality requirements is given by the following.

Lemma 5.2 ([3])
where f ′ j < f j for every j ∈ N. Then the following holds for every x ∈ R : Since the result holds for real vectors x, it clearly also holds for integer x.Using this and the cancellation law, we can check whether f (x) attains some value α by checking whether a two-sided system has an integer solution.
Proposition 5.3.f (x) = α for some x ∈ IS if and only if the following integer max-linear system has a solution: where α ′ < α and f ′ j < f j for every j ∈ N.
We know from Section 3 that we can decide whether a two-sided system has an integer solution by applying Algorithm GEN-INT-TSS.

When the objective function is unbounded
We now consider the question of when optimal solutions exist.We denote the minimum and maximum of f by f min and f max , respectively.Without loss of generality, we assume that c ≥ d, and we denote  . (5.1) In the rest of this section, we follow similar arguments as appear in [3] regarding the max-linear programming problem.For any result stated without a proof, the result either follows immediately from a theorem in [3], or can be obtained by a simple adaptation of the proof found there.( Proof.Assume that x ∈ IS.Then Ax = Bx, since Ax > c ≥ d.From the choice of α, we get that for all i ∈ M. Further, since A(βx) = B(βx) for any β ∈ Z, we have x ′ ∈ IS.Finally, let j ∈ M be an index at which the value of α is attained.Then  .So far, we have shown that we can determine immediately when f min is unbounded and can check whether f max is unbounded, for example by applying Algorithm GEN-INT-TSS.We now need to argue that, when the objective function value is bounded, there exist integer vectors for which f max and f min are attained.

Attainment of optimal values
For all j ∈ N, let ) Observe that h ′ is finite and that h is finite if and only if f min > −∞.
Proposition 5.9.Let h and h ′ be as defined above.
(i) For any x ∈ IS, the vector x ′ = x ⊕ h ∈ IS satisfies x ′ ≥ h and f (x) = f (x ′ ).(ii) For any x ∈ IS, the vector x ′ = x ⊕ h ′ ∈ IS satisfies x ′ ≥ h ′ and f (x) ≤ f (x ′ ).
Corollary 5.10.Let h and h ′ be as defined above.
(i) If f min > −∞ and IS ̸ = ∅, then where IS = IS ∩ {x ∈ Z n : where IS Proof.Similar to the proof of Corollaries 10.2.12 and 10.2.17 in [3].
We summarise these results as follows.
Finally, we need a finite lower bound on f max , since L will not work in the case when c = d.Corollary 5.12.

Algorithm when minimising the objective function
For minimisation, we know that an optimal solution exists provided that c ̸ = d.We first check whether f min = L using Proposition 5.3: if so, we are done: if not, then we find any feasible x 0 using Algorithm GEN-INT-TSS and, if necessary, scale it using (5.2) so that f (x 0 ) ≤ U. Then we know that f min ∈ (L, f (x 0 )].Once we know that, for any x ∈ IS, we have that f (x) satisfies we can set Θ = {θ : θ ∈ (L, U] and fr(θ ) = fr(U)}, and apply the bisection method on the set Θ as follows.
1. Order θ i ∈ Θ from smallest to largest, and test whether the middle value, θ, is attained for any x ∈ IS. 2. If it is, then we have a new upper bound: f (x) ≤ θ .3. If it is not, then we have a new lower bound: f (x) > θ.
In 3, we use the fact that, if θ is unattainable, then no value in (L, θ] is attainable.To see this, note that, if there exists α ∈ (L, θ] attainable, then by Proposition 5.1 all values in (α, U) with fractional part equal to that of U work, but θ satisfied this condition, and was not attainable.In each case, we have halved the number of values that we need to test.
Using this idea, we obtain the following algorithm for solving IMLP min .

Find an x
. Check whether f (x) = θ for some x ∈ IS, and if so find one.If yes, then U(r + 1) = θ , L(r + 1) = L(r).

IMLP and systems with Property OneFP
In Section 4, we showed that, for systems satisfying Property OneFP, we could find integer solutions to a TSS in strongly polynomial time; here, we show that, if Property OneFP is satisfied, then our solution methods for the IMLP can also be made more efficient.

The adapted Alternating Method is pseudopolynomial for systems with Property OneFP
Let A ∈ R m×n , B ∈ R m×k be doubly R-astic such that the pair (A, B) satisfies Property OneFP.Let Ã = (ã ij ) and B = ( bit ), for some real numbers 0 < s 1 , s 2 < 1, s 1 ̸ = s 2 .Note that the pair ( Ã, B) also satisfies Property OneFP.Proof.Assume that Ax = By.We know by Corollary 4.2 that the only active entries in A and B are the integer entries, a ir(i) and b ir ′ (i) .We have Hence Ax = Ãx, and it can also be shown that By = By.A similar argument holds for the other direction.The case Ax = Bx is proved analogously.Remark 3. Another way to prove this would be to calculate W from (A, B) as described in Theorem 4.6 and W from ( Ã, B) similarly.Then note that W = W , and therefore for any integer solutions x, x we have Ax = Bx = z = Ãx = Bx for any z ∈ IV * (W , 0).Finally, observe that this implies that x = x using Corollary 4.2.Proposition 6.1 allows us to transform any system satisfying Property OneFP into a system with the same solution set, also satisfying Property OneFP, with the additional property that all non-integer entries of each matrix have the same fractional part (but different from the fractional part in the other matrix).Without loss of generality, we can set, for instance, s 1 = 0.1 and s 2 = 0.2 so that no entry in the system has more than one decimal place.Hence the maximum number of symbols in an entry is log κ + 1, where κ = K ( Ã| B) is as defined in (3.1).Finally, note that the computationally expensive step in Algorithms INT-MAXLINMIN and INT-MAXLINMAX is the use of Algorithm GEN-INT-TSS in each iteration.Therefore, for systems satisfying Property OneFP, these algorithms are pseudopolynomial.

Polynomial algorithm for IMLP for systems with Property OneFP
In Section 6.1, we argued that for pairs (A, B) satisfying Property OneFP the algorithms for solving the IMLP are pseudopolynomial.Here we show that, if Property OneFP is satisfied, we can perform the checks in each iteration by the condition from Theorem 4.6 instead of Algorithm GEN-INT-TSS, and obtain a polynomial algorithm for solving IMLP.
In each iteration, Algorithm GEN-INT-TSS is used to determine whether there exists some x ∈ IS satisfying f (x) = α by finding if an integer solution to the following two-sided system exists: where f ′ < f , α ′ < α.
Now note that we always test an α that shares its fractional part with some element of f , and we can always choose f ′ , α ′ so as not to add any fractional parts which already appear in the (m + 1)st row.As before, we can transform this system into one in which every entry has at most one decimal place, and therefore the maximum number of symbols in an entry is ν = log κ ′ + 1, where So we obtain the following proposition.

Corollary 4 . 2 .
Let A ∈ R m×n , B ∈ R m×k satisfy Property OneFP.Then the entries a i,r(i) [b i,r ′ (i) ] are the only possible active entries in the matrix A [B] with respect to any integer solution x [y] satisfying Ax = By.

Proposition 4 . 10 .
Assume that A ∈ R m×n , B ∈ R m×k satisfy Property OneFP.Suppose further that r(1) = • • • = r(m) = p.Let A ′ and B ′ be the matrices obtained from A and B by subtracting a ip from the ith row.Then an integer solution to Ax = By exists if and only if

Lemma 5 . 4 .Lemma 5 . 6 .
If c ≥ d, then f (x) ≥ L for every x ∈ IS.Theorem 5.5.f min = −∞ if and only if c = d.For the upper bound, we need the following results.Let c ≥ d.If x ∈ IS and (Ax) i > c i for all i ∈ M, then x ′ = αx ∈ IS and (Ax ′ ) i ≤ c i ⊗ 1 for some i ∈ M, where

(5. 3 ) 5 . 7 .
Lemma If c ≥ d, then the following hold.(a)If x ∈ IS and (Ax) r ≤ c r ⊗ 1 for some r ∈ M, then f (x) ≤ U. (b) If Ax = Bx has no integer solution, then f (x) ≤ U for every x ∈ IS.Theorem 5.8.f max = +∞ if and only if Ax = Bx has an integer solution.

Proposition 6 . 1 .
Let A, B, Ã, B be as described above.The pair (x, y) [vector x] is an integer solution to Ax = By [Ax = Bx] if and only if (x, y) [x] is an integer solution to Ãx = By [ Ãx = Bx].
OneFP where A, B are finite, we can input this transformed system into Algorithms SEP-INT-TSS and GEN-INT-TSS, which we know to have complexity O(mn(n + k)K ( Ã)) and O(κ(mn(m + n))), respectively, by Theorems 3.1 and 3.3.Therefore both Algorithm SEP-INT-TSS and Algorithm GEN-INT-TSS are pseudopolynomial when applied to instances with finite matrices satisfying Property OneFP.
and x = A # ⊗ ′ b.(a) An integer solution to Ax ≤ b exists if and only if x is finite.If an integer solution exists, then all integer solutions can be described as the integer vectors x satisfying x ≤ x.(b) An integer solution to Ax = b exists if and only if B) satisfies Property ZeroFP if there exists i ∈ M such that there is no pair (a ij , b it ) with the same fractional part.(b)We say that the pair (A, B) satisfies Property One + FP if, for each i ∈ M, there is at least one pair (a ij , b it ) with the same fractional part.(c)We say that the pair (A, B) satisfies Property OneFP if, for each i ∈ M, there is exactly one pair (a ij , b it ) with the same fractional part and a ij , b it ∈ Z (this can be assumed without loss of generality).Further, for either a TSS or the IMLP, we will say that the system satisfies Property OneFP if the pair of input matrices (A, B) satisfies Property OneFP.
m×n , B ∈ R m×k .If an integer solution to Ax = By, or (if n = k) Ax = Bx, exists, then Let A ∈ R m×n , B ∈ R m×k satisfy Property OneFP.Suppose that z ∈ Z m satisfies (4.1) and (4.2) for some integer vectors x, y.If there exists a column of diag(z)A containing more than one integer entry, then these entries are equal.Similarly for diag(z)B.
r(t) .Simultaneously solving (4.1) and (4.2) is equivalent to the problem of finding z ∈ Z m satisfying From Theorem 4.6 and Corollary 2.10, we obtain the following.We now consider finding integer solutions to (1.2) under the condition that (A, B) satisfy Property OneFP.The following statement is obvious.Let A, B ∈ R m×n satisfy Property OneFP.The problem of finding x ∈ Z n such that Ax = Bx is equivalent to finding x ∈ Z n , y ∈ Z n such that m×n , B ∈ R m×k , it is possible to decide whether an integer solution to Ax = By exists in O(m3+ n + k)