Presburger arithmetic is the
first-order theory of the
natural number
In mathematics, the natural numbers are the numbers 0, 1, 2, 3, and so on, possibly excluding 0. Some start counting with 0, defining the natural numbers as the non-negative integers , while others start with 1, defining them as the positive in ...
s with
addition
Addition (usually signified by the Plus and minus signs#Plus sign, plus symbol, +) is one of the four basic Operation (mathematics), operations of arithmetic, the other three being subtraction, multiplication, and Division (mathematics), divis ...
, named in honor of
Mojżesz Presburger, who introduced it in 1929. The
signature
A signature (; from , "to sign") is a depiction of someone's name, nickname, or even a simple "X" or other mark that a person writes on documents as a proof of identity and intent. Signatures are often, but not always, Handwriting, handwritt ...
of Presburger arithmetic contains only the addition operation and
equality, omitting the
multiplication
Multiplication is one of the four elementary mathematical operations of arithmetic, with the other ones being addition, subtraction, and division (mathematics), division. The result of a multiplication operation is called a ''Product (mathem ...
operation entirely. The theory is
computably axiomatizable; the axioms include a schema of
induction.
Presburger arithmetic is much weaker than
Peano arithmetic, which includes both addition and multiplication operations. Unlike Peano arithmetic, Presburger arithmetic is a
decidable theory. This means it is possible to algorithmically determine, for any sentence in the language of Presburger arithmetic, whether that sentence is provable from the axioms of Presburger arithmetic. The asymptotic running-time
computational complexity
In computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations ...
of this algorithm is at least
doubly exponential, however, as shown by .
Overview
The language of Presburger arithmetic contains constants 0 and 1 and a binary function +, interpreted as addition.
In this language, the axioms of Presburger arithmetic are the
universal closures of the following:
# ¬(0 = ''x'' + 1)
# ''x'' + 1 = ''y'' + 1 → ''x'' = ''y''
# ''x'' + 0 = ''x''
# ''x'' + (''y'' + 1) = (''x'' + ''y'') + 1
# Let ''P''(''x'') be a
first-order formula in the language of Presburger arithmetic with a free variable ''x'' (and possibly other free variables). Then the following formula is an axiom:(''P''(0) ∧ ∀''x''(''P''(''x'') → ''P''(''x'' + 1))) → ∀''y'' ''P''(''y'').
(5) is an
axiom schema
In mathematical logic, an axiom schema (plural: axiom schemata or axiom schemas) generalizes the notion of axiom.
Formal definition
An axiom schema is a formula in the metalanguage of an axiomatic system, in which one or more schematic variabl ...
of
induction, representing infinitely many axioms. These cannot be replaced by any finite number of axioms, that is, Presburger arithmetic is not finitely axiomatizable in first-order logic.
Presburger arithmetic can be viewed as a
first-order theory with equality containing precisely all consequences of the above axioms. Alternatively, it can be defined as the set of those sentences that are true in the
intended interpretation: the structure of non-negative integers with constants 0, 1, and the addition of non-negative integers.
Presburger arithmetic is designed to be complete and decidable. Therefore, it cannot formalize concepts such as
divisibility
In mathematics, a divisor of an integer n, also called a factor of n, is an integer m that may be multiplied by some integer to produce n. In this case, one also says that n is a ''Multiple (mathematics), multiple'' of m. An integer n is divis ...
or
primality, or, more generally, any number concept leading to multiplication of variables. However, it can formulate individual instances of divisibility; for example, it proves "for all ''x'', there exists ''y'' : (''y'' + ''y'' = ''x'') ∨ (''y'' + ''y'' + 1 = ''x'')". This states that every number is either even or odd.
Properties
proved Presburger arithmetic to be:
*
consistent
In deductive logic, a consistent theory is one that does not lead to a logical contradiction. A theory T is consistent if there is no formula \varphi such that both \varphi and its negation \lnot\varphi are elements of the set of consequences ...
: There is no statement in Presburger arithmetic that can be deduced from the axioms such that its negation can also be deduced.
*
complete: For each statement in the language of Presburger arithmetic, either it is possible to deduce it from the axioms or it is possible to deduce its negation.
*
decidable: There exists an
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
that decides whether any given statement in Presburger arithmetic is a theorem or a nontheorem - note that a "nontheorem" is a formula that cannot be proved, not in general necessarily one whose negation can be proved, but in the case of a complete theory like here the two definitions are equivalent.
The decidability of Presburger arithmetic can be shown using
quantifier elimination
Quantifier elimination is a concept of simplification used in mathematical logic, model theory, and theoretical computer science. Informally, a quantified statement "\exists x such that ..." can be viewed as a question "When is there an x such ...
, supplemented by reasoning about
arithmetical congruence. The steps used to justify a quantifier elimination algorithm can be used to define computable axiomatizations that do not necessarily contain the axiom schema of induction.
In contrast,
Peano arithmetic, which is Presburger arithmetic augmented with multiplication, is not decidable, as proved by Church alongside the negative answer to the
Entscheidungsproblem
In mathematics and computer science, the ; ) is a challenge posed by David Hilbert and Wilhelm Ackermann in 1928. It asks for an algorithm that considers an inputted statement and answers "yes" or "no" according to whether it is universally valid ...
. By
Gödel's incompleteness theorem, Peano arithmetic is incomplete and its consistency is not internally provable (but see
Gentzen's consistency proof).
Computational complexity
The decision problem for Presburger arithmetic is an interesting example in
computational complexity theory
In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and explores the relationships between these classifications. A computational problem ...
and
computation
A computation is any type of arithmetic or non-arithmetic calculation that is well-defined. Common examples of computation are mathematical equation solving and the execution of computer algorithms.
Mechanical or electronic devices (or, hist ...
. Let ''n'' be the length of a statement in Presburger arithmetic. Then proved that, in the worst case, the proof of the statement in first-order logic has length at least
, for some constant ''c''>0. Hence, their decision algorithm for Presburger arithmetic has runtime at least exponential. Fischer and Rabin also proved that for any reasonable axiomatization (defined precisely in their paper), there exist theorems of length ''n'' that have
doubly exponential length proofs. Fischer and Rabin's work also implies that Presburger arithmetic can be used to define formulas that correctly calculate any algorithm as long as the inputs are less than relatively large bounds. The bounds can be increased, but only by using new formulas. On the other hand, a triply exponential upper bound on a decision procedure for Presburger arithmetic was proved by .
A more tight complexity bound was shown using alternating complexity classes by . The set of true statements in Presburger arithmetic (PA) is shown complete for
TimeAlternations(2
2nO(1), n). Thus, its complexity is between double exponential nondeterministic time (2-NEXP) and double exponential space (2-EXPSPACE). Completeness is under
Karp reductions. (Also, note that while Presburger arithmetic is commonly abbreviated PA, in mathematics in general PA usually means
Peano arithmetic.)
For a more fine-grained result, let PA(i) be the set of true Σ
i PA statements, and PA(i, j) the set of true Σ
i PA statements with each quantifier block limited to j variables. '<' is considered to be quantifier-free; here, bounded quantifiers are counted as quantifiers.
PA(1, j) is in P, while PA(1) is NP-complete.
For i > 0 and j > 2, PA(i + 1, j) is
ΣiP-complete. The hardness result only needs j>2 (as opposed to j=1) in the last quantifier block.
For i>0, PA(i+1) is
ΣiEXP-complete.
Short
Presburger Arithmetic (
) is
complete (and thus NP complete for
). Here, 'short' requires bounded (i.e.
) sentence size except that integer constants are unbounded (but their number of bits in binary counts against input size). Also,
two variable PA (without the restriction of being 'short') is NP-complete. Short
(and thus
) PA is in P, and this extends to fixed-dimensional parametric integer linear programming.
Applications
Because Presburger arithmetic is decidable,
automatic theorem provers for Presburger arithmetic exist. For example, the
Coq and
Lean proof assistant systems feature the tactic ''omega'' for Presburger arithmetic and the
Isabelle proof assistant contains a verified quantifier elimination procedure by . The double exponential complexity of the theory makes it infeasible to use the theorem provers on complicated formulas, but this behavior occurs only in the presence of nested quantifiers: describe an automatic theorem prover that uses the
simplex algorithm on an extended Presburger arithmetic without nested quantifiers to prove some of the instances of quantifier-free Presburger arithmetic formulas. More recent
satisfiability modulo theories solvers use complete
integer programming techniques to handle quantifier-free fragment of Presburger arithmetic theory.
Presburger arithmetic can be extended to include multiplication by constants, since multiplication is repeated addition. Most array subscript calculations then fall within the region of decidable problems.
[For example, in the ]C programming language
C (''pronounced'' '' – like the letter c'') is a general-purpose programming language. It was created in the 1970s by Dennis Ritchie and remains very widely used and influential. By design, C's features cleanly reflect the capabilities of ...
, if a
is an array of 4 bytes element size, the expression a /code> can be translated to abaseadr+i+i+i+i
, which fits the restrictions of Presburger arithmetic.
This approach is the basis of at least five proof-of-
correctness systems for
computer programs
A computer program is a sequence or set of instructions in a programming language for a computer to Execution (computing), execute. It is one component of software, which also includes software documentation, documentation and other intangibl ...
, beginning with the
Stanford Pascal Verifier in the late 1970s and continuing through to Microsoft's Spec# system of 2005.
Presburger-definable integer relation
Some properties are now given about integer
relations definable in Presburger Arithmetic. For the sake of simplicity, all relations considered in this section are over non-negative integers.
A relation is Presburger-definable if and only if it is a
semilinear set.
A unary integer relation
, that is, a set of non-negative integers, is Presburger-definable if and only if it is ultimately periodic. That is, if there exists a threshold
and a positive period
such that, for all integer
such that
,
if and only if
.
By the
Cobham–Semenov theorem, a relation is Presburger-definable if and only if it is definable in
Büchi arithmetic of base
for all
. A relation definable in Büchi arithmetic of base
and
for
and
being
multiplicatively independent integers is Presburger definable.
An integer relation
is Presburger-definable if and only if all sets of integers that are definable in first-order logic with addition and
(that is, Presburger arithmetic plus a predicate for
) are Presburger-definable. Equivalently, for each relation
that is not Presburger-definable, there exists a first-order formula with addition and
that defines a set of integers that is not definable using only addition.
Muchnik's characterization
Presburger-definable relations admit another characterization: by Muchnik's theorem. It is more complicated to state, but led to the proof of the two former characterizations. Before Muchnik's theorem can be stated, some additional definitions must be introduced.
Let
be a set, the section
of
, for
and
is defined as
:
Given two sets
and a of integers
, the set
is called
-periodic in
if, for all
such that
then
if and only if
. For
, the set
is said to be in
if it is for some
such that
:
Finally, for
let
:
denote the cube of size
whose lesser corner is
.
Intuitively, the integer
represents the length of a shift, the integer
is the size of the cubes and
is the threshold before the periodicity. This result remains true when the condition
:
is replaced either by
or by
.
This characterization led to the so-called "definable criterion for definability in Presburger arithmetic", that is: there exists a first-order formula with addition and a predicate
that holds if and only if
is interpreted by a Presburger-definable relation. Muchnik's theorem also allows one to prove that it is decidable whether an
automatic sequence accepts a Presburger-definable set.
See also
*
Robinson arithmetic
*
Skolem arithmetic
References
Bibliography
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*, see for an English translation
*
*
*
*
*
*
{{Refend
External links
A complete Theorem Prover for Presburger Arithmeticby Philipp Rümmer
1929 introductions
Formal theories of arithmetic
Logic in computer science
Proof theory
Model theory