mtc_redundantcolors.cpp
Go to the documentation of this file.
73 SearchScc(*sit, rCount, rGen, rNewStates, rSTACK, rStackStates, rDFN, rLOWLINK, rSccSet, rRoots);
131 SearchScc(*newStates.Begin(), count, rGen, newStates, stack, stackStates, DFN, LOWLINK, rSCCSet, rRoots);
193 TraverseUncontrollableBackwards(copyGen.ControllableEvents(),copyTransSet,criticalStates, *stIt);
199 // Fixed point iteration that alternately computes SCCs and removes states with outgoing uncontrollable
209 // otherwise, the SCCs can be used to construct a strongly nonblocking and controllable subbehavior of rGen that is
210 // blocking w.r.t. the potentially redundant color (just remove all transitions that leave the SCCs in G)
253 // the abstracted generator has at most as many states as the original generator with the overall alphabet
262 // if the current color can be removed, check the next colors (note that this is only possible if
277 else if(currentNumberStates == optimalNumberStates && reducedGen.Colors().Size() < rOptimalColors.Size() ){
282 rec_OptimalColorSet(reducedGen, colorVector, i + 1, rOptimalColors, optimalNumberStates, optimalNumberColors, rHighAlph, optimalAlph);
288 // rec_OptimalColorSet(rGen,rColorVector,colorNumber,rOptimalColors,rOptimalNumberStates,rOptimalNumberColors,rHighAlph,rOptimalHighAlph)
289 void rec_OptimalColorSet(const MtcSystem& rGen, const std::vector<Idx>& rColorVector, Idx colorNumber, ColorSet& rOptimalColors,
290 Idx& rOptimalNumberStates, Idx& rOptimalNumberColors, const EventSet& rHighAlph, EventSet& rOptimalHighAlph){
310 else if(currentNumberStates == rOptimalNumberStates && reducedGen.Colors().Size() < rOptimalColors.Size() ){
317 rec_OptimalColorSet(reducedGen, rColorVector, colorNumber + 1, rOptimalColors, rOptimalNumberStates, rOptimalNumberColors, rHighAlph, rOptimalHighAlph);
libFAUDES 2.26g --- 2015.08.17 --- c++ api documentaion by doxygen |