con_controllability.hGo to the documentation of this file.00001 /** @file con_controllability.h Conditional Controllability */ 00002 00003 /* 00004 * 00005 * Copyright (C) 2011 Tomas Masopust 00006 * 00007 */ 00008 00009 #ifndef FAUDES_ISCC_H 00010 #define FAUDES_ISCC_H 00011 00012 #include "corefaudes.h" 00013 #include "syn_include.h" 00014 00015 namespace faudes { 00016 00017 /** 00018 * Conditionalcontrollability Checking Algorithm 00019 * 00020 * Checks whether a given language K over the union of alphabets is conditionally controllable 00021 * with respect to the plant G. 00022 * This algorithm implements the results obtained in 00023 * 00024 * J. Komenda, T. Masopust, J. H. van Schuppen. 00025 * Synthesis of Safe Sublanguages satisfying Global Specification using Coordination Scheme for Discrete-Event Systems 00026 * WODES 2010 00027 * 00028 * K must be conditionally decomposable 00029 * 00030 * @param specV 00031 * Vector of generators representing the specification languages P_{i+k}(K), i=1,2,..,n 00032 * @param pk 00033 * Generator for the coordinator part P_k(K) 00034 * @param genV 00035 * Vecotr of generators for the plants G1,G2,..,Gn 00036 * @param gk 00037 * Generator for the coordinator Gk 00038 * @param ACntrl 00039 * Event set of all controllable events 00040 * @return 00041 * True if K is conditionaly controllable 00042 * 00043 * @exception Exception 00044 * - alphabets of generators don't match (id 100) 00045 * - plant nondeterministic (id 201) 00046 * 00047 * @ingroup CoordinationControlPlugIn 00048 */ 00049 bool IsConditionalControllable(const GeneratorVector& specVect, const Generator& pk, const GeneratorVector& genVect, const Generator& gk, const EventSet& ACntrl); 00050 00051 } // namespace faudes 00052 00053 #endif libFAUDES 2.23h --- 2014.04.03 --- c++ api documentaion by doxygen |