diff --git a/lib/sas.lus b/lib/sas.lus
index f2b6616402edfe4ac7cb6aeac3f63d6f40ab5f6c..847108d51a75382de775ec05e2c3412ede0af7fc 100644
--- a/lib/sas.lus
+++ b/lib/sas.lus
@@ -65,5 +65,5 @@ tel;
 node move_count<<const an:int; const pn:int>>(acti : bool^an^pn)
 returns (count:int);
 let
-  count = (-1 -> pre(count)) + pop_count<<pn>>(map<<boolany<<an>>, pn>>(acti));
+	count = 0 -> (pre(count) + pop_count<<pn>>(map<<boolany<<an>>, pn>>(acti)));
 tel;
diff --git a/test/Makefile.inc b/test/Makefile.inc
index 99a6691a08c7916afb8e8e79d3839154a024e02d..ce2e784ca7fddfcd6614b851c8d455453e21aabe 100644
--- a/test/Makefile.inc
+++ b/test/Makefile.inc
@@ -27,7 +27,7 @@ test: $(TOPOLOGY).cmxs $(TOPOLOGY).lus
 	lurette -sut "sasa $(TOPOLOGY).dot $(SASAFLAGS)" -oracle "lv6 $(TOPOLOGY)_oracle.lus -n oracle"
 
 verify: $(TOPOLOGY)_verify.lv4
-	kind2 -v $<
+	kind2 $<
 
 %.verify: %_verify.lv4
 	kind2  $<
diff --git a/test/coloring/er.dot b/test/coloring/ER.dot
similarity index 100%
rename from test/coloring/er.dot
rename to test/coloring/ER.dot
diff --git a/test/coloring/Makefile b/test/coloring/Makefile
index de7c523940e18e7f84424f3b76295a272f4ff297..e5ff2de8a14934839d66eb0bc0fdf6afd77fd0b8 100644
--- a/test/coloring/Makefile
+++ b/test/coloring/Makefile
@@ -1,4 +1,4 @@
-TOPOLOGY ?= clique4
+TOPOLOGY ?= clique3
 DOT2LUSFLAGS ?=
 SASA_ALGOS := p.ml
 SASAFLAGS += --locally-central-daemon
