diff --git a/ctx_aut.cc b/ctx_aut.cc index b581690..bd597bb 100644 --- a/ctx_aut.cc +++ b/ctx_aut.cc @@ -8,6 +8,7 @@ CtxAut::CtxAut(Options *opts, RctSys *parent_rctsys) { setOptions(opts); this->parent_rctsys = parent_rctsys; + made_progressive = false; } bool CtxAut::hasState(std::string name) @@ -129,6 +130,9 @@ void CtxAut::showTransitions(void) void CtxAut::makeProgressive(void) { + VERB_LN(2, "Calculating progressive closure of CA"); + assert(!made_progressive); + std::string special_loc = "T"; while (hasState(special_loc)) { @@ -162,6 +166,8 @@ void CtxAut::makeProgressive(void) addTransition(s, special_loc, state_constr); } + made_progressive = true; + } /** EOF **/ diff --git a/ctx_aut.hh b/ctx_aut.hh index c413632..c80d475 100644 --- a/ctx_aut.hh +++ b/ctx_aut.hh @@ -62,6 +62,7 @@ class CtxAut EntitiesForProc tmpProcEntities; Entities tmpEntities; CtxAutTransitions transitions; + bool made_progressive; }; #endif /* RS_CTX_AUT_HH */