About the Execution of ITS-Tools for Philosophers-COL-000005
Execution Summary | |||||
Max Memory Used (MB) |
Time wait (ms) | CPU Usage (ms) | I/O Wait (ms) | Computed Result | Execution Status |
15750.070 | 3576.00 | 7018.00 | 108.30 | TFFTFFFTFTTFFTTT | normal |
Execution Chart
We display below the execution chart for this examination (boot time has been removed).
Trace from the execution
Waiting for the VM to be ready (probing ssh)
...............
/home/mcc/execution
total 176K
-rw-r--r-- 1 mcc users 3.6K May 15 18:54 CTLCardinality.txt
-rw-r--r-- 1 mcc users 19K May 15 18:54 CTLCardinality.xml
-rw-r--r-- 1 mcc users 2.6K May 15 18:54 CTLFireability.txt
-rw-r--r-- 1 mcc users 17K May 15 18:54 CTLFireability.xml
-rw-r--r-- 1 mcc users 4.0K May 15 18:50 GenericPropertiesDefinition.xml
-rw-r--r-- 1 mcc users 6.2K May 15 18:50 GenericPropertiesVerdict.xml
-rw-r--r-- 1 mcc users 2.5K May 15 18:54 LTLCardinality.txt
-rw-r--r-- 1 mcc users 11K May 15 18:54 LTLCardinality.xml
-rw-r--r-- 1 mcc users 1.9K May 15 18:54 LTLFireability.txt
-rw-r--r-- 1 mcc users 8.1K May 15 18:54 LTLFireability.xml
-rw-r--r-- 1 mcc users 3.5K May 15 18:54 ReachabilityCardinality.txt
-rw-r--r-- 1 mcc users 17K May 15 18:54 ReachabilityCardinality.xml
-rw-r--r-- 1 mcc users 114 May 15 18:54 ReachabilityDeadlock.txt
-rw-r--r-- 1 mcc users 352 May 15 18:54 ReachabilityDeadlock.xml
-rw-r--r-- 1 mcc users 2.6K May 15 18:54 ReachabilityFireability.txt
-rw-r--r-- 1 mcc users 15K May 15 18:54 ReachabilityFireability.xml
-rw-r--r-- 1 mcc users 1.7K May 15 18:54 UpperBounds.txt
-rw-r--r-- 1 mcc users 3.8K May 15 18:54 UpperBounds.xml
-rw-r--r-- 1 mcc users 5 May 15 18:50 equiv_pt
-rw-r--r-- 1 mcc users 7 May 15 18:50 instance
-rw-r--r-- 1 mcc users 5 May 15 18:50 iscolored
-rw-r--r-- 1 mcc users 9.7K May 15 18:50 model.pnml
=====================================================================
Generated by BenchKit 2-3637
Executing tool itstools
Input is Philosophers-COL-000005, examination is CTLFireability
Time confinement is 3600 seconds
Memory confinement is 16384 MBytes
Number of cores is 4
Run identifier is r116-csrt-152666475700669
=====================================================================
--------------------
content from stdout:
=== Data for post analysis generated by BenchKit (invocation template)
The expected result is a vector of booleans
BOOL_VECTOR
here is the order used to build the result vector(from text file)
FORMULA_NAME Philosophers-COL-000005-CTLFireability-00
FORMULA_NAME Philosophers-COL-000005-CTLFireability-01
FORMULA_NAME Philosophers-COL-000005-CTLFireability-02
FORMULA_NAME Philosophers-COL-000005-CTLFireability-03
FORMULA_NAME Philosophers-COL-000005-CTLFireability-04
FORMULA_NAME Philosophers-COL-000005-CTLFireability-05
FORMULA_NAME Philosophers-COL-000005-CTLFireability-06
FORMULA_NAME Philosophers-COL-000005-CTLFireability-07
FORMULA_NAME Philosophers-COL-000005-CTLFireability-08
FORMULA_NAME Philosophers-COL-000005-CTLFireability-09
FORMULA_NAME Philosophers-COL-000005-CTLFireability-10
FORMULA_NAME Philosophers-COL-000005-CTLFireability-11
FORMULA_NAME Philosophers-COL-000005-CTLFireability-12
FORMULA_NAME Philosophers-COL-000005-CTLFireability-13
FORMULA_NAME Philosophers-COL-000005-CTLFireability-14
FORMULA_NAME Philosophers-COL-000005-CTLFireability-15
=== Now, execution of the tool begins
BK_START 1527193709826
20:28:32.258 [main] ERROR PNML validation - The rng grammar file can't be accessed : www.pnml.org
20:28:32.262 [main] ERROR import - Grammar file errors have been raised, the validation can't be done, process will continue without Grammar validation
Invoking ITS tools like this :CommandLine [args=[/home/mcc/BenchKit/itstools/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.201805151631/bin/its-ctl-linux64, --gc-threshold, 2000000, --quiet, -i, /home/mcc/execution/CTLFireability.pnml.gal, -t, CGAL, -ctl, /home/mcc/execution/CTLFireability.ctl], workingDir=/home/mcc/execution]
its-ctl command run as :
/home/mcc/BenchKit/itstools/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.201805151631/bin/its-ctl-linux64 --gc-threshold 2000000 --quiet -i /home/mcc/execution/CTLFireability.pnml.gal -t CGAL -ctl /home/mcc/execution/CTLFireability.ctl
No direction supplied, using forward translation only.
Parsed 16 CTL formulae.
built 5 ordering constraints for composite.
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
reachable,243,0.016216,4548,22,19,126,60,64,77,29,74,0
Converting to forward existential form...Done !
original formula: EX(EX(((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))&&((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1))))||(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))))
=> equivalent forward existential formula: [(EY(EY(Init)) * ((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))&&((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1))))||(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))))] != FALSE
(forward)formula 0,1,0.028424,5204,1,0,283,60,176,215,46,74,431
FORMULA Philosophers-COL-000005-CTLFireability-00 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: EG(E(!(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))) U !(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1))))))
=> equivalent forward existential formula: [FwdG(Init,E(!(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))) U !(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1))))))] != FALSE
Reverse transition relation is exact ! Faster fixpoint algorithm enabled.
Using saturation style SCC detection
Using saturation style SCC detection
Fast SCC detection found an SCC at level 2
Fast SCC detection found an SCC at level 3
Fast SCC detection found an SCC at level 4
(forward)formula 1,0,0.03988,5204,1,0,801,149,307,725,124,164,1456
FORMULA Philosophers-COL-000005-CTLFireability-01 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: (AX(AG((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))))) * !((EG((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))) + !(AG(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))))))
=> equivalent forward existential formula: ([(FwdU(EY(Init),TRUE) * !((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))))] = FALSE * ([FwdG(Init,(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))] = FALSE * [(FwdU(Init,TRUE) * !(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))))] = FALSE))
(forward)formula 2,0,0.042349,5468,1,0,801,149,307,736,124,164,1456
FORMULA Philosophers-COL-000005-CTLFireability-02 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: EF(EG((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))
=> equivalent forward existential formula: [FwdG(FwdU(Init,TRUE),(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))] != FALSE
(forward)formula 3,1,0.045572,5732,1,0,934,152,320,867,124,175,1810
FORMULA Philosophers-COL-000005-CTLFireability-03 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: !(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))
=> equivalent forward existential formula: [(Init * !(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))))] != FALSE
(forward)formula 4,0,0.046851,5732,1,0,934,152,320,867,124,175,1823
FORMULA Philosophers-COL-000005-CTLFireability-04 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: AG(AF((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))||((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1))))))
=> equivalent forward existential formula: [FwdG(FwdU(Init,TRUE),!((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))||((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1))))))] = FALSE
(forward)formula 5,0,0.051526,5732,1,0,1230,157,324,1135,124,183,2642
FORMULA Philosophers-COL-000005-CTLFireability-05 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: (AX((((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))&&(!(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))))) * (((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))
=> equivalent forward existential formula: ([(EY(Init) * !((((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))&&(!(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))))))] = FALSE * [(Init * !((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))] = FALSE)
(forward)formula 6,0,0.052337,5732,1,0,1242,157,325,1148,124,183,2656
FORMULA Philosophers-COL-000005-CTLFireability-06 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: (AF(!(AG((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))) + (E(!(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))) U ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))) + ((EX(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))) * (((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))) * EG(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))))))
=> equivalent forward existential formula: [FwdG((Init * !((E(!(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))) U ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))) + ((EX(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))) * (((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))) * EG(((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))))))),!(!(!(E(TRUE U !((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))))))] = FALSE
(forward)formula 7,1,0.071767,5996,1,0,1823,162,404,1813,129,191,3973
FORMULA Philosophers-COL-000005-CTLFireability-07 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: (A(!((((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))) U EX(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))) * AF(((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))&&((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))))
=> equivalent forward existential formula: (([((FwdU(Init,!(EX(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))) * !(!((((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))||((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))))) * !(EX(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))))] = FALSE * [FwdG(Init,!(EX(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))))] = FALSE) * [FwdG(Init,!(((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))&&((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))))] = FALSE)
(forward)formula 8,0,0.076308,5996,1,0,2194,162,410,2148,129,191,4778
FORMULA Philosophers-COL-000005-CTLFireability-08 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: !(AF(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))
=> equivalent forward existential formula: [FwdG(Init,!(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))] != FALSE
(forward)formula 9,1,0.079072,5996,1,0,2435,163,414,2370,129,192,5198
FORMULA Philosophers-COL-000005-CTLFireability-09 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: EX((EF((((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))&&((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))) + ((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))))
=> equivalent forward existential formula: ([(FwdU(EY(Init),TRUE) * (((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))&&((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))] != FALSE + [(EY(Init) * ((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1))))] != FALSE)
(forward)formula 10,1,0.083151,6260,1,0,2484,166,466,2428,132,208,5534
FORMULA Philosophers-COL-000005-CTLFireability-10 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: (AF(AG(((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))))) * EX((((!((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))&&((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))) * AG((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))))
=> equivalent forward existential formula: ([FwdG(Init,!(!(E(TRUE U !(((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))))))))] = FALSE * [(Init * !(EX((((!((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))&&((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))) * !(E(TRUE U !((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))))))))] = FALSE)
(forward)formula 11,0,0.088404,6260,1,0,2484,166,468,2430,132,208,5534
FORMULA Philosophers-COL-000005-CTLFireability-11 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: (EF((EF(((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))) + ((!((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))||((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1))))))) * (E(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))) U ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))) + E((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)) U (((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))||(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))))
=> equivalent forward existential formula: ([(FwdU((Init * E(TRUE U (E(TRUE U ((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))) + ((!((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))||((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))))))),((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))) * ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))] != FALSE + [(FwdU((Init * E(TRUE U (E(TRUE U ((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))) + ((!((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))||((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))))))),(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))) * (((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))||(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))] != FALSE)
(forward)formula 12,0,0.100124,6260,1,0,2583,166,479,2590,132,208,5869
FORMULA Philosophers-COL-000005-CTLFireability-12 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is FALSE !
***************************************
original formula: (((!(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))) * (AX(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))) * ((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))))) + ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))) + EF((!((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))&&(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))) * AG(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))))
=> equivalent forward existential formula: ([(((Init * !(E(TRUE U (!((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))&&(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))) * !(E(TRUE U !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))))))) * !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))) * ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))] = FALSE * ([(EY(((Init * !(E(TRUE U (!((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))&&(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))) * !(E(TRUE U !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))))))) * !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))) * !(((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))))] = FALSE * [(((Init * !(E(TRUE U (!((((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))&&(((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1)))) * !(E(TRUE U !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))))))) * !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1))))) * !(((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))||((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1))))))] = FALSE))
(forward)formula 13,1,0.122298,6260,1,0,2614,167,493,2626,133,210,5948
FORMULA Philosophers-COL-000005-CTLFireability-13 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: !(AF((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))
=> equivalent forward existential formula: [FwdG(Init,!((((((Philo0.eat_0>=1)||(Philo1.eat_1>=1))||(Philo2.eat_2>=1))||(Philo3.eat_3>=1))||(Philo4.eat_4>=1))))] != FALSE
(forward)formula 14,1,0.125249,6260,1,0,2953,167,496,2904,133,210,6510
FORMULA Philosophers-COL-000005-CTLFireability-14 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
original formula: !((E((((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))&&((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))) U ((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1)))) * ((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))
=> equivalent forward existential formula: ([(Init * !(E((((((((Philo0.fork_0>=1)&&(Philo0.think_0>=1))||((Philo1.fork_1>=1)&&(Philo1.think_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.think_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.think_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.think_4>=1)))&&((((((Philo4.fork_4>=1)&&(Philo0.think_0>=1))||((Philo0.fork_0>=1)&&(Philo1.think_1>=1)))||((Philo1.fork_1>=1)&&(Philo2.think_2>=1)))||((Philo2.fork_2>=1)&&(Philo3.think_3>=1)))||((Philo3.fork_3>=1)&&(Philo4.think_4>=1)))) U ((((((Philo0.catch2_0>=1)&&(Philo4.fork_4>=1))||((Philo1.catch2_1>=1)&&(Philo0.fork_0>=1)))||((Philo2.catch2_2>=1)&&(Philo1.fork_1>=1)))||((Philo3.catch2_3>=1)&&(Philo2.fork_2>=1)))||((Philo4.catch2_4>=1)&&(Philo3.fork_3>=1))))))] != FALSE + [(Init * !(((((((Philo0.fork_0>=1)&&(Philo0.catch1_0>=1))||((Philo1.fork_1>=1)&&(Philo1.catch1_1>=1)))||((Philo2.fork_2>=1)&&(Philo2.catch1_2>=1)))||((Philo3.fork_3>=1)&&(Philo3.catch1_3>=1)))||((Philo4.fork_4>=1)&&(Philo4.catch1_4>=1)))))] != FALSE)
(forward)formula 15,1,0.135836,6524,1,0,3299,167,501,3246,133,211,7293
FORMULA Philosophers-COL-000005-CTLFireability-15 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Formula is TRUE !
***************************************
BK_STOP 1527193713402
--------------------
content from stderr:
+ export BINDIR=/home/mcc/BenchKit/
+ BINDIR=/home/mcc/BenchKit/
++ pwd
+ export MODEL=/home/mcc/execution
+ MODEL=/home/mcc/execution
+ /home/mcc/BenchKit//runeclipse.sh /home/mcc/execution CTLFireability -its -ltsminpath /home/mcc/BenchKit//lts_install_dir/ -smt
+ ulimit -s 65536
+ [[ -z '' ]]
+ export LTSMIN_MEM_SIZE=8589934592
+ LTSMIN_MEM_SIZE=8589934592
+ /home/mcc/BenchKit//itstools/its-tools -consoleLog -data /home/mcc/execution/workspace -pnfolder /home/mcc/execution -examination CTLFireability -z3path /home/mcc/BenchKit//z3/bin/z3 -yices2path /home/mcc/BenchKit//yices/bin/yices -its -ltsminpath /home/mcc/BenchKit//lts_install_dir/ -smt -vmargs -Dosgi.locking=none -Declipse.stateSaveDelayInterval=-1 -Dosgi.configuration.area=/tmp/.eclipse -Xss8m -Xms40m -Xmx8192m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.6
May 24, 2018 8:28:31 PM fr.lip6.move.gal.application.Application start
INFO: Running its-tools with arguments : [-pnfolder, /home/mcc/execution, -examination, CTLFireability, -z3path, /home/mcc/BenchKit//z3/bin/z3, -yices2path, /home/mcc/BenchKit//yices/bin/yices, -its, -ltsminpath, /home/mcc/BenchKit//lts_install_dir/, -smt]
May 24, 2018 8:28:31 PM fr.lip6.move.gal.application.MccTranslator transformPNML
INFO: Parsing pnml file : /home/mcc/execution/model.pnml
May 24, 2018 8:28:31 PM fr.lip6.move.gal.pnml.togal.PnmlToGalTransformer transform
INFO: Detected file is not PT type :http://www.pnml.org/version-2009/grammar/symmetricnet
May 24, 2018 8:28:32 PM fr.lip6.move.gal.pnml.togal.PnmlToGalTransformer transform
INFO: Load time of PNML (colored model parsed with PNMLFW) : 830 ms
May 24, 2018 8:28:32 PM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: Transformed 5 places.
May 24, 2018 8:28:32 PM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: Computed order using colors.
May 24, 2018 8:28:32 PM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: sort/places :Philo->think,fork,catch1,catch2,eat,
May 24, 2018 8:28:32 PM fr.lip6.move.gal.pnml.togal.HLGALTransformer handlePage
INFO: Transformed 5 transitions.
May 24, 2018 8:28:32 PM fr.lip6.move.gal.pnml.togal.PnmlToGalTransformer transform
INFO: Computed order based on color domains.
May 24, 2018 8:28:32 PM fr.lip6.move.serialization.SerializationUtil systemToFile
INFO: Time to serialize gal into /home/mcc/execution/model.pnml.img.gal : 4 ms
May 24, 2018 8:28:32 PM fr.lip6.move.gal.application.MccTranslator applyOrder
INFO: Applying decomposition
May 24, 2018 8:28:32 PM fr.lip6.move.gal.instantiate.CompositeBuilder decomposeWithOrder
INFO: Decomposing Gal with order
May 24, 2018 8:28:32 PM fr.lip6.move.gal.instantiate.GALRewriter flatten
INFO: Flatten gal took : 20 ms
May 24, 2018 8:28:32 PM fr.lip6.move.gal.instantiate.CompositeBuilder rewriteArraysToAllowPartition
INFO: Rewriting arrays think, fork, catch1, catch2, eat to variables to allow decomposition.
May 24, 2018 8:28:32 PM fr.lip6.move.gal.instantiate.Instantiator fuseIsomorphicEffects
INFO: Removed a total of 5 redundant transitions.
May 24, 2018 8:28:32 PM fr.lip6.move.serialization.SerializationUtil systemToFile
INFO: Time to serialize gal into /home/mcc/execution/CTLFireability.pnml.gal : 2 ms
May 24, 2018 8:28:32 PM fr.lip6.move.serialization.SerializationUtil serializePropertiesForITSCTLTools
INFO: Time to serialize properties into /home/mcc/execution/CTLFireability.ctl : 5 ms
Sequence of Actions to be Executed by the VM
This is useful if one wants to reexecute the tool in the VM from the submitted image disk.
set -x
# this is for BenchKit: configuration of major elements for the test
export BK_INPUT="Philosophers-COL-000005"
export BK_EXAMINATION="CTLFireability"
export BK_TOOL="itstools"
export BK_RESULT_DIR="/tmp/BK_RESULTS/OUTPUTS"
export BK_TIME_CONFINEMENT="3600"
export BK_MEMORY_CONFINEMENT="16384"
# this is specific to your benchmark or test
export BIN_DIR="$HOME/BenchKit/bin"
# remove the execution directoty if it exists (to avoid increse of .vmdk images)
if [ -d execution ] ; then
rm -rf execution
fi
tar xzf /home/mcc/BenchKit/INPUTS/Philosophers-COL-000005.tgz
mv Philosophers-COL-000005 execution
cd execution
pwd
ls -lh
# this is for BenchKit: explicit launching of the test
echo "====================================================================="
echo " Generated by BenchKit 2-3637"
echo " Executing tool itstools"
echo " Input is Philosophers-COL-000005, examination is CTLFireability"
echo " Time confinement is $BK_TIME_CONFINEMENT seconds"
echo " Memory confinement is 16384 MBytes"
echo " Number of cores is 4"
echo " Run identifier is r116-csrt-152666475700669"
echo "====================================================================="
echo
echo "--------------------"
echo "content from stdout:"
echo
echo "=== Data for post analysis generated by BenchKit (invocation template)"
echo
if [ "CTLFireability" = "UpperBounds" ] ; then
echo "The expected result is a vector of positive values"
echo NUM_VECTOR
elif [ "CTLFireability" != "StateSpace" ] ; then
echo "The expected result is a vector of booleans"
echo BOOL_VECTOR
else
echo "no data necessary for post analysis"
fi
echo
if [ -f "CTLFireability.txt" ] ; then
echo "here is the order used to build the result vector(from text file)"
for x in $(grep Property CTLFireability.txt | cut -d ' ' -f 2 | sort -u) ; do
echo "FORMULA_NAME $x"
done
elif [ -f "CTLFireability.xml" ] ; then # for cunf (txt files deleted;-)
echo echo "here is the order used to build the result vector(from xml file)"
for x in $(grep '
echo "FORMULA_NAME $x"
done
fi
echo
echo "=== Now, execution of the tool begins"
echo
echo -n "BK_START "
date -u +%s%3N
echo
timeout -s 9 $BK_TIME_CONFINEMENT bash -c "/home/mcc/BenchKit/BenchKit_head.sh 2> STDERR ; echo ; echo -n \"BK_STOP \" ; date -u +%s%3N"
if [ $? -eq 137 ] ; then
echo
echo "BK_TIME_CONFINEMENT_REACHED"
fi
echo
echo "--------------------"
echo "content from stderr:"
echo
cat STDERR ;