diff --git a/test/coloring/clique3.dot b/test/coloring/clique3.dot
new file mode 100644
index 0000000000000000000000000000000000000000..1672a3b5fc62988ec103c8229c36296c538160eb
--- /dev/null
+++ b/test/coloring/clique3.dot
@@ -0,0 +1,12 @@
+graph graph0 {
+graph [min_deg=2 mean_deg=2. max_deg=2 is_connected=true is_cyclic=true is_tree=false links_number=3]
+  p0 [algo="p.ml"]
+  p1 [algo="p.ml"]
+  p2 [algo="p.ml"]
+
+
+  p0 -- p1
+  p0 -- p2
+  p1 -- p2
+}
+
diff --git a/test/coloring/clique3_oracle.lus b/test/coloring/clique3_oracle.lus
new file mode 100644
index 0000000000000000000000000000000000000000..42222151ac27b36aa6585a2c26ba1db5b7072bc5
--- /dev/null
+++ b/test/coloring/clique3_oracle.lus
@@ -0,0 +1,26 @@
+include "clique3.lus"
+include "verify.lus"
+
+node topology = clique3;
+const an = actions_number;
+const pn = card;
+
+node oracle(
+	p0_color:int;p1_color:int;p2_color:int;
+	Enab_p0_recolor,Enab_p1_recolor,Enab_p2_recolor:bool;
+	p0_recolor,p1_recolor,p2_recolor:bool)
+returns (ok:bool);
+var
+	Acti:bool^an^pn;
+	Enab:bool^an^pn;
+	Stat : state^pn;
+	nodes : state^pn;
+	enables : bool^an^pn;
+let
+	Acti = [[p0_recolor],[p1_recolor],[p2_recolor]];
+	Enab = [[Enab_p0_recolor],[Enab_p1_recolor],[Enab_p2_recolor]];
+	Stat = [ p0_color, p1_color, p2_color ];
+
+	nodes, enables = topology(pre(Acti), Stat);
+	ok = enables = Enab and boolred<<pn,pn,pn>>(map<<=,pn>>(nodes, Stat));
+tel
diff --git a/test/coloring/clique4.dot b/test/coloring/clique4.dot
deleted file mode 100644
index 9509c80474fab2fdea2f2237f6992631cb387414..0000000000000000000000000000000000000000
--- a/test/coloring/clique4.dot
+++ /dev/null
@@ -1,15 +0,0 @@
-graph graph0 {
-graph [min_deg=3 mean_deg=3. max_deg=3 is_connected=true is_cyclic=true is_tree=false links_number=6]
-  p0 [algo="p.ml"]
-  p1 [algo="p.ml"]
-  p2 [algo="p.ml"]
-  p3 [algo="p.ml"]
-
-  p0 -- p1
-  p0 -- p2
-  p0 -- p3
-  p1 -- p2
-  p1 -- p3
-  p2 -- p3
-}
-
diff --git a/test/coloring/clique4_oracle.lus b/test/coloring/clique4_oracle.lus
deleted file mode 100644
index 1cd6e7bfc724e20efc5604275985b90666fee4d7..0000000000000000000000000000000000000000
--- a/test/coloring/clique4_oracle.lus
+++ /dev/null
@@ -1,26 +0,0 @@
-include "clique4.lus"
-include "verify.lus"
-
-node topology = clique4;
-const an = actions_number;
-const pn = card;
-
-node oracle(
-	p0_color:int;p1_color:int;p2_color:int;p3_color:int;
-	Enab_p0_recolor,Enab_p1_recolor,Enab_p2_recolor,Enab_p3_recolor:bool;
-	p0_recolor,p1_recolor,p2_recolor,p3_recolor:bool)
-returns (ok:bool);
-var
-	Acti:bool^an^pn;
-	Enab:bool^an^pn;
-	Stat : state^pn;
-	nodes : state^pn;
-	enables : bool^an^pn;
-let
-	Acti = [[p0_recolor],[p1_recolor],[p2_recolor],[p3_recolor]];
-	Enab = [[Enab_p0_recolor],[Enab_p1_recolor],[Enab_p2_recolor],[Enab_p3_recolor]];
-	Stat = [ p0_color, p1_color, p2_color, p3_color ];
-
-	nodes, enables = topology(pre(Acti), Stat);
-	ok = enables = Enab and boolred<<pn,pn,pn>>(map<<=,pn>>(nodes, Stat));
-tel
diff --git a/test/coloring/grid.dot b/test/coloring/grid.dot
new file mode 100644
index 0000000000000000000000000000000000000000..13bcbade2c335189825658ab08805bdcbf55b524
--- /dev/null
+++ b/test/coloring/grid.dot
@@ -0,0 +1,286 @@
+graph graph0 {
+graph [min_deg=2 mean_deg=3.6 max_deg=4 is_connected=true is_cyclic=true is_tree=false links_number=180]
+  p0 [algo="p.ml"]
+  p1 [algo="p.ml"]
+  p2 [algo="p.ml"]
+  p3 [algo="p.ml"]
+  p4 [algo="p.ml"]
+  p5 [algo="p.ml"]
+  p6 [algo="p.ml"]
+  p7 [algo="p.ml"]
+  p8 [algo="p.ml"]
+  p9 [algo="p.ml"]
+  p10 [algo="p.ml"]
+  p11 [algo="p.ml"]
+  p12 [algo="p.ml"]
+  p13 [algo="p.ml"]
+  p14 [algo="p.ml"]
+  p15 [algo="p.ml"]
+  p16 [algo="p.ml"]
+  p17 [algo="p.ml"]
+  p18 [algo="p.ml"]
+  p19 [algo="p.ml"]
+  p20 [algo="p.ml"]
+  p21 [algo="p.ml"]
+  p22 [algo="p.ml"]
+  p23 [algo="p.ml"]
+  p24 [algo="p.ml"]
+  p25 [algo="p.ml"]
+  p26 [algo="p.ml"]
+  p27 [algo="p.ml"]
+  p28 [algo="p.ml"]
+  p29 [algo="p.ml"]
+  p30 [algo="p.ml"]
+  p31 [algo="p.ml"]
+  p32 [algo="p.ml"]
+  p33 [algo="p.ml"]
+  p34 [algo="p.ml"]
+  p35 [algo="p.ml"]
+  p36 [algo="p.ml"]
+  p37 [algo="p.ml"]
+  p38 [algo="p.ml"]
+  p39 [algo="p.ml"]
+  p40 [algo="p.ml"]
+  p41 [algo="p.ml"]
+  p42 [algo="p.ml"]
+  p43 [algo="p.ml"]
+  p44 [algo="p.ml"]
+  p45 [algo="p.ml"]
+  p46 [algo="p.ml"]
+  p47 [algo="p.ml"]
+  p48 [algo="p.ml"]
+  p49 [algo="p.ml"]
+  p50 [algo="p.ml"]
+  p51 [algo="p.ml"]
+  p52 [algo="p.ml"]
+  p53 [algo="p.ml"]
+  p54 [algo="p.ml"]
+  p55 [algo="p.ml"]
+  p56 [algo="p.ml"]
+  p57 [algo="p.ml"]
+  p58 [algo="p.ml"]
+  p59 [algo="p.ml"]
+  p60 [algo="p.ml"]
+  p61 [algo="p.ml"]
+  p62 [algo="p.ml"]
+  p63 [algo="p.ml"]
+  p64 [algo="p.ml"]
+  p65 [algo="p.ml"]
+  p66 [algo="p.ml"]
+  p67 [algo="p.ml"]
+  p68 [algo="p.ml"]
+  p69 [algo="p.ml"]
+  p70 [algo="p.ml"]
+  p71 [algo="p.ml"]
+  p72 [algo="p.ml"]
+  p73 [algo="p.ml"]
+  p74 [algo="p.ml"]
+  p75 [algo="p.ml"]
+  p76 [algo="p.ml"]
+  p77 [algo="p.ml"]
+  p78 [algo="p.ml"]
+  p79 [algo="p.ml"]
+  p80 [algo="p.ml"]
+  p81 [algo="p.ml"]
+  p82 [algo="p.ml"]
+  p83 [algo="p.ml"]
+  p84 [algo="p.ml"]
+  p85 [algo="p.ml"]
+  p86 [algo="p.ml"]
+  p87 [algo="p.ml"]
+  p88 [algo="p.ml"]
+  p89 [algo="p.ml"]
+  p90 [algo="p.ml"]
+  p91 [algo="p.ml"]
+  p92 [algo="p.ml"]
+  p93 [algo="p.ml"]
+  p94 [algo="p.ml"]
+  p95 [algo="p.ml"]
+  p96 [algo="p.ml"]
+  p97 [algo="p.ml"]
+  p98 [algo="p.ml"]
+  p99 [algo="p.ml"]
+
+
+  p0 -- p1
+  p0 -- p10
+  p1 -- p11
+  p1 -- p2
+  p10 -- p11
+  p10 -- p20
+  p11 -- p12
+  p11 -- p21
+  p12 -- p13
+  p12 -- p2
+  p12 -- p22
+  p13 -- p14
+  p13 -- p23
+  p13 -- p3
+  p14 -- p15
+  p14 -- p24
+  p14 -- p4
+  p15 -- p16
+  p15 -- p25
+  p15 -- p5
+  p16 -- p17
+  p16 -- p26
+  p16 -- p6
+  p17 -- p18
+  p17 -- p27
+  p17 -- p7
+  p18 -- p19
+  p18 -- p28
+  p18 -- p8
+  p19 -- p29
+  p19 -- p9
+  p2 -- p3
+  p20 -- p21
+  p20 -- p30
+  p21 -- p22
+  p21 -- p31
+  p22 -- p23
+  p22 -- p32
+  p23 -- p24
+  p23 -- p33
+  p24 -- p25
+  p24 -- p34
+  p25 -- p26
+  p25 -- p35
+  p26 -- p27
+  p26 -- p36
+  p27 -- p28
+  p27 -- p37
+  p28 -- p29
+  p28 -- p38
+  p29 -- p39
+  p3 -- p4
+  p30 -- p31
+  p30 -- p40
+  p31 -- p32
+  p31 -- p41
+  p32 -- p33
+  p32 -- p42
+  p33 -- p34
+  p33 -- p43
+  p34 -- p35
+  p34 -- p44
+  p35 -- p36
+  p35 -- p45
+  p36 -- p37
+  p36 -- p46
+  p37 -- p38
+  p37 -- p47
+  p38 -- p39
+  p38 -- p48
+  p39 -- p49
+  p4 -- p5
+  p40 -- p41
+  p40 -- p50
+  p41 -- p42
+  p41 -- p51
+  p42 -- p43
+  p42 -- p52
+  p43 -- p44
+  p43 -- p53
+  p44 -- p45
+  p44 -- p54
+  p45 -- p46
+  p45 -- p55
+  p46 -- p47
+  p46 -- p56
+  p47 -- p48
+  p47 -- p57
+  p48 -- p49
+  p48 -- p58
+  p49 -- p59
+  p5 -- p6
+  p50 -- p51
+  p50 -- p60
+  p51 -- p52
+  p51 -- p61
+  p52 -- p53
+  p52 -- p62
+  p53 -- p54
+  p53 -- p63
+  p54 -- p55
+  p54 -- p64
+  p55 -- p56
+  p55 -- p65
+  p56 -- p57
+  p56 -- p66
+  p57 -- p58
+  p57 -- p67
+  p58 -- p59
+  p58 -- p68
+  p59 -- p69
+  p6 -- p7
+  p60 -- p61
+  p60 -- p70
+  p61 -- p62
+  p61 -- p71
+  p62 -- p63
+  p62 -- p72
+  p63 -- p64
+  p63 -- p73
+  p64 -- p65
+  p64 -- p74
+  p65 -- p66
+  p65 -- p75
+  p66 -- p67
+  p66 -- p76
+  p67 -- p68
+  p67 -- p77
+  p68 -- p69
+  p68 -- p78
+  p69 -- p79
+  p7 -- p8
+  p70 -- p71
+  p70 -- p80
+  p71 -- p72
+  p71 -- p81
+  p72 -- p73
+  p72 -- p82
+  p73 -- p74
+  p73 -- p83
+  p74 -- p75
+  p74 -- p84
+  p75 -- p76
+  p75 -- p85
+  p76 -- p77
+  p76 -- p86
+  p77 -- p78
+  p77 -- p87
+  p78 -- p79
+  p78 -- p88
+  p79 -- p89
+  p8 -- p9
+  p80 -- p81
+  p80 -- p90
+  p81 -- p82
+  p81 -- p91
+  p82 -- p83
+  p82 -- p92
+  p83 -- p84
+  p83 -- p93
+  p84 -- p85
+  p84 -- p94
+  p85 -- p86
+  p85 -- p95
+  p86 -- p87
+  p86 -- p96
+  p87 -- p88
+  p87 -- p97
+  p88 -- p89
+  p88 -- p98
+  p89 -- p99
+  p90 -- p91
+  p91 -- p92
+  p92 -- p93
+  p93 -- p94
+  p94 -- p95
+  p95 -- p96
+  p96 -- p97
+  p97 -- p98
+  p98 -- p99
+}
+
diff --git a/test/coloring/simu.lus b/test/coloring/simu.lus
index 133a3f3b0f33521379c9eb4746e6b5d053788bf2..a0fa0f42de8dd155261b3d302dda6dce2d000a3f 100644
--- a/test/coloring/simu.lus
+++ b/test/coloring/simu.lus
@@ -1,34 +1,25 @@
 include "../../lib/sas.lus"
