Closed mgieseking closed 4 years ago
Text for the model checking approach:
AdamMC is a model checker for asynchronous distributed systems modeled with Petri nets with transits and specifications given in Flow-LTL.
Petri nets with transits extend standard Petri nets with a transit relation to model the local data flow in asynchronous distributed systems in addition to the global control flow. Flow-LTL is a specification language for Petri nets with transits and allows to specify linear properties on both the global and the local view of the system. Especially, it is possible to globally select with LTL desired runs of the system (e.g., only fair and maximal runs) and check the local data flow of only those selected runs against LTL.
Internally the problem is reduced to a verification problem of circuits which is checked by ABC with its large toolbox of hardware verification algorithms. Software defined networks are due to the separation of data and control plane a natural application domain for Petri nets with transits and Flow-LTL.
AdamSYNT is a synthesizer for asynchronous distributed systems modeled with Petri games.
Petri games extend Petri nets with a game semantics. The tokens of the net are the players in the game. Players remember their own causal past and do not know nothing about the others as long as they do not communicate (participating on a joint transition). During a communication all information is passed to all participating players. For local safety winning conditions, the synthesis problem for Petri games with a bounded number of controllable components and one uncontrollable components is solved, i.e., a local controller for each component is created iff a solution exists.
Internally, the problem is reduced to a two-player game over a finite graph with complete information and BDD solving algorithms are used to obtain a strategy.
Thanks :) I have put it on the homepage as of 0658c9122e60a8cb4bae7d44f88698006f8a8f5b. Here is a screenshot:
I added the links to the documentations for the approaches by editing the comments above.
All right, I put them in there :)
Improve the introductory page with some general texts and large links to the two approaches and the tutorials (see #36 )