LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Toggle main menu visibility
Loading...
Searching...
No Matches
soundness_report.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2012-2026, QORE Lab, Imperial College London
3
* All rights reserved.
4
*/
5
#ifndef LINE_API_WFN_SOUNDNESS_REPORT_H
6
#define LINE_API_WFN_SOUNDNESS_REPORT_H
7
8
/**
9
* @file
10
* @ingroup api_wfn
11
* The report of `WorkflowNet::check_soundness`.
12
*
13
* Markings are row vectors over the places, in the order of
14
* `WorkflowNet::places()`.
15
*
16
* MATLAB twin: the `report` struct of matlab/src/api/wfn/WorkflowNet.m checkSoundness
17
*/
18
19
#include <cstddef>
20
#include <string>
21
#include <vector>
22
23
namespace
line
{
24
namespace
wfn
{
25
26
struct
SoundnessReport
{
27
typedef
std::vector<long>
Marking
;
28
29
/** The first output of MATLAB's checkSoundness: true only when the verdict is "sound". */
30
bool
sound
=
false
;
31
long
k
= 1;
32
/** "sound", "unsound" or "unknown" (state cap reached first). */
33
std::string
verdict
=
"unknown"
;
34
std::size_t
state_space_size
= 0;
35
std::vector<Marking>
deadlocks
;
36
std::vector<Marking>
no_option_to_complete
;
37
std::vector<Marking>
improper_completion
;
38
std::vector<std::string>
dead_transitions
;
39
bool
unbounded
=
false
;
40
Marking
unbounded_witness
;
41
bool
unbounded_or_too_large
=
false
;
42
/** One readable line per defect. */
43
std::vector<std::string>
witnesses
;
44
};
45
46
}
// namespace wfn
47
}
// namespace line
48
49
#endif
// LINE_API_WFN_SOUNDNESS_REPORT_H
line::wfn
Definition
soundness_report.h:24
line
Conservation laws of a layered queueing network, enumerated from its structure.
Definition
aoi_dist2ph.h:52
line::wfn::SoundnessReport
Definition
soundness_report.h:26
line::wfn::SoundnessReport::improper_completion
std::vector< Marking > improper_completion
Definition
soundness_report.h:37
line::wfn::SoundnessReport::deadlocks
std::vector< Marking > deadlocks
Definition
soundness_report.h:35
line::wfn::SoundnessReport::unbounded
bool unbounded
Definition
soundness_report.h:39
line::wfn::SoundnessReport::unbounded_or_too_large
bool unbounded_or_too_large
Definition
soundness_report.h:41
line::wfn::SoundnessReport::no_option_to_complete
std::vector< Marking > no_option_to_complete
Definition
soundness_report.h:36
line::wfn::SoundnessReport::dead_transitions
std::vector< std::string > dead_transitions
Definition
soundness_report.h:38
line::wfn::SoundnessReport::sound
bool sound
The first output of MATLAB's checkSoundness: true only when the verdict is "sound".
Definition
soundness_report.h:30
line::wfn::SoundnessReport::witnesses
std::vector< std::string > witnesses
One readable line per defect.
Definition
soundness_report.h:43
line::wfn::SoundnessReport::state_space_size
std::size_t state_space_size
Definition
soundness_report.h:34
line::wfn::SoundnessReport::Marking
std::vector< long > Marking
Definition
soundness_report.h:27
line::wfn::SoundnessReport::verdict
std::string verdict
"sound", "unsound" or "unknown" (state cap reached first).
Definition
soundness_report.h:33
line::wfn::SoundnessReport::k
long k
Definition
soundness_report.h:31
line::wfn::SoundnessReport::unbounded_witness
Marking unbounded_witness
Definition
soundness_report.h:40
include
line
api
wfn
soundness_report.h
Generated by
1.18.0