pev_include.h
Go to the documentation of this file.
1 /** @file pev_include.h Include priorities plug-in headers */
2 
3 /*
4  ****************************************************
5  Convenience header file that includes all headers
6  relevant to the priorities plugin. The build system will
7  append an include directive for this file to
8  the "allplugins.h" include file.
9 
10  (c) Thomas Moor 2025
11  ****************************************************
12  */
13 
14 #ifndef FAUDES_PEV_INCLUDE_H
15 #define FAUDES_PEV_INCLUDE_H
16 
17 #include "pev_priorities.h"
18 #include "pev_pgenerator.h"
19 #include "pev_sparallel.h"
20 #include "pev_abstraction.h"
21 #include "pev_verify.h"
22 
23 
24 #endif
25 
26 
27 /**
28 
29 
30 @defgroup PrioritiesPlugin Priorities Plug-In
31 
32 
33 @ingroup AllPlugins
34 
35 
36 <p>
37 The priorities plug-in addresses systems with prioritised events. Technically, an event priority
38 is a non-negatie integer. Semantically, events of higher priority will preempt any event of lower
39 priority.
40 </p>
41 
42 <p>
43 As its base API, this plug-in provides
44 - the template faudes::TpEventSet for an alphabet of prioritised events,
45 - the template faudes::TpGenerator for a generator with prioritised events, and
46 - the function faudes::ShapePriorities to implement the premting effect for a given generator.
47 Usage should be fairly intuitive, see also the provided tutorials.
48 </p>
49 
50 <p>
51 Regarding algorithms, we provide the two function
52 - faudes::IsPNonconflicting and
53 - faudes::IsPFNonconflicting
54 Both functions implement a compositional approach to the verfication of non-conflictingness for the
55 parallel composition of multiple components with a global interpretation of preemption by event
56 priorities. Thechnical details have been reported in
57 </p>
58 
59 <p>
60 Y.&nbsp;Tang, T.&nbsp;Moor:
61 Compositional non-blockingness verification of finite automata with prioritised events,
62 <i>Discrete-Event Dynamic Systems</i>, 2024.
63 </p>
64 
65 <p>
66 
67 The code base is Yiheng Tang's original work with some later cos,etic extensions to address
68 consistent integration with libFAUDES and Lua bindings.
69 </p>
70 
71 
72 @section PevLicense License
73 
74 <p>
75 The priosities plugin is distributed with libFAUDES and under the terms of
76 the LGPL.
77 </p>
78 <br>
79 <br>
80 <br>
81 <p>
82 Copyright (c) 2024,2025, Yiheng Tang, Thomas Moor.
83 </p>
84 
85 
86 */

libFAUDES 2.33b --- 2025.05.07 --- c++ api documentaion by doxygen