LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::spn::SpnInvariants Struct Reference

The invariant basis of a net, in PLACE-LEVEL coordinates: one level per (place, class) pair, place-major, level l = pp * nclasses + k for place pp and class k (both 0-based), exactly the (pp - 1) * R + k layout of the reference. More...

#include <line/api/spn/spn_sinvariants.h>

Collaboration diagram for line::spn::SpnInvariants:

Public Attributes

std::vector< std::size_t > places
 1-based node indices of the places, in level order.
std::vector< std::vector< long long > > S
 S[i][l]: weight of place level l in minimal-support invariant i.
std::vector< long long > V
 V = S m0, the load vector.
std::vector< long long > m0
 The initial marking the load vector was taken against, per level.
std::size_t nclasses = 1
 The class count R the levels are laid out with (a port-only helper).

Detailed Description

The invariant basis of a net, in PLACE-LEVEL coordinates: one level per (place, class) pair, place-major, level l = pp * nclasses + k for place pp and class k (both 0-based), exactly the (pp - 1) * R + k layout of the reference.

A single-class net has one level per place.

Definition at line 62 of file spn_sinvariants.h.

Member Data Documentation

◆ m0

std::vector<long long> line::spn::SpnInvariants::m0

The initial marking the load vector was taken against, per level.

Definition at line 70 of file spn_sinvariants.h.

Referenced by line::spn::spn_lpbnd(), and line::spn::spn_sinvariants().

◆ nclasses

std::size_t line::spn::SpnInvariants::nclasses = 1

The class count R the levels are laid out with (a port-only helper).

Definition at line 72 of file spn_sinvariants.h.

Referenced by line::spn::spn_sinvariants().

◆ places

std::vector<std::size_t> line::spn::SpnInvariants::places

1-based node indices of the places, in level order.

Definition at line 64 of file spn_sinvariants.h.

Referenced by line::spn::spn_sinvariants().

◆ S

std::vector<std::vector<long long> > line::spn::SpnInvariants::S

S[i][l]: weight of place level l in minimal-support invariant i.

Definition at line 66 of file spn_sinvariants.h.

Referenced by line::spn::spn_conv(), line::spn::spn_lpbnd(), and line::spn::spn_sinvariants().

◆ V

std::vector<long long> line::spn::SpnInvariants::V

V = S m0, the load vector.

Definition at line 68 of file spn_sinvariants.h.

Referenced by line::spn::spn_conv(), and line::spn::spn_lpbnd().


The documentation for this struct was generated from the following file: