Presburger arithmetic, rational generating functions, and quasi-polynomials
A Presburger formula is a Boolean formula with variables in ℕ that can be written using addition, comparison (≤, =, etc.), Boolean operations (and, or, not), and quantifiers (∀ and ∃). We characterize sets that can be defined by a Presburger formula as exactly the sets whose characteristic functions can be represented by rational generating functions; a geometric characterization of such sets is also given. In addition, if p = (p 1,…,p n ) are a subset of the free variables in a Presburger formula, we can define a counting function g(p) to be the number of solutions to the formula, for a given p. We show that every counting function obtained in this way may be represented as, equivalently, either a piecewise quasi-polynomial or a rational generating function. In the full version of this paper, we also translate known computational complexity results into this setting and discuss open directions.
Woods, Kevin. 2013. “Presburger arithmetic, rational generating functions, and quasi-polynomials.” In Automata, Languages, and Programming: 40th International Colloquium, ICALP 2013, Proceedings, Part II, edited by F.V. Fomin, et al. Lecture Notes in Computer Science 7966, 410-421. New York: Springer.