6

Both. Only one transition being able to fire at a time is known as interleaving semantics. Multiple transitions firing simultaneously is known as step semantics. Some people doing concurrency theory only call the latter real concurrency, and they care deeply about the difference; I'm sure the difference has consequences, but I've worked with Petri nets and ...


4

Since you are interested in generating test sequences automatically using colored Petri nets, note that it's not clear that you need reduction to control flow graphs (and dealing with all the related issues). Some techniques were presented, that use various different methods to generate test sequences from Petri nets. Some examples include: H. Watanabe and ...


4

I'm not sure how to approach your particular problem, but here is an attempt. Consider the recipe you are using as a collection of steps, some of which depend on others; for a salad you might have "make dressing", "shred lettuce", "slice cucumber" etc. The dependencies are given through resources, which here are ingredients, possibly in some processed state,...


3

To answer your first question: An attempt to explain Petri nets in terms some 10-year olds will understand (see, for instance, Murata's well-known description): A Petri net is a diagram that consists of three kinds of elements. We call them transitions, places, and arcs. In the example above, the transitions are green boxes and the places are white rounds. ...


3

A net without place does have "state", or a marking in proper terminilogy; as that is a mapping from the set of places into $\Bbb N$, technically this does exist even when the set of places is empty (as a kind of empty relation). A net with one place and one transition can even change state. If the transition has an outgoing arrow to the place, the ...


2

Here are three examples that exhibit the properties you wondered about. The background colour of every enabled transition is green. The background colour of every non-enabled transition is white – the same background colour as the rest of the corresponding diagram. The Petri Net and its initial marking in Figure 1 is quasi-live. It is not live because after ...


2

For the given Petri Net, the number of tokens for P_1,P_2 and P_3 is represented by m_1,m_2 and m_3 respectively. Based on the definition of boundedness of a Petri Net by Popova-Zeugmann (2013), the given Petri Net is bounded because m_1 ≤ 2,m_2 ≤ 2 and m_3 ≤ 2. In other words, there is a natural number (2 in this case) such that the number of tokens in ...


2

I do not know if there is a variant of Petri nets that captures your intent exactly -- there probably is, there are so many -- but the feature can be expressed with regular Petri nets. Just add a transition that creates tokens in multiple places, one per original transitions. Then, all three follow-up transitions can fire after the preceding one is done. ...


2

If you find it challenging to apply Petri Nets in modeling an application then it may help to consider the following mapping between the types of words found in a text description of an application with the types of Petri Net elements found in a Petri Net diagram of the application: Nouns are candidates for places. Verbs are nominees for transitions (and/or ...


2

Generally, the idea of a (normal) petri-net is to efficiently represent a system to model an arbitrary amount of 'agents' that change their state depending on certain transitions. (This would quite quickly get out of hand in a state machine) So, the basic strategy is to first determine what your 'agents' are and model them as your tokens. The state of an ...


2

The literature on Petri nets has many papers that really aim to teach the concepts used. In the case of free-choice Petri net, such an introduction can be found in the paper Structure Theory of Petri Nets: the Free Choice Hiatus by Eike Best, in the ACPN (Advanced Course on Petri Nets) 1986. (An online copy is here.) If anywhere, the intuition behind free-...


2

Timed automaton case: Here, a state is typically composed of the current location and the values of all clock variables. Thus, timed automata induce transition systems with an infinite number of states. The usual approach in this context is thus to build a finite representation of this state set, which is a finite transition system. In the paper "An ...


1

Why can't you find a live and safe marking? Number the transitions from left to right $t_1,t_2,t_3,t_4,t_5$ and the places from left to right $p_1, \ldots, p_{12}$, We need to find a firing sequence that is possible, fires all transitions at least once, has net effect zero, and never produces an unsafe marking. It doesn't matter where we start: if the net ...


1

Petri-nets are e.g. used for Businees Process Modeling with BPMN. Of course Petri Nets are an abstract idea that lends itself to modelling a wide variety of dynamic and/or distributed systems - but especially for business processes, the provable reachability, liveness and boundedness are useful properties.


1

When I use Petri nets or explain them to others, my general policy in naming places and transitions is to use a phrase of the form <noun phrase> <predicate> whenever possible. A token is a subject described by the phrase. A place represents a condition the subject may be in. For instance: An item is in store. The order is being processed. The ...


1

Yes. Firing the transition just consumes one token from each of its input places.


1

For standard Petri nets, configuration, state and marking are the same thing. The term marking is standard. State is probably best avoided, as novices may confuse it with place. For extended Petri nets (e.g. timed Petri nets), a configuration may contain more information than just a marking.


1

Another way to model your situation with Petri Nets would be to use an arc with weight as shown below. However in the "traditional way" of interpreting a Petri Net, only one enabled transition will be chosen for firing at a time. Thus you must include in your model the method of interpreting your Petri Net when there is more than one enabled transition. In ...


1

In order to prevent a loop from running forever you need to either keep track of how many times you've performed the loop using a loop counter change the conditions of your state machine inside the loop so that you ensure it will stop at some point.


1

One of the resources I used to teach myself about Petri Nets was the chapters on Petri Nets in the textbook “Petri Nets and Grafcet: Tools for Modeling Discrete-Event Systems” (David and Alla, 1992). An example process and a Petri Net model of the process may help you answer your first two questions (Chenier, 2016). Thus I am including the following, a ...


1

Unboundedness can be studied from a fixed initial marking (=state). Then you want to find a state that is reachable, by firing transitions, but larger than the initial one. You mention both states s1=(2,0,0) and s2=(2,0,1), which is in the picture. The problem is that I do not see how either one can be reached from the other. So, start in the initial ...


1

If you're looking for a single model that describes all relevant aspects of your system, you'll have a hard time. And building the model will take as much effort as implementing the system itself, if not more. Therefore, break the system down into different aspects, and consider different modelling techniques for each. Examples for aspects might be: The ...


Only top voted, non community-wiki answers of a minimum length are eligible