Vector addition system

From HandWiki
Revision as of 15:33, 6 February 2024 by JMinHep (talk | contribs) (over-write)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Short description: Mathematical modeling language

A vector addition system (VAS) is one of several mathematical modeling languages for the description of distributed systems. Vector addition systems were introduced by Richard M. Karp and Raymond E. Miller in 1969,[1] and generalized to vector addition systems with states (VASS) by John E. Hopcroft and Jean-Jacques Pansiot in 1979.[2] Both VAS and VASS are equivalent in many ways to Petri nets introduced earlier by Carl Adam Petri.

Example of a vector addition with states. In this VASS, e.g., q(1,2) can be reached from p(0,0), but q(0,0) cannot be reached from p(0,0).

Reachability in vector addition systems is Ackermann-complete (and hence nonelementary).[3][4]

Informal definition

A vector addition system consists of a finite set of integer vectors. An initial vector is seen as the initial values of multiple counters, and the vectors of the VAS are seen as updates. These counters may never drop below zero. More precisely, given an initial vector with non negative values, the vectors of the VAS can be added componentwise, given that every intermediate vector has non negative values. A vector addition system with states is a VAS equipped with control states. More precisely, it is a finite directed graph with arcs labelled by integer vectors. VASS have the same restriction that the counter values should never drop below zero.

Formal definitions and basic terminology

  • A VAS is a finite set [math]\displaystyle{ V \subseteq \mathbb{Z}^d }[/math] for some [math]\displaystyle{ d \geq 1 }[/math].
  • A VASS is a finite directed graph [math]\displaystyle{ (Q, T) }[/math] such that [math]\displaystyle{ T \subseteq Q \times \mathbb{Z}^d \times Q }[/math] for some [math]\displaystyle{ d \gt 0 }[/math].

Transitions

  • Let [math]\displaystyle{ V \subseteq \mathbb{Z}^d }[/math] be a VAS. Given a vector [math]\displaystyle{ u \in \mathbb{N}^d }[/math], the vector [math]\displaystyle{ u + v }[/math] can be reached, in one transition, if [math]\displaystyle{ v \in V }[/math] and [math]\displaystyle{ u + v \in \mathbb{N}^d }[/math].
  • Let [math]\displaystyle{ (Q, T) }[/math] be a VASS. Given a configuration [math]\displaystyle{ (p, u) \in Q \times \mathbb{N}^d }[/math], the configuration [math]\displaystyle{ (q, u + v) }[/math] can be reached, in one transition, if [math]\displaystyle{ (p, v, q) \in T }[/math] and [math]\displaystyle{ u + v \in \mathbb{N}^d }[/math].

See also

References

  1. Karp, Richard M.; Miller, Raymond E. (May 1969). "Parallel program schemata". Journal of Computer and System Sciences 3 (2): 147–195. doi:10.1016/S0022-0000(69)80011-5. 
  2. Hopcroft, John E.; Pansiot, Jean-Jacques (1979). "On the reachability problem for 5-dimensional vector addition systems". Theoretical Computer Science 8 (2): 135–159. doi:10.1016/0304-3975(79)90041-0. 
  3. Czerwiński, Wojciech; Orlikowski, Łukasz (2021). "Reachability in Vector Addition Systems is Ackermann-complete". 2021 IEEE 62nd Annual Symposium on Foundations of Computer Science (FOCS). 
  4. Leroux, Jérôme (2021). "The Reachability Problem for Petri Nets is Not Primitive Recursive". 2021 IEEE 62nd Annual Symposium on Foundations of Computer Science (FOCS).