The FMC Glossary gives an overview of the most common terms used and defined within the Fundamental Modeling Concpepts (FMC). Along with each term an explanantion as well as the German counterpart is given. The glossary is arranged in alphabetical order. At the end a table showing the German English translations supports in finding German terms faster. This text is also available as download (226.52kB).
Access of agents to locations. Can be categorized into read, write, or modifying access. With read access the information flows from location to agent, with write access the information flows from agent to location, and with modifying access it flows in both directions. 

Active system component serving a specific purpose. The behaviour of an agent can be observed in the locations connected with it as it processes thedata stored there. 

The weight of a directed arc that connects a place and a transition in a Petri net defines the number of tokens that, in case of firing of the transition, are taken from the place if it is an input place, or are put into the place if it is an output place. An arc weight is assigned to each arc, if it is not specified the default arc weight is one. 

Bipartite diagram type showing the compositional structure of a system. The node types are angular and rounded shapes. Angular shapes represent agents (active system components), rounded shapes represent locations (passive system components). 

The minimum and maximum number of elements of a set of entities that participate in a relation. 

Passive system component connected to at least two agents that can communicate through it. Information transported over a channel is volatile. 

Abstraction of distinct concrete objects with similar qualities. 

Static structure of a system that describes the active and passive system components and the connections between them. Block diagrams are used to depict compositional structure. 

Number of transitions in a Petri net which are independently enabled. 

Two activities, or operations, are concurrent when they are causally independent from each other. They can therefore occur simultaneously or in arbitrary order. 

Petri net whose places all have a capacity of one. The places of a conditionevent net can be seen as statements that are either true or false according to their marking state. The firing of a transition is called an event because it makes some statements false (places lose their marking) and others true (places get marked). For a transition to be enabled certain statements have to be true (corresponding places are marked), hence these are called conditions. 

Marking of a Petri net in which the firing of one transition disables another transition. 

An automaton that is the part of the discrete control loop which coordinates the order of operations. It cannot execute them but instructs the data path to do so. It reflects the control state of an automaton. 

In a discrete control loop, the state of the automaton is split into control state and data path state. The value range of a control state can only be defined by explicitly listing all values and all value transitions. The control state is incorporated by the controller and it is crucial for the behaviour of the automaton. 

An automaton that is the part of the discrete control loop which is able to perform certain operations and output their results. Instructions about which operation to be performed next is given by the controller. The data path does not know anything about the order of operations. It reflects the data path state of an automaton. 

In a discrete control loop, the state of the automaton is split into control state and data path state. The value range of the data path state can be defined without explicitly listing all values, for example by giving upper and lower bounds. The data path state is the current state of all values handled by the data path. 

A system model for handling the complexity of a large amount of states in an automaton. These are split into control and data path state. Therefore the d.c.l. system structure consists of a controller and a data path. Both are connected via two directed channels: one for passing instructions from the controller to the data path and a channel for returning the results of an operation to allow the controller to make conditional decisions. Figure 1: Block diagram of a discrete control loop 

Description of system behaviour summarizing the causal dependencies of operations, activities and events of that system. Dynamic structure is expressed using Petri nets. 

Bipartite graph used to describe value range structures and topic diagrams. The node types are angular and rounded shapes. Rounded shapes represent entity sets and angular shapes represent the relations between them. E/R diagrams whose entities are values describe value range structures. The entities in E/R diagrams that are topic plans can be of any type. 

A transition in a petri net is enabled (ready to fire), if it meets two requirements:


An object that can be identified. Entities and sets of entities are represented using entity relationship diagrams. 

FMC system descriptions consider the system itself as well as its environment. All agents and locations that are not part of the system in question but are nevertheless relevant for system description belong to the environment. Example: The user agent, which belongs to the environment, is regarded in the description of System X. Figure 2: User as part of the system environment 

Change of a value stored in a location. Each event occurs exactly at one point in time. 

Communication where the relevant information is not its content but the time of occurrence. Event communication between agents in a Petri net is represented by a flow of tokens between the agents' swim lanes. 

The firing of a transition implies that this transition is enabled. Then, as many tokens as the arc weight specifies are taken from each input place; to each output place the number of tokens specified by its arc weight is added. 

Defines the valid changes of the marking of a petri net. It is used to transform the initial marking into other markings. The firing rule consists of two parts, the definition of firing and the definition of enabledness. 

Injective mapping between two sets and thus a mathematical term. It should not be confound with procedures or so called function procedures of programming languages which are a set of instructions describing an algorithm. 

The initial marking of a Petri net defines how many tokens each place contains at the beginning of the processing. The number of tokens per place may not exceed the place's capacity. 

The input place of a transition in a Petri net is a place which is connected to the transition by a directed arc that points towards the transition. Transitions can have any number of input places. 

Used to illustrate layerings, i e, quadratic relations. Members of the basic set thus appear in two different, usually hierarchically distinct, roles in the relation: If the basic set consists of procedures in a computer program and the relation is "A calls B" procedures can assume the role of the caller or the callee. Example: Procedure A calls B and C, procedure C calls D, procedure D calls itself (recursion). Figure 3: Example layer diagram 

Occupancy of a place in a Petri net with tokens. The marking of a Petri net follows from the markings of its places. 

