About the Execution of ITS-Tools for Philosophers-COL-000010
Execution Summary | |||||
Max Memory Used (MB) |
Time wait (ms) | CPU Usage (ms) | I/O Wait (ms) | Computed Result | Execution Status |
15741.990 | 10038.00 | 23170.00 | 108.40 | FTFFFFTFFFFFTFFF | normal |
Execution Chart
We display below the execution chart for this examination (boot time has been removed).
Trace from the execution
Formatting '/mnt/tpsp/fkordon/mcc2020-input.r126-tajo-158961389700010.qcow2', fmt=qcow2 size=4294967296 backing_file='/mnt/tpsp/fkordon/mcc2020-input.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off
Waiting for the VM to be ready (probing ssh)
.....................
=====================================================================
Generated by BenchKit 2-4028
Executing tool itstools
Input is Philosophers-COL-000010, examination is LTLFireability
Time confinement is 3600 seconds
Memory confinement is 16384 MBytes
Number of cores is 4
Run identifier is r126-tajo-158961389700010
=====================================================================
--------------------
preparation of the directory to be used:
/home/mcc/execution
total 176K
-rw-r--r-- 1 mcc users 3.1K Apr 27 15:14 CTLCardinality.txt
-rw-r--r-- 1 mcc users 16K Apr 27 15:14 CTLCardinality.xml
-rw-r--r-- 1 mcc users 2.3K Apr 27 15:14 CTLFireability.txt
-rw-r--r-- 1 mcc users 14K Apr 27 15:14 CTLFireability.xml
-rw-r--r-- 1 mcc users 4.0K Apr 27 15:14 GenericPropertiesDefinition.xml
-rw-r--r-- 1 mcc users 6.2K Apr 27 15:14 GenericPropertiesVerdict.xml
-rw-r--r-- 1 mcc users 3.4K Apr 27 15:14 LTLCardinality.txt
-rw-r--r-- 1 mcc users 24K Apr 28 14:01 LTLCardinality.xml
-rw-r--r-- 1 mcc users 2.1K Apr 27 15:14 LTLFireability.txt
-rw-r--r-- 1 mcc users 18K Apr 28 14:01 LTLFireability.xml
-rw-r--r-- 1 mcc users 3.8K Apr 27 15:14 ReachabilityCardinality.txt
-rw-r--r-- 1 mcc users 19K Apr 27 15:14 ReachabilityCardinality.xml
-rw-r--r-- 1 mcc users 2.4K Apr 27 15:14 ReachabilityFireability.txt
-rw-r--r-- 1 mcc users 12K Apr 27 15:14 ReachabilityFireability.xml
-rw-r--r-- 1 mcc users 1.7K Apr 27 15:14 UpperBounds.txt
-rw-r--r-- 1 mcc users 3.8K Apr 27 15:14 UpperBounds.xml
-rw-r--r-- 1 mcc users 5 Apr 27 15:14 equiv_pt
-rw-r--r-- 1 mcc users 7 Apr 27 15:14 instance
-rw-r--r-- 1 mcc users 5 Apr 27 15:14 iscolored
-rw-r--r-- 1 mcc users 9.9K Apr 27 15:14 model.pnml
--------------------
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-000010-00
FORMULA_NAME Philosophers-COL-000010-01
FORMULA_NAME Philosophers-COL-000010-02
FORMULA_NAME Philosophers-COL-000010-03
FORMULA_NAME Philosophers-COL-000010-04
FORMULA_NAME Philosophers-COL-000010-05
FORMULA_NAME Philosophers-COL-000010-06
FORMULA_NAME Philosophers-COL-000010-07
FORMULA_NAME Philosophers-COL-000010-08
FORMULA_NAME Philosophers-COL-000010-09
FORMULA_NAME Philosophers-COL-000010-10
FORMULA_NAME Philosophers-COL-000010-11
FORMULA_NAME Philosophers-COL-000010-12
FORMULA_NAME Philosophers-COL-000010-13
FORMULA_NAME Philosophers-COL-000010-14
FORMULA_NAME Philosophers-COL-000010-15
=== Now, execution of the tool begins
BK_START 1589780467130
[2020-05-18 05:41:09] [INFO ] Running its-tools with arguments : [-pnfolder, /home/mcc/execution, -examination, LTLFireability, -z3path, /home/mcc/BenchKit//z3/bin/z3, -yices2path, /home/mcc/BenchKit//yices/bin/yices, -its, -ltsminpath, /home/mcc/BenchKit//lts_install_dir/, -greatspnpath, /home/mcc/BenchKit//greatspn/, -order, META, -manyOrder, -smt, -timeout, 3600]
[2020-05-18 05:41:09] [INFO ] Parsing pnml file : /home/mcc/execution/model.pnml
[2020-05-18 05:41:09] [INFO ] Detected file is not PT type :http://www.pnml.org/version-2009/grammar/symmetricnet
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[2020-05-18 05:41:09] [INFO ] Load time of PNML (colored model parsed with PNMLFW) : 546 ms
[2020-05-18 05:41:09] [INFO ] sort/places :
Philo->think,fork,catch1,catch2,eat,
[2020-05-18 05:41:09] [INFO ] Imported 5 HL places and 5 HL transitions for a total of 50 PT places and 50.0 transition bindings in 14 ms.
[2020-05-18 05:41:09] [INFO ] Computed order based on color domains.
[2020-05-18 05:41:09] [INFO ] Unfolded HLPN to a Petri net with 50 places and 50 transitions in 13 ms.
[2020-05-18 05:41:09] [INFO ] Unfolded HLPN properties in 0 ms.
Parsed 16 properties from file /home/mcc/execution/LTLFireability.xml in 34 ms.
Working with output stream class java.io.PrintStream
Finished random walk after 153 steps, including 3 resets, run visited all 50 properties in 6 ms. (steps per millisecond=25 )
[2020-05-18 05:41:09] [INFO ] Initial state reduction rules for CTL removed 3 formulas.
[2020-05-18 05:41:09] [INFO ] Flatten gal took : 37 ms
FORMULA Philosophers-COL-000010-11 FALSE TECHNIQUES TOPOLOGICAL INITIAL_STATE
FORMULA Philosophers-COL-000010-06 TRUE TECHNIQUES TOPOLOGICAL INITIAL_STATE
FORMULA Philosophers-COL-000010-01 TRUE TECHNIQUES TOPOLOGICAL INITIAL_STATE
[2020-05-18 05:41:09] [INFO ] Flatten gal took : 14 ms
Using solver Z3 to compute partial order matrices.
Built C files in :
/home/mcc/execution
[2020-05-18 05:41:09] [INFO ] Applying decomposition
[2020-05-18 05:41:09] [INFO ] Flatten gal took : 10 ms
Converted graph to binary with : CommandLine [args=[/home/mcc/BenchKit/itstools/plugins/fr.lip6.move.gal.louvain.binaries_1.0.0.202005100927/bin/convert-linux64, -i, /tmp/graph9650840985034565934.txt, -o, /tmp/graph9650840985034565934.bin, -w, /tmp/graph9650840985034565934.weights], workingDir=null]
Built communities with : CommandLine [args=[/home/mcc/BenchKit/itstools/plugins/fr.lip6.move.gal.louvain.binaries_1.0.0.202005100927/bin/louvain-linux64, /tmp/graph9650840985034565934.bin, -l, -1, -v, -w, /tmp/graph9650840985034565934.weights, -q, 0, -e, 0.001], workingDir=null]
[2020-05-18 05:41:10] [INFO ] Input system was already deterministic with 50 transitions.
[2020-05-18 05:41:10] [INFO ] Decomposing Gal with order
[2020-05-18 05:41:10] [INFO ] Rewriting arrays to variables to allow decomposition.
[2020-05-18 05:41:10] [INFO ] Removed a total of 10 redundant transitions.
Presburger conditions satisfied. Using coverability to approximate state space in K-Induction.
// Phase 1: matrix 50 rows 50 cols
[2020-05-18 05:41:10] [INFO ] Computed 20 place invariants in 6 ms
inv : think_1 + catch1_1 + catch2_1 + eat_1 = 1
inv : fork_5 + catch1_6 + catch2_5 + eat_5 + eat_6 = 1
inv : think_6 + catch1_6 + catch2_6 + eat_6 = 1
inv : fork_9 + catch1_0 + catch2_9 + eat_0 + eat_9 = 1
inv : fork_8 + catch1_9 + catch2_8 + eat_8 + eat_9 = 1
inv : think_8 + catch1_8 + catch2_8 + eat_8 = 1
inv : fork_2 + catch1_3 + catch2_2 + eat_2 + eat_3 = 1
inv : think_4 + catch1_4 + catch2_4 + eat_4 = 1
inv : think_2 + catch1_2 + catch2_2 + eat_2 = 1
inv : think_0 + catch1_0 + catch2_0 + eat_0 = 1
inv : fork_1 + catch1_2 + catch2_1 + eat_1 + eat_2 = 1
inv : fork_0 + catch1_1 + catch2_0 + eat_0 + eat_1 = 1
inv : think_7 + catch1_7 + catch2_7 + eat_7 = 1
inv : think_5 + catch1_5 + catch2_5 + eat_5 = 1
inv : fork_6 + catch1_7 + catch2_6 + eat_6 + eat_7 = 1
inv : think_9 + catch1_9 + catch2_9 + eat_9 = 1
inv : fork_4 + catch1_5 + catch2_4 + eat_4 + eat_5 = 1
inv : think_3 + catch1_3 + catch2_3 + eat_3 = 1
inv : fork_7 + catch1_8 + catch2_7 + eat_7 + eat_8 = 1
inv : fork_3 + catch1_4 + catch2_3 + eat_3 + eat_4 = 1
Total of 20 invariants.
[2020-05-18 05:41:10] [INFO ] Computed 20 place invariants in 8 ms
[2020-05-18 05:41:10] [INFO ] Flatten gal took : 134 ms
[2020-05-18 05:41:10] [INFO ] Fuse similar labels procedure discarded/fused a total of 28 labels/synchronizations in 5 ms.
[2020-05-18 05:41:10] [INFO ] Time to serialize gal into /home/mcc/execution/LTLFireability.pnml.gal : 2 ms
[2020-05-18 05:41:10] [INFO ] Time to serialize properties into /home/mcc/execution/LTLFireability.ltl : 21 ms
Invoking ITS tools like this :CommandLine [args=[/home/mcc/BenchKit/itstools/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.202005100927/bin/its-ltl-linux64, --gc-threshold, 2000000, -i, /home/mcc/execution/LTLFireability.pnml.gal, -t, CGAL, -LTL, /home/mcc/execution/LTLFireability.ltl, -c, -stutter-deadlock], workingDir=/home/mcc/execution]
its-ltl command run as :
/home/mcc/BenchKit/itstools/plugins/fr.lip6.move.gal.itstools.binaries_1.0.0.202005100927/bin/its-ltl-linux64 --gc-threshold 2000000 -i /home/mcc/execution/LTLFireability.pnml.gal -t CGAL -LTL /home/mcc/execution/LTLFireability.ltl -c -stutter-deadlock
Read 13 LTL properties
Checking formula 0 : !(((F(G("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))")))&&(X(!(X((G("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))"))U(F(G("(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))")))))))))
Formula 0 simplified : !(FG"((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))" & X!X(G"((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))" U FG"(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))"))
built 6 ordering constraints for composite.
built 6 ordering constraints for composite.
built 5 ordering constraints for composite.
built 5 ordering constraints for composite.
built 5 ordering constraints for composite.
[2020-05-18 05:41:10] [INFO ] Proved 50 variables to be positive in 223 ms
Reverse transition relation is exact ! Faster fixpoint algorithm enabled.
Computing Next relation with stutter on 2 deadlock states
[2020-05-18 05:41:10] [INFO ] Computing symmetric may disable matrix : 50 transitions.
[2020-05-18 05:41:10] [INFO ] Computation of disable matrix completed :0/50 took 1 ms. Total solver calls (SAT/UNSAT): 0(0/0)
[2020-05-18 05:41:10] [INFO ] Computation of Complete disable matrix. took 2 ms. Total solver calls (SAT/UNSAT): 0(0/0)
[2020-05-18 05:41:10] [INFO ] Computing symmetric may enable matrix : 50 transitions.
[2020-05-18 05:41:10] [INFO ] Computation of Complete enable matrix. took 1 ms. Total solver calls (SAT/UNSAT): 0(0/0)
3 unique states visited
3 strongly connected components in search stack
3 transitions explored
3 items max in DFS search stack
9 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,0.12048,19584,1,0,5961,343,417,7080,220,791,6892
an accepting run exists (use option '-e' to print it)
Formula 0 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-00 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 1 : !((F(((((((((((G(X(X(X(!(("(((((((((((i2.u4.think_3<1)||(i2.u4.fork_2<1))&&((i0.u0.think_0<1)||(i0.u0.fork_9<1)))&&((u2.think_1<1)||(u2.fork_0<1)))&&((i3.u6.think_5<1)||(i3.u6.fork_4<1)))&&((i2.u3.think_2<1)||(i2.u3.fork_1<1)))&&((i3.u5.think_4<1)||(i3.u5.fork_3<1)))&&((i4.u7.think_6<1)||(i4.u7.fork_5<1)))&&((i4.u8.think_7<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(i4.u8.fork_7<1)))&&((i0.u1.think_9<1)||(u9.fork_8<1)))")U("(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))")))))))&&("((i2.u4.think_3<1)||(i2.u4.fork_2<1))"))&&("((i0.u0.think_0<1)||(i0.u0.fork_9<1))"))&&("((u2.think_1<1)||(u2.fork_0<1))"))&&("((i3.u6.think_5<1)||(i3.u6.fork_4<1))"))&&("((i2.u3.think_2<1)||(i2.u3.fork_1<1))"))&&("((i3.u5.think_4<1)||(i3.u5.fork_3<1))"))&&("((i4.u7.think_6<1)||(i4.u7.fork_5<1))"))&&("((i4.u8.think_7<1)||(i4.u8.fork_6<1))"))&&("((u9.think_8<1)||(i4.u8.fork_7<1))"))&&("((i0.u1.think_9<1)||(u9.fork_8<1))"))))
Formula 1 simplified : !F("((i0.u0.think_0<1)||(i0.u0.fork_9<1))" & "((i0.u1.think_9<1)||(u9.fork_8<1))" & "((i2.u3.think_2<1)||(i2.u3.fork_1<1))" & "((i2.u4.think_3<1)||(i2.u4.fork_2<1))" & "((i3.u5.think_4<1)||(i3.u5.fork_3<1))" & "((i3.u6.think_5<1)||(i3.u6.fork_4<1))" & "((i4.u7.think_6<1)||(i4.u7.fork_5<1))" & "((i4.u8.think_7<1)||(i4.u8.fork_6<1))" & "((u2.think_1<1)||(u2.fork_0<1))" & "((u9.think_8<1)||(i4.u8.fork_7<1))" & GXXX!("(((((((((((i2.u4.think_3<1)||(i2.u4.fork_2<1))&&((i0.u0.think_0<1)||(i0.u0.fork_9<1)))&&((u2.think_1<1)||(u2.fork_0<1)))&&((i3.u6.think_5<1)||(i3.u6.fork_4<1)))&&((i2.u3.think_2<1)||(i2.u3.fork_1<1)))&&((i3.u5.think_4<1)||(i3.u5.fork_3<1)))&&((i4.u7.think_6<1)||(i4.u7.fork_5<1)))&&((i4.u8.think_7<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(i4.u8.fork_7<1)))&&((i0.u1.think_9<1)||(u9.fork_8<1)))" U "(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))"))
Computing Next relation with stutter on 2 deadlock states
2 unique states visited
2 strongly connected components in search stack
2 transitions explored
2 items max in DFS search stack
4 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.40769,23620,1,0,9745,357,548,11235,231,890,11152
an accepting run exists (use option '-e' to print it)
Formula 1 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-02 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 2 : !((X(X((X(!(X(F("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))")))))&&(F(((((((((((X("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))"))||("((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))"))||("((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1))"))||("((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1))"))||("((u9.think_8>=1)&&(u9.fork_8>=1))"))||("((i0.u0.think_0>=1)&&(u2.fork_0>=1))"))||("((u2.think_1>=1)&&(i2.u3.fork_1>=1))"))||("((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1))"))||("((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1))"))||("((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1))"))||("((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1))")))))))
Formula 2 simplified : !XX(X!XF"(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))" & F("((i0.u0.think_0>=1)&&(u2.fork_0>=1))" | "((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1))" | "((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1))" | "((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1))" | "((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1))" | "((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1))" | "((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1))" | "((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))" | "((u2.think_1>=1)&&(i2.u3.fork_1>=1))" | "((u9.think_8>=1)&&(u9.fork_8>=1))" | X"(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))"))
Computing Next relation with stutter on 2 deadlock states
8 unique states visited
8 strongly connected components in search stack
9 transitions explored
8 items max in DFS search stack
10 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.58859,25996,1,0,18492,376,728,20831,240,998,20978
an accepting run exists (use option '-e' to print it)
Formula 2 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-03 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 3 : !((G(X(X(G("(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))"))))))
Formula 3 simplified : !GXXG"(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))"
Computing Next relation with stutter on 2 deadlock states
5 unique states visited
5 strongly connected components in search stack
5 transitions explored
5 items max in DFS search stack
3 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.60929,26260,1,0,18949,379,783,21450,245,1016,22565
an accepting run exists (use option '-e' to print it)
Formula 3 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-04 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 4 : !((F(G(!(X("(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))"))))))
Formula 4 simplified : !FG!X"(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))"
Computing Next relation with stutter on 2 deadlock states
2 unique states visited
1 strongly connected components in search stack
3 transitions explored
2 items max in DFS search stack
0 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.61355,26260,1,0,19357,383,810,22053,245,1057,23154
an accepting run exists (use option '-e' to print it)
Formula 4 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-05 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 5 : !((F(G(X((("(((((((((((i2.u4.think_3<1)||(i2.u4.fork_2<1))&&((i0.u0.think_0<1)||(i0.u0.fork_9<1)))&&((u2.think_1<1)||(u2.fork_0<1)))&&((i3.u6.think_5<1)||(i3.u6.fork_4<1)))&&((i2.u3.think_2<1)||(i2.u3.fork_1<1)))&&((i3.u5.think_4<1)||(i3.u5.fork_3<1)))&&((i4.u7.think_6<1)||(i4.u7.fork_5<1)))&&((i4.u8.think_7<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(i4.u8.fork_7<1)))&&((i0.u1.think_9<1)||(u9.fork_8<1)))")U("(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))"))||((X(G("(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))")))U("(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))")))))))
Formula 5 simplified : !FGX(("(((((((((((i2.u4.think_3<1)||(i2.u4.fork_2<1))&&((i0.u0.think_0<1)||(i0.u0.fork_9<1)))&&((u2.think_1<1)||(u2.fork_0<1)))&&((i3.u6.think_5<1)||(i3.u6.fork_4<1)))&&((i2.u3.think_2<1)||(i2.u3.fork_1<1)))&&((i3.u5.think_4<1)||(i3.u5.fork_3<1)))&&((i4.u7.think_6<1)||(i4.u7.fork_5<1)))&&((i4.u8.think_7<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(i4.u8.fork_7<1)))&&((i0.u1.think_9<1)||(u9.fork_8<1)))" U "(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))") | (XG"(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))" U "(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))"))
Computing Next relation with stutter on 2 deadlock states
5 unique states visited
5 strongly connected components in search stack
6 transitions explored
5 items max in DFS search stack
1 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.64037,26788,1,0,19770,385,948,22463,251,1081,24529
an accepting run exists (use option '-e' to print it)
Formula 5 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-07 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 6 : !(((G(X(!(X(F(X(X("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))"))))))))U((X("(((((((((((i2.u3.fork_1<1)||(u2.catch1_1<1))&&((i4.u7.fork_5<1)||(i3.u6.catch1_5<1)))&&((i0.u0.fork_9<1)||(i0.u1.catch1_9<1)))&&((i3.u5.fork_3<1)||(i2.u4.catch1_3<1)))&&((i4.u8.fork_7<1)||(i4.u8.catch1_7<1)))&&((u2.fork_0<1)||(i0.u0.catch1_0<1)))&&((i2.u4.fork_2<1)||(i2.u3.catch1_2<1)))&&((i3.u6.fork_4<1)||(i3.u5.catch1_4<1)))&&((i4.u8.fork_6<1)||(i4.u7.catch1_6<1)))&&((u9.fork_8<1)||(u9.catch1_8<1)))"))&&(F("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))")))))
Formula 6 simplified : !(GX!XFXX"((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))" U (X"(((((((((((i2.u3.fork_1<1)||(u2.catch1_1<1))&&((i4.u7.fork_5<1)||(i3.u6.catch1_5<1)))&&((i0.u0.fork_9<1)||(i0.u1.catch1_9<1)))&&((i3.u5.fork_3<1)||(i2.u4.catch1_3<1)))&&((i4.u8.fork_7<1)||(i4.u8.catch1_7<1)))&&((u2.fork_0<1)||(i0.u0.catch1_0<1)))&&((i2.u4.fork_2<1)||(i2.u3.catch1_2<1)))&&((i3.u6.fork_4<1)||(i3.u5.catch1_4<1)))&&((i4.u8.fork_6<1)||(i4.u7.catch1_6<1)))&&((u9.fork_8<1)||(u9.catch1_8<1)))" & F"((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))"))
Computing Next relation with stutter on 2 deadlock states
3 unique states visited
3 strongly connected components in search stack
3 transitions explored
3 items max in DFS search stack
4 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.67796,27052,1,0,21529,391,954,23749,251,1107,26548
an accepting run exists (use option '-e' to print it)
Formula 6 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-08 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 7 : !(((X((((((((((((G("(((((((((((i4.u8.think_7<1)||(i4.u8.fork_7<1))&&((i0.u1.think_9<1)||(i0.u0.fork_9<1)))&&((i4.u7.think_6<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(u9.fork_8<1)))&&((i0.u0.think_0<1)||(u2.fork_0<1)))&&((u2.think_1<1)||(i2.u3.fork_1<1)))&&((i2.u3.think_2<1)||(i2.u4.fork_2<1)))&&((i2.u4.think_3<1)||(i3.u5.fork_3<1)))&&((i3.u5.think_4<1)||(i3.u6.fork_4<1)))&&((i3.u6.think_5<1)||(i4.u7.fork_5<1)))"))U("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))"))||("((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))"))||("((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1))"))||("((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1))"))||("((i4.u8.fork_7>=1)&&(u9.catch2_8>=1))"))||("((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1))"))||("((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1))"))||("((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1))"))||("((u9.fork_8>=1)&&(i0.u1.catch2_9>=1))"))||("((u2.fork_0>=1)&&(u2.catch2_1>=1))"))||("((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1))")))&&(F("(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))"))))
Formula 7 simplified : !(X("((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))" | "((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1))" | "((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1))" | "((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1))" | "((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1))" | "((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1))" | "((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1))" | "((i4.u8.fork_7>=1)&&(u9.catch2_8>=1))" | "((u2.fork_0>=1)&&(u2.catch2_1>=1))" | "((u9.fork_8>=1)&&(i0.u1.catch2_9>=1))" | (G"(((((((((((i4.u8.think_7<1)||(i4.u8.fork_7<1))&&((i0.u1.think_9<1)||(i0.u0.fork_9<1)))&&((i4.u7.think_6<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(u9.fork_8<1)))&&((i0.u0.think_0<1)||(u2.fork_0<1)))&&((u2.think_1<1)||(i2.u3.fork_1<1)))&&((i2.u3.think_2<1)||(i2.u4.fork_2<1)))&&((i2.u4.think_3<1)||(i3.u5.fork_3<1)))&&((i3.u5.think_4<1)||(i3.u6.fork_4<1)))&&((i3.u6.think_5<1)||(i4.u7.fork_5<1)))" U "((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))")) & F"(((((((((((i2.u4.think_3>=1)&&(i2.u4.fork_2>=1))||((i0.u0.think_0>=1)&&(i0.u0.fork_9>=1)))||((u2.think_1>=1)&&(u2.fork_0>=1)))||((i3.u6.think_5>=1)&&(i3.u6.fork_4>=1)))||((i2.u3.think_2>=1)&&(i2.u3.fork_1>=1)))||((i3.u5.think_4>=1)&&(i3.u5.fork_3>=1)))||((i4.u7.think_6>=1)&&(i4.u7.fork_5>=1)))||((i4.u8.think_7>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(i4.u8.fork_7>=1)))||((i0.u1.think_9>=1)&&(u9.fork_8>=1)))")
Computing Next relation with stutter on 2 deadlock states
4 unique states visited
4 strongly connected components in search stack
4 transitions explored
4 items max in DFS search stack
0 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.89691,34180,1,0,21621,391,1094,23818,255,1108,26969
an accepting run exists (use option '-e' to print it)
Formula 7 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-09 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 8 : !((F(("(((((((((((((((((((((i0.u0.fork_9<1)||(i0.u0.catch2_0<1))&&((i3.u5.fork_3<1)||(i3.u5.catch2_4<1)))&&((i4.u8.fork_6<1)||(i4.u8.catch2_7<1)))&&((i4.u8.fork_7<1)||(u9.catch2_8<1)))&&((i2.u4.fork_2<1)||(i2.u4.catch2_3<1)))&&((i3.u6.fork_4<1)||(i3.u6.catch2_5<1)))&&((i4.u7.fork_5<1)||(i4.u7.catch2_6<1)))&&((u9.fork_8<1)||(i0.u1.catch2_9<1)))&&((u2.fork_0<1)||(u2.catch2_1<1)))&&((i2.u3.fork_1<1)||(i2.u3.catch2_2<1)))||((i2.u3.fork_1>=1)&&(u2.catch1_1>=1)))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))")U("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))"))))
Formula 8 simplified : !F("(((((((((((((((((((((i0.u0.fork_9<1)||(i0.u0.catch2_0<1))&&((i3.u5.fork_3<1)||(i3.u5.catch2_4<1)))&&((i4.u8.fork_6<1)||(i4.u8.catch2_7<1)))&&((i4.u8.fork_7<1)||(u9.catch2_8<1)))&&((i2.u4.fork_2<1)||(i2.u4.catch2_3<1)))&&((i3.u6.fork_4<1)||(i3.u6.catch2_5<1)))&&((i4.u7.fork_5<1)||(i4.u7.catch2_6<1)))&&((u9.fork_8<1)||(i0.u1.catch2_9<1)))&&((u2.fork_0<1)||(u2.catch2_1<1)))&&((i2.u3.fork_1<1)||(i2.u3.catch2_2<1)))||((i2.u3.fork_1>=1)&&(u2.catch1_1>=1)))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))" U "(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))")
Computing Next relation with stutter on 2 deadlock states
2 unique states visited
2 strongly connected components in search stack
2 transitions explored
2 items max in DFS search stack
1 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,1.90522,34180,1,0,22398,392,1098,24673,255,1114,28102
an accepting run exists (use option '-e' to print it)
Formula 8 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-10 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 9 : !((X(((((((((((((("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))")U("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))"))||("((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))"))||("((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1))"))||("((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1))"))||("((u9.think_8>=1)&&(u9.fork_8>=1))"))||("((i0.u0.think_0>=1)&&(u2.fork_0>=1))"))||("((u2.think_1>=1)&&(i2.u3.fork_1>=1))"))||("((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1))"))||("((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1))"))||("((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1))"))||("((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1))"))||("((((((((((i0.u1.eat_9<1)&&(u9.eat_8<1))&&(u2.eat_1<1))&&(i0.u0.eat_0<1))&&(i2.u4.eat_3<1))&&(i2.u3.eat_2<1))&&(i3.u6.eat_5<1))&&(i3.u5.eat_4<1))&&(i4.u8.eat_7<1))&&(i4.u7.eat_6<1))"))||((F("(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))"))&&(X("(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))"))))))
Formula 9 simplified : !X("((((((((((i0.u1.eat_9<1)&&(u9.eat_8<1))&&(u2.eat_1<1))&&(i0.u0.eat_0<1))&&(i2.u4.eat_3<1))&&(i2.u3.eat_2<1))&&(i3.u6.eat_5<1))&&(i3.u5.eat_4<1))&&(i4.u8.eat_7<1))&&(i4.u7.eat_6<1))" | "((i0.u0.think_0>=1)&&(u2.fork_0>=1))" | "((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1))" | "((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1))" | "((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1))" | "((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1))" | "((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1))" | "((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1))" | "((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))" | "((u2.think_1>=1)&&(i2.u3.fork_1>=1))" | "((u9.think_8>=1)&&(u9.fork_8>=1))" | ("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))" U "(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))") | (F"(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))" & X"(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))"))
Computing Next relation with stutter on 2 deadlock states
2 unique states visited
0 strongly connected components in search stack
1 transitions explored
2 items max in DFS search stack
1 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,2.29275,45860,1,0,22398,392,1192,24673,256,1114,28225
no accepting run found
Formula 9 is TRUE no accepting run found.
FORMULA Philosophers-COL-000010-12 TRUE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 10 : !((!(F(X((((((((((((G(X("(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))")))U(F("(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))")))||("((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))"))||("((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1))"))||("((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1))"))||("((u9.think_8>=1)&&(u9.fork_8>=1))"))||("((i0.u0.think_0>=1)&&(u2.fork_0>=1))"))||("((u2.think_1>=1)&&(i2.u3.fork_1>=1))"))||("((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1))"))||("((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1))"))||("((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1))"))||("((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1))"))))))
Formula 10 simplified : FX("((i0.u0.think_0>=1)&&(u2.fork_0>=1))" | "((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1))" | "((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1))" | "((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1))" | "((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1))" | "((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1))" | "((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1))" | "((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))" | "((u2.think_1>=1)&&(i2.u3.fork_1>=1))" | "((u9.think_8>=1)&&(u9.fork_8>=1))" | (GX"(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))" U F"(((((((((((i4.u8.think_7>=1)&&(i4.u8.fork_7>=1))||((i0.u1.think_9>=1)&&(i0.u0.fork_9>=1)))||((i4.u7.think_6>=1)&&(i4.u8.fork_6>=1)))||((u9.think_8>=1)&&(u9.fork_8>=1)))||((i0.u0.think_0>=1)&&(u2.fork_0>=1)))||((u2.think_1>=1)&&(i2.u3.fork_1>=1)))||((i2.u3.think_2>=1)&&(i2.u4.fork_2>=1)))||((i2.u4.think_3>=1)&&(i3.u5.fork_3>=1)))||((i3.u5.think_4>=1)&&(i3.u6.fork_4>=1)))||((i3.u6.think_5>=1)&&(i4.u7.fork_5>=1)))"))
Computing Next relation with stutter on 2 deadlock states
4 unique states visited
4 strongly connected components in search stack
4 transitions explored
4 items max in DFS search stack
0 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,2.36612,45860,1,0,22459,393,1235,24738,256,1118,28597
an accepting run exists (use option '-e' to print it)
Formula 10 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-13 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 11 : !(((F((!(F(((((((((((F("(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))"))||("((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))"))||("((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1))"))||("((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1))"))||("((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1))"))||("((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1))"))||("((u2.fork_0>=1)&&(i0.u0.catch1_0>=1))"))||("((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1))"))||("((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1))"))||("((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1))"))||("((u9.fork_8>=1)&&(u9.catch1_8>=1))"))))||(!(X("((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))")))))U(G(X("((((((((((i0.u1.eat_9<1)&&(u9.eat_8<1))&&(u2.eat_1<1))&&(i0.u0.eat_0<1))&&(i2.u4.eat_3<1))&&(i2.u3.eat_2<1))&&(i3.u6.eat_5<1))&&(i3.u5.eat_4<1))&&(i4.u8.eat_7<1))&&(i4.u7.eat_6<1))")))))
Formula 11 simplified : !(F(!F("((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1))" | "((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))" | "((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1))" | "((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1))" | "((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1))" | "((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1))" | "((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1))" | "((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1))" | "((u2.fork_0>=1)&&(i0.u0.catch1_0>=1))" | "((u9.fork_8>=1)&&(u9.catch1_8>=1))" | F"(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))") | !X"((((((((((i0.u1.eat_9>=1)||(u9.eat_8>=1))||(u2.eat_1>=1))||(i0.u0.eat_0>=1))||(i2.u4.eat_3>=1))||(i2.u3.eat_2>=1))||(i3.u6.eat_5>=1))||(i3.u5.eat_4>=1))||(i4.u8.eat_7>=1))||(i4.u7.eat_6>=1))") U GX"((((((((((i0.u1.eat_9<1)&&(u9.eat_8<1))&&(u2.eat_1<1))&&(i0.u0.eat_0<1))&&(i2.u4.eat_3<1))&&(i2.u3.eat_2<1))&&(i3.u6.eat_5<1))&&(i3.u5.eat_4<1))&&(i4.u8.eat_7<1))&&(i4.u7.eat_6<1))")
Computing Next relation with stutter on 2 deadlock states
[2020-05-18 05:41:14] [INFO ] Computing symmetric co enabling matrix : 50 transitions.
[2020-05-18 05:41:14] [INFO ] Computation of co-enabling matrix(0/50) took 15 ms. Total solver calls (SAT/UNSAT): 8(3/5)
[2020-05-18 05:41:15] [INFO ] Computation of Finished co-enabling matrix. took 685 ms. Total solver calls (SAT/UNSAT): 260(50/210)
[2020-05-18 05:41:15] [INFO ] Computing Do-Not-Accords matrix : 50 transitions.
[2020-05-18 05:41:15] [INFO ] Computation of Completed DNA matrix. took 1 ms. Total solver calls (SAT/UNSAT): 0(0/0)
[2020-05-18 05:41:15] [INFO ] Built C files in 4943ms conformant to PINS in folder :/home/mcc/execution
Running compilation step : CommandLine [args=[gcc, -c, -I/home/mcc/BenchKit//lts_install_dir//include, -I., -std=c99, -fPIC, -O2, model.c], workingDir=/home/mcc/execution]
Compilation finished in 817 ms.
Running link step : CommandLine [args=[gcc, -shared, -o, gal.so, model.o], workingDir=/home/mcc/execution]
Link finished in 47 ms.
Running LTSmin : CommandLine [args=[/home/mcc/BenchKit//lts_install_dir//bin/pins2lts-mc, ./gal.so, --threads=8, --when, --ltl, (<>(( !( <>(( ( ( ( ( ( ( ( ( ( <>((LTLAP1==true))) || ( (LTLAP40==true)) ) || ( (LTLAP41==true)) ) || ( (LTLAP42==true)) ) || ( (LTLAP43==true)) ) || ( (LTLAP44==true)) ) || ( (LTLAP45==true)) ) || ( (LTLAP46==true)) ) || ( (LTLAP47==true)) ) || ( (LTLAP48==true)) ) || ( (LTLAP49==true)) )) ) || ( !( X((LTLAP0==true))) ) ))U([](X((LTLAP39==true)))), --buchi-type=spotba], workingDir=/home/mcc/execution]
/home/mcc/BenchKit//lts_install_dir//bin/pins2lts-mc: error while loading shared libraries: libltdl.so.7: cannot open shared object file: No such file or directory
WARNING : LTS min runner thread failed on error :java.lang.RuntimeException: Unexpected exception when executing ltsmin :CommandLine [args=[/home/mcc/BenchKit//lts_install_dir//bin/pins2lts-mc, ./gal.so, --threads=8, --when, --ltl, (<>(( !( <>(( ( ( ( ( ( ( ( ( ( <>((LTLAP1==true))) || ( (LTLAP40==true)) ) || ( (LTLAP41==true)) ) || ( (LTLAP42==true)) ) || ( (LTLAP43==true)) ) || ( (LTLAP44==true)) ) || ( (LTLAP45==true)) ) || ( (LTLAP46==true)) ) || ( (LTLAP47==true)) ) || ( (LTLAP48==true)) ) || ( (LTLAP49==true)) )) ) || ( !( X((LTLAP0==true))) ) ))U([](X((LTLAP39==true)))), --buchi-type=spotba], workingDir=/home/mcc/execution]
127
java.lang.RuntimeException: Unexpected exception when executing ltsmin :CommandLine [args=[/home/mcc/BenchKit//lts_install_dir//bin/pins2lts-mc, ./gal.so, --threads=8, --when, --ltl, (<>(( !( <>(( ( ( ( ( ( ( ( ( ( <>((LTLAP1==true))) || ( (LTLAP40==true)) ) || ( (LTLAP41==true)) ) || ( (LTLAP42==true)) ) || ( (LTLAP43==true)) ) || ( (LTLAP44==true)) ) || ( (LTLAP45==true)) ) || ( (LTLAP46==true)) ) || ( (LTLAP47==true)) ) || ( (LTLAP48==true)) ) || ( (LTLAP49==true)) )) ) || ( !( X((LTLAP0==true))) ) ))U([](X((LTLAP39==true)))), --buchi-type=spotba], workingDir=/home/mcc/execution]
127
at fr.lip6.move.gal.application.LTSminRunner.checkProperty(LTSminRunner.java:170)
at fr.lip6.move.gal.application.LTSminRunner.access$10(LTSminRunner.java:124)
at fr.lip6.move.gal.application.LTSminRunner$1.run(LTSminRunner.java:93)
at java.base/java.lang.Thread.run(Thread.java:834)
18 unique states visited
4 strongly connected components in search stack
19 transitions explored
17 items max in DFS search stack
300 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,5.6121,146704,1,0,267372,398,1404,280954,257,1164,316022
an accepting run exists (use option '-e' to print it)
Formula 11 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-14 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
Checking formula 12 : !((X((X(((("(((((((((((i4.u8.think_7<1)||(i4.u8.fork_7<1))&&((i0.u1.think_9<1)||(i0.u0.fork_9<1)))&&((i4.u7.think_6<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(u9.fork_8<1)))&&((i0.u0.think_0<1)||(u2.fork_0<1)))&&((u2.think_1<1)||(i2.u3.fork_1<1)))&&((i2.u3.think_2<1)||(i2.u4.fork_2<1)))&&((i2.u4.think_3<1)||(i3.u5.fork_3<1)))&&((i3.u5.think_4<1)||(i3.u6.fork_4<1)))&&((i3.u6.think_5<1)||(i4.u7.fork_5<1)))")U("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))"))U("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))"))&&("(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))")))&&(G("(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))")))))
Formula 12 simplified : !X(X("(((((((((((i0.u0.fork_9>=1)&&(i0.u0.catch2_0>=1))||((i3.u5.fork_3>=1)&&(i3.u5.catch2_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u8.catch2_7>=1)))||((i4.u8.fork_7>=1)&&(u9.catch2_8>=1)))||((i2.u4.fork_2>=1)&&(i2.u4.catch2_3>=1)))||((i3.u6.fork_4>=1)&&(i3.u6.catch2_5>=1)))||((i4.u7.fork_5>=1)&&(i4.u7.catch2_6>=1)))||((u9.fork_8>=1)&&(i0.u1.catch2_9>=1)))||((u2.fork_0>=1)&&(u2.catch2_1>=1)))||((i2.u3.fork_1>=1)&&(i2.u3.catch2_2>=1)))" & (("(((((((((((i4.u8.think_7<1)||(i4.u8.fork_7<1))&&((i0.u1.think_9<1)||(i0.u0.fork_9<1)))&&((i4.u7.think_6<1)||(i4.u8.fork_6<1)))&&((u9.think_8<1)||(u9.fork_8<1)))&&((i0.u0.think_0<1)||(u2.fork_0<1)))&&((u2.think_1<1)||(i2.u3.fork_1<1)))&&((i2.u3.think_2<1)||(i2.u4.fork_2<1)))&&((i2.u4.think_3<1)||(i3.u5.fork_3<1)))&&((i3.u5.think_4<1)||(i3.u6.fork_4<1)))&&((i3.u6.think_5<1)||(i4.u7.fork_5<1)))" U "(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))") U "(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))")) & G"(((((((((((i2.u3.fork_1>=1)&&(u2.catch1_1>=1))||((i4.u7.fork_5>=1)&&(i3.u6.catch1_5>=1)))||((i0.u0.fork_9>=1)&&(i0.u1.catch1_9>=1)))||((i3.u5.fork_3>=1)&&(i2.u4.catch1_3>=1)))||((i4.u8.fork_7>=1)&&(i4.u8.catch1_7>=1)))||((u2.fork_0>=1)&&(i0.u0.catch1_0>=1)))||((i2.u4.fork_2>=1)&&(i2.u3.catch1_2>=1)))||((i3.u6.fork_4>=1)&&(i3.u5.catch1_4>=1)))||((i4.u8.fork_6>=1)&&(i4.u7.catch1_6>=1)))||((u9.fork_8>=1)&&(u9.catch1_8>=1)))")
Computing Next relation with stutter on 2 deadlock states
6 unique states visited
6 strongly connected components in search stack
7 transitions explored
6 items max in DFS search stack
4 ticks for the emptiness check
Model ,|S| ,Time ,Mem(kb) ,fin. SDD ,fin. DDD ,peak SDD ,peak DDD ,SDD Hom ,SDD cache peak ,DDD Hom ,DDD cachepeak ,SHom cache
STATS,0,5.65669,148288,1,0,271641,404,1414,285243,257,1203,320902
an accepting run exists (use option '-e' to print it)
Formula 12 is FALSE accepting run found.
FORMULA Philosophers-COL-000010-15 FALSE TECHNIQUES DECISION_DIAGRAMS TOPOLOGICAL USE_NUPN
BK_STOP 1589780477168
--------------------
content from stderr:
+ export BINDIR=/home/mcc/BenchKit/
+ BINDIR=/home/mcc/BenchKit/
++ pwd
+ export MODEL=/home/mcc/execution
+ MODEL=/home/mcc/execution
+ [[ LTLFireability = StateSpace ]]
+ /home/mcc/BenchKit//runeclipse.sh /home/mcc/execution LTLFireability -its -ltsminpath /home/mcc/BenchKit//lts_install_dir/ -greatspnpath /home/mcc/BenchKit//greatspn/ -order META -manyOrder -smt -timeout 3600
+ ulimit -s 65536
+ [[ -z '' ]]
+ export LTSMIN_MEM_SIZE=8589934592
+ LTSMIN_MEM_SIZE=8589934592
+ /home/mcc/BenchKit//itstools/its-tools -data /home/mcc/execution/workspace -pnfolder /home/mcc/execution -examination LTLFireability -z3path /home/mcc/BenchKit//z3/bin/z3 -yices2path /home/mcc/BenchKit//yices/bin/yices -its -ltsminpath /home/mcc/BenchKit//lts_install_dir/ -greatspnpath /home/mcc/BenchKit//greatspn/ -order META -manyOrder -smt -timeout 3600 -vmargs -Dosgi.locking=none -Declipse.stateSaveDelayInterval=-1 -Dosgi.configuration.area=/tmp/.eclipse -Xss128m -Xms40m -Xmx16000m -Dfile.encoding=UTF-8 -Dosgi.requiredJavaVersion=1.6
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-000010"
export BK_EXAMINATION="LTLFireability"
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
# this is for BenchKit: explicit launching of the test
echo "====================================================================="
echo " Generated by BenchKit 2-4028"
echo " Executing tool itstools"
echo " Input is Philosophers-COL-000010, examination is LTLFireability"
echo " Time confinement is $BK_TIME_CONFINEMENT seconds"
echo " Memory confinement is 16384 MBytes"
echo " Number of cores is 4"
echo " Run identifier is r126-tajo-158961389700010"
echo "====================================================================="
echo
echo "--------------------"
echo "preparation of the directory to be used:"
tar xzf /home/mcc/BenchKit/INPUTS/Philosophers-COL-000010.tgz
mv Philosophers-COL-000010 execution
cd execution
if [ "LTLFireability" = "ReachabilityDeadlock" ] || [ "LTLFireability" = "UpperBounds" ] || [ "LTLFireability" = "QuasiLiveness" ] || [ "LTLFireability" = "StableMarking" ] || [ "LTLFireability" = "Liveness" ] || [ "LTLFireability" = "OneSafe" ] || [ "LTLFireability" = "StateSpace" ]; then
rm -f GenericPropertiesVerdict.xml
fi
pwd
ls -lh
echo
echo "--------------------"
echo "content from stdout:"
echo
echo "=== Data for post analysis generated by BenchKit (invocation template)"
echo
if [ "LTLFireability" = "UpperBounds" ] ; then
echo "The expected result is a vector of positive values"
echo NUM_VECTOR
elif [ "LTLFireability" != "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 "LTLFireability.txt" ] ; then
echo "here is the order used to build the result vector(from text file)"
for x in $(grep Property LTLFireability.txt | cut -d ' ' -f 2 | sort -u) ; do
echo "FORMULA_NAME $x"
done
elif [ -f "LTLFireability.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
elif [ "LTLFireability" = "ReachabilityDeadlock" ] || [ "LTLFireability" = "QuasiLiveness" ] || [ "LTLFireability" = "StableMarking" ] || [ "LTLFireability" = "Liveness" ] || [ "LTLFireability" = "OneSafe" ] ; then
echo "FORMULA_NAME LTLFireability"
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 ;