About
User Reference
C++ API
luafaudes
Developer
Links
libFAUDES online
libFAUDES

Sections

Index

CoordinationControl Plug-In
[PlugIns]

Functions

bool faudes::ccTrim (const Generator &gen, Generator &trimGen)
 A more efficient Trim() operation.
bool faudes::IsConditionalClosed (const GeneratorVector &specVect, const Generator &pk, const GeneratorVector &genVect, const Generator &gk)
 Conditionalclosedness Checking Algorithm.
bool faudes::IsConditionalControllable (const GeneratorVector &specVect, const Generator &pk, const GeneratorVector &genVect, const Generator &gk, const EventSet &ACntrl)
 Conditionalcontrollability Checking Algorithm.
bool faudes::IsConditionalDecomposable (const Generator &gen, const EventSetVector &rAlphabets, const EventSet &ek, Generator &proof)
 Conditionaldecomposability Checking Algorithm.

Detailed Description

License

This plug-in is distributed with libFAUDES and under the terms of the LGPL.

Copyright (c) 2011, Tomas Masopust.


Function Documentation

bool faudes::ccTrim ( const Generator &  gen,
Generator &  trimGen 
)

A more efficient Trim() operation.

Parameters:
gen The input generator to be trimmed
trimGen The trimmed generator
Returns:
True if the operation is successful
Exceptions:
Exception 
  • alphabets of generators don't match (id 100)
  • plant nondeterministic (id 201)
bool faudes::IsConditionalClosed ( const GeneratorVector &  specVect,
const Generator &  pk,
const GeneratorVector &  genVect,
const Generator &  gk 
)

Conditionalclosedness Checking Algorithm.

Checks whether a given language K is conditionally closed with respect to plants G_i, i=1,2,..,n. This algorithm implements the results obtained in

J. Komenda, T. Masopust, J. H. van Schuppen. Synthesis of controllable and normal sublanguages for discrete-event systems using a coordinator Systems & Control Letters 60(7), 492-502, 2011

K must be conditionally decomposable

Parameters:
specV Vector of generators representing the specification languages P_{i+k}(K), i=1,2,..,n
pk Generator for the coordinator part P_k(K)
genV Vecotr of generators for the plants G1,G2,..,Gn
gk Generator for the coordinator Gk
Returns:
True if K is conditionaly closed
Exceptions:
Exception 
  • alphabets of generators don't match (id 100)
  • plant nondeterministic (id 201)
bool faudes::IsConditionalControllable ( const GeneratorVector &  specVect,
const Generator &  pk,
const GeneratorVector &  genVect,
const Generator &  gk,
const EventSet &  ACntrl 
)

Conditionalcontrollability Checking Algorithm.

Checks whether a given language K over the union of alphabets is conditionally controllable with respect to the plant G. This algorithm implements the results obtained in

J. Komenda, T. Masopust, J. H. van Schuppen. Synthesis of Safe Sublanguages satisfying Global Specification using Coordination Scheme for Discrete-Event Systems WODES 2010

K must be conditionally decomposable

Parameters:
specV Vector of generators representing the specification languages P_{i+k}(K), i=1,2,..,n
pk Generator for the coordinator part P_k(K)
genV Vecotr of generators for the plants G1,G2,..,Gn
gk Generator for the coordinator Gk
ACntrl Event set of all controllable events
Returns:
True if K is conditionaly controllable
Exceptions:
Exception 
  • alphabets of generators don't match (id 100)
  • plant nondeterministic (id 201)
bool faudes::IsConditionalDecomposable ( const Generator &  gen,
const EventSetVector &  rAlphabets,
const EventSet &  ek,
Generator &  proof 
)

Conditionaldecomposability Checking Algorithm.

Checks whether a given language K over the union of alphabets is conditionally decomposable with respect to these alphabets and ek. This algorithm implements the results obtained in

J. Komenda, T. Masopust, J. H. van Schuppen. On Nonblockingness and Conditional Decomposability Manuscript

The generator gen must be deterministic, and ek must contain the intersection of all subalphabets and be included in their union.

Parameters:
gen Generator representing the language K, i.e., Lm(gen)=K
rAlphabets A vector of alphabets (at least two alphabets are required)
ek The alhabet Ek that contains intersection of other alphabets and is included in their union
proof A generator which gives the proof that the language K is NOT conditionally decomposable
Returns:
True if K is conditionaly decomposible
Exceptions:
Exception 
  • alphabets of generators don't match (id 100)
  • plant nondeterministic (id 201)

libFAUDES 2.20s --- 2011.10.12 --- c++ source docu by doxygen