Petri nets as Executable Specifications of High-Level Timed Parallel Systems


Franck Pommereau


We propose to use high-level Petri nets as a model for the semantics of high-level parallel systems. This model is known to be useful for the purpose of verification and we show that it is also executable in a parallel way. Executing a Petri net is not difficult in general but more complicated in a timed context, which makes necessary to synchronise the internal time of the Petri net with the real time of its environment. Another problem is to relate the execution of a Petri net, which has its own semantics, to that of its environment; i.e., to properly handle input/output.

This paper presents a parallel algorithm to execute Petri nets with time, enforcing the even progression of internal time with respect to that of the real time and allowing the exchange of information with the environment. We define a class of Petri nets suitable for a parallel execution machine which preserves the step sequence semantics of the nets and ensures time consistent executions while taking into account the solicitation of its environment. The question of the efficient verification of such nets has been addressed in a separate paper (see [F. Pommereau, Causal Time Calculus, FORMATS'03. LNCS 2791, Springer, 2004.]), the present one is more focused on the practical aspects involved in the execution of so modelled systems.


Special Issue