Author: vm069
Date: Mon May 26 14:55:42 2014
New Revision: 9458

URL: http://svn.gna.org/viewcvs/service-tech?rev=9458&view=rev
Log:
included new formulatypes

Modified:
    trunk/lola2/src/Core/Dimensions.h
    trunk/lola2/src/Frontend/Parser/formula_unparse.k
    trunk/lola2/src/Planning/Task.cc

Modified: trunk/lola2/src/Core/Dimensions.h
URL: 
http://svn.gna.org/viewcvs/service-tech/trunk/lola2/src/Core/Dimensions.h?rev=9458&r1=9457&r2=9458&view=diff
==============================================================================
--- trunk/lola2/src/Core/Dimensions.h   (original)
+++ trunk/lola2/src/Core/Dimensions.h   Mon May 26 14:55:42 2014
@@ -122,7 +122,9 @@
     FORMULA_LTL           = 7,  ///< LTL formulae
     FORMULA_CTL           = 8,  ///< CTL formulae
     FORMULA_MODELCHECKING = 9,  ///< CTL* formulae
-    FORMULA_DEADLOCK      = 10  ///< deadlock
+    FORMULA_DEADLOCK      = 10, ///< deadlock
+    FORMULA_AGAF          = 11, ///< AGAF
+    FORMULA_EFAGEF        = 12  ///< EFAGEF
 } formula_t;
 
 /// three-valued logic

Modified: trunk/lola2/src/Frontend/Parser/formula_unparse.k
URL: 
http://svn.gna.org/viewcvs/service-tech/trunk/lola2/src/Frontend/Parser/formula_unparse.k?rev=9458&r1=9457&r2=9458&view=diff
==============================================================================
--- trunk/lola2/src/Frontend/Parser/formula_unparse.k   (original)
+++ trunk/lola2/src/Frontend/Parser/formula_unparse.k   Mon May 26 14:55:42 2014
@@ -155,6 +155,9 @@
             { f->type = FORMULA_INVARIANT; }
         AllPath(Always(ExPath(Eventually(y)))) provided (not 
y->containsTemporal) :
             { f->type = FORMULA_LIVENESS; }
+        AllPath(Always(AllPath(Eventually(y)))) provided (not 
y->containsTemporal) :
+            { f->type = FORMULA_AGAF; }
+        ExPath(Eventually(AllPath(Always(ExPath(Eventually(y)))))) provided 
(not y->containsTemporal) : { f->type = FORMULA_EFAGEF; }
         Always(Eventually(y)) provided (not y->containsTemporal) :
             { f->type = FORMULA_FAIRNESS; }
         Eventually(Always(y)) provided (not y->containsTemporal) :

Modified: trunk/lola2/src/Planning/Task.cc
URL: 
http://svn.gna.org/viewcvs/service-tech/trunk/lola2/src/Planning/Task.cc?rev=9458&r1=9457&r2=9458&view=diff
==============================================================================
--- trunk/lola2/src/Planning/Task.cc    (original)
+++ trunk/lola2/src/Planning/Task.cc    Mon May 26 14:55:42 2014
@@ -342,16 +342,11 @@
             break;
         }
 
-        //TODO remove the condition when TSCC is included to the frontend
-        // its only for debug/testing purposes
-        if (!RT::args.tscc_flag)
-        {
-            formulaType = FORMULA_CTL;
-        }
-        else
-        {
-            RT::rep->status("liveness not yet implemented, converting to 
CTL...");
-        }
+        //formulaType = FORMULA_CTL;
+        //RT::rep->status("liveness not yet implemented, converting to 
CTL...");
+        break;
+    case (FORMULA_AGAF):
+        RT::rep->status("checking AGAF");
         break;
     case (FORMULA_FAIRNESS):
         RT::rep->status("checking fairness");
@@ -392,7 +387,7 @@
     RT::rep->status("processing formula");
 
     // simplify CTL formula to fewer operators
-    if (formulaType == FORMULA_CTL && !RT::args.tscc_flag)
+    if (formulaType == FORMULA_CTL)
     {
         // replace path quantor+temporal operator by dedicated CTL operator
         TheFormula = TheFormula->rewrite(kc::ctloperators);
@@ -414,6 +409,14 @@
     case FORMULA_REACHABLE:
     case FORMULA_INVARIANT:
     case FORMULA_INITIAL:
+    case FORMULA_AGAF:
+    {
+        if(RT::args.tscc_flag)
+        {
+            TheFormula = TheFormula->rewrite(kc::booleanlists);
+        }
+        break;
+    }
     case FORMULA_LIVENESS: // currently only for cover graphs!
     {
         TheFormula = TheFormula->rewrite(kc::booleanlists);
@@ -470,10 +473,8 @@
         spFormula = result;
         break;
     }
-
-    case FORMULA_CTL:
-    {
-        if(RT::args.tscc_flag){
+    case FORMULA_AGAF:
+    {
             TheFormula->unparse(myprinter, kc::internal);
             StatePredicate *result = TheFormula->formula;
 
@@ -483,13 +484,14 @@
             RT::data["analysis"]["formula"]["atomic_propositions"] = 
static_cast<int>(result->countAtomic());
 
             spFormula = result;
-        }else{
-
-            TheFormula->unparse(myprinter, kc::ctl);
-            ctlFormula = TheFormula->ctl_formula;
-
-            assert(ctlFormula);
-        }
+    }
+
+    case FORMULA_CTL:
+    {
+        TheFormula->unparse(myprinter, kc::ctl);
+        ctlFormula = TheFormula->ctl_formula;
+
+        assert(ctlFormula);
         break;
     }
 
@@ -888,11 +890,11 @@
         fl = new Firelist();
         if (RT::args.tscc_flag)
         {
-            if(formulaType==FORMULA_LIVENESS)
+            if(formulaType == FORMULA_LIVENESS)
             {
                    tsccExploration = new TSCCExplorationAGEF();
             }
-            else
+            else if (formulaType == FORMULA_AGAF)
             {
                    tsccExploration = new TSCCExplorationAGAF();
             }


-- 
You received this e-mail, because you subscribed the mailing list 
"service-tech-commits" which will forward you any e-mail addressed to 
[email protected]. If you want to unsubscribe or make any changes to 
your subscription, please go to
https://mail.gna.org/listinfo/service-tech-commits.

Reply via email to