From Surf Wiki (app.surf) — the open knowledge base
Fourier–Motzkin elimination
Mathematical algorithm for eliminating variables from a system of linear inequalities
Mathematical algorithm for eliminating variables from a system of linear inequalities
Fourier–Motzkin elimination, also known as the FME method, is a mathematical algorithm for eliminating variables from a system of linear inequalities. It can output real solutions.
The algorithm is named after Joseph Fourier who proposed the method in 1826 and Theodore Motzkin who re-discovered it in 1936.
Elimination
The elimination of a set of variables, say V, from a system of relations (here linear inequalities) refers to the creation of another system of the same sort, but without the variables in V, such that both systems have the same solutions over the remaining variables.
If all variables are eliminated from a system of linear inequalities, then one obtains a system of constant inequalities. It is then trivial to decide whether the resulting system is true or false. It is true if and only if the original system has solutions. As a consequence, elimination of all variables can be used to detect whether a system of inequalities has solutions or not.
Consider a system S of n inequalities with r variables x_1 to x_r, with x_r the variable to be eliminated. The linear inequalities in the system can be grouped into three classes depending on the sign (positive, negative or null) of the coefficient for x_r.
- those inequalities that are of the form x_r \geq b_i-\sum_{k=1}^{r-1} a_{ik} x_k; denote these by x_r \geq A_i(x_1, \dots, x_{r-1}), for i ranging from 1 to n_A where n_A is the number of such inequalities;
- those inequalities that are of the form x_r \leq b_i-\sum_{k=1}^{r-1} a_{ik} x_k; denote these by x_r \leq B_i(x_1, \dots, x_{r-1}), for i ranging from 1 to n_B where n_B is the number of such inequalities;
- those inequalities in which x_r plays no role, grouped into a single conjunction \phi.
The original system is thus equivalent to :\max(A_1(x_1, \dots, x_{r-1}), \dots, A_{n_A}(x_1, \dots, x_{r-1})) \leq x_r \leq \min(B_1(x_1, \dots, x_{r-1}), \dots, B_{n_B}(x_1, \dots, x_{r-1})) \wedge \phi.
Elimination consists in producing a system equivalent to \exists x_r~S. Obviously, this formula is equivalent to :\max(A_1(x_1, \dots, x_{r-1}), \dots, A_{n_A}(x_1, \dots, x_{r-1})) \leq \min(B_1(x_1, \dots, x_{r-1}), \dots, B_{n_B}(x_1, \dots, x_{r-1})) \wedge \phi.
The inequality :\max(A_1(x_1, \dots, x_{r-1}), \dots, A_{n_A}(x_1, \dots, x_{r-1})) \leq \min(B_1(x_1, \dots, x_{r-1}), \dots, B_{n_B}(x_1, \dots, x_{r-1})) is equivalent to n_A n_B inequalities A_i(x_1, \dots, x_{r-1}) \leq B_j(x_1, \dots, x_{r-1}), for 1 \leq i \leq n_A and 1 \leq j \leq n_B.
We have therefore transformed the original system into another system where x_r is eliminated. Note that the output system has (n-n_A-n_B)+n_A n_B inequalities. In particular, if n_A = n_B = n/2, then the number of output inequalities is n^2/4.
Example
Consider the following system of inequalities:
: \begin{cases} 2x - 5y + 4z \leqslant 10 \ 3x - 6y + 3z \leqslant 9 \ -x + 5y - 2z \leqslant -7 \ -3x + 2y + 6z \leqslant 12 \ \end{cases}
Since all the inequalities are in the same form (all less-than or all greater-than), we can examine the coefficient signs for each variable. Eliminating x would yield 22 = 4 inequalities on the remaining variables, and so would eliminating y. Eliminating z would yield only 31 = 3 inequalities so we use that instead.
: \begin{cases} z \leqslant \frac{10 - 2x + 5y}{4} \ z \leqslant \frac{9 - 3x + 6y}{3} \ \frac{7 - x + 5y}{2} \leqslant z \ z \leqslant \frac{12 + 3x - 2y}{6} \ \end{cases}
which gives the 3 inequalities:
: \begin{cases} \frac{7 - x + 5y}{2} \leqslant \frac{10 - 2x + 5y}{4} \ \frac{7 - x + 5y}{2} \leqslant \frac{9 - 3x + 6y}{3} \ \frac{7 - x + 5y}{2} \leqslant \frac{12 + 3x - 2y}{6} \ \end{cases}
Simplifying:
: \begin{cases} 5y \leqslant -4 \ x + y \leqslant -1 \ -6x + 17y \leqslant -9 \ \end{cases}
This system uses only 2 variables instead of 3. Examining the coefficient signs for each variable yields all-positive for y, so we can immediately say that the system is unbounded in y: since all y coefficients are positive and all inequalities are less-than-or-equal, setting y to negative infinity (or any sufficiently large negative number) would satisfy the reduced system, therefore there exist corresponding x and z for the larger systems as well, and there are infinitely many such solutions. E.g. setting y = −1000000, x = 0, z = −2222222 satisfies the original system as well as the reduced ones.
Complexity
Running an elimination step over n inequalities can result in at most n^2/4 inequalities in the output, thus naively running d successive steps can result in at most 4(n/4)^{2^d}, a double exponential complexity. This is due to the algorithm producing many redundant constraints implied by other constraints.
McMullen's upper bound theorem states that the number of non-redundant constraints grows as a single exponential. A single exponential implementation of Fourier–Motzkin elimination and complexity estimates are given in.RJ. Jing, M. Moreno-Maza, and D. Talaashrafi https://link.springer.com/chapter/10.1007/978-3-030-60026-6_16 Complexity Estimates for Fourier-Motzkin Elimination. In: Boulier, F., England, M., Sadykov, T.M., Vorozhtsov, E.V. (eds) Computer Algebra in Scientific Computing. CASC 2020. Lecture Notes in Computer Science, vol 12291. Springer,]
Linear programming is well-known to give solutions to inequality systems in polynomial time, favoring it over Fourier–Motzkin elimination.
Imbert's acceleration theorems
Two "acceleration" theorems due to Imbert permit the elimination of redundant inequalities based solely on syntactic properties of the formula derivation tree, thus curtailing the need to solve linear programs or compute matrix ranks.
Define the history H_i of an inequality i as the set of indexes of inequalities from the initial system S used to produce i. Thus, H_i={i} for inequalities i \in S of the initial system. When adding a new inequality k: A_i(x_1, \dots, x_{r-1}) \leq B_j(x_1, \dots, x_{r-1}) (by eliminating x_r), the new history H_k is constructed as H_k = H_i \cup H_j.
Suppose that the variables O_k = {x_{r}, \ldots, x_{r - k + 1}} have been officially eliminated. Each inequality i partitions the set O_k into E_i \cup I_i \cup R_i:
- E_i, the set of effectively eliminated variables, i.e. on purpose. A variable x_j is in the set as soon as at least one inequality in the history H_i of i results from the elimination of x_j.
- I_i, the set of implicitly eliminated variables, i.e. by accident. A variable is implicitly eliminated when it appears in at least one inequality of H_i, but appears neither in inequality i nor in E_i
- R_i, all remaining variables.
A non-redundant inequality has the property that its history is minimal.{{Cite web |archive-date=2022-03-20 |url-status=dead
Theorem (Imbert's first acceleration theorem). If the history H_i of an inequality i is minimal, then 1 + |E_i| \ \leq \ |H_i| \ \leq 1 + \left| E_i \cup (I_i \cap O_k)\right|.
An inequality that does not satisfy these bounds is necessarily redundant, and can be removed from the system without changing its solution set.
The second acceleration theorem detects minimal history sets:
Theorem (Imbert's second acceleration theorem). If the inequality i is such that 1 + |E_i| = |H_i|, then H_i is minimal.
This theorem provides a quick detection criterion and is used in practice to avoid more costly checks, such as those based on matrix ranks. See the reference for implementation details.
Applications in information theory
Information-theoretic achievability proofs result in conditions under which the existence of a well-performing coding scheme is guaranteed. These conditions are often described by linear system of inequalities. The variables of the system include both the transmission rates (that are part of the problem's formulation) and additional auxiliary rates used for the design of the scheme. Commonly, one aims to describe the fundamental limits of communication in terms of the problem's parameters only. This gives rise to the need of eliminating the aforementioned auxiliary rates, which is executed via Fourier–Motzkin elimination. However, the elimination process results in a new system that possibly contains more inequalities than the original. Yet, often some of the inequalities in the reduced system are redundant. Redundancy may be implied by other inequalities or by inequalities in information theory (a.k.a. Shannon type inequalities). A recently developed open-source software for MATLAB performs the elimination, while identifying and removing redundant inequalities. Consequently, the software's outputs a simplified system (without redundancies) that involves the communication rates only.
Redundant constraint can be identified by solving a linear program as follows. Given a linear constraints system, if the i-th inequality is satisfied for any solution of all other inequalities, then it is redundant. Similarly, STIs refers to inequalities that are implied by the non-negativity of information theoretic measures and basic identities they satisfy. For instance, the STI I(X_1;X_2) \leq H(X_1) is a consequence of the identity I(X_1;X_2) = H(X_1) - H(X_1 | X_2) and the non-negativity of conditional entropy, i.e., H(X_1|X_2) \geq 0. Shannon-type inequalities define a cone in \mathbb R^{2^n-1}, where n is the number of random variables appearing in the involved information measures. Consequently, any STI can be proven via linear programming by checking if it is implied by the basic identities and non-negativity constraints. The described algorithm first performs Fourier–Motzkin elimination to remove the auxiliary rates. Then, it imposes the information theoretic non-negativity constraints on the reduced output system and removes redundant inequalities.
References
References
- Fourier, Joseph. (1827). "Mémoires de l'Académie des sciences de l'Institut de France". Gauthier-Villars.
- {{Cite Gartner Matousek 2006 Pages 81–104.
- David Monniaux, [http://hal.archives-ouvertes.fr/hal-00472831 ''Quantifier elimination by lazy model enumeration''], Computer aided verification (CAV) 2010.
- Jean-Louis Imbert, ''About Redundant Inequalities Generated by Fourier's Algorithm'', Artificial Intelligence IV: Methodology, Systems, Applications, 1990.
- (2015-09-25). "Fourier-Motzkin Elimination Software for Information Theoretic Inequalities".
This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.
Ask Mako anything about Fourier–Motzkin elimination — get instant answers, deeper analysis, and related topics.
Research with MakoFree with your Surf account
Create a free account to save articles, ask Mako questions, and organize your research.
Sign up freeThis content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.
Report