LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
spn_properties.h File Reference

Aggregate Petri-net property analysis: P- and T-invariants, minimal siphons and traps with Commoner's condition, the LP structural checks and net classes, and the reachability-graph verdicts, all at one initial marking. More...

#include <cstddef>
#include <string>
#include <vector>
#include "line/api/spn/spn_reachprops.h"
#include "line/api/spn/spn_siphons.h"
#include "line/api/spn/spn_sinvariants.h"
#include "line/api/spn/spn_structprops.h"
#include "line/api/spn/spn_tinvariants.h"
#include "line/api/spn/spn_traps.h"
Include dependency graph for spn_properties.h:

Go to the source code of this file.

Classes

struct  line::spn::SpnProperties

Namespaces

namespace  line
 Conservation laws of a layered queueing network, enumerated from its structure.
namespace  line::spn

Functions

template<class T>
SpnProperties line::spn::spn_properties (const qn::NetworkStruct< T > &sn, const std::vector< double > &init=std::vector< double >(), std::size_t maxstates=0)

Detailed Description

Aggregate Petri-net property analysis: P- and T-invariants, minimal siphons and traps with Commoner's condition, the LP structural checks and net classes, and the reachability-graph verdicts, all at one initial marking.

Two structural verdicts are derived when the net is monotone (ignored empty; inhibitor arcs, priorities and mixed timed/immediate events void the structural theorems): structdeadlockfree = 1 when the net is ordinary and Commoner holds (a deadlock empties a siphon; Murata 1989, Thm. 26-27), else -1; structlive = 1 for an asymmetric-choice net with Commoner, 0 for an extended free-choice net without it (Commoner/Hack), else -1. MATLAB twin: matlab/src/api/spn/spn_properties.m.

Definition in file spn_properties.h.