-
-node sync(p_c : state^card; Enab_p : bool^actions_number^card)
-returns (p : bool^actions_number^card; initials : state^card);
-var
-  _d:int;
-let 
-  p=Enab_p;
-  _d, initials= fill<<incr; card>>(0);
-tel;
+include "ER.lus"
 
 node incr(ain : int) returns (aout, z : int);
 let
     z = ain; aout = ain + 1;
 tel;
 
-node simu(x:bool) returns (cpt:int);
+node simu(x:bool) returns (s : bool);
 var
   initials : state^card;
   Enab_p : bool^actions_number^card;
-  p : bool^actions_number^card; 
+  p : bool^actions_number^card;
   _d:int;
-  
+
   p_c : state^card;
 
-let 
- cpt = 0 -> pre cpt +1;
-  assert (cpt < 10);
+let
   _d, initials= fill<<incr; card>>(0);
 
   p = false^actions_number^card -> pre Enab_p;
-  p_c, Enab_p = er(p, initials -> 0^card);
+  p_c, Enab_p = ER(p, initials -> 0^card);
 
+  s = silent<<actions_number,card>>(Enab_p);
 tel
diff --git a/test/token/verify.lus b/test/token/verify.lus
index 9a9ab63dadbb7a2d512312fd0d679bfc66c17ce9..574112307af08a9f29e5f82ca71df7629c6b3fbd 100644
--- a/test/token/verify.lus
+++ b/test/token/verify.lus
@@ -21,6 +21,7 @@ let
 	closure = true -> (pre(legitimate) => legitimate);
 
 	steps = 0 -> pre(steps) ;
+	steps = 0 -> (pre(steps) + 1);
 	ok = tokens >= 1 -- there should always be at least one token holder
 	     and closure
 	     and (steps >= 3*card*(card-1)/2 - card - 1 => legitimate); -- worst-case stabilization