🤖 AI Summary
This work addresses the double-exponential complexity inherent in quantifier elimination via Fourier–Motzkin elimination (FME) and cylindrical algebraic decomposition (CAD) by introducing treewidth—a graph-theoretic measure of sparsity—into the quantifier elimination framework. The authors propose a dynamic programming approach based on tree decompositions of variable dependency graphs, which leverages the sparse structure of input formulas. By integrating parameterized algorithms with FME and CAD, the method handles both linear real arithmetic (LRA) and nonlinear real arithmetic (NRA) formulas. Theoretically, the approach achieves single-exponential complexity when the treewidth is bounded by a constant. Experimental evaluation demonstrates substantial performance improvements over state-of-the-art heuristics on benchmarks with low treewidth.
📝 Abstract
In this paper, we address the complexity barrier inherent in Fourier-Motzkin elimination (FME) and cylindrical algebraic decomposition (CAD) when eliminating a block of (existential) quantifiers. To mitigate this, we propose exploiting structural sparsity in the variable dependency graph of quantified formulas. Utilizing tools from parameterized algorithms, we investigate the role of treewidth, a parameter that measures the graph's tree-likeness, in the process of quantifier elimination. A novel dynamic programming framework, structured over a tree decomposition of the dependency graph, is developed for applying FME and CAD, and is also extensible to general quantifier elimination procedures. Crucially, we prove that when the treewidth is a constant, the framework achieves a significant exponential complexity improvement for both FME and CAD, reducing the worst-case complexity bound from doubly exponential to single exponential. Preliminary experiments on sparse linear real arithmetic (LRA) and nonlinear real arithmetic (NRA) benchmarks confirm that our algorithm outperforms the existing popular heuristic-based approaches on instances exhibiting low treewidth.