Graphs consist of nodes and arcs. Nodes are generally represented as circles or squares, arcs as lines connecting the nodes. 

Directed acyclic graph containing occurrences of firing of transitions. Every concrete processing of a Petri net can be described with one and only one occurrence sequence. Each node in this sequence represents the firing of one transition (occurrence). Two nodes are connected by an arc if and only if the firing of one transition (arc source) can be followed immediately by the firing of the second transition (arc target) and they cannot be fired concurrently. If there is a conflict it must be solved resulting in different processings of the Petri net and thus different occurrence sequences. 

Elementary activity an agent can perform. It includes at least one write access to a location and arbitrary read access. 

The output place of a transition in a Petri net is a place which is connected to the transition by a directed arc that points towards the place. Transitions can have multiple output places. 

A partition of the set A is a set B whose elements are disjoint, nonnull subsets of A. Each element of A has to be contained in exactly one element of B. 

Different partitions of an entity are orthogonal to each other if the criteria by which they have been classified are independent. Example: orthogonal partition of the entity "Human Being" by criteria gender and age: Figure 4: Example for a partition 

A directed bipartite graph describing causal dependencies between events, operations, and activities, and thus defining a process type. By firing the graph's transitions in any possible order discrete sequences of those elements can be generated, the socalled "occurrence sequences". Hence, Petri nets are also referred to as generators. 

Node in a Petri net representing a control state or another condition, e.g. event communication. 

A subnet of a Petri net is placebordered, if when entering the subnet, the first element is a place and when leaving the subnet, the immediately next is a transition. Placebordered subnets can often be combined to a single place. Example: The following subnet between the transitions A and D is placebordered because its first element is a place and the immediately next, after the subnet, is a transition. Figure 5: Example placebordered placetransition net 

Placetransition nets are conditionevent nets extended by
Note: In the Context of FMC the term "placetransition net" is rarely used. The term "Petri net" however always refers to graphs being placetransition nets. 

System consisting of hard and software components that becomes a role system by introducing a processible role description. 

Procedures describes an algorithm using instructions. Special types of procedures are so called function procedures which must have a return value. Function and function procedure should not be confound 

The purpose of a processoriented system is its process and not a calculated result, e.g. a computer game. 

Petri net associated with a corresponding program text making it possible to identify each place in the net with a line of code in the text.


An agent of a platform that executes a program. The platform thereby becomes the system specified in the program. 

Relation between models of the same type, which does not have to be formal. Refinements show more information and a more detailed depiction of structures, respectively, and represent a step towards implementation. 

Interpretation of a concrete relation as an entity Example: If ,is married to" is modeled as relation between a man and a woman one can reify the relation and introduce it as the entity couple in another relation. Figure 6: Example reification 

The purpose of a resultoriented program is a calculated end result and not the processing, e g, a square root program. 

Return places, besides stack places and stack tokens, are used to model recursion in Petri nets. A return place is always input place for at least two transitions that also have stack places as input places. This results in potential conflicts because the token in the return place can only be used for one transition. This conflict is solved by the token that was put on the stack places last. 

Multitoken place used besides return places and stack tokens to model recursion in Petri nets. Stack places are marked by stack tokens and are always input places for transitions that additionally have a return place as input place. 

Tokens of a stack place used besides stack and return places to model recursion in Petri nets. They are called stack tokens because, although placed on several stack places, their order of placement is managed in a single stack. If there is a conflict involving a return place the stack token on top of the (placement) stack is released and the associated transition is fired. 

Persistent information storage available to at least one agent. 

A structure is a construct of sets and relations containing at least one set and one relation. 

The change in system structure within a "relevant" lapse of time. Passive components (storage) are converted into active ones (agents) or vice versa. 

The set of all transitions in a Petri net fired by the same agent. 

System components are active if they show a behaviour, i e, perform operations. 

A continuous system is characterised by the fact that the value ranges for observation results in observed places are continuous. 

A discrete system is characterised by the fact that the value ranges for observation results in observed places are continuous. 

A concrete, or at least conceivable, thing showing observable behaviour. This behaviour can be seen as the result of the system components' interaction. 

A system is called informational if the essential point of the issues that are observed in different places in the system is not their material or energetic appearance but their interpretation. 

Basic element of a Petri net's marking. The readiness to fire of a transition requires that the transition's input places contain sufficient tokens. 

Diagram describing relationships between entities of arbitrary type using E/R diagram notation. 

A transition is a node in a Petri net and represents an event, operation, or activity. 

A subnet of a Petri net is transitionbordered if when entering the subnet the first element is a transition and when leaving the subnet the immediately next is a place. Transitionbordered subnets can be possibly combined to a single transition. Example: The following subnet is transitionbordered because its first element is a transition and the immediately next is a place. Figure 7: Example transitionbordered 

Communication where the relevant information is the content and not the time of occurrence. 

The sequence (continuous or discrete in time) of values occurring in an observed place of a system. 

The set of all information (obtained by interpretation of forms) that can be observed in an informational system at any given time. A value range can be unstructured or structured. Well known unstructured value ranges are BOOLEAN and INTEGER. 

Values from a structured range must contain at least one set and one relation. Every value of a structured range is a structure, hence the range is a set of structures. Because of their great cardinality these sets cannot be enumerated in practice. Therefore, structured value ranges are best described by entity relationship diagrams (ERDs). 