ArticleslgStudy

computer science

Vector addition system

Vector addition system is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Vector addition system rather than just read about it. In short: 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.

Vector addition system — main illustration
Vector addition system — illustration

Key takeaways

  • Vector addition system belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Vector addition system to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Vector addition system from memory before moving on to harder problems.

Reference excerpt

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, and generalized to vector addition systems with states (VASS) by John E. Hopcroft and Jean-Jacques Pansiot in 1979. Both VAS and VASS are equivalent in many ways to Petri nets introduced earlier by Carl Adam Petri.

Informal definition A vector addition system consists of a finite set of integer vectors with all vectors having the same length. 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. Vector addition systems can be seen as a weak counter machine, which is unable to test that a counter is zero (but it can verify that a counter is positive, by trying to decrement it. If the test fails, execution terminates).

Formal definitions and basic terminology A VAS is a finite set V ⊆ Z d {\displaystyle V\subseteq \mathbb {Z} ^{d}} for some d ≥ 1 {\displaystyle d\geq 1} . A VASS is a finite directed graph ( Q , T ) {\displaystyle (Q,T)} such that T ⊆ Q × Z d × Q {\displaystyle T\subseteq Q\times \mathbb {Z} ^{d}\times Q} for some d > 0 {\displaystyle d>0} .

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

VASS and VAS A VAS is obviously a special case of VASS. On the other hand, a VASS of dimension n can be simulated by a VAS of dimension n+3, as shown by Hopcroft and Pansiot. In this system, the additional three coordinates encode the state. Each transition of the VASS is simulated by a sequence of three VAS transitions, where the first two just manipulate the state-encoding coordinates.

VASS and Petri Nets A Petri net can be seen as a VASS: consider a Petri net ( S , T , W ) {\displaystyle (S,T,W)} , where

S = { 1 , … , n } {\displaystyle S=\{1,\dots ,n\}} is a finite set of places T is a finite set of transitions

W : ( S × T ) ∪ ( T × S ) → N {\displaystyle W:(S\times T)\cup (T\times S)\to \mathbb {N} } specifies the number of tokens that a transition consumes and produces. Then a marking of the net can be seen as a vector in N d {\displaystyle \mathbb {N} ^{d}} , where d = | S | {\displaystyle d=|S|} , and a transition t as a pair of VASS transitions ( p , v , q ) , ( q , v ′ , p ) {\displaystyle (p,v,q),(q,v',p)} where q is an auxiliary control state, v i = − W ( i , t ) {\displaystyle v_{i}=-W(i,t)} and

v j ′ = W ( t , j ) {\displaystyle v'_{j}=W(t,j)} . Similarly, a VAS can be formulated as a Petri net.

Properties of VAS(S) and Decision Procedures

… excerpt ends here. Continue reading the full article.

Illustrations

Vector addition system: 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).
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).

Worked examples

Example 1 — a first encounter with Vector addition system

Start with the simplest possible case. Write down what Vector addition system claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Vector addition system before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Vector addition system ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Vector addition system

In research
Vector addition system appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Vector addition system in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Vector addition system is common in secondary-school and first-year university syllabi. It links to neighbouring topics Concurrency (computer science), Diagrams, Formal specification languages, so understanding it makes those chapters shorter.
In everyday life
Look for Vector addition system outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Vector addition system in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Vector addition system means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Vector addition system out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Vector addition system in simple terms?

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.

Why does Vector addition system matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Vector addition system?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Vector addition system.

Tags

  • Concurrency (computer science)
  • Diagrams
  • Formal specification languages
  • Models of computation
  • Petri nets
  • Software modeling language

Keep exploring