diff --git a/lustrec_tests/lustre_files/DRAGON_1.lus b/lustrec_tests/lustre_files/DRAGON_1.lus
index 9eca443b41914c3e4bbb909d2ea13647d840dc2b..c6c84b2bde1890b6a3f116513b9449da496e819d 100644
--- a/lustrec_tests/lustre_files/DRAGON_1.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1.lus
@@ -92,7 +92,7 @@ let
    pre invalid;
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10.lus b/lustrec_tests/lustre_files/DRAGON_10.lus
index 3a5d625c34c4052a782ff74c5afd91cf3bf73838..d66298124735c70e4880cd965351d5aef68dc4ac 100644
--- a/lustrec_tests/lustre_files/DRAGON_10.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10.lus
@@ -93,7 +93,7 @@ let
 tel
 
 -- Not provable with luke-bitvec
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e3_2749.lus b/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e3_2749.lus
index 98e5642022f7c78d38d7914ae396a093846a8bbc..71331d9cee0dd119c36efdf97d06b803ce263fb1 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e3_2749.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e3_2749.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e1_3587_e3_2749( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e7_872.lus b/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e7_872.lus
index d58998e989aa6cb3df33e5ab96705b55d250b6d8..056415d6b0caa0675b4b52e0b86b89addc7b7efd 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e7_872.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e1_3587_e7_872.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e1_3587_e7_872( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e1_998.lus b/lustrec_tests/lustre_files/DRAGON_10_e1_998.lus
index 4f656dd102a009413f5c64d68a887d2c1d90d871..5a7e3bce2f29993a8a169acda2c9e1c87a514e1c 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e1_998.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e1_998.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e1_998( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e2_2785_e3_1744.lus b/lustrec_tests/lustre_files/DRAGON_10_e2_2785_e3_1744.lus
index ea84210b521c04d1fc513346dd074bd4253fab95..84e265ef793c620cb56d3cc05813ab1a2ff7c447 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e2_2785_e3_1744.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e2_2785_e3_1744.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e2_2785_e3_1744( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e2_402.lus b/lustrec_tests/lustre_files/DRAGON_10_e2_402.lus
index b93e428d94f96b989e315b317c4620acd0b5aa7c..683bdd9a2d0ca6be48ecbdce6822f1993473fdbb 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e2_402.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e2_402.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e2_402( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e3_144_e5_2046.lus b/lustrec_tests/lustre_files/DRAGON_10_e3_144_e5_2046.lus
index f423cfcb2727423859a676a4970fafdac52ee34e..047eceed0bcc3e01023843a147a81469ad54a28b 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e3_144_e5_2046.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e3_144_e5_2046.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e3_144_e5_2046( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e3_144_e7_523.lus b/lustrec_tests/lustre_files/DRAGON_10_e3_144_e7_523.lus
index 76ec74ab9a9a69fd9fc1fea6e77c99186c30e029..c4ceaa4dc006b35cb955c7bef8fb46362d6aeee3 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e3_144_e7_523.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e3_144_e7_523.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e3_144_e7_523( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e3_3429.lus b/lustrec_tests/lustre_files/DRAGON_10_e3_3429.lus
index 5f48ee4371bc33c59092a4cb9c797c9050fc5a3c..086b3d3e93c98cd770f2e2eea851fe92d08a1505 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e3_3429.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e3_3429.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e3_3429( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e2_1020.lus b/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e2_1020.lus
index 8d625d27040db8c70d1b08578f4a344cfa16b649..7f6d6d6e3cd5cadaa16400e43a7cb7fb9141d125 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e2_1020.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e2_1020.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e7_3861_e2_1020( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e7_2180.lus b/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e7_2180.lus
index 5dab0ec19dd5f29787b434d2c4792e0d22753e95..f932adf4bf21cf418b24a8e24fc639bdd98d2cdd 100644
--- a/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e7_2180.lus
+++ b/lustrec_tests/lustre_files/DRAGON_10_e7_3861_e7_2180.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_10_e7_3861_e7_2180( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11.lus b/lustrec_tests/lustre_files/DRAGON_11.lus
index bc7641770d963776f25c4ba2a8e61c1fe02d5757..8b1c9038ce374a1d900ab34d4b0b95717250c9e1 100644
--- a/lustrec_tests/lustre_files/DRAGON_11.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11.lus
@@ -101,7 +101,7 @@ let
 tel
 
 -- Not provable?
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e1_2450.lus b/lustrec_tests/lustre_files/DRAGON_11_e1_2450.lus
index 044e05aa81d8848ad718fa02e95638637c7dad56..fa8166d7d39c30ef9febc356ef7d1c50bc037a40 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e1_2450.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e1_2450.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e1_2450( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e1_5887.lus b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e1_5887.lus
index c6af53a747cbdcfcabc470d1100def49c4e9ca43..07bebe5caaa6c52b1b365ade24c6d488f671144f 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e1_5887.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e1_5887.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e1_2450_e1_5887( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e2_1483.lus b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e2_1483.lus
index 3514e048f7d9b039cff248ad30072d8175ea95fa..ecc40a5c4d0f0e08cc968f476b2e4bf97d4db0bd 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e2_1483.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e2_1483.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e1_2450_e2_1483( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e3_2330.lus b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e3_2330.lus
index 3525675d1a9b2b64ea3384a62f5b5c53f8cd0a4d..fe6b6e75e4435296ded059782d77056a2ac0b47d 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e3_2330.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e3_2330.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e1_2450_e3_2330( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e7_5791.lus b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e7_5791.lus
index 20367198fee1cfb65162333e9ebcee53669fe51a..9d5821a4f41ec679760ed8131aa4eaecb15b863e 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e7_5791.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e1_2450_e7_5791.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e1_2450_e7_5791( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e2_1678_e1_3565.lus b/lustrec_tests/lustre_files/DRAGON_11_e2_1678_e1_3565.lus
index 62dd4724a0e612ac51dc666c54be646d3f561524..ae51f4d316254173f2c4953b05ece07383dc6b1f 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e2_1678_e1_3565.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e2_1678_e1_3565.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e2_1678_e1_3565( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e2_5396_e3_282.lus b/lustrec_tests/lustre_files/DRAGON_11_e2_5396_e3_282.lus
index a793ca4fc5f0f2ac88251593a92af07f21c8fa73..756c30f79a8b2874f7a6303ae5549d2eb87c401d 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e2_5396_e3_282.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e2_5396_e3_282.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e2_5396_e3_282( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e3_382_e1_505.lus b/lustrec_tests/lustre_files/DRAGON_11_e3_382_e1_505.lus
index e9b45ce8c7af1b15d3409b1877345d92b75d9231..90c8d686779012c15551182aef5f36c2f120c88b 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e3_382_e1_505.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e3_382_e1_505.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e3_382_e1_505( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_11_e3_382_e4_4421.lus b/lustrec_tests/lustre_files/DRAGON_11_e3_382_e4_4421.lus
index c8b7faf8b7af314568262acc0ec49384ffcc1227..4bc6614e6f2f987947ac09e875185231d92aed8d 100644
--- a/lustrec_tests/lustre_files/DRAGON_11_e3_382_e4_4421.lus
+++ b/lustrec_tests/lustre_files/DRAGON_11_e3_382_e4_4421.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_11_e3_382_e4_4421( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12.lus b/lustrec_tests/lustre_files/DRAGON_12.lus
index 8b57af81d54853c7682058dd9910484457217107..ab65c8c718c9a5f47a2f3ac9583135363146efb5 100644
--- a/lustrec_tests/lustre_files/DRAGON_12.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12.lus
@@ -101,7 +101,7 @@ let
 tel
 
 -- Only provable in nbac
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12_e1_4640_e7_128.lus b/lustrec_tests/lustre_files/DRAGON_12_e1_4640_e7_128.lus
index 9f73a8c71de7552cac0eccb34513bf19ea00bd4b..ce1c6bda507f30dc77df549ce9bfcf17784cb992 100644
--- a/lustrec_tests/lustre_files/DRAGON_12_e1_4640_e7_128.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12_e1_4640_e7_128.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12_e1_4640_e7_128( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12_e2_1618.lus b/lustrec_tests/lustre_files/DRAGON_12_e2_1618.lus
index 567396e1a9b44c0c12de1e9755b74a29d0bc82f5..324b38c876ff4dc5b072aa1fb4a380263581fc49 100644
--- a/lustrec_tests/lustre_files/DRAGON_12_e2_1618.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12_e2_1618.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12_e2_1618( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e1_6030.lus b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e1_6030.lus
index 481df66dab285feb3104c0412906a382a7716f14..ea0f986c0ce77de4ebfd870bcd77ea375145c7c2 100644
--- a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e1_6030.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e1_6030.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12_e2_1618_e1_6030( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e2_138.lus b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e2_138.lus
index 4b259b5d4a162b2c038ee39d1d30fbc871275f6a..c9daf454bfbfeeca916e3884f5ce7167bb9ab364 100644
--- a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e2_138.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e2_138.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12_e2_1618_e2_138( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e3_2012.lus b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e3_2012.lus
index 51a50a61521b2acc70c488e0ac207fd9288e9aeb..8dda840df87aa97879d3d503b177df497c5cee65 100644
--- a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e3_2012.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e3_2012.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12_e2_1618_e3_2012( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e7_4732.lus b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e7_4732.lus
index cebf84d249b059479d3ddbe8ffe8cea51247aef7..f38a6121cd465d092ab1b16e526efd08c4433326 100644
--- a/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e7_4732.lus
+++ b/lustrec_tests/lustre_files/DRAGON_12_e2_1618_e7_4732.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_12_e2_1618_e7_4732( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13.lus b/lustrec_tests/lustre_files/DRAGON_13.lus
index d722b2312eb5e169ba5787f5f817e07713dc1f1b..d3991fbd0e14dc40ab3aa81138ddd48c2a5ccf30 100644
--- a/lustrec_tests/lustre_files/DRAGON_13.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13.lus
@@ -101,7 +101,7 @@ let
 tel
 
 -- Only provable in nbac
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13_e3_1418_e3_2761.lus b/lustrec_tests/lustre_files/DRAGON_13_e3_1418_e3_2761.lus
index 0e34dc482ea723b6e63cb86c3b6ed2271cc3344e..2cade6d83ec716ae2284b2310399c3056d9dbec6 100644
--- a/lustrec_tests/lustre_files/DRAGON_13_e3_1418_e3_2761.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13_e3_1418_e3_2761.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13_e3_1418_e3_2761( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13_e7_2336.lus b/lustrec_tests/lustre_files/DRAGON_13_e7_2336.lus
index 709f18d0accd15f6c8c0860ae7cf7b9826ef9e0c..ba59ceabe5d54127093ed46a5b1cb02986915efa 100644
--- a/lustrec_tests/lustre_files/DRAGON_13_e7_2336.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13_e7_2336.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13_e7_2336( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e1_541.lus b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e1_541.lus
index 99195afe14b95a34238cda180e62859674e5a94b..a854151f7b518c1a4d4e56632b30dc34e002764d 100644
--- a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e1_541.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e1_541.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13_e7_2336_e1_541( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e2_1255.lus b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e2_1255.lus
index 085f7eeb2a4343767b86ff6e98d85f85d8415471..5fdb5f85cc88ac70176f8f53a3cd0634468b7167 100644
--- a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e2_1255.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e2_1255.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13_e7_2336_e2_1255( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e3_3117.lus b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e3_3117.lus
index d128d7508916f3895fa6e236423936bb72ecc1cd..538ce9b0a2ae6c0b12227cc7b96536d813247207 100644
--- a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e3_3117.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e3_3117.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13_e7_2336_e3_3117( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e7_685.lus b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e7_685.lus
index e50457c74fd6ca50ee8afe436a47dd8fbdda24dd..72c8254834c2a24ae746b69ce819c62039da0426 100644
--- a/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e7_685.lus
+++ b/lustrec_tests/lustre_files/DRAGON_13_e7_2336_e7_685.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_13_e7_2336_e7_685( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14.lus b/lustrec_tests/lustre_files/DRAGON_14.lus
index 816e0117daecc30419ee7340689601bb786d0aa3..d0b5f4b00649dd69ba267950fdeb82d5acf1f620 100644
--- a/lustrec_tests/lustre_files/DRAGON_14.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14.lus
@@ -101,7 +101,7 @@ let
 tel
 
 -- Not provable?
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e1_5710.lus b/lustrec_tests/lustre_files/DRAGON_14_e1_5710.lus
index 4fc7ba7ebe7cef33ade22496308c8bc698864ae5..3c44be1e33d5b788dbaa8374e7f07028e04dced1 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e1_5710.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e1_5710.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e1_5710( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e2_3606.lus b/lustrec_tests/lustre_files/DRAGON_14_e2_3606.lus
index 62511e89d8e81a6c943dadda0b9d3a793ea344d8..1967961cc4ea86c41eb1e2e0a870eb934a1a4e0c 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e2_3606.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e2_3606.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e2_3606( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e3_1259_e1_5798.lus b/lustrec_tests/lustre_files/DRAGON_14_e3_1259_e1_5798.lus
index 6033ddfa10cdb32a136165a10d85921a33f8da88..431395a1e1f4b3bea0161f9d87c843641f2abcdf 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e3_1259_e1_5798.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e3_1259_e1_5798.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e3_1259_e1_5798( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e3_5120.lus b/lustrec_tests/lustre_files/DRAGON_14_e3_5120.lus
index 25f01ba0da99906a0f77cbe39b83f786eaacc7d4..e0aca84edc370c2cb5430aaabe1b14087bd0757a 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e3_5120.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e3_5120.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e3_5120( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e7_3162.lus b/lustrec_tests/lustre_files/DRAGON_14_e7_3162.lus
index 02133366e842a1855b40a303c14977925477a82b..5dc74481f69ce0f36c5c750b1c4bd6c5628a6fec 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e7_3162.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e7_3162.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e7_3162( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e1_3998.lus b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e1_3998.lus
index 7ff0f7d4d8428e145fb21020c86d28bc3fb6db4d..0523b86e9a84f7b9c6bbf29c52f201be879f3c9e 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e1_3998.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e1_3998.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e7_3162_e1_3998( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e2_753.lus b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e2_753.lus
index 15a85bc56f55dc2829ed1e4af41d7e8c9277d648..a1941a750810a297a0526d2ef8a3b6443ef4b285 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e2_753.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e2_753.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e7_3162_e2_753( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e3_4298.lus b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e3_4298.lus
index 60c0fda7f94baed5ea09874056520d5a7962ad3b..737875e45e0a364b2aa892cda6fdc4130185e53d 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e3_4298.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e3_4298.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e7_3162_e3_4298( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e7_3528.lus b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e7_3528.lus
index 745be2dee6c808d69073caff3327fab03cc976f2..d1d62b6ac48af16ac036bdda91003aa091a41e57 100644
--- a/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e7_3528.lus
+++ b/lustrec_tests/lustre_files/DRAGON_14_e7_3162_e7_3528.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_14_e7_3162_e7_3528( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e1_268_e7_501.lus b/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e1_268_e7_501.lus
index 74bce00bafea888d1baa18db5793098365e107e0..d534039ed03a479081a1bc0da12b24dd64855618 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e1_268_e7_501.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e1_268_e7_501.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e1_14612_e1_268_e7_501( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e2_2653_e7_4370.lus b/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e2_2653_e7_4370.lus
index cb0d7a0381a58b12745ca68a7741b33d152479f5..458a8e70fc4f512a5ce16f0b841496bcf633c90f 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e2_2653_e7_4370.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e1_14612_e2_2653_e7_4370.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e1_14612_e2_2653_e7_4370( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e1_3184_e7_1888.lus b/lustrec_tests/lustre_files/DRAGON_1_e1_3184_e7_1888.lus
index f38a0475d53931a6914aa8af9822fa2263404aaf..6d2da214f2f84befa53fdf88f6223c5e2816c92c 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e1_3184_e7_1888.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e1_3184_e7_1888.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e1_3184_e7_1888( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e1_5070.lus b/lustrec_tests/lustre_files/DRAGON_1_e1_5070.lus
index 7670834c54882d9ff0e96f073344e63ad97b4042..d34086b7c50dbfcffa8a1d506b244309b4c33042 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e1_5070.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e1_5070.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e1_5070( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e2_1997.lus b/lustrec_tests/lustre_files/DRAGON_1_e2_1997.lus
index 175b69ed713f099209af2dcf3917ae76d9d72c8c..50fec2f0d6d462e1eb0ac4c4a79b82660f8d0b33 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e2_1997.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e2_1997.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e2_1997( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e2_1997_e7_3613_e2_3409.lus b/lustrec_tests/lustre_files/DRAGON_1_e2_1997_e7_3613_e2_3409.lus
index 58647e4e581aa17142e9a9471bbf2523827c3607..70902162c61fb1d8a62a4c135eb90b5468c01d69 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e2_1997_e7_3613_e2_3409.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e2_1997_e7_3613_e2_3409.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e2_1997_e7_3613_e2_3409( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_1_e3_11891_e7_4569_e4_4881.lus b/lustrec_tests/lustre_files/DRAGON_1_e3_11891_e7_4569_e4_4881.lus
index 74633e0feab991885efa68d00f65fb3a0f2add13..8eacacb3798e11caf879e57e23cae0ad075997bc 100644
--- a/lustrec_tests/lustre_files/DRAGON_1_e3_11891_e7_4569_e4_4881.lus
+++ b/lustrec_tests/lustre_files/DRAGON_1_e3_11891_e7_4569_e4_4881.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_1_e3_11891_e7_4569_e4_4881( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
          init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2.lus b/lustrec_tests/lustre_files/DRAGON_2.lus
index dbf20fbdc1c175a071a7ad14a075a1ff7b59a737..bd62f5fe817bce01a01c4ac1c9f2ef9d971544a8 100644
--- a/lustrec_tests/lustre_files/DRAGON_2.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2.lus
@@ -92,7 +92,7 @@ let
    pre invalid;
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e1_2316.lus b/lustrec_tests/lustre_files/DRAGON_2_e1_2316.lus
index 511cea81a9d922990bb84d167ccc996a45d4d82d..7924e93e5309d25fdc9626026cb2f5378c8afcce 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e1_2316.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e1_2316.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e1_2316( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e1_2644.lus b/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e1_2644.lus
index 3d5402e19ff05ae345e64e332f69332cf8447ba2..78daf4fdaa4fb35019037a90b31baeedaa5a11a3 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e1_2644.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e1_2644.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e2_3183_e1_2644( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e2_3580.lus b/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e2_3580.lus
index 7c3c611bce687adc8c5dc82a7c3c85efc4ebf68c..3fd016f9c2536879d0afe7ce9fc1525f7085b8b2 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e2_3580.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e2_3580.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e2_3183_e2_3580( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e3_5972.lus b/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e3_5972.lus
index b124e5aa7b036e04d9f9c1d302943c35ebf30fb2..fd8da0b21bd0b5c4379ce5737c471e0053594822 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e3_5972.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e2_3183_e3_5972.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e2_3183_e3_5972( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e2_4481.lus b/lustrec_tests/lustre_files/DRAGON_2_e2_4481.lus
index 7d1042e7db77e20c204d43d69ef6cfe40fed19ce..e376c9ebbfc9df45834c09fce1e534b1c725c8af 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e2_4481.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e2_4481.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e2_4481( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e7_25.lus b/lustrec_tests/lustre_files/DRAGON_2_e7_25.lus
index c5c1edcc17bc36961dc537a1a91978c372ace63d..e00b83f49de16b52311e173ff6f1ec7fb10e4dc3 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e7_25.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e7_25.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e7_25( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e1_154.lus b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e1_154.lus
index 010be734f2a7b7bf2683cf3f04536023891d0da8..0f5440222cf4d75d5648ad76e3074988727bdb5d 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e1_154.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e1_154.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e7_25_e1_154( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e2_5340.lus b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e2_5340.lus
index 89c446f66a5850896dd82920b8e3285c9b081953..9fe741be294993edb128c28dbca0cee0693fe128 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e2_5340.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e2_5340.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e7_25_e2_5340( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e3_829.lus b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e3_829.lus
index 37eb05d2c14422951914ee07f7583f31b4c0d224..9841cc9f16ab9ac3fa7e307077f7262471c3e02b 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e3_829.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e3_829.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e7_25_e3_829( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e7_4469.lus b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e7_4469.lus
index eb658495a365985d52f7fc85b3a8d508f5ab67f1..623ed78a1223d995a54bd1275df43425613e2cd3 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e7_4469.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e7_4469.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e7_25_e7_4469( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e8_3171.lus b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e8_3171.lus
index f59ceb1bead89360430e45de88f4f928be7c8831..465d8c3e6a040d7785beb47eec63f38952b8194d 100644
--- a/lustrec_tests/lustre_files/DRAGON_2_e7_25_e8_3171.lus
+++ b/lustrec_tests/lustre_files/DRAGON_2_e7_25_e8_3171.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_2_e7_25_e8_3171( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3.lus b/lustrec_tests/lustre_files/DRAGON_3.lus
index 05973d13d3c926ca234f1ad14107f9aac9dc4195..2d64fec65d093ea07e07d8d1a79b3eae25c7b1ef 100644
--- a/lustrec_tests/lustre_files/DRAGON_3.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3.lus
@@ -100,7 +100,7 @@ let
    pre invalid;
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e1_4783.lus b/lustrec_tests/lustre_files/DRAGON_3_e1_4783.lus
index f5358d9dfa0a993eaba5be332c85bd7b35856462..58420965a467a55caf303d86471f7448fef4bd18 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e1_4783.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e1_4783.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e1_4783( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e1_3755.lus b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e1_3755.lus
index 4c23b900250ff15515997406f489c58fc8fb5c6c..0a790ae8afeb9fec31baeb931874cfba02b01c06 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e1_3755.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e1_3755.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e1_4783_e1_3755( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e2_158.lus b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e2_158.lus
index a5314027d829130782fdeea303b4756ae1e7afdd..24fb1542aee44ad73fb69a0e0f76dc4a21cdd9ce 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e2_158.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e2_158.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e1_4783_e2_158( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e3_511.lus b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e3_511.lus
index 029f44228667a9fc2ab9eac3a50785ca758309b9..092186eed1e1e1a4a93e2242d80af1c002c9916e 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e3_511.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e3_511.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e1_4783_e3_511( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e7_4070.lus b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e7_4070.lus
index c58675176a76e0f9def5acbeb0b1c3b45d43b36f..ed0817542124b359a950b69866e69330e218101f 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e7_4070.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e1_4783_e7_4070.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e1_4783_e7_4070( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e2_5343_e1_988.lus b/lustrec_tests/lustre_files/DRAGON_3_e2_5343_e1_988.lus
index 2dd1c5e67e47977c8af46a5042c8bc33a443c3db..c1bfe357b7d99d44ff6bcdf8fa6cdafa57841baf 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e2_5343_e1_988.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e2_5343_e1_988.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e2_5343_e1_988( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e3_3846.lus b/lustrec_tests/lustre_files/DRAGON_3_e3_3846.lus
index c24841a6a2ec4e95745fd30796039b23b095a55f..8a0fbf6ca57d614909d782e435c2e5cdfe0d1665 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e3_3846.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e3_3846.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e3_3846( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e1_2288.lus b/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e1_2288.lus
index 10fd88252c579b9fb9c7b60de5cefcb61ca72825..c5fd76aa69a3a98e66fc68766d2515f5cc74b7d5 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e1_2288.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e1_2288.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e3_5422_e1_2288( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e2_3135.lus b/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e2_3135.lus
index 5e9428a0ce556ef947dd143bbd74dfe41fedae10..35ce5c9fab2cf99f3ad2214b86319a8eebedb58f 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e2_3135.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e3_5422_e2_3135.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e3_5422_e2_3135( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_3_e7_4884.lus b/lustrec_tests/lustre_files/DRAGON_3_e7_4884.lus
index 10bc24b0c9a55bfe77a0edb7f825e00f08959b18..d770de4370449e61d2940cb37994f37fe1253b68 100644
--- a/lustrec_tests/lustre_files/DRAGON_3_e7_4884.lus
+++ b/lustrec_tests/lustre_files/DRAGON_3_e7_4884.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_3_e7_4884( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4.lus b/lustrec_tests/lustre_files/DRAGON_4.lus
index 78ad4b17471039c65fe9718f363f03082c02968c..3a01e16165e4995ebef7a1f435ef5ebeb29c77eb 100644
--- a/lustrec_tests/lustre_files/DRAGON_4.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4.lus
@@ -93,7 +93,7 @@ let
 tel
 
 -- Only provable with nbac
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e1_4312.lus b/lustrec_tests/lustre_files/DRAGON_4_e1_4312.lus
index b2370af7df00caa4ce71ea4fc1c440ca902302c9..f5f5140bb9943c32d5341ff8202dd4b9c5eee888 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e1_4312.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e1_4312.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e1_4312( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e2_2799.lus b/lustrec_tests/lustre_files/DRAGON_4_e2_2799.lus
index 6a7c1af3c8b6fe0c45c7efc33645447ff91d8fde..867e43daa9d57ec81e247baf23abb1d8bbe34a06 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e2_2799.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e2_2799.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e2_2799( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e1_1303.lus b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e1_1303.lus
index 5098520cefed4827e055ff78775b1df3e83f25da..68e577d023330c22d6ac1e0edae4eaf729b621d9 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e1_1303.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e1_1303.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e2_2799_e1_1303( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e2_2251.lus b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e2_2251.lus
index 46141130aa4966352dbac6327a8d9741d7d189ab..357dd8a367c7b50882a62d2d8c253ea440669654 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e2_2251.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e2_2251.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e2_2799_e2_2251( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e3_1915.lus b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e3_1915.lus
index 668832dfca8c35d08f81012a1104912cc338ed99..deca6ac9078b630d3b4294735dbde58f4b581ec9 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e3_1915.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e3_1915.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e2_2799_e3_1915( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e7_2499.lus b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e7_2499.lus
index 25f5a22b91e51a47f35425e894a127020e580533..ccfe4b18b5cb1ceee1c53d5154bf763595cbf80f 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e7_2499.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e2_2799_e7_2499.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e2_2799_e7_2499( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e3_1540_e1_5048.lus b/lustrec_tests/lustre_files/DRAGON_4_e3_1540_e1_5048.lus
index f3d56feff394f56d92c5637bf4b4f4e24d58837f..50eb4ec22d78dc57a87ff5d7e88d6bf4a7bf17e0 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e3_1540_e1_5048.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e3_1540_e1_5048.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e3_1540_e1_5048( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e3_4133.lus b/lustrec_tests/lustre_files/DRAGON_4_e3_4133.lus
index 258ece4a9b2d88b7a5f72482aa6cf2655d40d684..3d9a9160d5eaf2ad93e4595c81d1fae1e670fee9 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e3_4133.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e3_4133.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e3_4133( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e7_2329.lus b/lustrec_tests/lustre_files/DRAGON_4_e7_2329.lus
index b4f668df036dc1ec3f86ce5a42a7d50d14b54451..90e6dbf81b17dea247c2db6468f2a4cd9804532a 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e7_2329.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e7_2329.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e7_2329( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e3_4574.lus b/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e3_4574.lus
index df26a70b43b792f48cf064a855d5f815402b68a9..c78966987a7a1f6b4359fdbfd9f0d2f156383d2e 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e3_4574.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e3_4574.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e7_2329_e3_4574( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e7_3856.lus b/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e7_3856.lus
index 6e724710355d6b7bd345e1661e4f19ae6f08b429..ffd38752b57cd59176f7b1672b517a1788103f43 100644
--- a/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e7_3856.lus
+++ b/lustrec_tests/lustre_files/DRAGON_4_e7_2329_e7_3856.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_4_e7_2329_e7_3856( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5.lus b/lustrec_tests/lustre_files/DRAGON_5.lus
index 56dfccf927b2458972fea15aec101dd79c8f7793..c62281302b71fa59bc46079b21d78185fa5e1b17 100644
--- a/lustrec_tests/lustre_files/DRAGON_5.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5.lus
@@ -93,7 +93,7 @@ let
 tel
 
 -- Only provable with nbac
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e1_1835.lus b/lustrec_tests/lustre_files/DRAGON_5_e1_1835.lus
index cc8002a86049f742acff57cb1e8f2b15c2121abf..c109ef19f91977a7f8e11b677885d3f03d36de89 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e1_1835.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e1_1835.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e1_1835( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e2_3018_e2_936.lus b/lustrec_tests/lustre_files/DRAGON_5_e2_3018_e2_936.lus
index 2e3cdf9c895831503bb8ccd0ce652c8167752a2b..be2d64d96a2eaebec7bf2524f71b0afa538697a0 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e2_3018_e2_936.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e2_3018_e2_936.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e2_3018_e2_936( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e7_2017.lus b/lustrec_tests/lustre_files/DRAGON_5_e7_2017.lus
index ce027e7a9780eb63c654ddf16b1c44c9c9b55ee0..8f8786ff1d9eaa31789065cf6b444bd96ec1fcf7 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e7_2017.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e7_2017.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e7_2017( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e1_5832.lus b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e1_5832.lus
index fd127a418cca3a1f5ba53ae2576b1cffc8227292..b78b35fad854378f2d6caa0f7f727635e8465fad 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e1_5832.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e1_5832.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e7_2017_e1_5832( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e2_664.lus b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e2_664.lus
index 3559374612d88e3ef8380cf7669f86145f46893b..a467f904a0dc344c46ab02ef8d638fe2f1bb2483 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e2_664.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e2_664.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e7_2017_e2_664( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e3_1763.lus b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e3_1763.lus
index 274024e4dfc377331249029c96279dcc019490a2..ee8ea0df974ac7662d3a39f723c360a108f17679 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e3_1763.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e3_1763.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e7_2017_e3_1763( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e7_2326.lus b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e7_2326.lus
index c31ee961fc76227ec72d2ea3a2a625579aa606e6..ce00b6918d722e1523c81f332a7647e4a1e17b3c 100644
--- a/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e7_2326.lus
+++ b/lustrec_tests/lustre_files/DRAGON_5_e7_2017_e7_2326.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_5_e7_2017_e7_2326( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_6.lus b/lustrec_tests/lustre_files/DRAGON_6.lus
index ff8e404b85095899e32989b40a77d7bb2ddfc617..4bee77743c6d62a4d0a78607709da797cd29c21b 100644
--- a/lustrec_tests/lustre_files/DRAGON_6.lus
+++ b/lustrec_tests/lustre_files/DRAGON_6.lus
@@ -92,7 +92,7 @@ let
    pre invalid;
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_6( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_6_e7_5046_e7_3623.lus b/lustrec_tests/lustre_files/DRAGON_6_e7_5046_e7_3623.lus
index a741802b5af930b505faa7cf2df480c182840607..495e39e2dcbc7914200476ebe1f2243ef9924cde 100644
--- a/lustrec_tests/lustre_files/DRAGON_6_e7_5046_e7_3623.lus
+++ b/lustrec_tests/lustre_files/DRAGON_6_e7_5046_e7_3623.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_6_e7_5046_e7_3623( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_7.lus b/lustrec_tests/lustre_files/DRAGON_7.lus
index dcdd3f5e82c4de6551afca8d7a088ce9820b56e4..4d75e4f3f8532ad6106802c0786eedcd8f4504ff 100644
--- a/lustrec_tests/lustre_files/DRAGON_7.lus
+++ b/lustrec_tests/lustre_files/DRAGON_7.lus
@@ -93,7 +93,7 @@ let
 tel
 
 -- Not provable with luke-bitvec
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_7( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e2_5844.lus b/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e2_5844.lus
index 44a208543053a835e93e6a4cec32c480e533f8bd..1383b965397870accbb6c6383320ba6dcd8148d6 100644
--- a/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e2_5844.lus
+++ b/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e2_5844.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_7_e2_2872_e2_5844( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e3_2640.lus b/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e3_2640.lus
index 27c4fa98c45a4c84860de06f5b8f966e80059c54..6aa0a9881de537959bf36db4281151dc3f2ac987 100644
--- a/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e3_2640.lus
+++ b/lustrec_tests/lustre_files/DRAGON_7_e2_2872_e3_2640.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_7_e2_2872_e3_2640( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_7_e7_3157_e2_2082.lus b/lustrec_tests/lustre_files/DRAGON_7_e7_3157_e2_2082.lus
index a30884b58d76c2ae5aab386ce73c5685e5fbf63d..7f44a2d17c69871be047f96360e5f68325e0c23f 100644
--- a/lustrec_tests/lustre_files/DRAGON_7_e7_3157_e2_2082.lus
+++ b/lustrec_tests/lustre_files/DRAGON_7_e7_3157_e2_2082.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_7_e7_3157_e2_2082( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_8.lus b/lustrec_tests/lustre_files/DRAGON_8.lus
index 830fc1aeb966ff3e3fa69855da39e00b8c09f9c5..e7fee7cdfce083eb19736022b008745435803b60 100644
--- a/lustrec_tests/lustre_files/DRAGON_8.lus
+++ b/lustrec_tests/lustre_files/DRAGON_8.lus
@@ -93,7 +93,7 @@ let
 tel
 
 -- Only provable with nbac
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_8( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_8_e2_3896_e3_3125.lus b/lustrec_tests/lustre_files/DRAGON_8_e2_3896_e3_3125.lus
index ff09055f1ce181bb9fd085ca69df811a9684a3fb..1abe9e99484483782ec1d68c0bcb2a9213dfe823 100644
--- a/lustrec_tests/lustre_files/DRAGON_8_e2_3896_e3_3125.lus
+++ b/lustrec_tests/lustre_files/DRAGON_8_e2_3896_e3_3125.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_8_e2_3896_e3_3125( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_8_e3_786.lus b/lustrec_tests/lustre_files/DRAGON_8_e3_786.lus
index 68ab5e491c184f6eada3b315083a513b393f3288..4c998a13b9ce320eb24e746e792ca566478b9e21 100644
--- a/lustrec_tests/lustre_files/DRAGON_8_e3_786.lus
+++ b/lustrec_tests/lustre_files/DRAGON_8_e3_786.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_8_e3_786( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_8_e3_786_e7_4541.lus b/lustrec_tests/lustre_files/DRAGON_8_e3_786_e7_4541.lus
index c7edf1713f65f89a74a632bc5db175198880a1aa..805c0d5e8aa09ef6b8fbdae1f2949348af533568 100644
--- a/lustrec_tests/lustre_files/DRAGON_8_e3_786_e7_4541.lus
+++ b/lustrec_tests/lustre_files/DRAGON_8_e3_786_e7_4541.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_8_e3_786_e7_4541( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_8_e7_3752.lus b/lustrec_tests/lustre_files/DRAGON_8_e7_3752.lus
index b00629c0007c84bed872f876c035f0648a6fdb7c..dcc11b0f8d6e461dc6e556c2d2ba2487e376cac5 100644
--- a/lustrec_tests/lustre_files/DRAGON_8_e7_3752.lus
+++ b/lustrec_tests/lustre_files/DRAGON_8_e7_3752.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_8_e7_3752( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_9.lus b/lustrec_tests/lustre_files/DRAGON_9.lus
index 36ff872dc87ac7d3da3fdc37efc8d6370b102a46..9aebf1438b75cfbcf4c185c06bbafa416c2e4229 100644
--- a/lustrec_tests/lustre_files/DRAGON_9.lus
+++ b/lustrec_tests/lustre_files/DRAGON_9.lus
@@ -93,7 +93,7 @@ let
 tel
 
 -- Not provable with luke-bitvec
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_9( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_9_e7_1843.lus b/lustrec_tests/lustre_files/DRAGON_9_e7_1843.lus
index 2513d5f38379503e39fdd0217797bea4f5a3cc9b..15be3d8448667cfd6efc7c4d4ded1fb31397758e 100644
--- a/lustrec_tests/lustre_files/DRAGON_9_e7_1843.lus
+++ b/lustrec_tests/lustre_files/DRAGON_9_e7_1843.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_9_e7_1843( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e1_5434.lus b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e1_5434.lus
index 08e22a9b4170042fb77d1079b3875c79fa83fd6e..7f0cf3bf6c21eade06b732f08b2649c309e31af1 100644
--- a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e1_5434.lus
+++ b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e1_5434.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_9_e7_1843_e1_5434( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e2_1145.lus b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e2_1145.lus
index db6c9c0062400c8c2b52d4cf0c9ac43f4219d8f5..e6eb843734f93c1ca0b2d852ebcd513df1c76b17 100644
--- a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e2_1145.lus
+++ b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e2_1145.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_9_e7_1843_e2_1145( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e3_5316.lus b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e3_5316.lus
index 013eef2b288c63afd0640c9c5de20394319fa28f..f47720a51c00a07a20b070110151d702c2ca5dbc 100644
--- a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e3_5316.lus
+++ b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e3_5316.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_9_e7_1843_e3_5316( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e7_2225.lus b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e7_2225.lus
index 2805d70956faec076e8f6486705f83c864a53a00..10b80b7054242fce037d70c55f35c9a917e8a288 100644
--- a/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e7_2225.lus
+++ b/lustrec_tests/lustre_files/DRAGON_9_e7_1843_e7_2225.lus
@@ -81,7 +81,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_9_e7_1843_e7_2225( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int ) returns ( OK : bool );
 --@ contract guarantee OK;
     var exclusive, shared, shared_dirty, dirty, invalid : int;
diff --git a/lustrec_tests/lustre_files/DRAGON_all.lus b/lustrec_tests/lustre_files/DRAGON_all.lus
index eace68f4b9593027b0a28ea88c5de826058feb71..1e8b30683318473c971b05edc0c49bb1ad37f993 100644
--- a/lustrec_tests/lustre_files/DRAGON_all.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all.lus
@@ -100,7 +100,7 @@ let
    pre invalid;
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2.lus b/lustrec_tests/lustre_files/DRAGON_all2.lus
index 899093ed10ca5b0a3cdf917137ef28164fa58bf4..48a265a2230bb67e5f01edfe7a82724497d8a738 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2.lus
@@ -100,7 +100,7 @@ let
    pre invalid;
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e2_2073_e8_3691.lus b/lustrec_tests/lustre_files/DRAGON_all2_e2_2073_e8_3691.lus
index 6aa49246bf2e3f183b3899392c525a252b5ad890..7c1890597bae014914675b0698c314ecafbcdbd4 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e2_2073_e8_3691.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e2_2073_e8_3691.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e2_2073_e8_3691( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e1_6463.lus b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e1_6463.lus
index b44a88a1f1e7e8ed32fd3fdc6c656f7106c814ed..7e533bf10995a55270a1d9a2c59ab92d2150a89c 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e1_6463.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e1_6463.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e3_4612_e1_6463( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e2_5774.lus b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e2_5774.lus
index 3dcc27842e107376448d3bfdf11e4ec87434f8bc..52cbf72799b72f90daf88a42f27bd319474e6adf 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e2_5774.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e2_5774.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e3_4612_e2_5774( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e3_1543.lus b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e3_1543.lus
index 61ab6aee3c88ece5192fc805a86276a2e3ba92c4..c4d3d23c8c830aa64a689307c75152469764a5b3 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e3_1543.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e3_1543.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e3_4612_e3_1543( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e4_3719.lus b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e4_3719.lus
index 00573fc33fe63edae57ed451af165dea79eb7b1e..df93374b0d5f7ac4e71ec9817235805c47058198 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e4_3719.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e4_3719.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e3_4612_e4_3719( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e5_3642.lus b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e5_3642.lus
index bff64ce6ffa634e4339d4f44fad983319e15018b..8f8bc746cee8c2c96d90cdd96744293238f0c385 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e5_3642.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e5_3642.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e3_4612_e5_3642( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e8_5861.lus b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e8_5861.lus
index 7fd779d7b994d0b79e471edf1ee9ea1462f9e169..a5ab257c3fe2897a9b7e57826391388150931bb1 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e8_5861.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e3_4612_e8_5861.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e3_4612_e8_5861( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406.lus b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406.lus
index 5b758cf00d2216d5c84e09b7955f9ed9f32014c1..50e91094ff4cd5772029325731522374d8fcc6c6 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e7_5406( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e1_6690.lus b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e1_6690.lus
index fbed604d228a3a12353c2beef8c0bfff8b5b3318..9b18e179602a68fde532006e94a2636ddc3f1e35 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e1_6690.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e1_6690.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e7_5406_e1_6690( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e2_3084.lus b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e2_3084.lus
index e5719211ebb9a676aa211f62091e771b228c7dc7..056d33d8fd8c6a46ad52e63fa2562d6b850aa1f0 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e2_3084.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e2_3084.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e7_5406_e2_3084( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e3_506.lus b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e3_506.lus
index f46581853c49b8c15fdaf251488b316275af832b..5457cb4ad9ed4e9edc901d4795480b77d27802f5 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e3_506.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e3_506.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e7_5406_e3_506( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e7_6697.lus b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e7_6697.lus
index 705576889546b770988c6eb04a0d411be29376a1..6cfbd4127a513fecc3f46abd133c2b0c3879099a 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e7_6697.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e7_5406_e7_6697.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e7_5406_e7_6697( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e8_4626.lus b/lustrec_tests/lustre_files/DRAGON_all2_e8_4626.lus
index f390eeb1ae902035fe6452f4510f9a2185e47b16..5db922a863d30852ba2bcd87802f3cef6a5041cb 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e8_4626.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e8_4626.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e8_4626( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504.lus b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504.lus
index f390eeb1ae902035fe6452f4510f9a2185e47b16..710c8fddfdc35ceaaea3d60b8d4bdc62a782f810 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e8_5504( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e1_4719.lus b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e1_4719.lus
index 50df605267689b96a493ee144139b0460db95dca..cb54da44f4a47baba1a5d7ba035f7ab7d5422712 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e1_4719.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e1_4719.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e8_5504_e1_4719( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e2_1598.lus b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e2_1598.lus
index 6aa49246bf2e3f183b3899392c525a252b5ad890..a3b90e141f27fd0916a217b4f4749088b542e59a 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e2_1598.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e2_1598.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e8_5504_e2_1598( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e7_579.lus b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e7_579.lus
index 702bf3aeacb7c470b17e4fc294c648e03ebe098a..ac8d430a461b375c4597a95121177260d7706e31 100644
--- a/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e7_579.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all2_e8_5504_e7_579.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all2_e8_5504_e7_579( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK: bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e1_1759.lus b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e1_1759.lus
index 9f75bcd8a4a1f535ad107453f5fa89dca0138721..42b5941c5b3d52fd2d1dd277634e656968795cd0 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e1_1759.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e1_1759.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e1_4022_e1_1759( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e2_267.lus b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e2_267.lus
index 5025b27f38e378c8fba6fb67d2e33421eea53b95..1c5026c7c102067a5b9f838a99def5253a230c1a 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e2_267.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e2_267.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e1_4022_e2_267( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e3_3628.lus b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e3_3628.lus
index bd89765c591c2db27cd746ef55be6e1cb635660a..6af2481ddb7057a7fbce52f3c140202a14435eb2 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e3_3628.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e3_3628.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e1_4022_e3_3628( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e7_2886.lus b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e7_2886.lus
index 307aec8cc6e84171802a3351f54ba8c195631f67..5e6da023638947504374f345f7df79ed9bd5ac49 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e7_2886.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e1_4022_e7_2886.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e1_4022_e7_2886( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e1_4037.lus b/lustrec_tests/lustre_files/DRAGON_all_e1_4037.lus
index cba703d5377410a009c0c01c8678c4d9a307e085..a7aaf0c662c86dfbb3fa3a7940f4a399ddd42602 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e1_4037.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e1_4037.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e1_4037( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e2_6104.lus b/lustrec_tests/lustre_files/DRAGON_all_e2_6104.lus
index 09fb573ca5a2db3fe0afd313eaf5f5d0aa89c806..1566416d7bd5cf7299b33343d5f97ef4f3a606f8 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e2_6104.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e2_6104.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e2_6104( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e1_6205.lus b/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e1_6205.lus
index 732c6608acf9da63bd2c679e38ec7571b727d37b..60a2bd0f038f4e5aacaec44af2cffb7455f810a1 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e1_6205.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e1_6205.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e2_6104_e1_6205( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e2_3308.lus b/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e2_3308.lus
index b1583ee08058e6a106be5ef0fde1d5a17206fae0..cd92da89b3f6c4ccbdef777ec42559e99e41b71c 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e2_3308.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e2_3308.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e2_6104_e2_3308( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e3_2607.lus b/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e3_2607.lus
index d9203e6d5d430b94f50ba5f091b6d0a0504648a1..d1058068fa0c97daff058468a84e0e5c2ae1c91a 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e3_2607.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e2_6104_e3_2607.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e2_6104_e3_2607( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e1_1318.lus b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e1_1318.lus
index dddaf0fb3753aea58f414f1f9ad276a0680e12a6..0eb716d2343559d365fd7f9dc5663f989174e839 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e1_1318.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e1_1318.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e3_4821_e1_1318( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e2_1089.lus b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e2_1089.lus
index 835e586501acfa3c2f2d633df24b09c570731e62..34c2b860e59baa1368107cc1951719d9bcb6d60f 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e2_1089.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e2_1089.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e3_4821_e2_1089( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e4_1791.lus b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e4_1791.lus
index 9dcd1c0ca1100b63228cd0109264a4548729b60f..58914d152fb2106679673ac1b47e8cb9318384c7 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e4_1791.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e4_1791.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e3_4821_e4_1791( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e5_1536.lus b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e5_1536.lus
index 4dc048d3476cc41b370087e86c7a78805eccba9b..10990718a02fed5eddbb8d5877dffb6154ee432f 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e5_1536.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e3_4821_e5_1536.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e3_4821_e5_1536( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e3_5957.lus b/lustrec_tests/lustre_files/DRAGON_all_e3_5957.lus
index 08f4bbebae7d428c1ecaa23f0e1e40e5294b70a1..3a221e1dec6e3a3150892be020d98a7a383c54d2 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e3_5957.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e3_5957.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e3_5957( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e7_1941_e2_6086.lus b/lustrec_tests/lustre_files/DRAGON_all_e7_1941_e2_6086.lus
index 949f9dd7bfa2c053b6ba75f29e53331a5e374131..94635ba73daa303d554a40ea33d3508a9f29f806 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e7_1941_e2_6086.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e7_1941_e2_6086.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e7_1941_e2_6086( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/DRAGON_all_e7_4065.lus b/lustrec_tests/lustre_files/DRAGON_all_e7_4065.lus
index 92a6ae9bf32e857d56e3ce0dbcb9bedefbd249a1..c08a90ff24924341b2c38196331168e6ac10e9e0 100644
--- a/lustrec_tests/lustre_files/DRAGON_all_e7_4065.lus
+++ b/lustrec_tests/lustre_files/DRAGON_all_e7_4065.lus
@@ -85,7 +85,7 @@ let
    if(e12) then if(g12) then pre invalid+1 else pre invalid else 
    pre invalid;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
+node DRAGON_all_e7_4065( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool;
              init_invalid : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/FIREFLY_1.lus b/lustrec_tests/lustre_files/FIREFLY_1.lus
index 1b1d6588d705bbe911ec4d4b7a0f97d0e1ca6ffd..42ce4e95e32d12bebe8f7d651736f1bb28087fbe 100644
--- a/lustrec_tests/lustre_files/FIREFLY_1.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_1.lus
@@ -72,7 +72,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_1(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_10.lus b/lustrec_tests/lustre_files/FIREFLY_10.lus
index 32b524d8010710b375a2f8becaa572008f3f37f0..b2b53fb7aef62f0c2a3c5c69a6f7ab71f3e61171 100644
--- a/lustrec_tests/lustre_files/FIREFLY_10.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_10.lus
@@ -73,7 +73,7 @@ let
 tel
 
 -- Not provable in luke-bitvec
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_10(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_10_e7_919_e2_3192.lus b/lustrec_tests/lustre_files/FIREFLY_10_e7_919_e2_3192.lus
index 284efd0bcfad245aac531f9d94092e5d3b7f94d3..606559237d4f455e9e22c60113dc35c1d8bb4390 100644
--- a/lustrec_tests/lustre_files/FIREFLY_10_e7_919_e2_3192.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_10_e7_919_e2_3192.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_10_e7_919_e2_3192(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_11.lus b/lustrec_tests/lustre_files/FIREFLY_11.lus
index ef9e8482a180eaceaaa27028c5e70bbcb9111772..3f9a72fd7490c8d31601945eef38eb8ac4b69caa 100644
--- a/lustrec_tests/lustre_files/FIREFLY_11.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_11.lus
@@ -73,7 +73,7 @@ let
 tel
 
 -- Only provable in nbac
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_11(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_11_e1_3457.lus b/lustrec_tests/lustre_files/FIREFLY_11_e1_3457.lus
index 4c87d33322a6a2f0eaf2070f6fe8cea728d4ed6e..df75c0d11dca12ec0992791ac80ce6bfce490967 100644
--- a/lustrec_tests/lustre_files/FIREFLY_11_e1_3457.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_11_e1_3457.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_11_e1_3457(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_11_e3_2076_e1_1270.lus b/lustrec_tests/lustre_files/FIREFLY_11_e3_2076_e1_1270.lus
index 74eb306df00090d48aef7750de1ae8005877c1af..3425c0a74caaa50864f61a87b197e0b749ef1336 100644
--- a/lustrec_tests/lustre_files/FIREFLY_11_e3_2076_e1_1270.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_11_e3_2076_e1_1270.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_11_e3_2076_e1_1270(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092.lus b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092.lus
index 505b95c9296a15f9d20bb2dbd3881f29ca8a06fd..37ad548a370ce12fba1d842f5a4593e83226a95a 100644
--- a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_1_e1_1092(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e1_1486.lus b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e1_1486.lus
index 7cfbebf762edd0a995576e5a2828f03625beb81b..d42037b3c53cfa176e9cfc1e2e468ad25640bf10 100644
--- a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e1_1486.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e1_1486.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_1_e1_1092_e1_1486(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e2_1853.lus b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e2_1853.lus
index 54f6228a82f03218d21af47f1bebad34cf4126ab..cf71a5cfb062b964cd563b48807ab76483d257cb 100644
--- a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e2_1853.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e2_1853.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_1_e1_1092_e2_1853(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e3_389.lus b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e3_389.lus
index 288cf5da33fa4187c45dac880c47509ef4ed38ca..1e30635036c90cb05890c9d4e9ababcbc4b7687d 100644
--- a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e3_389.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e3_389.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_1_e1_1092_e3_389(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e7_1119.lus b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e7_1119.lus
index 5d490931027ba7941ecb137b819d370ec2f88342..cb9b1da6bdec2ec9cf1e6a22d502973f6379a787 100644
--- a/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e7_1119.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_1_e1_1092_e7_1119.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_1_e1_1092_e7_1119(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_2.lus b/lustrec_tests/lustre_files/FIREFLY_2.lus
index bfa923eb695754db4fc56764f2c652e3cf7d5282..ab04d74c0e32e3b4bb9596b389170100d6c0d64e 100644
--- a/lustrec_tests/lustre_files/FIREFLY_2.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_2.lus
@@ -80,7 +80,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int)
+node FIREFLY_2(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int)
         returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_2_e3_151_e3_1540.lus b/lustrec_tests/lustre_files/FIREFLY_2_e3_151_e3_1540.lus
index 1960ded005f3b7512d9ea9401b3c8b4fa15b6cd6..f4c47c9f63cdb6d84e83ef88ff08045ba3b97cac 100644
--- a/lustrec_tests/lustre_files/FIREFLY_2_e3_151_e3_1540.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_2_e3_151_e3_1540.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int)
+node FIREFLY_2_e3_151_e3_1540(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int)
         returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_3.lus b/lustrec_tests/lustre_files/FIREFLY_3.lus
index 6f4d84e61bce34eaf3ef5693854100f1c7928b82..600adf9ba54151ae4e5aae654e2e9f68812e85be 100644
--- a/lustrec_tests/lustre_files/FIREFLY_3.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_3.lus
@@ -81,7 +81,7 @@ let
 tel
 
 -- Not provable in luke-bitvec
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_3(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236.lus b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236.lus
index 54cf49a21aadcd4b18e5c420536045bd23dc4ccf..e00b96ef87f0eb659f360fd0502a2004395b0339 100644
--- a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_3_e2_2236(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e1_2305.lus b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e1_2305.lus
index 3dae3b0e5e4dc6cb199d2639fb00ff162092169a..2d8fb0ab104cba1a08edbd16586c735d185b18b1 100644
--- a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e1_2305.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e1_2305.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_3_e2_2236_e1_2305(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e2_1058.lus b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e2_1058.lus
index 58c31761ea4ef26ce5925f98e0ceae242f7ed54a..fe2533235c39ca92a2cb12f6249e0999fe976d06 100644
--- a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e2_1058.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e2_1058.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_3_e2_2236_e2_1058(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e3_2657.lus b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e3_2657.lus
index 9a8c81751860d3676d26f5e9c967b22c85653afe..6d8127b306d0d2ce9d05c36d7f8ead361f53d425 100644
--- a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e3_2657.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e3_2657.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_3_e2_2236_e3_2657(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e7_3681.lus b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e7_3681.lus
index 0fdb50906e3b297b640f8bb197aa0ecce9fbd9bf..f49835a144959b49b494411e0b575f58e12bd8b5 100644
--- a/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e7_3681.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_3_e2_2236_e7_3681.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_3_e2_2236_e7_3681(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4.lus b/lustrec_tests/lustre_files/FIREFLY_4.lus
index b60e4ba5244b8ebc41949ef373e4897a73faa843..438d8106b6a56dbab25a0b5cf28d107ec7023d56 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4.lus
@@ -80,7 +80,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511.lus
index 290a29b2bc352264ff94b52b60134a67310807cf..318312ccda27ec9448ec21d1993e01c828329ede 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e1_2375.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e1_2375.lus
index 19121ceda9bb0b39e6e206645d1c4e2d6d19002a..bc9a87a7ac83fdd1f52abaaabfcb6701e750f268 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e1_2375.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e1_2375.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511_e1_2375(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e2_1923.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e2_1923.lus
index f014fb3f48670f2acd89637d88106eb5a8124e6d..0b1d3cf79be455e9aa6f620e3282eb60fdeb00c9 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e2_1923.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e2_1923.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511_e2_1923(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e3_422.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e3_422.lus
index 86552d041ab5215236f67289ccbf895054e81bb3..91470b52c97dbf1ba9ba90863b89823679516815 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e3_422.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e3_422.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511_e3_422(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e4_1464.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e4_1464.lus
index e68ac00a2edca1944769417583be36775613a694..a61483673f9c42e0b4e79cbe103a05d99480bcf2 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e4_1464.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e4_1464.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511_e4_1464(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e5_3248.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e5_3248.lus
index b330bd5b9a4623a808e1c6b1681eaf6dfc9be11e..a5ca0f460269247fefab980bcc4e9406d9da7c4d 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e5_3248.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e5_3248.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511_e5_3248(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e7_3568.lus b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e7_3568.lus
index e61184ccdff6bb1baca1da68569a6ec84db5401b..7dd53f1dfc0174466cc6f284eeabab99215a5071 100644
--- a/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e7_3568.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_4_e3_3511_e7_3568.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_4_e3_3511_e7_3568(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5.lus b/lustrec_tests/lustre_files/FIREFLY_5.lus
index e854b885e3053b9acba26078e9afb56d345c4c2e..3647cc5d0781fc29e30c4a588a01468a5c9019a2 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5.lus
@@ -73,7 +73,7 @@ let
 tel
 
 -- Not provable in luke-bitvec
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e1_2552_e7_1169.lus b/lustrec_tests/lustre_files/FIREFLY_5_e1_2552_e7_1169.lus
index 2666f254d7f04ce81965955cb3da34632c72dc64..ac28f51ceb2d3b6b0226da1d81ef882f233d2ffe 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e1_2552_e7_1169.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e1_2552_e7_1169.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e1_2552_e7_1169(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e2_2229.lus b/lustrec_tests/lustre_files/FIREFLY_5_e2_2229.lus
index 9a307a7faaad9b4743251e8b4e840b5c40806c29..891e1258db731239a00cb9fbecf2549f3e3a8538 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e2_2229.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e2_2229.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e2_2229(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884.lus b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884.lus
index 9a307a7faaad9b4743251e8b4e840b5c40806c29..79b240e3af70f34e0046943275c3dff8f986b5d3 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e2_2884(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e1_2678.lus b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e1_2678.lus
index 2f1de3c5f375eafb9c8c43e5479a9a06fae429fa..f7c4dcb36309dd7ab986836ac27205260036251d 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e1_2678.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e1_2678.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e2_2884_e1_2678(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e2_1492.lus b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e2_1492.lus
index d6a63e765d90cc94d50a346e1e8290e203cd7a57..8c178a1177e7e22dfb10178d9bb4fadd3bb4f1a1 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e2_1492.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e2_1492.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e2_2884_e2_1492(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e3_1882.lus b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e3_1882.lus
index 259ce112b889476a4d98b89c0e6a75f450b1da0a..cf20153ba4f50ab65f21fac9525e3923ec5f0951 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e3_1882.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e3_1882.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e2_2884_e3_1882(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e7_3594.lus b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e7_3594.lus
index 939fb89ec3453d3cc676411670509758ae882708..c0173d708e00261fe4dcdbe83aa6c26dedbabb9b 100644
--- a/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e7_3594.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_5_e2_2884_e7_3594.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_5_e2_2884_e7_3594(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_6.lus b/lustrec_tests/lustre_files/FIREFLY_6.lus
index 281159ff2ee30d0c6bc564afde876b4bad9f3e11..47f6a3e43ca1291534a4dfac936006705ef55d4e 100644
--- a/lustrec_tests/lustre_files/FIREFLY_6.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_6.lus
@@ -73,7 +73,7 @@ let
 tel
 
 -- Only provable in nbac
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_6(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_6_e2_3302.lus b/lustrec_tests/lustre_files/FIREFLY_6_e2_3302.lus
index ff72b63043c86a5b553bab149922ffa3480414ca..296260a4b7b04a7d4d6100b2d7266ef350351fc0 100644
--- a/lustrec_tests/lustre_files/FIREFLY_6_e2_3302.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_6_e2_3302.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_6_e2_3302(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_7.lus b/lustrec_tests/lustre_files/FIREFLY_7.lus
index 59576d47fbfaa928ca10aa690c759ff8bc91c788..00ef65ceb2bb0998d31ad325d9b821a11ad36f2b 100644
--- a/lustrec_tests/lustre_files/FIREFLY_7.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_7.lus
@@ -81,7 +81,7 @@ let
 tel
 
 -- Only provable in nbac
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_7(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_8.lus b/lustrec_tests/lustre_files/FIREFLY_8.lus
index 1bf612aece5d5025dcf8dae6d87ba75ee9c30d09..f55d15dc261a355ee819154454136f19306780e6 100644
--- a/lustrec_tests/lustre_files/FIREFLY_8.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_8.lus
@@ -72,7 +72,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_8(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711.lus b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711.lus
index e40fe58e3ca129e273828bfd0b67f251e672e302..0f94b790be70ea5f4b91fe1602d2bbd2ab434e47 100644
--- a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_8_e2_1711(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e1_1489.lus b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e1_1489.lus
index cbd852e3d27393782ded4497b89684d8df368935..69051193e66ad61175d7c987e5c5a5ef409d2638 100644
--- a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e1_1489.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e1_1489.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_8_e2_1711_e1_1489(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e2_2673.lus b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e2_2673.lus
index da4f57a9eb38cab241d6b4d60e675a8dbc82e3e3..8f807f8d24635495ac63c66cbdcc4eb2230ac404 100644
--- a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e2_2673.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e2_2673.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_8_e2_1711_e2_2673(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e3_1753.lus b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e3_1753.lus
index d5a6332a2bb5fc47bcc2de63e4aad79d1082d4ec..137acf8b79e30cfc9cb2087d8e51a6e87c889486 100644
--- a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e3_1753.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e3_1753.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_8_e2_1711_e3_1753(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e7_1962.lus b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e7_1962.lus
index 25a9e4c24eade8b8b4d7573d86322d1ed491a168..e5f2c57cd2c3d93172664f46231ccfe251d404c4 100644
--- a/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e7_1962.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_8_e2_1711_e7_1962.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_8_e2_1711_e7_1962(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_9.lus b/lustrec_tests/lustre_files/FIREFLY_9.lus
index 2c70da555f5cbd3ff5b55723aa95f796781c81cc..9b930c55ee6e133fce77dd166dc2d218b5b5440c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_9.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_9.lus
@@ -80,7 +80,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_9(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_9_e7_170_e3_3647.lus b/lustrec_tests/lustre_files/FIREFLY_9_e7_170_e3_3647.lus
index 04f4b7eb7f0b17d16fefa6b6eac4fb621be2016c..dca856556224c5f37a962ead93ff9e83f7d63703 100644
--- a/lustrec_tests/lustre_files/FIREFLY_9_e7_170_e3_3647.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_9_e7_170_e3_3647.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_9_e7_170_e3_3647(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3.lus b/lustrec_tests/lustre_files/FIREFLY_a3.lus
index b2989e341e69ba4733bea6352b44086e1184517d..6822cdad9e15f055b456771293e04ffd368f077e 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3.lus
@@ -80,7 +80,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233.lus
index 49aeaa3cbf0f1f23ed52b2b1d1f9c37525e4bcae..39bf3d3707e5c2e147c0bdb04a8b40c2878a9d9f 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e1_3233(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e1_3123.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e1_3123.lus
index 10014cebf9440798948258529e8fef1a17e6fa4a..464236b90d6653738da3bc0080d2e33e9f68834c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e1_3123.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e1_3123.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e1_3233_e1_3123(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e2_2392.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e2_2392.lus
index 885bd8bb6760c47ee47ac249806820e3a24243fc..187e714e391927d0bb79d26ec14e14d290df97b7 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e2_2392.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e2_2392.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e1_3233_e2_2392(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e3_2970.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e3_2970.lus
index 4713f8f763256f9ba80e0b168c711517798a5089..4327b8f84288e5d5feafff0d1e7c503c90646d3b 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e3_2970.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e3_2970.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e1_3233_e3_2970(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e7_906.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e7_906.lus
index 846f24c66167ab1dcee681e52fb2ae0dc2bf3ffd..a30d90d79f7b11b162be13e90d373db23510e43c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e7_906.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e1_3233_e7_906.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e1_3233_e7_906(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e1_3235.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e1_3235.lus
index 215db0a06b9cc7c45942beb870f9317889bd31d6..707945953aac66fb4cb1584674dd5ff4dcf344ac 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e1_3235.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e1_3235.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e2_2086_e1_3235(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e2_2689.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e2_2689.lus
index 22ea78515ac5d5cc04c13349aa1f870900d7fcfd..31e3fcfacb19af1af7c212660c5dbb4bffcaf05d 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e2_2689.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e2_2689.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e2_2086_e2_2689(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e3_2542.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e3_2542.lus
index 264163f194c6970488864af5efd962d8353f26f0..e0d37467f1e14f7e71b04b492acdf03ff4307176 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e3_2542.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e3_2542.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e2_2086_e3_2542(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e7_2614.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e7_2614.lus
index 28e56f7e164355fbcadfeb7253b9899b20dda611..f9af10abe8ba62e82ee82a1e9d5c7b4091635436 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e7_2614.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2086_e7_2614.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e2_2086_e7_2614(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2952.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2952.lus
index 18d65e94f2fa020f858cc90303fb3ecc3a298c2d..0065c18f104b323e33d9924c9f11f9e09e6e52ad 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e2_2952.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e2_2952.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e2_2952(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e1_1979.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e1_1979.lus
index da16baf05525717ac12d5c2c3f8a47e00eaf37d2..d569a966ee37217e46b2d4250d468b1232614d02 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e1_1979.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e1_1979.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e3_314_e1_1979(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e2_2812.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e2_2812.lus
index 6f1cc5accc77f046e1ba5ab242752983738349f9..b223857d8843da131476030c03b87e122c30d905 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e2_2812.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e2_2812.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e3_314_e2_2812(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e4_897.lus b/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e4_897.lus
index 17643a05a6cb5068cf672bcdd39a868fc076ef3f..59abfa4311248067a09d969cb88a0d2aaed00c13 100644
--- a/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e4_897.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_a3_e3_314_e4_897.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_a3_e3_314_e4_897(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all.lus b/lustrec_tests/lustre_files/FIREFLY_all.lus
index 74bab4f84fcf3edd2613aac58fb808d9b10e3043..4fa514770583843b6e76921695fcaf6fb912d331 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all.lus
@@ -80,7 +80,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e1_1201.lus b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e1_1201.lus
index c9c8556b0c825319c8e0731fc1d884434b21d95e..2aae990dc790491381eafc4d4c5f3256cf209d3a 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e1_1201.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e1_1201.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e1_1207_e1_1201(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e2_3220.lus b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e2_3220.lus
index 24057f2a853e4d206bab099aae2f32554f65e64b..95a9483fed8736de7fe2b3bc3a103599aa2838fb 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e2_3220.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e2_3220.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e1_1207_e2_3220(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e3_1928.lus b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e3_1928.lus
index b2c6408cddfe044cebe510f07d82329cb4a4dec8..b607b9cb9e45b48063c62deba953c78746ae595a 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e3_1928.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e3_1928.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e1_1207_e3_1928(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e7_156.lus b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e7_156.lus
index cb4427cb6699b0129f7afa96a0124a182359fd6c..2d9175e9a7bd7c34996b5fb3d94d599524cec237 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e7_156.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e1_1207_e7_156.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e1_1207_e7_156(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e1_3406.lus b/lustrec_tests/lustre_files/FIREFLY_all_e1_3406.lus
index 0666bb643accc076c1c5e42fe34b50ddf66dbaba..475cd4ab4f986141e091f01f8f013c4cb9dc666a 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e1_3406.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e1_3406.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e1_3406(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e1_768.lus b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e1_768.lus
index b8038eb9295f7df6b5c8acc7d0f01938275b7253..b04247da0566e799317fc5a3e0eca0c27005c05c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e1_768.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e1_768.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e2_2924_e1_768(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e2_1767.lus b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e2_1767.lus
index 4740f3531a342920ebd1cdee6c0d5fe5650378db..8ca7ff92a62ff2ed18b6b0380ae07b8122b18b75 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e2_1767.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e2_1767.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e2_2924_e2_1767(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e3_3946.lus b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e3_3946.lus
index 900e4ae2dc713349b041fef4613c1ab6d155be1a..900c214a69309be2cfc8b1b42d1846c41d7b198d 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e3_3946.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e3_3946.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e2_2924_e3_3946(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e7_3371.lus b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e7_3371.lus
index 4e016ab0d1189064818244d165428d70d3af572a..4010843f09ae15678ea402b512a581d805855366 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e7_3371.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e2_2924_e7_3371.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e2_2924_e7_3371(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e2_3678.lus b/lustrec_tests/lustre_files/FIREFLY_all_e2_3678.lus
index 7c1b86d93dbd47e14748d78353a421974cc5e1f1..9c0d7e66c41fb27a7c30a1a0ef698eac7fbada0a 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e2_3678.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e2_3678.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e2_3678(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e1_667.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e1_667.lus
index 7072506307ba387652c960c63b9fe528a3724ce1..5dc4ff5bc044f08b9a0fc91ee24eb5337eecae46 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e1_667.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e1_667.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_1600_e1_667(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e2_676.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e2_676.lus
index 270f0730fe8e9e6d53e74b7e22252384fba38540..06346e889ae8d8b52b26b284b03f141bdd71417d 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e2_676.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e2_676.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_1600_e2_676(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e3_2055.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e3_2055.lus
index 59038d86333340830a538e2697d2c4840160ce21..88bd29d1a1869bfe20ce82b63176baeffdeb7d85 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e3_2055.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e3_2055.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_1600_e3_2055(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e4_2415.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e4_2415.lus
index 102536fed34aec40f0f4b2e70c248ac201e664c9..c3385773e0d2c3832afee79a0c506d572f0a1f88 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e4_2415.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e4_2415.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_1600_e4_2415(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e5_84.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e5_84.lus
index dc66ec4201dd5f6f01832dcaf32f3d3acf21b231..fcbcb160398dd0b5e1a44a0a6c381d34a2f56634 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e5_84.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e5_84.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_1600_e5_84(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e7_1607.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e7_1607.lus
index b9b2de243b18b86341f4c99d0f0d80f15b9992d3..f105de54d86d63488ab02ef0c0312945f1aa290c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e7_1607.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_1600_e7_1607.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_1600_e7_1607(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e3_3496.lus b/lustrec_tests/lustre_files/FIREFLY_all_e3_3496.lus
index c9cfd38d3263e76c484ed22829e03a7c5e4a0270..ec06371fc38c4240592fc3d35374ab674f5f7eb4 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e3_3496.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e3_3496.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e3_3496(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_all_e7_1909.lus b/lustrec_tests/lustre_files/FIREFLY_all_e7_1909.lus
index 58d576b87fcd4bb402ab14d333cac78cb69977df..682f22de13627422a66205f0a4ca73dcd8c5fcf8 100644
--- a/lustrec_tests/lustre_files/FIREFLY_all_e7_1909.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_all_e7_1909.lus
@@ -63,7 +63,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_all_e7_1909(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1a.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1a.lus
index 80333baafe769ab4c7fd97bbafc103837af6722b..a43adfac59f8a7e118809cb9e1628e53fe306600 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1a.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1a.lus
@@ -75,7 +75,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1a(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e1_2924.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e1_2924.lus
index c6d753c1534ca0f428073968861f62de81f2b749..99fb091531f52d11ac6bd71e80f9a377daeada0e 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e1_2924.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e1_2924.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1a_e2_284_e1_2924(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e2_2755.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e2_2755.lus
index 8d5ead6af7801ab66898fe1afedc540c108353ac..49731bc90eb9e7152ec83e450829964b906dcf7c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e2_2755.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e2_2755.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1a_e2_284_e2_2755(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e3_3091.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e3_3091.lus
index 7ccda9479e924ab2b80e20a8c2847f8b46b4c596..d73dae1e6905f4aa432a1464f921f40afdd79bc3 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e3_3091.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e3_3091.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1a_e2_284_e3_3091(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e7_998.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e7_998.lus
index 2aac04993a75836d59d8013437b0daca370e02ed..bb3283ecc2414a70ecbad5c64369b9cceb6dd143 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e7_998.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e2_284_e7_998.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1a_e2_284_e7_998(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e7_3042_e3_1213.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e7_3042_e3_1213.lus
index 291aae9edf051d64e4e5a2462cc14541e371e623..a618a830268a8f7a5d711b686ea1b2912e82a750 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1a_e7_3042_e3_1213.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1a_e7_3042_e3_1213.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1a_e7_3042_e3_1213(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b.lus
index 4b4f0f6e47d464fce3d37bbeaf672860ed08b56e..5a3fe52bace84644a2c6d8522ecb5d327b380701 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b.lus
@@ -75,7 +75,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e1_1565.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e1_1565.lus
index 619781c8691ce8e12b49fd434c165f765b7f36cc..3de60a1cd4a2ad04bfcc7643ca4b8209ea8dea1f 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e1_1565.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e1_1565.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e1_1139_e1_1565(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e2_2893.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e2_2893.lus
index a16e823b04329cdebc2ef3a131e0003de3cc8d9a..1f3e0728402218c3bd9323415a8470a33a0ef46c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e2_2893.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e2_2893.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e1_1139_e2_2893(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e3_1839.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e3_1839.lus
index 62cd5f523c4fb0ec54983bd945619f7f8a957e66..458a7ccb1e158a5180fe68f199e047a44b7f1eeb 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e3_1839.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1139_e3_1839.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e1_1139_e3_1839(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1691.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1691.lus
index 7ac6555d618ac75dcc921c91a05e9369cfaf8b37..fbb1fd6a3c8796a444e52cb763a6eee7f047943e 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1691.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e1_1691.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e1_1691(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049.lus
index 02cc9057b2dc89ddcca6537d4742c91449ac33da..4c59d8601e23c4e5420ac8ca42c4d368e7e23a5c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e2_3049(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e1_946.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e1_946.lus
index 999649530b8d1aa8f4380aaeb42efd6fb44f0105..558f7b563912f143b18ba68c04d2c50ff0e71a65 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e1_946.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e1_946.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e2_3049_e1_946(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e2_698.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e2_698.lus
index 561330cd27b83d908f14a7ba0f3c9e8c49feb0aa..2540096e67fe8bcf7923f162f15cc7b0710317d4 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e2_698.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e2_698.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e2_3049_e2_698(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e3_2697.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e3_2697.lus
index af6e370ac65915fa09b60986864750551680f4c3..39b4bd00f4fd15da43f53453f2a30b503960a22c 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e3_2697.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e2_3049_e3_2697.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e2_3049_e3_2697(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671.lus
index 45b696b46a890a2bea2dd7dff1398ea2564f995f..66b1c18daa22b5781609702f3a3da989e5613486 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e1_725.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e1_725.lus
index 723d9620d3e45080d39e13a83488e42757cfa327..cd6c084c84f19c0fdf4362f9dbe8bcf9094373d2 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e1_725.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e1_725.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e1_725(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e2_2131.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e2_2131.lus
index 94b736b86ef5a148783c59a84a006d3579fe2f64..520d798fa8059631b6a7034d8932230101623bc2 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e2_2131.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e2_2131.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e2_2131(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e3_941.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e3_941.lus
index 5cff53bf21ab0dbde9b804ba3243a0e0cc291625..3ba3531c1f63d7c50b3edb2fb619ba37ce733981 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e3_941.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e3_941.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e3_941(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e4_147.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e4_147.lus
index 105019aba5fc8fe0b2e12648c0c87a99369af308..a0150bc2169501f3d0beb19bcbce438ce811c760 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e4_147.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e4_147.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e4_147(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e5_1637.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e5_1637.lus
index 55556a66d3704936ecba23d7425b3b2b185dbcd2..b3e221501d8b1151454dd4a7bd8d756c6a0710b6 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e5_1637.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e5_1637.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e5_1637(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e6_1974.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e6_1974.lus
index 030326edb4c2643c427133643cb53ceec18bc159..8824c315e34be4834170f2f7288df3bfcc395cdc 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e6_1974.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e6_1974.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e6_1974(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e7_1882.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e7_1882.lus
index 522716633a9e087b2a91c4c425f5eef40aad6949..08c8df2a164d166164661b45f7d7570d0d0d02e4 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e7_1882.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e3_671_e7_1882.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e3_671_e7_1882(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_2574.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_2574.lus
index 4671955356259701a09cfcfe77b0460f63078ace..51776f2aca5097a1db7ed187d84575158cfbecde 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_2574.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_2574.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_2574(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191.lus
index 4671955356259701a09cfcfe77b0460f63078ace..7d3c1b3766d8ad551606b5a16bc248aa437a7d62 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_3191(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e1_1303.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e1_1303.lus
index 660c27ef690051922a616138d28e3e44e8710413..be683c23c3b372261349ac4aa1bc6b6866aea990 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e1_1303.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e1_1303.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_3191_e1_1303(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e2_1864.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e2_1864.lus
index a2c073251718a3c224ffd2dc738aff3766b5026b..e8cbdcfd160926f8b4e9b97b8bfce0d746f5b479 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e2_1864.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e2_1864.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_3191_e2_1864(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e3_1250.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e3_1250.lus
index 522716633a9e087b2a91c4c425f5eef40aad6949..1f7354fe8effe5f6b954fbe559b84fd2dd14b726 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e3_1250.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e3_1250.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_3191_e3_1250(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e7_2146.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e7_2146.lus
index 442b4ce672d499946bfda92fc6750c62960830b9..f362db4988148f3e942ef5515033bcf97f81cc32 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e7_2146.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e7_2146.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_3191_e7_2146(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e8_2830.lus b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e8_2830.lus
index 030326edb4c2643c427133643cb53ceec18bc159..55e1528a57066e2fe7f4d7c3e6ab92a3c95cc3bf 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e8_2830.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_1b_e7_3191_e8_2830.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_1b_e7_3191_e8_2830(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_2.lus b/lustrec_tests/lustre_files/FIREFLY_luke_2.lus
index 88b63edf251dc3fafb97c09e4a2fb1e61966095a..e2ec617abbe7d63ab300b28e7ea7f19725cf8b94 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_2.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_2.lus
@@ -75,7 +75,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_2(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_2_e2_1375_e1_418.lus b/lustrec_tests/lustre_files/FIREFLY_luke_2_e2_1375_e1_418.lus
index 2404a90dd0a6be636c16639a024cf110c5fd6456..5ae220dcb3cc946198874d3d84c16a96caf08b04 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_2_e2_1375_e1_418.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_2_e2_1375_e1_418.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_2_e2_1375_e1_418(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_2_e7_1826_e8_126.lus b/lustrec_tests/lustre_files/FIREFLY_luke_2_e7_1826_e8_126.lus
index dc8327a48cf7240cf44f5756cac69829710aebad..ab5ab43467f5b3fd5d81f921abfb81380b0470d0 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_2_e7_1826_e8_126.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_2_e7_1826_e8_126.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_2_e7_1826_e8_126(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_3.lus b/lustrec_tests/lustre_files/FIREFLY_luke_3.lus
index 77c8079e53b47d0c19641299e43d12f92a38e480..80dff9d894e5aa665feb9c950a5be644a78678c5 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_3.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_3.lus
@@ -75,7 +75,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_3(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_3_e1_2217_e3_1200.lus b/lustrec_tests/lustre_files/FIREFLY_luke_3_e1_2217_e3_1200.lus
index aaa828ad99b993f66601279b3eb9472a2924ac30..993f69c539a2afef6128856673d914b36d128d69 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_3_e1_2217_e3_1200.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_3_e1_2217_e3_1200.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_3_e1_2217_e3_1200(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_4.lus b/lustrec_tests/lustre_files/FIREFLY_luke_4.lus
index 7a0cc01fff5caf0b33998e4c29b89693ccac40ae..51c1d4247540fa4cf5ea458eb48d02a6de98cc36 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_4.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_4.lus
@@ -75,7 +75,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_4(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_4_e2_325.lus b/lustrec_tests/lustre_files/FIREFLY_luke_4_e2_325.lus
index 63fe63ef8c22f17544b7765dc22fe6968301073e..01c5a2d40b31db936230791cd7f7d484f733777b 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_4_e2_325.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_4_e2_325.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_4_e2_325(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_5.lus b/lustrec_tests/lustre_files/FIREFLY_luke_5.lus
index 99b8641b902526b7794dbba55a63d43fa04dbe07..aefbf53f13e62af5be172b9b5b46bf4d8e60b725 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_5.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_5.lus
@@ -79,7 +79,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_5(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns(OK:bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt.lus
index 147cdda7b3771db72c7a1778a3ddc3cab2bc8a68..f07239c7a3f0fa681e0b5b6d1ded6ee6c39e3c34 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt.lus
@@ -79,7 +79,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913.lus
index ec0b04423e70cefc17cbd375d0f591b9cac5ec98..8010153db1daa8c1de8bd66281f44ac85ce15fa6 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e1_913(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e1_1993.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e1_1993.lus
index 45bc85f31cf3d94c8935e1d66f7f8b0f465c4bdc..ea5562ba08d2cbc08d33e1cf9760da6eec4f3117 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e1_1993.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e1_1993.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e1_913_e1_1993(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e2_3353.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e2_3353.lus
index f5aa1a15dd6bb57ff820d1aa2adf3aff185b2426..81b69e72597328c6ab4ca1fe6ac0317f2309c85a 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e2_3353.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e2_3353.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e1_913_e2_3353(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e3_2128.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e3_2128.lus
index f8215d1e217d0187b15407489800fa1721f13bac..1f7df95f8706db130c5b660813867e58141fe535 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e3_2128.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e3_2128.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e1_913_e3_2128(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e7_1403.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e7_1403.lus
index d0be779929f3eb840f926173644022c552af7f6a..5700b02bb1b8822b18901780e1f870610d44a358 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e7_1403.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e1_913_e7_1403.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e1_913_e7_1403(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460.lus
index c59f797f99dadaada6386e2c8ae395be6af490ae..bb9f98d50f73bb539b5cc6683c9964093f043d26 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e2_3460(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e1_1455.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e1_1455.lus
index 5fb7577c1acf16dabb45a2487f25564936b4f84c..a08b5e3da3bdd7fcee9c0b16bb74a052eea591a5 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e1_1455.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e1_1455.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e2_3460_e1_1455(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e2_2670.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e2_2670.lus
index cd933f5aa13de1d8add06cf28d41050725cbce49..32a83a88a9928196853bc28f28b8025998622446 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e2_2670.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e2_2670.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e2_3460_e2_2670(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e3_1333.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e3_1333.lus
index 032918dd66993ffbf625f442cd7f57133ef03bd9..c8633499973d86df9bd201160de6ccc67e3a1997 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e3_1333.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e3_1333.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e2_3460_e3_1333(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e7_471.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e7_471.lus
index 3eeff60ffa6f7206ac96747db2ce9a3b7a217b6e..fa092be72d38234c8b19b1d9280aa0680f91e95f 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e7_471.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e2_3460_e7_471.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e2_3460_e7_471(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e3_1549.lus b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e3_1549.lus
index 01c84319543fcf8ce69f27996c4779710f75c7fc..21eb3b8554d411895528febd436ea09fa15bf1c6 100644
--- a/lustrec_tests/lustre_files/FIREFLY_luke_rt_e3_1549.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_luke_rt_e3_1549.lus
@@ -62,7 +62,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_luke_rt_e3_1549(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_rt.lus b/lustrec_tests/lustre_files/FIREFLY_rt.lus
index a9a959f3fe7f7f1405dbba8ef99294ae15f71371..31f9beb3f18e240482259d09e7a109f8c3fac7c3 100644
--- a/lustrec_tests/lustre_files/FIREFLY_rt.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_rt.lus
@@ -72,7 +72,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_rt(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_rt_e3_1770_e2_637.lus b/lustrec_tests/lustre_files/FIREFLY_rt_e3_1770_e2_637.lus
index 5cce144ced3e5b97419f4b8ada88dd8cf45a7ee6..d390e967be654bb9b09d46748d100040277a5efe 100644
--- a/lustrec_tests/lustre_files/FIREFLY_rt_e3_1770_e2_637.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_rt_e3_1770_e2_637.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_rt_e3_1770_e2_637(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_u1.lus b/lustrec_tests/lustre_files/FIREFLY_u1.lus
index 63c44843a193a0743e77da6f741f6bb5cfe3d530..2f785c8eaf1c5f420c4a697b6a95be9d6bf09ad6 100644
--- a/lustrec_tests/lustre_files/FIREFLY_u1.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_u1.lus
@@ -72,7 +72,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_u1(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_u1_e2_3403_e2_957.lus b/lustrec_tests/lustre_files/FIREFLY_u1_e2_3403_e2_957.lus
index 02420d7df4cca152fa7dc0a1021e6bf7b90aa3d4..5a4482c20774b64a5a0d08423c0d87a9a8a44239 100644
--- a/lustrec_tests/lustre_files/FIREFLY_u1_e2_3403_e2_957.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_u1_e2_3403_e2_957.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_u1_e2_3403_e2_957(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/FIREFLY_u1_e7_3318.lus b/lustrec_tests/lustre_files/FIREFLY_u1_e7_3318.lus
index 82612cd330b376105a51c1de15de3c126824742e..5afea15ddb693acc1881e958cfe672c4768292fb 100644
--- a/lustrec_tests/lustre_files/FIREFLY_u1_e7_3318.lus
+++ b/lustrec_tests/lustre_files/FIREFLY_u1_e7_3318.lus
@@ -59,7 +59,7 @@ let
 	if(e8) then if(garde8) then pre shared + pre exclusive + 1 else pre shared else
 	pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
+node FIREFLY_u1_e7_3318(e1, e2, e3, e4, e5, e6, e7, e8 : bool; i_invalid : int) 
 	returns( OK : bool );
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/Gas.lus b/lustrec_tests/lustre_files/Gas.lus
index 522f0b898e9ee33419f75f532adac4532d6c973d..4c391e087d2a877f41e6d13ef34e55ec5e87e3e6 100644
--- a/lustrec_tests/lustre_files/Gas.lus
+++ b/lustrec_tests/lustre_files/Gas.lus
@@ -34,7 +34,7 @@ tel
 -- P is a an input used to define the start of an observation
 
 -- Not provable?
-node top (leak,P1:bool) returns (OK : bool);
+node Gas (leak,P1:bool) returns (OK : bool);
 --@ contract guarantee OK;
    var env : bool;
 let
diff --git a/lustrec_tests/lustre_files/ILLINOIS_1.lus b/lustrec_tests/lustre_files/ILLINOIS_1.lus
index fccf963a615a7079ef0de2dbaa4157dde7a1bb07..4376790d863997e59ff94af2ed53fbd67a8ee756 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_1.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_1.lus
@@ -71,7 +71,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_1(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2.lus b/lustrec_tests/lustre_files/ILLINOIS_2.lus
index 40ecc2da3ea0fffc3d9ecd041e021bbde1fa86a6..deffdc71556cf9dc5df35dbcc340977d851c5100 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2.lus
@@ -71,7 +71,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834.lus
index 50c08ae0379bd2333562b89efcd55bafe50e6c42..6bd524ee5423f7167e10527d5a6f7f16f3fa0e8f 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e1_834(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e1_1895.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e1_1895.lus
index 54b7f372ea5b1dd8f24a8af2abb8bc4a91efe226..158d27543ac152dd8a46d0aeda171ac151ba3629 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e1_1895.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e1_1895.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e1_834_e1_1895(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e2_3395.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e2_3395.lus
index 09e5a4cdb317aab5fd18f53529991c974b91f33e..8cab15bc1c9618861ca03a98df85acffbed49b71 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e2_3395.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e2_3395.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e1_834_e2_3395(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e3_2931.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e3_2931.lus
index 5fae6649dbc705c1022920ba2452856d9a23b897..e8293b9220d394e47db5827e69fd342ed4cb0c36 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e3_2931.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e3_2931.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e1_834_e3_2931(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e7_3738.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e7_3738.lus
index 5b641d9de9f0ce7c413dd312bd491e863bd93b0d..1a2e930ca7e70c04df403ce980c194c70c291c32 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e7_3738.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e1_834_e7_3738.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e1_834_e7_3738(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e1_3182.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e1_3182.lus
index bb940dcf542ada958c27396547213feb8793e2b1..96299a39d62cb531d15b4b535e113b0315e62388 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e1_3182.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e1_3182.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e2_2367_e1_3182(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e2_1561.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e2_1561.lus
index cefc3d8f992a9d694cd42caf46e43a9845b4647d..091cefa3198714741fa37db6675a4a3a14e8c102 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e2_1561.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e2_1561.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e2_2367_e2_1561(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e3_1601.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e3_1601.lus
index 398d0fafdf4a1e0274bb8cf60a028cd24abe6f97..4d3febcb02a1c5da36cb68e1fe05a40999265095 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e3_1601.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e3_1601.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e2_2367_e3_1601(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e7_2728.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e7_2728.lus
index a166117f95eb4ce0990d88e7d29112e22b13891f..fb488d55b007754c3a612ac3d5a534595893a5f6 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e7_2728.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e2_2367_e7_2728.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e2_2367_e7_2728(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_2_e2_876.lus b/lustrec_tests/lustre_files/ILLINOIS_2_e2_876.lus
index eaac09c221f124073820814d1791c67698e1044b..e05633745fb740722e379b73b3c75ace53aff7c2 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_2_e2_876.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_2_e2_876.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_2_e2_876(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3.lus b/lustrec_tests/lustre_files/ILLINOIS_3.lus
index e689df9e53f7cddfe1003b746eb94db05d25f57d..65e4b2268cd1f28941ed39177b763c57b32bae5a 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3.lus
@@ -79,7 +79,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581.lus
index 8cd86da611f3ee110b091e02494f86f37661340c..39dde2977efd75a00ba4bd34161bdbb8314ec44b 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e1_1130.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e1_1130.lus
index 9ab0ee152c173640c05926bd880ae35d38f5fe09..bc728dac3f5222d455edcac97e30537268920d49 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e1_1130.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e1_1130.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581_e1_1130(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e2_2545.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e2_2545.lus
index ec77b1e62179638dc2e807c5fc5d38c1684c2241..7d381a606786260c158e0acfffca650c00af2e34 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e2_2545.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e2_2545.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581_e2_2545(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e3_979.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e3_979.lus
index 3add6ed3c863abf221ad45f9e51ea6fc4cfa2bbc..a22c0c09da299f555d7f7a9d7212b95c31be1a46 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e3_979.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e3_979.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581_e3_979(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e4_958.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e4_958.lus
index d3946e5f23ba735e6d2f49b294b115adab661845..baf707cf363e9db760e3f2bfbcb2c28d0cc520ce 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e4_958.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e4_958.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581_e4_958(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e5_4006.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e5_4006.lus
index 1ccd7fc3cdb073a9fde91284be8c03f9285ba271..5e8378d36d8e2f7d9f251a32b139b4f420e169cd 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e5_4006.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e5_4006.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581_e5_4006(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e7_3447.lus b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e7_3447.lus
index 6e7e09c4f796c3ad5f422006c5a6c01783e001da..d623b8e526939fd101e0b39a67ad8221f7a41793 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e7_3447.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_3_e3_2581_e7_3447.lus
@@ -66,7 +66,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_3_e3_2581_e7_3447(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_4.lus b/lustrec_tests/lustre_files/ILLINOIS_4.lus
index 31ccc974cd89f1c305dcafad03189200bd3c757e..ef6ca0ab881459c47510be3bd033a5a65ed9a11e 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_4.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_4.lus
@@ -72,7 +72,7 @@ let
 tel
 
 -- Not provable in luke-bitvec
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_4(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_4_e7_2651_e7_2847.lus b/lustrec_tests/lustre_files/ILLINOIS_4_e7_2651_e7_2847.lus
index 75e680d02dbfc643dedb0f128593c3c4822c536f..65567c2d237ead8c1bc637e9b8649d9e8119489b 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_4_e7_2651_e7_2847.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_4_e7_2651_e7_2847.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_4_e7_2651_e7_2847(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_5.lus b/lustrec_tests/lustre_files/ILLINOIS_5.lus
index d82d5ed82f72254ad032ba4ba9d0fa54efbc7048..6e351ec9943f733e99e50c106ff1c13fd7f28598 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_5.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_5.lus
@@ -71,7 +71,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_5(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_5_e7_692_e7_2865.lus b/lustrec_tests/lustre_files/ILLINOIS_5_e7_692_e7_2865.lus
index 5d8e805cd562a20ec7b2d5e57638590005c9f817..6603693abb43b3929039c7eef41460eb78fed6c4 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_5_e7_692_e7_2865.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_5_e7_692_e7_2865.lus
@@ -62,7 +62,7 @@ let
    if(e8) then if(g8) then pre shared-1 else pre shared else 
    pre shared;
 tel
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_5_e7_692_e7_2865(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_a1.lus b/lustrec_tests/lustre_files/ILLINOIS_a1.lus
index 0a90b3145356a499d6923b60db3d5d536e040ff4..a74a8b662560ac8d317bafbf45985101f54de637 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_a1.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_a1.lus
@@ -72,7 +72,7 @@ let
 tel
 
 -- NOTE: Not provable!
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_a1(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_all.lus b/lustrec_tests/lustre_files/ILLINOIS_all.lus
index c2a893b1d02cf51e3a73f7317ad4fe284a23a3da..42a279b50a1be29efe851d2a57af2049c1138f3b 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_all.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_all.lus
@@ -79,7 +79,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_all(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK by 2-induction;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/ILLINOIS_r4a.lus b/lustrec_tests/lustre_files/ILLINOIS_r4a.lus
index 372868c7b0a5e6116ccad79c170aeaf6cd6f3b54..319723dd5df084f557052e046090a3759dc8eee8 100644
--- a/lustrec_tests/lustre_files/ILLINOIS_r4a.lus
+++ b/lustrec_tests/lustre_files/ILLINOIS_r4a.lus
@@ -72,7 +72,7 @@ let
 tel
 
 -- NOTE: Not provable!
-node top(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
+node ILLINOIS_r4a(e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool; init_invalid : int)
 returns( OK : bool);
 --@ contract guarantee OK;
     var invalid, dirty, exclusive, shared : int;
diff --git a/lustrec_tests/lustre_files/MESI_1.lus b/lustrec_tests/lustre_files/MESI_1.lus
index cc85a37af689940ccfa291da5d8a040a3ea8c606..d6f8037095ed35c86912064fab489f5274e11e1d 100644
--- a/lustrec_tests/lustre_files/MESI_1.lus
+++ b/lustrec_tests/lustre_files/MESI_1.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_1( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_1_e2_162_e7_1545.lus b/lustrec_tests/lustre_files/MESI_1_e2_162_e7_1545.lus
index 2e77347631b3761247943d16a8b923afb66358d2..fe35daebc96ae2e3b5ae188da5d7d37d3af18ed3 100644
--- a/lustrec_tests/lustre_files/MESI_1_e2_162_e7_1545.lus
+++ b/lustrec_tests/lustre_files/MESI_1_e2_162_e7_1545.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_1_e2_162_e7_1545( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_2.lus b/lustrec_tests/lustre_files/MESI_2.lus
index bfb903a8e80ce212ad2d4ce058074149bd1a9601..37b59b823a64938770be9d90df5cf556ea6598b4 100644
--- a/lustrec_tests/lustre_files/MESI_2.lus
+++ b/lustrec_tests/lustre_files/MESI_2.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_2( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3.lus b/lustrec_tests/lustre_files/MESI_3.lus
index f6405f4155b33584d929531f36802d629db16bb3..a5278184e9ffcc3248b824282043721d541d9485 100644
--- a/lustrec_tests/lustre_files/MESI_3.lus
+++ b/lustrec_tests/lustre_files/MESI_3.lus
@@ -60,7 +60,7 @@ let
 tel
 
 -- Only provable in nbac
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e1_2517_e8_2163.lus b/lustrec_tests/lustre_files/MESI_3_e1_2517_e8_2163.lus
index 43df9739c25702d3c4d3b1c17e3f5d8d94f72cb0..cb77835d1b6004304f198b70e18f476ad895b150 100644
--- a/lustrec_tests/lustre_files/MESI_3_e1_2517_e8_2163.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e1_2517_e8_2163.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e1_2517_e8_2163( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819.lus b/lustrec_tests/lustre_files/MESI_3_e2_819.lus
index d2532609e6be6985a340e51596faa3fe853039a0..bf3aaa85b7baaf908cec71021f7fe90cb195f627 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e1_1145.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e1_1145.lus
index 95852e6c10e98923fa70801b242c33a9cf8d733c..5e2a986423c989b4f870e9fdc887088fb48cd611 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e1_1145.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e1_1145.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e1_1145( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e2_562.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e2_562.lus
index da4b5ecf0c84d22880e0ef2673024f86251ddef4..0895deedb3c707ac1f49db77947e93cf6362a5cf 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e2_562.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e2_562.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e2_562( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e3_2698.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e3_2698.lus
index b44a17b2ad5f559f5dccc95958fc28fad02aac8f..0057a351c186d14ee98fac0791d4dfdb86c15238 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e3_2698.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e3_2698.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e3_2698( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e4_1595.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e4_1595.lus
index f767daa621f4aeb1d6ae4e8b98da95bfebe19ecd..90c1b6a951e156d879429bc37b8bc029a14c87be 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e4_1595.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e4_1595.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e4_1595( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e5_2554.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e5_2554.lus
index f8ca416c2a570b1eacbddae8000a4f2b05461c2f..fd867b3b9ee8f74e694584e403009bcf05f72a4a 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e5_2554.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e5_2554.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e5_2554( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e6_1459.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e6_1459.lus
index 678f84c08c668530aa2d49aa6099000deb61af18..fe5316f850669178a06069d6ffe8970556253792 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e6_1459.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e6_1459.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e6_1459( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e7_1665.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e7_1665.lus
index 57de5da3991e8b59b312e6044d8d2b2a569a471f..946a0de201f0e64371197d557b07c320a2437189 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e7_1665.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e7_1665.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e7_1665( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e2_819_e8_1896.lus b/lustrec_tests/lustre_files/MESI_3_e2_819_e8_1896.lus
index 61f297dfe875bd6f196d2026bebb5fad6465b3f2..b5f01551216491bb432a452e33594d14a110c9d9 100644
--- a/lustrec_tests/lustre_files/MESI_3_e2_819_e8_1896.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e2_819_e8_1896.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e2_819_e8_1896( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_3_e3_2669.lus b/lustrec_tests/lustre_files/MESI_3_e3_2669.lus
index 618413d262361624b60734ab3ccdeab05c5708bb..57f083d0e7d3664cd0aaa8115830b269b6de35b8 100644
--- a/lustrec_tests/lustre_files/MESI_3_e3_2669.lus
+++ b/lustrec_tests/lustre_files/MESI_3_e3_2669.lus
@@ -49,7 +49,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_3_e3_2669( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_4.lus b/lustrec_tests/lustre_files/MESI_4.lus
index 80bf9ea54ae040bc13c3638ded52edda9fca8ae4..2cfeb7f9c814d738470c90e51bd7d945cb86074d 100644
--- a/lustrec_tests/lustre_files/MESI_4.lus
+++ b/lustrec_tests/lustre_files/MESI_4.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_4( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_4_e7_1140_e7_433.lus b/lustrec_tests/lustre_files/MESI_4_e7_1140_e7_433.lus
index 57e57c3c20177f96d8408bc9d9298ab445a402df..7da625a3589d5e50df6fa54a03ac8cc6c5a2bc50 100644
--- a/lustrec_tests/lustre_files/MESI_4_e7_1140_e7_433.lus
+++ b/lustrec_tests/lustre_files/MESI_4_e7_1140_e7_433.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_4_e7_1140_e7_433( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_all.lus b/lustrec_tests/lustre_files/MESI_all.lus
index 0c2561cd3366517a93e473f933a8fa910f0ed28a..010e4bfa0a59768079abd650d68ed25b0fe5ae61 100644
--- a/lustrec_tests/lustre_files/MESI_all.lus
+++ b/lustrec_tests/lustre_files/MESI_all.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool )
+node MESI_all( etat_me1, etat_me2, etat_me3, etat_me4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
diff --git a/lustrec_tests/lustre_files/MESI_all_e4_1147_e7_497.lus b/lustrec_tests/lustre_files/MESI_all_e4_1147_e7_497.lus
index 2c8c5dab556877cf6d4e86e580adaa22feafd716..8a71d63f56b58a6c20a4e4a19ffcd904a8113dae 100644
--- a/lustrec_tests/lustre_files/MESI_all_e4_1147_e7_497.lus
+++ b/lustrec_tests/lustre_files/MESI_all_e4_1147_e7_497.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool )
+node MESI_all_e4_1147_e7_497( etat_me1, etat_me2, etat_me3, etat_me4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
diff --git a/lustrec_tests/lustre_files/MESI_i1.lus b/lustrec_tests/lustre_files/MESI_i1.lus
index 92320b4834c7cbcdfec3a87592c60b15355ef1ac..ea23892ae70f797a8a70331d87698aa3be3a23af 100644
--- a/lustrec_tests/lustre_files/MESI_i1.lus
+++ b/lustrec_tests/lustre_files/MESI_i1.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e2_1758_e8_12.lus b/lustrec_tests/lustre_files/MESI_i1_e2_1758_e8_12.lus
index af73e3091992c705a0eaefc05dddb75773aeaa2b..dc2cfc5535080c8cf747246d826fc659c0f144f6 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e2_1758_e8_12.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e2_1758_e8_12.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e2_1758_e8_12( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e2_2656.lus b/lustrec_tests/lustre_files/MESI_i1_e2_2656.lus
index baa6da7539fa0f345a847898f931d61fc5064bb0..bb3fb3d492326d4629c17cd2c25376909cd5bca4 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e2_2656.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e2_2656.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e2_2656( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145.lus
index 81f5b1fd3265281e684f5c722522ecf4b9215fc8..217f7f748b6a430026ec741a7fe0b253104bfaff 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e1_2667.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e1_2667.lus
index f2dd3b2949c4a30c5a17a7e47d913a839ac27c78..e2f5fdbe2886353321ff343fff5cc47666d66a47 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e1_2667.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e1_2667.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e1_2667( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e2_2228.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e2_2228.lus
index 53ea579d58193692d7b6ed203fda9e7432264ff6..b9f052a12dd245ff8e17ec5ed31845d1c88f8209 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e2_2228.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e2_2228.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e2_2228( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e3_977.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e3_977.lus
index e8268f4714587b5568a099f28959b41e075a2462..7e6cb1f3a65127b618501f8618479e20e0d80c4b 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e3_977.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e3_977.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e3_977( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e4_1717.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e4_1717.lus
index 7021f9e7139c531f5a3be376e5fd2983d308b126..12d9983b5482ad8481d57ffad7b1676f9749dda9 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e4_1717.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e4_1717.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e4_1717( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e5_2391.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e5_2391.lus
index 8ed154a807dcae1664398a15eb3748b0e4445c24..d3f65c9b68b872caf5582ad8d68c2e1df9cf5b67 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e5_2391.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e5_2391.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e5_2391( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e7_1847.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e7_1847.lus
index d458abc23339c7dad7203011c9c67598f3673bf0..ee753437745c6cba82b4f0e50401e5cb525494a2 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e7_1847.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e7_1847.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e7_1847( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e8_2325.lus b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e8_2325.lus
index f2880c8718c5186d1a5635488f5ee4cf9ec57463..4354c4504d44192b153d520a2a91c652a31c7db5 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e3_2145_e8_2325.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e3_2145_e8_2325.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e3_2145_e8_2325( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e4_1986.lus b/lustrec_tests/lustre_files/MESI_i1_e4_1986.lus
index 4b12e7aac7e6e26a288711be6c382bbf35ddb156..21d050da89036f53a926bafbae100d8bbb39981d 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e4_1986.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e4_1986.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e4_1986( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i1_e4_1986_e1_1519.lus b/lustrec_tests/lustre_files/MESI_i1_e4_1986_e1_1519.lus
index e79955546ddf00a3d7e2a29701565af1e347e602..e2dc084f554243a36ad32f75e6719f75bbab3a5c 100644
--- a/lustrec_tests/lustre_files/MESI_i1_e4_1986_e1_1519.lus
+++ b/lustrec_tests/lustre_files/MESI_i1_e4_1986_e1_1519.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i1_e4_1986_e1_1519( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i2.lus b/lustrec_tests/lustre_files/MESI_i2.lus
index 9a8cfe5fc50a2bfb69bff2f8941f5b5029255b56..ed796dd12893f4296e93d9c4cfb24b3188b90284 100644
--- a/lustrec_tests/lustre_files/MESI_i2.lus
+++ b/lustrec_tests/lustre_files/MESI_i2.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i2( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3.lus b/lustrec_tests/lustre_files/MESI_i3.lus
index 3a91dd009e152ccc765a9b8d5c5254c82af51836..140d68d315e282c6869ac9a9342833cde9f75596 100644
--- a/lustrec_tests/lustre_files/MESI_i3.lus
+++ b/lustrec_tests/lustre_files/MESI_i3.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447.lus
index 28cc7e4bed98bcfffd631c057dff80fbf316c846..a363d53feadd8f758a6ef847d3ef754c09c1eb85 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447_e1_1292.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447_e1_1292.lus
index 9ca4f20b5e7b4c00e3846eb287e90cde6b970460..24dd91eee2070ddd92c2ee12f7407a52768e7362 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447_e1_1292.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447_e1_1292.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447_e1_1292( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447_e2_1098.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447_e2_1098.lus
index 4233d840afdb78f215777034ee79edbd3bce561f..36e6498706570dba46e515d193adcea9c0688c2b 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447_e2_1098.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447_e2_1098.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447_e2_1098( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447_e3_1180.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447_e3_1180.lus
index ecb2abb73a9be1718833ab3bf26ddcc852bfaede..6b08e08352cdc69bddf8286d09d5c2231f3cce1e 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447_e3_1180.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447_e3_1180.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447_e3_1180( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447_e5_2444.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447_e5_2444.lus
index e6ad78149089baedd3d0f4e02f4b6f2e808f99e4..903c62dc8f1dac233d8fbbed198f223c8584f1b3 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447_e5_2444.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447_e5_2444.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447_e5_2444( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447_e6_2281.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447_e6_2281.lus
index f1f37ee77ce2cc446e4c56ebfd02038c3b4bb016..cfab6e0a99c937faa2402db4977d3740512ad092 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447_e6_2281.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447_e6_2281.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447_e6_2281( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i3_e1_447_e7_2194.lus b/lustrec_tests/lustre_files/MESI_i3_e1_447_e7_2194.lus
index bf3f99c568f26592b0a6c608a06429510c4c121d..2d055308a52e568ef2f83cdbdb15f809ceae2f0a 100644
--- a/lustrec_tests/lustre_files/MESI_i3_e1_447_e7_2194.lus
+++ b/lustrec_tests/lustre_files/MESI_i3_e1_447_e7_2194.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i3_e1_447_e7_2194( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i4.lus b/lustrec_tests/lustre_files/MESI_i4.lus
index efe5f6675fd6b23433e8486258918ba87ba0f702..6e82c36f6a8d8ae6522575446af2b0d8bc97fefe 100644
--- a/lustrec_tests/lustre_files/MESI_i4.lus
+++ b/lustrec_tests/lustre_files/MESI_i4.lus
@@ -54,7 +54,7 @@ let
 
 tel
 
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i4( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i4_e4_1689.lus b/lustrec_tests/lustre_files/MESI_i4_e4_1689.lus
index 2675d81cd1d4940dc135fd0f474abb9252bc7ea3..083cace698c8ced1a84473c46f4ac48ca462eee7 100644
--- a/lustrec_tests/lustre_files/MESI_i4_e4_1689.lus
+++ b/lustrec_tests/lustre_files/MESI_i4_e4_1689.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i4_e4_1689( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i4_e6_2175.lus b/lustrec_tests/lustre_files/MESI_i4_e6_2175.lus
index fdddb111e1ffcd926a68ef7f2eabb628cbab3acc..5aaa14be2e683807a8589c16b1b1f5e2a9fb3de5 100644
--- a/lustrec_tests/lustre_files/MESI_i4_e6_2175.lus
+++ b/lustrec_tests/lustre_files/MESI_i4_e6_2175.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i4_e6_2175( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i4_e7_1017_e6_1132.lus b/lustrec_tests/lustre_files/MESI_i4_e7_1017_e6_1132.lus
index 4e8379e81d673b1513d4a2759b7231e6ae72d6dd..c5ed9bd8e14c303af27429044509fa91bee042da 100644
--- a/lustrec_tests/lustre_files/MESI_i4_e7_1017_e6_1132.lus
+++ b/lustrec_tests/lustre_files/MESI_i4_e7_1017_e6_1132.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i4_e7_1017_e6_1132( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i4_e8_1381_e1_1837.lus b/lustrec_tests/lustre_files/MESI_i4_e8_1381_e1_1837.lus
index 826b367fda309cec5e852b2021be9158e0ff7f8c..51b4f5c7fdc51b6244678187d9175cac095f0475 100644
--- a/lustrec_tests/lustre_files/MESI_i4_e8_1381_e1_1837.lus
+++ b/lustrec_tests/lustre_files/MESI_i4_e8_1381_e1_1837.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i4_e8_1381_e1_1837( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MESI_i4_e8_1381_e4_313.lus b/lustrec_tests/lustre_files/MESI_i4_e8_1381_e4_313.lus
index e24be8697c45517b4e3fb4a1d0ebcb9e67638d60..6df3ec596dcac4f60187d95045d5952a712a49c8 100644
--- a/lustrec_tests/lustre_files/MESI_i4_e8_1381_e4_313.lus
+++ b/lustrec_tests/lustre_files/MESI_i4_e8_1381_e4_313.lus
@@ -45,7 +45,7 @@ let
    if(etat_me4) then if(garde_me4) then pre invalid_me + pre modified_me + pre exclusive_me + pre shared_me -1 else pre invalid_me else 
    pre invalid_me;
 tel
-node top( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
+node MESI_i4_e8_1381_e4_313( etat_me1, etat_me2, etat_me3, etat_me4 : bool ) returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_me, exclusive_me, shared_me, invalid_me : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/MOESI_1.lus b/lustrec_tests/lustre_files/MOESI_1.lus
index 7e5da70462e0acafedc9197922f2f128fec0145f..439a0ac5dcd4d519d4496bf12bb3a1e1bfb65ab4 100644
--- a/lustrec_tests/lustre_files/MOESI_1.lus
+++ b/lustrec_tests/lustre_files/MOESI_1.lus
@@ -59,7 +59,7 @@ let
 
 tel
 
-node top( init_invalid_mo : int;
+node MOESI_1( init_invalid_mo : int;
              etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/MOESI_1_e2_982_e7_492.lus b/lustrec_tests/lustre_files/MOESI_1_e2_982_e7_492.lus
index 802f63f6e1df8536e8c600f27c2123415e1b8ea0..6dd411d84d5fa3bdb807b97871597ccd94bb207f 100644
--- a/lustrec_tests/lustre_files/MOESI_1_e2_982_e7_492.lus
+++ b/lustrec_tests/lustre_files/MOESI_1_e2_982_e7_492.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int;
+node MOESI_1_e2_982_e7_492( init_invalid_mo : int;
              etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/MOESI_1_e3_1884_e7_1875.lus b/lustrec_tests/lustre_files/MOESI_1_e3_1884_e7_1875.lus
index 9e0007601080bdd0d76c4f6520873c66304c2356..d940c03951afe067a17d5484597d57fb3b41a0b6 100644
--- a/lustrec_tests/lustre_files/MOESI_1_e3_1884_e7_1875.lus
+++ b/lustrec_tests/lustre_files/MOESI_1_e3_1884_e7_1875.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int;
+node MOESI_1_e3_1884_e7_1875( init_invalid_mo : int;
              etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/MOESI_2.lus b/lustrec_tests/lustre_files/MOESI_2.lus
index 614fb5264273f8678f62f6bcc6c911c93ecbc121..0a7166d225f700906584b74e1e33ef6f603adbcc 100644
--- a/lustrec_tests/lustre_files/MOESI_2.lus
+++ b/lustrec_tests/lustre_files/MOESI_2.lus
@@ -59,7 +59,7 @@ let
 
 tel
 
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e1_1753.lus b/lustrec_tests/lustre_files/MOESI_2_e1_1753.lus
index b2490695f8a06de0d7ded4d364cbc31c275eeffa..c55a33c5ae1e9ee12267721a1a53b7753e13dcb8 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e1_1753.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e1_1753.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e1_1753( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e1_1753_e1_1510.lus b/lustrec_tests/lustre_files/MOESI_2_e1_1753_e1_1510.lus
index adfc794df1800d048d99ccc2aa48bb3ae28bc91c..92eb48dcbd54bbc65b6aded7059dd256357784f7 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e1_1753_e1_1510.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e1_1753_e1_1510.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e1_1753_e1_1510( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e1_1753_e2_615.lus b/lustrec_tests/lustre_files/MOESI_2_e1_1753_e2_615.lus
index b486299ddb01d40e2b0c5fed69516bc3dfc855e0..6a33d5c792095e6dd42b5400182a19100421051e 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e1_1753_e2_615.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e1_1753_e2_615.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e1_1753_e2_615( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e1_1753_e3_2021.lus b/lustrec_tests/lustre_files/MOESI_2_e1_1753_e3_2021.lus
index e389cf7baace8fdcab742b886d8e2e45c8849dc2..907791bd11b4ba75bc9546d2110bd20713f6fdcc 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e1_1753_e3_2021.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e1_1753_e3_2021.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e1_1753_e3_2021( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e2_155.lus b/lustrec_tests/lustre_files/MOESI_2_e2_155.lus
index c1ab3d7ff84ec8e44f25b9ee9f483076a310d71c..0aa949f5cebb281f2468552bc2d0fa9e6077de19 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e2_155.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e2_155.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e2_155( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e2_1599.lus b/lustrec_tests/lustre_files/MOESI_2_e2_1599.lus
index c1ab3d7ff84ec8e44f25b9ee9f483076a310d71c..a91f9e3975dea16c61b9e29028859a3b91faf163 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e2_1599.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e2_1599.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e2_1599( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e1_2383.lus b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e1_2383.lus
index 6ea08db46f84e7130eba6e09c60a5eceefd7ed89..802686b3095ddb28bf915a1b16a030422cf60186 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e1_2383.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e1_2383.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e2_1599_e1_2383( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e2_1815.lus b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e2_1815.lus
index 36a116039814a72c5b43d935e40083460dc1485f..2e11710711e105b250cd5ffa2dbe0ceadf330425 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e2_1815.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e2_1815.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e2_1599_e2_1815( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e3_1658.lus b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e3_1658.lus
index 9c2a261660d49c003aa399df5d17fedea239bb93..5bb59ddc40525bef38d05d4031e1d0594b30f7b8 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e3_1658.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e3_1658.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e2_1599_e3_1658( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e8_1334.lus b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e8_1334.lus
index da8237d6b0b6cc125f72a14c2c69f3c3257c3b98..e107fdeb17a15ee58fa13c643e9ae2a32377482a 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e2_1599_e8_1334.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e2_1599_e8_1334.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e2_1599_e8_1334( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_1523.lus b/lustrec_tests/lustre_files/MOESI_2_e3_1523.lus
index 3d89e0132abe8ce8c72498502ce6976448df4b81..43138c830dfafa60b33ad22b162e201fc1691d4d 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_1523.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_1523.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_1523( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929.lus
index 3d89e0132abe8ce8c72498502ce6976448df4b81..ea48ba339a51fd02784402d72fbf1ee338b75d48 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e1_2319.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e1_2319.lus
index 311d94a9eb2560fca56c9fb183c4dee1db92cacd..c98d5798b9f9dbc3a889894d40530d224fde72f3 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e1_2319.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e1_2319.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e1_2319( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e2_2421.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e2_2421.lus
index 963accfa4b8ca9b1ddf8832478a7ded123e243ba..c30897b453b815cee1c1005012eaceeb3cd90358 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e2_2421.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e2_2421.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e2_2421( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e3_2294.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e3_2294.lus
index b09b2d744cba7ea8433a32f28d2dbcec1e713af3..4b4f6c309450750e6f5a83c030ec087cdf751769 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e3_2294.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e3_2294.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e3_2294( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e4_578.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e4_578.lus
index 5dd3f7929071bbe64967a98a014a71cc4f5f1cf8..82b7c0c92a64c2220a9bf343527c97cf0f805f63 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e4_578.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e4_578.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e4_578( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e5_1826.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e5_1826.lus
index ede5e0f4f2078a5061e0c16d2ae3c54b522a9c42..546a2614fc2b107372feb962ad04456f8b18062e 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e5_1826.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e5_1826.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e5_1826( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e6_2707.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e6_2707.lus
index c596df4648834d1374ae09d9aab1d2a744b9d753..bbfefb2416083256abd8c1b28f6c011dc8c8b39c 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e6_2707.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e6_2707.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e6_2707( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e7_619.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e7_619.lus
index e2d25586954ca4dab3d88c321aab9b88d478140c..d70348a37410b415e7cdb9d9cc0c333a478732d7 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e7_619.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e7_619.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e7_619( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e3_929_e8_1167.lus b/lustrec_tests/lustre_files/MOESI_2_e3_929_e8_1167.lus
index 5c4635ff6dd2f0173ccaca2d84e2f3c942e99f86..51a2ba9a9847a53802f5751efb688433512f9adf 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e3_929_e8_1167.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e3_929_e8_1167.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e3_929_e8_1167( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2607.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2607.lus
index 8086354b2fc6a27fd6f227204910bd539fc92959..5bee44d4f6e4ab642f7cacbdbb36ec32b5375a3b 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2607.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2607.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2607( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2910.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2910.lus
index 8086354b2fc6a27fd6f227204910bd539fc92959..cf76e8045a2b29c49059a56ccae8a4ff447c2add 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2910.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2910.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2910( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e1_1021.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e1_1021.lus
index bc22fb5e7772beab8707df13438e199e19a858cb..e5a3e55644e6c6024b6005ffaeed8ddae69e5469 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e1_1021.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e1_1021.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2910_e1_1021( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e2_611.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e2_611.lus
index 9634007e8f6da411f56b3e5094f103d4b01fb2f7..bd6eb253ef8388a041e0ac2497db12f3472abab2 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e2_611.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e2_611.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2910_e2_611( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e3_2002.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e3_2002.lus
index e2d25586954ca4dab3d88c321aab9b88d478140c..29692aa70429dec3e9681a106c5bd9ed610102f7 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e3_2002.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e3_2002.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2910_e3_2002( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e7_1804.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e7_1804.lus
index d458dab61e8e4e7e8b1b49c6724dae7d28731b6f..20aed2780449771e518b8f33cbce147278c8654c 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e7_1804.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e7_1804.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2910_e7_1804( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e8_2590.lus b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e8_2590.lus
index c596df4648834d1374ae09d9aab1d2a744b9d753..e504eb4cfbdc25b249fe981dc36126fc1139889f 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e7_2910_e8_2590.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e7_2910_e8_2590.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e7_2910_e8_2590( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_101.lus b/lustrec_tests/lustre_files/MOESI_2_e8_101.lus
index f6895a969ae11de1b60d9e42e533ee3a87a0d433..a870feae933aac6e826f9dcb5cb4540203edffe9 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_101.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_101.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_101( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_926.lus b/lustrec_tests/lustre_files/MOESI_2_e8_926.lus
index f6895a969ae11de1b60d9e42e533ee3a87a0d433..96f245a593cda0ff0fc3c8d05444706102ef1898 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_926.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_926.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_926( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_926_e1_1065.lus b/lustrec_tests/lustre_files/MOESI_2_e8_926_e1_1065.lus
index e156c0502b71157ec1466130efbfc4d11e06637e..32ffeb9924c84211678a56056a10cfe8bcb3182a 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_926_e1_1065.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_926_e1_1065.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_926_e1_1065( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_926_e2_349.lus b/lustrec_tests/lustre_files/MOESI_2_e8_926_e2_349.lus
index da8237d6b0b6cc125f72a14c2c69f3c3257c3b98..de4e482d8749583b4b63ca82cb70a948a59c532a 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_926_e2_349.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_926_e2_349.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_926_e2_349( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_926_e3_1758.lus b/lustrec_tests/lustre_files/MOESI_2_e8_926_e3_1758.lus
index 5c4635ff6dd2f0173ccaca2d84e2f3c942e99f86..7c353699de3a60dee3fa8a418cd70a350aa2d43d 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_926_e3_1758.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_926_e3_1758.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_926_e3_1758( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_926_e7_961.lus b/lustrec_tests/lustre_files/MOESI_2_e8_926_e7_961.lus
index 80b0e914bfa93e96e72fe6c71439b978c6c03c68..0b8960be627f4b8c1fd8a959c1b813cd1de857ef 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_926_e7_961.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_926_e7_961.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_926_e7_961( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_2_e8_926_e8_2138.lus b/lustrec_tests/lustre_files/MOESI_2_e8_926_e8_2138.lus
index 8a7df27c70f0e1d625f843e3fb1f5ae8422fd443..2cee426d7cebfa348bf5a3c05db41098a0502f9f 100644
--- a/lustrec_tests/lustre_files/MOESI_2_e8_926_e8_2138.lus
+++ b/lustrec_tests/lustre_files/MOESI_2_e8_926_e8_2138.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
+node MOESI_2_e8_926_e8_2138( init_invalid_mo : int; etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var modified_mo, exclusive_mo, shared_mo, invalid_mo, owned_mo: int;
diff --git a/lustrec_tests/lustre_files/MOESI_all.lus b/lustrec_tests/lustre_files/MOESI_all.lus
index ae1abaaf8ac0a8602c6e6448a3dfecc6d9a1f708..43314f284de9009725672ac41425e6df34ebcf74 100644
--- a/lustrec_tests/lustre_files/MOESI_all.lus
+++ b/lustrec_tests/lustre_files/MOESI_all.lus
@@ -59,7 +59,7 @@ let
 
 tel
 
-node top( init_invalid_mo : int;
+node MOESI_all( init_invalid_mo : int;
            etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/MOESI_all_e3_2032_e3_2788.lus b/lustrec_tests/lustre_files/MOESI_all_e3_2032_e3_2788.lus
index 99902a3181ff28d19a5c8403ef9f3e581c0b66f4..8ff91f416469d587da5199e86dba6d543c332a82 100644
--- a/lustrec_tests/lustre_files/MOESI_all_e3_2032_e3_2788.lus
+++ b/lustrec_tests/lustre_files/MOESI_all_e3_2032_e3_2788.lus
@@ -48,7 +48,7 @@ let
    if(etat_mo4) then if(garde_mo4) then 0 else pre owned_mo else 
    pre owned_mo;
 tel
-node top( init_invalid_mo : int;
+node MOESI_all_e3_2032_e3_2788( init_invalid_mo : int;
            etat_mo1, etat_mo2, etat_mo3, etat_mo4 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_1.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_1.lus
index a38ec0a3d1fe6bfe1b0e04b4bb1ff285baea291d..be966a51ae0298e2c8b4f85fdf707d071f6d5cd1 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_1.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_1.lus
@@ -39,7 +39,7 @@ let
 tel
 
 -- Not provable with luke-bitvec
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_1(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_2.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_2.lus
index 1adf15aa1b062ef36a3a09b466f6cc555645fbf1..80562fc2c182958fdd438f32ce6095e80430e20d 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_2.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_2.lus
@@ -38,7 +38,7 @@ let
 
 tel
 
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_2(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_3.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_3.lus
index c619b794c925364f0ece14b9b7c906a6362c6335..ec1699b9d2c92f61ecd4de9784c395c3b4f7b60d 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_3.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_3.lus
@@ -48,7 +48,7 @@ let
 
 tel
 
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_3(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_all.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_all.lus
index 27a901a5eb1df6076b9befe770ecadd0b49a2743..1cc8873cf49d071e9787a64e195888d653a672ff 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_all.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_all.lus
@@ -48,7 +48,7 @@ let
 
 tel
 
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_all(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt.lus
index 7310d626c442f26719e924eb3c2a1c2c7487ddda..65f95908c3782280640af0e276770a2b9a31d018 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt.lus
@@ -48,7 +48,7 @@ let
 
 tel
 
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_vt(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e2_1352.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e2_1352.lus
index 5eb8bc2c869c6940934e56b9848c559ce10607c3..500f7e592bb722be41cbb0faeda491e478d29177 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e2_1352.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e2_1352.lus
@@ -37,7 +37,7 @@ let
 	if(etat3) then if(garde3) then pre o2+1 else pre o2 else
 	pre o2;
 tel
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_vt_e2_1352(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e3_507.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e3_507.lus
index 3fbab4faf099ceaaa1d0e7699d23ed589483b571..c8848516ad88d9e4f0db0b2fd5c3d837baec7fd7 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e3_507.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e3_507.lus
@@ -37,7 +37,7 @@ let
 	if(etat3) then if(garde3) then pre o2+1 else pre o2 else
 	pre o2;
 tel
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_vt_e3_507(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e7_1059_e8_1111.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e7_1059_e8_1111.lus
index 7d00b16f3d07991ba12fb58f7f86562957664fff..5168f176d3f7b5074aca423a05de0f948896d061 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e7_1059_e8_1111.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMER_vt_e7_1059_e8_1111.lus
@@ -37,7 +37,7 @@ let
 	if(etat3) then if(garde3) then pre o2+1 else pre o2 else
 	pre o2;
 tel
-node top(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
+node PRODUCER_CONSUMER_vt_e7_1059_e8_1111(etat1, etat2, etat3 : bool; a_init : int) returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
         env : bool;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_1.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_1.lus
index 12547bfe115494bf6e0afb89f0cfad14fb0a8f5e..542538ea130ef4b3ad72da7ee0357cdccaed6922 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_1.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_1.lus
@@ -48,7 +48,7 @@ let
 
 tel
 		
-node top( etat1, etat2, etat3 : bool; a_init : int )
+node PRODUCER_CONSUMMER_luke_1( etat1, etat2, etat3 : bool; a_init : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2.lus
index c0afd02ab428777f6ab7adfd5d555965eeda2571..26eda376ebcc7a5308de632404238d8e9c8588f1 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2.lus
@@ -48,7 +48,7 @@ let
 
 tel
 
-node top( etat1, etat2, etat3 : bool; a_init : int )
+node PRODUCER_CONSUMMER_luke_2( etat1, etat2, etat3 : bool; a_init : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
diff --git a/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2_e7_1068_e8_1019.lus b/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2_e7_1068_e8_1019.lus
index 6d8686da287fb5538c7f5016d1e1074102963098..3c85724f9e9b423b1d1e828ea4bc48adbd8c1b1f 100644
--- a/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2_e7_1068_e8_1019.lus
+++ b/lustrec_tests/lustre_files/PRODUCER_CONSUMMER_luke_2_e7_1068_e8_1019.lus
@@ -33,7 +33,7 @@ let
 	if(etat3) then if(garde3) then pre o2+1 else pre o2 else
 	pre o2;
 tel
-node top( etat1, etat2, etat3 : bool; a_init : int )
+node PRODUCER_CONSUMMER_luke_2_e7_1068_e8_1019( etat1, etat2, etat3 : bool; a_init : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var i, b, a, o1, o2 : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123.lus b/lustrec_tests/lustre_files/SYNAPSE_123.lus
index 24357e4222c58606358af40d3aa03b73ae647ba6..a91d2f824da1207ef3f2a588bacd3728d562b67c 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123.lus
@@ -47,7 +47,7 @@ let
 tel
 
 
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e2_1653.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e2_1653.lus
index a5f4f1979fef3b9ab7ff4f68aeccbe60e5b0151d..e9f1822fc38da9dfcecde5274c28317bcf2da6d3 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e2_1653.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e2_1653.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e2_1653(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e3_302.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e3_302.lus
index a165468c9de8e9b193cb246a528c5e441a720694..8a4d490657d3dd08f02da5c304bfb542d4024997 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e3_302.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e3_302.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e3_302(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e3_302_e1_1141.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e3_302_e1_1141.lus
index 3c3259575892bcc879aa9541ada0feff166ac0d5..8443969c8d8e16ab0e37f15a68b8b9bbfde8faef 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e3_302_e1_1141.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e3_302_e1_1141.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e3_302_e1_1141(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e2_1394.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e2_1394.lus
index b4b4a78c587167c8ba8789dfaeb660e17a4af783..3769a8f8aaee31acaa3ccfa7e7ed26ae37cd8e86 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e2_1394.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e2_1394.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e7_837_e2_1394(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e3_135.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e3_135.lus
index ad59d3f41d2ebeb5d84e8762749af568b83ad88d..2ce20c568785d4561316539c0d1118a31fa06dde 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e3_135.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e3_135.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e7_837_e3_135(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e7_1262.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e7_1262.lus
index e85c17ae722cf9cde3d9a48c85aa09e1f989c762..b16ca0b2762760fc29f8583e414a1e4643a3464d 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e7_1262.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e7_837_e7_1262.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e7_837_e7_1262(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e7_856.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e7_856.lus
index 631ebb260b4bd5e6bfd7ca462339d27c46af350f..d1342e1288b13a8840f8365c2844431e8de5f12a 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e7_856.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e7_856.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e7_856(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953.lus
index e0b9084dc4e715155c1a67d3a827d519bcad6484..71010e742ba70b8c9564bb4097d1320060b6f352 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e8_953(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e1_1128.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e1_1128.lus
index deda789b7a8d567fe3d97829c5b2e19002d20959..dcb5fc1486cf2bc92ce7e4bb5a3e1810879f88a0 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e1_1128.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e1_1128.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e8_953_e1_1128(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e2_458.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e2_458.lus
index e85ae9bbf79bb37a5c7062cf34e627ce7557dc8d..f236ed0b7ccaf8997fb89236a2e4940c0b1a403d 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e2_458.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e2_458.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e8_953_e2_458(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e3_271.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e3_271.lus
index c419b7e2d54b8efcf5b2ace44ff2a1e021c6f78a..1fc2c9c9b0a8b9d9416f0a77b71007f3e11b4bbe 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e3_271.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e3_271.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e8_953_e3_271(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e7_1465.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e7_1465.lus
index 02284ba2099274d2653b02e72c84c0524039378a..164c91ddeef0c9bbeb72588b134711b684e94fa8 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e7_1465.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e7_1465.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e8_953_e7_1465(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e8_941.lus b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e8_941.lus
index 0db434dbb38eb4946571f9b8c4bc13fd510b06c0..4cfccfc710e474ad0375563dab97c846145437c4 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e8_941.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_123_e8_953_e8_941.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_123_e8_953_e8_941(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2.lus b/lustrec_tests/lustre_files/SYNAPSE_2.lus
index 21af8a4520674803b443a163bd73e8825700d04f..3e822cc099f093afa83fd5864dd48eb54f672a0b 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2.lus
@@ -42,7 +42,7 @@ let
 
 tel
 
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239.lus
index bc4d7d15511cefc650267de153788cda0140de63..3f355b39a3430552998f921020bdc7f2cb884d58 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e1_1239(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e1_1331.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e1_1331.lus
index 2c3c21c628f52b3e12222aebbebe443876574324..c2d196f10c54e2face042c6e004b5af40a2482f1 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e1_1331.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e1_1331.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e1_1239_e1_1331(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e2_74.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e2_74.lus
index 9f99eebad7a442c7fa78d1df152ce062dcfbc7ce..cdec9d927d2782abb43f8da862fab6605986feea 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e2_74.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e1_1239_e2_74.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e1_1239_e2_74(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e3_216.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e3_216.lus
index 64dd31e6f7152ec2eacf82c161fb5893c529a62a..5e7c97d9566d846ec3d2947d9b99bf329dfec52c 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e3_216.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e3_216.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e3_216(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e1_667.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e1_667.lus
index 0940c94be6b1cc12b940726cb28c1b721d0f118d..13a8c49b7402f84131bd91f0f1e8173b512d5693 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e1_667.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e1_667.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e8_1118_e1_667(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e2_237.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e2_237.lus
index 66bc9889a2a1ef1ec2ab2a2589c819e6303a1cda..4e6e8a89b6f6c3ababb8f35c13dbcee341ef22cb 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e2_237.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e2_237.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e8_1118_e2_237(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e3_1216.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e3_1216.lus
index 4641b7e9064b822967f1280e8f356f7b2b0ad3dc..f3874fd0a11521adfc2e89b8032bd08a0ba860d2 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e3_1216.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e3_1216.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e8_1118_e3_1216(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e7_1043.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e7_1043.lus
index c72d0d7a36e41c1d4aec99507b325b0865d34b4e..814bb65c3011f0ddc1dda8ff08164e987feb60a0 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e7_1043.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e7_1043.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e8_1118_e7_1043(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e8_1177.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e8_1177.lus
index c1b97ec22b46d9e90acde0cde5ee2fca92d7f0bf..1ca7850c040a4e5de1f6498f455b6a69da283863 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e8_1177.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e8_1118_e8_1177.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e8_1118_e8_1177(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_2_e8_656.lus b/lustrec_tests/lustre_files/SYNAPSE_2_e8_656.lus
index 2fc1a0f17aa592223b42dbe7dd93e5e8d4aa3859..cd821798e12e680206320cad80bcf90713da2265 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_2_e8_656.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_2_e8_656.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_2_e8_656(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3.lus b/lustrec_tests/lustre_files/SYNAPSE_3.lus
index 3300c2d31319d8386bb56212118d06b8df0625cc..e3da2581fc37c2f66e72ec53401007a5a4322099 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3.lus
@@ -46,7 +46,7 @@ let
 
 tel
 
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416.lus
index 12de14f719d96a5e0b29035ac244a15608862b61..eaf74aaa693cf558b5054369f46f77def1ba9e14 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e1_1416(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e1_1675.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e1_1675.lus
index da288d74887dac4c956036cc6ff082865aa58284..bb72b1a6e4e82e65ccbdd6dbd59e72ed6e24646f 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e1_1675.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e1_1675.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e1_1416_e1_1675(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e2_753.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e2_753.lus
index 6ab06b229cdb6088cbc17cea20e1de2f688bc597..fce21e354c39553365f8470195f145e52cf27f98 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e2_753.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e2_753.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e1_1416_e2_753(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e3_1191.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e3_1191.lus
index 49bc09b876a0b071ad6058abfc79cf3bd2ea5af9..a003e17351a0687591126a45a84ec305a10f2564 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e3_1191.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e3_1191.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e1_1416_e3_1191(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e7_193.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e7_193.lus
index 836cea598682cc681cfe4b6a55174d14e16b3788..a82e9544a5d994fd721745a6d2ae45d9b377f364 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e7_193.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e1_1416_e7_193.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e1_1416_e7_193(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e3_1041.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e3_1041.lus
index e8fef0319ced8917741b535ba9dc2a7cadb116f2..d86cecc6d2744e441e36c469b150f94d1ea79959 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e3_1041.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e3_1041.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e3_1041(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e7_1444_e7_638.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e7_1444_e7_638.lus
index 119d57ecff714b56e58ad18d7aeff70f0ab4464b..cd6ec973cbf26c80c1dae1edd44ddcf1c272dbfc 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e7_1444_e7_638.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e7_1444_e7_638.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e7_1444_e7_638(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e7_425.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e7_425.lus
index 89ab1069a8f5e4d7d4f352fab60e619e07d77c4a..e82ce4495589777f8fa0c77285420a81df7191d2 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e7_425.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e7_425.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e7_425(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e1_1270.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e1_1270.lus
index 94a2696ec5ac99f32b2be82488af4d6e919c32ee..74a4be76badf54f427b18bfbf7efe64db48c16ed 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e1_1270.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e1_1270.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e8_1329_e1_1270(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e2_236.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e2_236.lus
index 5c4bead0571504576e026a9a9b0061feb23406f9..d658a27207eebf53331333daf5a57e0ee4009036 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e2_236.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e2_236.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e8_1329_e2_236(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e3_421.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e3_421.lus
index bf5f97a3fd9fdcbe590c2136e8e7ae5274005a84..cd6e361214acbb13f5ab6995bff847551879e735 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e3_421.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e3_421.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e8_1329_e3_421(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e7_1062.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e7_1062.lus
index ea4655b855eef43bcbefa7fec8fcac1155c9b8fb..62eb6aea37e9d9859952f57faec47d5cbc797b19 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e7_1062.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e7_1062.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e8_1329_e7_1062(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e8_320.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e8_320.lus
index fb7b0a9e229b3ef5a15062faa9240d3d3cccbe90..83919aeef6d3235870119fc5598b2c6b7b623906 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e8_320.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1329_e8_320.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e8_1329_e8_320(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1708.lus b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1708.lus
index b717c8b40b16c35c441ee1344b59f11b6859da49..0624e7a121a7c5564629231a56f5a7314a5c0dc9 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_3_e8_1708.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_3_e8_1708.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_3_e8_1708(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_4.lus b/lustrec_tests/lustre_files/SYNAPSE_4.lus
index 26937607645db6b45a3ae8d32cb55b52eed08d66..bc434892319b645e784e9a2311103c03faa76271 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_4.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_4.lus
@@ -42,7 +42,7 @@ let
 
 tel
 
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_4(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e7_572.lus b/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e7_572.lus
index 5bd990249734ac6dd5ffb9e110ce9f60a2300931..78f1052d9cc9b40adfd91e15e5d4d48882125e81 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e7_572.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e7_572.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_4_e8_420_e7_572(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 4-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e8_1525.lus b/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e8_1525.lus
index b77bed281676aeb4efe168d16262acf637060fe0..b4c6a453859d6bc30d904c1f9442d1bbb57083e4 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e8_1525.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_4_e8_420_e8_1525.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_4_e8_420_e8_1525(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_4_e8_974.lus b/lustrec_tests/lustre_files/SYNAPSE_4_e8_974.lus
index e589b510785954c2f4c685249ed5a098e6c7fad3..3da107fc3b4fcf72ba85e352da57d337f08f17a5 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_4_e8_974.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_4_e8_974.lus
@@ -32,7 +32,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_4_e8_974(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_5.lus b/lustrec_tests/lustre_files/SYNAPSE_5.lus
index d3df7b5b40e5541f4b1d561835b947ae8b6de3a7..86c04894019909a315d3f606486f556d74ad5559 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_5.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_5.lus
@@ -47,7 +47,7 @@ let
 tel
 
 -- Only provable in nbac
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_5(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_5_e1_811.lus b/lustrec_tests/lustre_files/SYNAPSE_5_e1_811.lus
index 8f6f476bbfe61bea6f9ae79850b3e8c3cdde7367..b3300558a21ff70ba2fa05428259eb5ef1e56b01 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_5_e1_811.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_5_e1_811.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_5_e1_811(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e1_823.lus b/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e1_823.lus
index ec43fa1947d6327f2476d029360507d835f213fb..414d5db6559cc22047a644d484d73a395cebcaf4 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e1_823.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e1_823.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_5_e1_811_e1_823(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e2_1026.lus b/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e2_1026.lus
index 78ea9820d439e075d2928aa4838bcffca8018eb2..42a958e2a4880e7caa3dcd7daffbf53e60a18f5e 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e2_1026.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_5_e1_811_e2_1026.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_5_e1_811_e2_1026(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_5_e2_1525.lus b/lustrec_tests/lustre_files/SYNAPSE_5_e2_1525.lus
index 2687351a99e61d80130d9a1842860d912dc2346b..75842187e86becd549ddb9c02a957dc6e49b0f68 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_5_e2_1525.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_5_e2_1525.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_5_e2_1525(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_6.lus b/lustrec_tests/lustre_files/SYNAPSE_6.lus
index 49ce7492e3d8f5d45682ad67badc5f7d608a08df..1c96111da0bc317d2acaa8a75430bb5e5edce9ec 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_6.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_6.lus
@@ -47,7 +47,7 @@ let
 tel
 
 -- Only provable in nbac
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_6(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_6_e2_1439_e1_954.lus b/lustrec_tests/lustre_files/SYNAPSE_6_e2_1439_e1_954.lus
index e85101629e83f76f8403baad734fa7e3ca87cba2..c1e0a79e5882ff336c5e500fa4280c273b94c44a 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_6_e2_1439_e1_954.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_6_e2_1439_e1_954.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_6_e2_1439_e1_954(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_6_e3_1666_e5_1558.lus b/lustrec_tests/lustre_files/SYNAPSE_6_e3_1666_e5_1558.lus
index aa8004c0d9bbcefc987065c010499d5163351cca..49cef886caa1f5928f2da3a07dc209de2ce9a0f2 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_6_e3_1666_e5_1558.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_6_e3_1666_e5_1558.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_6_e3_1666_e5_1558(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_6_e7_938_e2_1012.lus b/lustrec_tests/lustre_files/SYNAPSE_6_e7_938_e2_1012.lus
index 5a3f05ffd1edb4fb486150314fa608cf0f34480d..961894babe2149322617b17a12efbaad737de47c 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_6_e7_938_e2_1012.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_6_e7_938_e2_1012.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_6_e7_938_e2_1012(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_6_e8_1147_e2_1326.lus b/lustrec_tests/lustre_files/SYNAPSE_6_e8_1147_e2_1326.lus
index fadb8d1f7433fb1fa1a8b2fd81e2fdfb1a8ae2f1..943d7ebbd2a308ee09e73879a9b9ff2333c95119 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_6_e8_1147_e2_1326.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_6_e8_1147_e2_1326.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_6_e8_1147_e2_1326(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all.lus b/lustrec_tests/lustre_files/SYNAPSE_all.lus
index 242cd743ffa71b45220223bf611b6df041db2528..c4804d5a35f6dcaf1c255ebe157d159ca111ad04 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all.lus
@@ -46,7 +46,7 @@ let
 
 tel
 
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1750.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1750.lus
index e78e36800f5b863de69a9dc389d3954c866d293a..1b7c2e181a566cb2814cbda762e70cd6213fe1d2 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1750.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1750.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e3_1750(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e3_495.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e3_495.lus
index 444f19e640f4aa6952f8f620291279b369a898c0..2bfefb50fe11037c7d46bf668daf9fb34ac62b8e 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e3_495.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e3_495.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e3_1864_e3_495(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e4_34.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e4_34.lus
index 857d815f709240e6e15d9282c34d6cc9437983e4..df9fa8b7f52fc6f3301e45a27294638409a7fe12 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e4_34.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e4_34.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e3_1864_e4_34(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e5_1637.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e5_1637.lus
index 8febd9ea7514752c967cac19d69769093ac64686..024c10abd94c5bfcf66ada299345ec6bd5508997 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e5_1637.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e5_1637.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e3_1864_e5_1637(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e7_251.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e7_251.lus
index 612756ecd8174a2bea9af6950869ca9f1ee7aa5f..34681319e6aaf04b1f2eb74ac2f515e72337b73d 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e7_251.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e3_1864_e7_251.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e3_1864_e7_251(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e7_907.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e7_907.lus
index c0f80f5155b2c3df9e3486de6c2f9c6aed5234a7..3b087cf8aebf5e8a45029e5bf59c630d4965e821 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e7_907.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e7_907.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e7_907(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e7_907_e7_1363.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e7_907_e7_1363.lus
index 7e5d80c2174697e76ecf62506b3c18ffecedf7be..d4ba9ed07ca727bd3f0e7d631c463a810538a12b 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e7_907_e7_1363.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e7_907_e7_1363.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e7_907_e7_1363(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251.lus
index 401f4b4ee79f16814ce1d648a432009063c3b575..5568c798eba9eda22a501c481f009ff1493f626e 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e8_251(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e1_1852.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e1_1852.lus
index 602e9c44d56390129accf0a6e3ac144f8280ab90..c36e98196244aaccfecc220421c2f2e2c6abd73d 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e1_1852.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e1_1852.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e8_251_e1_1852(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e2_1053.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e2_1053.lus
index d223b0b76357cbeee0746014e65180c0e505667d..91389e95fcedbe4bcd4020387a8023cb72e70d96 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e2_1053.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e2_1053.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e8_251_e2_1053(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e3_1472.lus b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e3_1472.lus
index 9e028c43d7aa0ed815601475246296c88e9f1db7..b87c382882b9c9ded9b50a5e865f6d3c67cca874 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e3_1472.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_all_e8_251_e3_1472.lus
@@ -35,7 +35,7 @@ let
 	if(e_s3) then if(garde_s3) then 1 else pre dirty_s else 
 	pre dirty_s;
 tel
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_all_e8_251_e3_1472(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/SYNAPSE_i1.lus b/lustrec_tests/lustre_files/SYNAPSE_i1.lus
index 9a330527668b815b13b590eada2c5e72e2dbabf2..c70dcafc21643fa81bd3afa0406d021ad7eb4729 100644
--- a/lustrec_tests/lustre_files/SYNAPSE_i1.lus
+++ b/lustrec_tests/lustre_files/SYNAPSE_i1.lus
@@ -42,7 +42,7 @@ let
 
 tel
 
-node top(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
+node SYNAPSE_i1(e_s1, e_s2, e_s3 : bool; init_invalid_s : int)
 returns( OK : bool );
 --@ contract guarantee OK;
     var invalid_s, valid_s, dirty_s : int; mem_init_s : int;
diff --git a/lustrec_tests/lustre_files/_6counter2.lus b/lustrec_tests/lustre_files/_6counter2.lus
index c336b8b5d7368b1889100af67203308729524f56..0f9854efc184a799132dc8cd96ff820ee3aab0fe 100644
--- a/lustrec_tests/lustre_files/_6counter2.lus
+++ b/lustrec_tests/lustre_files/_6counter2.lus
@@ -1,7 +1,7 @@
 -- a simple 0 to 5 boolean counter (A is LSB, C is MSB)
 -- invalid property is that it should never reach 5 or 7
 
-node top (x:bool) returns (OK:bool);
+node _6counter2 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/_6countern.lus b/lustrec_tests/lustre_files/_6countern.lus
index 3c911da63403ad3bbcb2f55b54239230dbc9dd4a..061ce706049b66616b7f1afd97a0f8bcc0a00117 100644
--- a/lustrec_tests/lustre_files/_6countern.lus
+++ b/lustrec_tests/lustre_files/_6countern.lus
@@ -1,4 +1,4 @@
-node top (init:int) returns (OK:bool);
+node _6countern (init:int) returns (OK:bool);
 --@ contract guarantee OK;
 var time:int;
 let
diff --git a/lustrec_tests/lustre_files/_6counters.lus b/lustrec_tests/lustre_files/_6counters.lus
index 7c6cf6d5e4be32297a0b1a3c6844d0a3981d8cb9..dc9518e7c82a2d143fdc5bd45a159e38d0655313 100644
--- a/lustrec_tests/lustre_files/_6counters.lus
+++ b/lustrec_tests/lustre_files/_6counters.lus
@@ -22,7 +22,7 @@ tel
 
 
 
-node top (x:bool) returns (OK:bool);
+node _6counters (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b:bool;
 let
diff --git a/lustrec_tests/lustre_files/_6counters_e3_140_e8_149.lus b/lustrec_tests/lustre_files/_6counters_e3_140_e8_149.lus
index 17eb7368e0023957d770c627d1184f97778f3db6..743f34c7958c4826576c447cbbc1558c66601bca 100644
--- a/lustrec_tests/lustre_files/_6counters_e3_140_e8_149.lus
+++ b/lustrec_tests/lustre_files/_6counters_e3_140_e8_149.lus
@@ -17,7 +17,7 @@ let
 tel
 
 
-node top (x:bool) returns (OK:bool);
+node _6counters_e3_140_e8_149 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b:bool;
 let
diff --git a/lustrec_tests/lustre_files/_6counters_e8_371_e1_448.lus b/lustrec_tests/lustre_files/_6counters_e8_371_e1_448.lus
index 611045d8006ad0b4ee3c9aa3d20c9da42533977f..3341bc589bf9a2c5f35e78e0616d12c47e148151 100644
--- a/lustrec_tests/lustre_files/_6counters_e8_371_e1_448.lus
+++ b/lustrec_tests/lustre_files/_6counters_e8_371_e1_448.lus
@@ -16,7 +16,7 @@ let
   out = time = 5;
 tel
 
-node top (x:bool) returns (OK:bool);
+node _6counters_e8_371_e1_448 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b:bool;
 let
diff --git a/lustrec_tests/lustre_files/_6counters_e8_371_e2_80.lus b/lustrec_tests/lustre_files/_6counters_e8_371_e2_80.lus
index e2bde05b7c082e73c0010d0573ac88de77776d8f..bbb0049ea3f37cbbc196e6a69fbb6e21b698eb23 100644
--- a/lustrec_tests/lustre_files/_6counters_e8_371_e2_80.lus
+++ b/lustrec_tests/lustre_files/_6counters_e8_371_e2_80.lus
@@ -16,7 +16,7 @@ let
   out = time = 5;
 tel
 
-node top (x:bool) returns (OK:bool);
+node _6counters_e8_371_e2_80 (x:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var a,b:bool;
 let
diff --git a/lustrec_tests/lustre_files/_6counters_e8_371_e3_224.lus b/lustrec_tests/lustre_files/_6counters_e8_371_e3_224.lus
index 4347ce63f15f6a5dafae2eeaac7e495884c21675..1de99bfc35827f57e78f045d31945f2f4b8d291c 100644
--- a/lustrec_tests/lustre_files/_6counters_e8_371_e3_224.lus
+++ b/lustrec_tests/lustre_files/_6counters_e8_371_e3_224.lus
@@ -16,7 +16,7 @@ let
   out = time = 5;
 tel
 
-node top (x:bool) returns (OK:bool);
+node _6counters_e8_371_e3_224 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b:bool;
 let
diff --git a/lustrec_tests/lustre_files/_6counters_e8_371_e7_304.lus b/lustrec_tests/lustre_files/_6counters_e8_371_e7_304.lus
index d2a723de33039637c9753e891c88739945e024b8..7cc2e98bfef708233e64479e1054803f2d39ab7a 100644
--- a/lustrec_tests/lustre_files/_6counters_e8_371_e7_304.lus
+++ b/lustrec_tests/lustre_files/_6counters_e8_371_e7_304.lus
@@ -16,7 +16,7 @@ let
   out = time = 5;
 tel
 
-node top (x:bool) returns (OK:bool);
+node _6counters_e8_371_e7_304 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b:bool;
 let
diff --git a/lustrec_tests/lustre_files/car_1.lus b/lustrec_tests/lustre_files/car_1.lus
index 7724d5120011c4329fd2a5001854ba802f78b894..9d9f42ccfb0018e637a4241a56572f208dec5192 100644
--- a/lustrec_tests/lustre_files/car_1.lus
+++ b/lustrec_tests/lustre_files/car_1.lus
@@ -34,7 +34,7 @@ let
 
 tel
 
-node top(m, s : bool) returns (OK : bool);
+node car_1(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_1_e7_184_e3_299.lus b/lustrec_tests/lustre_files/car_1_e7_184_e3_299.lus
index c1fb4dee705ddcf55bb38d0153ed8cef1f7c5f0e..ea6b6534abe3fd294cf9e7db7b661517eac7231e 100644
--- a/lustrec_tests/lustre_files/car_1_e7_184_e3_299.lus
+++ b/lustrec_tests/lustre_files/car_1_e7_184_e3_299.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_1_e7_184_e3_299(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_2.lus b/lustrec_tests/lustre_files/car_2.lus
index 29cff96d1488b85676a88f518a3db865bd9577be..397853ed29c66cd1395a84c94c78c25c61dcd0f1 100644
--- a/lustrec_tests/lustre_files/car_2.lus
+++ b/lustrec_tests/lustre_files/car_2.lus
@@ -36,7 +36,7 @@ let
 tel
 
 
-node top(m, s : bool) returns (OK : bool);
+node car_2(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_2_e7_1027_e1_1047.lus b/lustrec_tests/lustre_files/car_2_e7_1027_e1_1047.lus
index f9c775330eb32235cad0c07a01f9206d89b8644d..9b9c6d258850aac05c7b9ea5817829f2e505c4d9 100644
--- a/lustrec_tests/lustre_files/car_2_e7_1027_e1_1047.lus
+++ b/lustrec_tests/lustre_files/car_2_e7_1027_e1_1047.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_2_e7_1027_e1_1047(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_2_e7_1027_e7_359.lus b/lustrec_tests/lustre_files/car_2_e7_1027_e7_359.lus
index b000aa544fdb5788631d0c2609aea37cbe4324de..229c1f71b0a5e4e8070736fae7fe714717d6d399 100644
--- a/lustrec_tests/lustre_files/car_2_e7_1027_e7_359.lus
+++ b/lustrec_tests/lustre_files/car_2_e7_1027_e7_359.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_2_e7_1027_e7_359(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_2_e8_491_e7_826.lus b/lustrec_tests/lustre_files/car_2_e8_491_e7_826.lus
index ca5724b100972858204f7a7997d8172c5d10507f..9005f3bc052961ccc0fd4c266e365967b65da6a0 100644
--- a/lustrec_tests/lustre_files/car_2_e8_491_e7_826.lus
+++ b/lustrec_tests/lustre_files/car_2_e8_491_e7_826.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_2_e8_491_e7_826(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3.lus b/lustrec_tests/lustre_files/car_3.lus
index c2db03c22dd5bff2e1ec15626a7faddd818cda15..bf1116f15d9c02072e6cb010fcda5b96f31aaf95 100644
--- a/lustrec_tests/lustre_files/car_3.lus
+++ b/lustrec_tests/lustre_files/car_3.lus
@@ -36,7 +36,7 @@ let
 tel
 
 
-node top(m, s : bool) returns (OK : bool);
+node car_3(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e1_586.lus b/lustrec_tests/lustre_files/car_3_e1_586.lus
index 8f36fb368f4e2e08c65275f4508691fcea71491c..60f3ba7e426f4c5821dd4cdd0516a0f0523aaa45 100644
--- a/lustrec_tests/lustre_files/car_3_e1_586.lus
+++ b/lustrec_tests/lustre_files/car_3_e1_586.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e1_586(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e1_924.lus b/lustrec_tests/lustre_files/car_3_e1_924.lus
index 8f36fb368f4e2e08c65275f4508691fcea71491c..b883e412883f96f40f9951d56f6213e9e65a1b95 100644
--- a/lustrec_tests/lustre_files/car_3_e1_924.lus
+++ b/lustrec_tests/lustre_files/car_3_e1_924.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e1_924(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e2_695.lus b/lustrec_tests/lustre_files/car_3_e2_695.lus
index b06a55f587bfd73fd6360e6aecec14959347b813..2c73ea6d5314ebeecabd25b7c6dee81f7f81d141 100644
--- a/lustrec_tests/lustre_files/car_3_e2_695.lus
+++ b/lustrec_tests/lustre_files/car_3_e2_695.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e2_695(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e2_777.lus b/lustrec_tests/lustre_files/car_3_e2_777.lus
index b06a55f587bfd73fd6360e6aecec14959347b813..e9ff9b6e06f3fc10fb1799a22c31306e5d353c23 100644
--- a/lustrec_tests/lustre_files/car_3_e2_777.lus
+++ b/lustrec_tests/lustre_files/car_3_e2_777.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e2_777(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e7_626.lus b/lustrec_tests/lustre_files/car_3_e7_626.lus
index c7da573c1ea0d7ddb85a2da11c54fdc88060de44..26c7e4f3830ca3c56f156694994bda00da1f2403 100644
--- a/lustrec_tests/lustre_files/car_3_e7_626.lus
+++ b/lustrec_tests/lustre_files/car_3_e7_626.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e7_626(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e7_626_e1_305.lus b/lustrec_tests/lustre_files/car_3_e7_626_e1_305.lus
index b13b3d410b1e26a05b2ec43f986e639622ad8f9a..db91948d70176954251462347ab25d36e591fd84 100644
--- a/lustrec_tests/lustre_files/car_3_e7_626_e1_305.lus
+++ b/lustrec_tests/lustre_files/car_3_e7_626_e1_305.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e7_626_e1_305(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e8_33.lus b/lustrec_tests/lustre_files/car_3_e8_33.lus
index 88720c0ea738ecea80e4c773d8c637b335164634..6d89d773a219540fcf489d94b9d352638decf6f0 100644
--- a/lustrec_tests/lustre_files/car_3_e8_33.lus
+++ b/lustrec_tests/lustre_files/car_3_e8_33.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e8_33(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e8_33_e1_856.lus b/lustrec_tests/lustre_files/car_3_e8_33_e1_856.lus
index 9c63109876d52552a03384ffd5a56dc35ec7b542..f5a504e4524d4ca5676157b27aa1fc29dd1573ab 100644
--- a/lustrec_tests/lustre_files/car_3_e8_33_e1_856.lus
+++ b/lustrec_tests/lustre_files/car_3_e8_33_e1_856.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e8_33_e1_856(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e8_33_e2_1010.lus b/lustrec_tests/lustre_files/car_3_e8_33_e2_1010.lus
index a9a4d34c0db4ec8175f003982713f911de95d5ef..d185529d0f2f579aca0a6c9c596844a58d774c80 100644
--- a/lustrec_tests/lustre_files/car_3_e8_33_e2_1010.lus
+++ b/lustrec_tests/lustre_files/car_3_e8_33_e2_1010.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e8_33_e2_1010(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_3_e8_33_e7_220.lus b/lustrec_tests/lustre_files/car_3_e8_33_e7_220.lus
index ad0186dec4b4c9af3a4206a6ec5c6efda5bf51a4..47a6795d10745e38d7a99dec9199cf0caf4c4e44 100644
--- a/lustrec_tests/lustre_files/car_3_e8_33_e7_220.lus
+++ b/lustrec_tests/lustre_files/car_3_e8_33_e7_220.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_3_e8_33_e7_220(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 3-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4.lus b/lustrec_tests/lustre_files/car_4.lus
index 6057cd46d4f98a1e55269362be76b945caf1f9c7..8ef1ebf36b41fdc073314cc5fb410ebb5757c873 100644
--- a/lustrec_tests/lustre_files/car_4.lus
+++ b/lustrec_tests/lustre_files/car_4.lus
@@ -34,7 +34,7 @@ let
 
 tel
 
-node top(m, s : bool) returns (OK : bool);
+node car_4(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e3_556.lus b/lustrec_tests/lustre_files/car_4_e3_556.lus
index feaa0f53a6145f3d236fc9cafb0e543093b5c168..619b7665ccb668f367541547a011a03c6e4c31ee 100644
--- a/lustrec_tests/lustre_files/car_4_e3_556.lus
+++ b/lustrec_tests/lustre_files/car_4_e3_556.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e3_556(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e3_57.lus b/lustrec_tests/lustre_files/car_4_e3_57.lus
index feaa0f53a6145f3d236fc9cafb0e543093b5c168..62d73420217d29cf10901f8363c1085b5c77f34a 100644
--- a/lustrec_tests/lustre_files/car_4_e3_57.lus
+++ b/lustrec_tests/lustre_files/car_4_e3_57.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e3_57(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e3_57_e4_1047.lus b/lustrec_tests/lustre_files/car_4_e3_57_e4_1047.lus
index 97990edec339dc3c384e82638181268b0e6f4986..25737b5195cc9d158ae5c473241fde7d194f7af7 100644
--- a/lustrec_tests/lustre_files/car_4_e3_57_e4_1047.lus
+++ b/lustrec_tests/lustre_files/car_4_e3_57_e4_1047.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e3_57_e4_1047(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e3_57_e5_999.lus b/lustrec_tests/lustre_files/car_4_e3_57_e5_999.lus
index 0cdebc56a458d579dea23267b6b2225a3c7f997b..8a1c3d728591f3db0ae3431bb0224d30be795b14 100644
--- a/lustrec_tests/lustre_files/car_4_e3_57_e5_999.lus
+++ b/lustrec_tests/lustre_files/car_4_e3_57_e5_999.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e3_57_e5_999(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e3_57_e6_784.lus b/lustrec_tests/lustre_files/car_4_e3_57_e6_784.lus
index 60809ce970cf7f032b582d36db949537f1a0675a..d459b651be71f942f5f07f68dccb1340aa0fd834 100644
--- a/lustrec_tests/lustre_files/car_4_e3_57_e6_784.lus
+++ b/lustrec_tests/lustre_files/car_4_e3_57_e6_784.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e3_57_e6_784(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e7_592.lus b/lustrec_tests/lustre_files/car_4_e7_592.lus
index 8322086f029a4d30bca552d75281b2d5f0aa169e..89dfee65fde55e8841c5a492b1ac0cb5d18c4387 100644
--- a/lustrec_tests/lustre_files/car_4_e7_592.lus
+++ b/lustrec_tests/lustre_files/car_4_e7_592.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e7_592(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e7_592_e3_442.lus b/lustrec_tests/lustre_files/car_4_e7_592_e3_442.lus
index 6742622151c30bb82c25cb37961b18a4487cc078..fd8e1f737c6bddc91a49db3b6a456c724ae08caa 100644
--- a/lustrec_tests/lustre_files/car_4_e7_592_e3_442.lus
+++ b/lustrec_tests/lustre_files/car_4_e7_592_e3_442.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e7_592_e3_442(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e7_592_e7_265.lus b/lustrec_tests/lustre_files/car_4_e7_592_e7_265.lus
index ce4567a5f91aed52b6cdb53b2476f8080846274c..e768ffec8ceaef7faf48f3b0cddf63b5e99880f5 100644
--- a/lustrec_tests/lustre_files/car_4_e7_592_e7_265.lus
+++ b/lustrec_tests/lustre_files/car_4_e7_592_e7_265.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e7_592_e7_265(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e8_118.lus b/lustrec_tests/lustre_files/car_4_e8_118.lus
index 9ee8188762093334b84799a58c048fbc818844a9..f97ef1d852465a52eaaf9ab7e34b1cf658ac52e8 100644
--- a/lustrec_tests/lustre_files/car_4_e8_118.lus
+++ b/lustrec_tests/lustre_files/car_4_e8_118.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e8_118(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e8_118_e3_514.lus b/lustrec_tests/lustre_files/car_4_e8_118_e3_514.lus
index 947c0cb4a278ccc495e253c7bc11ce9151d04cb3..f58abc7d75cf1c54aa8b8c067aae4b4d8a4ac013 100644
--- a/lustrec_tests/lustre_files/car_4_e8_118_e3_514.lus
+++ b/lustrec_tests/lustre_files/car_4_e8_118_e3_514.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e8_118_e3_514(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_4_e8_118_e7_178.lus b/lustrec_tests/lustre_files/car_4_e8_118_e7_178.lus
index 30f042b134dd433d000fa27a85bdb7bf1c8d4645..6411388d3ee8a22910a38bd4dc8ba443fe46b109 100644
--- a/lustrec_tests/lustre_files/car_4_e8_118_e7_178.lus
+++ b/lustrec_tests/lustre_files/car_4_e8_118_e7_178.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_4_e8_118_e7_178(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5.lus b/lustrec_tests/lustre_files/car_5.lus
index c5dffd2ad2d58472a594b6774bd2ab3d7967d00b..ce043ab255ff7a4fc2a9ced6b46e55f9c3db9167 100644
--- a/lustrec_tests/lustre_files/car_5.lus
+++ b/lustrec_tests/lustre_files/car_5.lus
@@ -37,7 +37,7 @@ tel
 
 
 -- Can't prove in luke-bitvec, luke-hybrid, nbac
-node top(m, s : bool) returns (OK : bool);
+node car_5(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e2_405_e2_1083.lus b/lustrec_tests/lustre_files/car_5_e2_405_e2_1083.lus
index a790ff1d639ac1894ba6413a99f96308b5236e2e..74ec46e9e1d6d6257abe32971107fbf729346536 100644
--- a/lustrec_tests/lustre_files/car_5_e2_405_e2_1083.lus
+++ b/lustrec_tests/lustre_files/car_5_e2_405_e2_1083.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e2_405_e2_1083(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e2_405_e3_473.lus b/lustrec_tests/lustre_files/car_5_e2_405_e3_473.lus
index d6c7a724c380ec0f04d8f4b939c443c277f0d03e..5e1b7f4d5fd9e017e855ab82b2b7dd49b6389cbd 100644
--- a/lustrec_tests/lustre_files/car_5_e2_405_e3_473.lus
+++ b/lustrec_tests/lustre_files/car_5_e2_405_e3_473.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e2_405_e3_473(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e2_405_e8_1055.lus b/lustrec_tests/lustre_files/car_5_e2_405_e8_1055.lus
index 4fd4b371a2f894955c352e227d041c2d7174df35..1a5a6327a8128336545f54307fe99842700e4533 100644
--- a/lustrec_tests/lustre_files/car_5_e2_405_e8_1055.lus
+++ b/lustrec_tests/lustre_files/car_5_e2_405_e8_1055.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e2_405_e8_1055(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e3_11_e1_429.lus b/lustrec_tests/lustre_files/car_5_e3_11_e1_429.lus
index 8ac9926381a5177bcc3f3cba65f8c407b1ff47a4..3cdf598d7b68ec0126b739f4712fc23ce5ca4628 100644
--- a/lustrec_tests/lustre_files/car_5_e3_11_e1_429.lus
+++ b/lustrec_tests/lustre_files/car_5_e3_11_e1_429.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e3_11_e1_429(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e3_11_e5_24.lus b/lustrec_tests/lustre_files/car_5_e3_11_e5_24.lus
index 4c46ad5bf66e0aa637c51125d3fdd0670bb41eb5..8842eedb2965306bbf3f9375defb741f178c0d76 100644
--- a/lustrec_tests/lustre_files/car_5_e3_11_e5_24.lus
+++ b/lustrec_tests/lustre_files/car_5_e3_11_e5_24.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e3_11_e5_24(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e3_661.lus b/lustrec_tests/lustre_files/car_5_e3_661.lus
index ddcf737903697836bb72f7b12afaf5e11d6c1904..0439644cbcf901c6d07e32b50abe210a9db0fea5 100644
--- a/lustrec_tests/lustre_files/car_5_e3_661.lus
+++ b/lustrec_tests/lustre_files/car_5_e3_661.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e3_661(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e7_244.lus b/lustrec_tests/lustre_files/car_5_e7_244.lus
index b67f938f92e756d39b6a725bf8188a8a5c21e67b..05f0f05d36e86c186d6afd7d141964ac7c3bd14b 100644
--- a/lustrec_tests/lustre_files/car_5_e7_244.lus
+++ b/lustrec_tests/lustre_files/car_5_e7_244.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e7_244(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e7_244_e1_823.lus b/lustrec_tests/lustre_files/car_5_e7_244_e1_823.lus
index 99c0cf7712494859cc461feecce006d33a64cb50..93d2b681e04412c0d6a2dd1fc30e93653fb3c98b 100644
--- a/lustrec_tests/lustre_files/car_5_e7_244_e1_823.lus
+++ b/lustrec_tests/lustre_files/car_5_e7_244_e1_823.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e7_244_e1_823(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e7_244_e2_693.lus b/lustrec_tests/lustre_files/car_5_e7_244_e2_693.lus
index 320ade1c1332bf55a1c47fe84e4c860ada12020e..a63c3450205e2fa1bdb40491b5b800df10238e0e 100644
--- a/lustrec_tests/lustre_files/car_5_e7_244_e2_693.lus
+++ b/lustrec_tests/lustre_files/car_5_e7_244_e2_693.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e7_244_e2_693(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_5_e7_244_e3_1071.lus b/lustrec_tests/lustre_files/car_5_e7_244_e3_1071.lus
index b5bc82a7da2864fbe3984e0786aa0835b78ec465..94a0798b469b60a0c96d0d3b4a5e9b07a53751a6 100644
--- a/lustrec_tests/lustre_files/car_5_e7_244_e3_1071.lus
+++ b/lustrec_tests/lustre_files/car_5_e7_244_e3_1071.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_5_e7_244_e3_1071(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6.lus b/lustrec_tests/lustre_files/car_6.lus
index 93cb69f8489778e708175340ce994a3820cb866c..4c03c575d2faf72233e470aa541544c548fef847 100644
--- a/lustrec_tests/lustre_files/car_6.lus
+++ b/lustrec_tests/lustre_files/car_6.lus
@@ -37,7 +37,7 @@ tel
 
 
 -- Can't prove in luke-bitvec, luke-hybrid, nbac
-node top(m, s : bool) returns (OK : bool);
+node car_6(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e1_152.lus b/lustrec_tests/lustre_files/car_6_e1_152.lus
index 35ee0cbdc7b30fe111ac4d1f9249226c8fbd5ecb..89066d7bed38920bf20c71c121b7de07fe2cce45 100644
--- a/lustrec_tests/lustre_files/car_6_e1_152.lus
+++ b/lustrec_tests/lustre_files/car_6_e1_152.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e1_152(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e1_152_e1_391.lus b/lustrec_tests/lustre_files/car_6_e1_152_e1_391.lus
index b60a5d456337a20c2c5f4b4518c3f779ecd73c23..0ea10932189945e8c97ebf17ce685bcabe33983b 100644
--- a/lustrec_tests/lustre_files/car_6_e1_152_e1_391.lus
+++ b/lustrec_tests/lustre_files/car_6_e1_152_e1_391.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e1_152_e1_391(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e2_589_e2_506.lus b/lustrec_tests/lustre_files/car_6_e2_589_e2_506.lus
index 4af80e43710d335548c2052a195ad3571581aba2..86a7ea91ff2f4e9e4113bd3019063019323f9da3 100644
--- a/lustrec_tests/lustre_files/car_6_e2_589_e2_506.lus
+++ b/lustrec_tests/lustre_files/car_6_e2_589_e2_506.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e2_589_e2_506(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e2_589_e3_349.lus b/lustrec_tests/lustre_files/car_6_e2_589_e3_349.lus
index 0611de15b4562c12c8aee2c059c9adc166709976..966441428a79cf17ed989fde9934afef89cb2263 100644
--- a/lustrec_tests/lustre_files/car_6_e2_589_e3_349.lus
+++ b/lustrec_tests/lustre_files/car_6_e2_589_e3_349.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e2_589_e3_349(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e2_893.lus b/lustrec_tests/lustre_files/car_6_e2_893.lus
index a3a29d0678fdfecd9524e0f139831eeac702e02e..9d0d0b663553ba702c4a5da076cbeb0bb89f9734 100644
--- a/lustrec_tests/lustre_files/car_6_e2_893.lus
+++ b/lustrec_tests/lustre_files/car_6_e2_893.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e2_893(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e3_294_e1_956.lus b/lustrec_tests/lustre_files/car_6_e3_294_e1_956.lus
index 00454ab0ccc082757d9317a2e372b39fda6588c4..82353752f2b1a7c75d46bad3ed14ed58ab9c6757 100644
--- a/lustrec_tests/lustre_files/car_6_e3_294_e1_956.lus
+++ b/lustrec_tests/lustre_files/car_6_e3_294_e1_956.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e3_294_e1_956(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e3_294_e3_47.lus b/lustrec_tests/lustre_files/car_6_e3_294_e3_47.lus
index c76caea8d0e33ec8bf5bb6e7fa70409dc93eccfd..7a1f734ffcc7532d48e760b21cd2338fac8f39dc 100644
--- a/lustrec_tests/lustre_files/car_6_e3_294_e3_47.lus
+++ b/lustrec_tests/lustre_files/car_6_e3_294_e3_47.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e3_294_e3_47(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_6_e3_294_e5_979.lus b/lustrec_tests/lustre_files/car_6_e3_294_e5_979.lus
index 5a44dd6325ce708259db108e50db4a725b7a12de..b42dec822de919119fdbc1d8c807087e7ebd083c 100644
--- a/lustrec_tests/lustre_files/car_6_e3_294_e5_979.lus
+++ b/lustrec_tests/lustre_files/car_6_e3_294_e5_979.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_6_e3_294_e5_979(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all.lus b/lustrec_tests/lustre_files/car_all.lus
index b1be79aa10d470e8f0e0f5647dbffc0020396fa4..1311a92d5358333e18e40913ff56c39aaaf25318 100644
--- a/lustrec_tests/lustre_files/car_all.lus
+++ b/lustrec_tests/lustre_files/car_all.lus
@@ -30,7 +30,7 @@ let
 
 tel
 
-node top(m, s : bool) returns (OK : bool);
+node car_all(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e1_618.lus b/lustrec_tests/lustre_files/car_all_e1_618.lus
index 8c4360ef4abdeae46577e75a159a15e6485d1168..92669ad30482eded704f1604d394bf65eb3107f3 100644
--- a/lustrec_tests/lustre_files/car_all_e1_618.lus
+++ b/lustrec_tests/lustre_files/car_all_e1_618.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e1_618(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e1_618_e3_303.lus b/lustrec_tests/lustre_files/car_all_e1_618_e3_303.lus
index 0375dde5cd44889025fe0ed0e15a41074b6526eb..ec703bfeb106eab5e4c61719c133877913b16295 100644
--- a/lustrec_tests/lustre_files/car_all_e1_618_e3_303.lus
+++ b/lustrec_tests/lustre_files/car_all_e1_618_e3_303.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e1_618_e3_303(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e2_142.lus b/lustrec_tests/lustre_files/car_all_e2_142.lus
index a4fe26d4039f48a61406e7dfca508c745ef6fb1a..1e803de099e2a9cee153b6fe9120f8b21a7c67c7 100644
--- a/lustrec_tests/lustre_files/car_all_e2_142.lus
+++ b/lustrec_tests/lustre_files/car_all_e2_142.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e2_142(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e2_142_e7_209.lus b/lustrec_tests/lustre_files/car_all_e2_142_e7_209.lus
index ed9cacace9f2058a3bd2e9b588425a7cbd10f7ff..fd840b6c194a30bd3b1f0abf9284dc1e71aa6471 100644
--- a/lustrec_tests/lustre_files/car_all_e2_142_e7_209.lus
+++ b/lustrec_tests/lustre_files/car_all_e2_142_e7_209.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e2_142_e7_209(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e3_1068.lus b/lustrec_tests/lustre_files/car_all_e3_1068.lus
index 968660ac015fed30d41e95a60d4580e4f79edce8..4d70a8de081a8aa88b42649c82dc54985fdad886 100644
--- a/lustrec_tests/lustre_files/car_all_e3_1068.lus
+++ b/lustrec_tests/lustre_files/car_all_e3_1068.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e3_1068(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e3_1068_e1_178.lus b/lustrec_tests/lustre_files/car_all_e3_1068_e1_178.lus
index 2ab3102b1cfa9c3508055748f44ec92a99ed2f95..03ba75963dfce354ff54ee5a54e0d1012becd5dd 100644
--- a/lustrec_tests/lustre_files/car_all_e3_1068_e1_178.lus
+++ b/lustrec_tests/lustre_files/car_all_e3_1068_e1_178.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e3_1068_e1_178(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e3_1068_e2_13.lus b/lustrec_tests/lustre_files/car_all_e3_1068_e2_13.lus
index 8f89395e3f5643e89ed1a2b112a73f6664ce52c7..b22de2f324bbc0a31a922b8f1659e794fdcbe49d 100644
--- a/lustrec_tests/lustre_files/car_all_e3_1068_e2_13.lus
+++ b/lustrec_tests/lustre_files/car_all_e3_1068_e2_13.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e3_1068_e2_13(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e3_1068_e3_163.lus b/lustrec_tests/lustre_files/car_all_e3_1068_e3_163.lus
index 6fab58f42642e20e08be4210a2f808cbaffa1b24..da95c8786248bf48612491c139e629d30f3066f6 100644
--- a/lustrec_tests/lustre_files/car_all_e3_1068_e3_163.lus
+++ b/lustrec_tests/lustre_files/car_all_e3_1068_e3_163.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e3_1068_e3_163(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e3_1068_e4_275.lus b/lustrec_tests/lustre_files/car_all_e3_1068_e4_275.lus
index 228d9bb0592d0b3d61cae4bcc9deab7cf7ed2ff3..e6933788b3dba5c5804c3dc362d991465434b933 100644
--- a/lustrec_tests/lustre_files/car_all_e3_1068_e4_275.lus
+++ b/lustrec_tests/lustre_files/car_all_e3_1068_e4_275.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e3_1068_e4_275(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e3_1068_e5_882.lus b/lustrec_tests/lustre_files/car_all_e3_1068_e5_882.lus
index 59c6c94aa948f2aa0b276c63c3beecb7a2e5ed1f..89fafb3e1531cac31c369ee374f456dd40ea8899 100644
--- a/lustrec_tests/lustre_files/car_all_e3_1068_e5_882.lus
+++ b/lustrec_tests/lustre_files/car_all_e3_1068_e5_882.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e3_1068_e5_882(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e7_188_e7_743.lus b/lustrec_tests/lustre_files/car_all_e7_188_e7_743.lus
index b609c1076ad383af327dee089b2e117f9f7b994a..0708477c51e619e3badbe718e874a1265aec5e28 100644
--- a/lustrec_tests/lustre_files/car_all_e7_188_e7_743.lus
+++ b/lustrec_tests/lustre_files/car_all_e7_188_e7_743.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e7_188_e7_743(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e8_856.lus b/lustrec_tests/lustre_files/car_all_e8_856.lus
index 0d08f572abc5958003b031b3151a8f7fe5bf274f..ecb4bc2b816aa928c9d895b606ee32717ac61ccf 100644
--- a/lustrec_tests/lustre_files/car_all_e8_856.lus
+++ b/lustrec_tests/lustre_files/car_all_e8_856.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e8_856(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e8_856_e1_217.lus b/lustrec_tests/lustre_files/car_all_e8_856_e1_217.lus
index 478a59ad8294af05543d4fac368e92c1ef19d9f8..5891b8a5ea9a0348f8b25f358cf4daf0ceb66db6 100644
--- a/lustrec_tests/lustre_files/car_all_e8_856_e1_217.lus
+++ b/lustrec_tests/lustre_files/car_all_e8_856_e1_217.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e8_856_e1_217(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e8_856_e2_585.lus b/lustrec_tests/lustre_files/car_all_e8_856_e2_585.lus
index 418f81c0a359f69500ea1989874fcbace3ba7e7f..cbcde3fe159d239384f52bd164fd11a5485c10ae 100644
--- a/lustrec_tests/lustre_files/car_all_e8_856_e2_585.lus
+++ b/lustrec_tests/lustre_files/car_all_e8_856_e2_585.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e8_856_e2_585(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e8_856_e3_180.lus b/lustrec_tests/lustre_files/car_all_e8_856_e3_180.lus
index 7c077c485a379bf3a753f8b7d0a3d3da2a653925..6df502f1848355cbad14889a1710a41ee77959b8 100644
--- a/lustrec_tests/lustre_files/car_all_e8_856_e3_180.lus
+++ b/lustrec_tests/lustre_files/car_all_e8_856_e3_180.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e8_856_e3_180(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/car_all_e8_856_e7_578.lus b/lustrec_tests/lustre_files/car_all_e8_856_e7_578.lus
index 6098c76c03ff9afb63d59fa8c6bef299fd85b3a5..f63be81d0efc8ca2667fa6dea8c127b6b38f96d8 100644
--- a/lustrec_tests/lustre_files/car_all_e8_856_e7_578.lus
+++ b/lustrec_tests/lustre_files/car_all_e8_856_e7_578.lus
@@ -26,7 +26,7 @@ let
   stop = time >= 4;
   bump = dist = 10;
 tel
-node top(m, s : bool) returns (OK : bool);
+node car_all_e8_856_e7_578(m, s : bool) returns (OK : bool);
 --@ contract guarantee OK;
 var toofast, stop, bump: bool;
     dist, speed, time: int;
diff --git a/lustrec_tests/lustre_files/ccp02.lus b/lustrec_tests/lustre_files/ccp02.lus
index 203645ad954046b43d511700ab1ab8a5b3f73afe..50ad06b474ad29817adcb61264a0189c6312f566 100644
--- a/lustrec_tests/lustre_files/ccp02.lus
+++ b/lustrec_tests/lustre_files/ccp02.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp02(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp03.lus b/lustrec_tests/lustre_files/ccp03.lus
index 74887a35d8ea9c855d2e803f0e3c30ee1ec04d1e..e9f747f0f339dc47302f3ebd7376715aa909b40e 100644
--- a/lustrec_tests/lustre_files/ccp03.lus
+++ b/lustrec_tests/lustre_files/ccp03.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp03(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp04.lus b/lustrec_tests/lustre_files/ccp04.lus
index c010cb42b69f67a5adeb50910026eba4760cbc16..3c8534796f8f012797ba3cb2b3c93455e78c2e3d 100644
--- a/lustrec_tests/lustre_files/ccp04.lus
+++ b/lustrec_tests/lustre_files/ccp04.lus
@@ -1,5 +1,5 @@
 
-node top(onOff: bool; 
+node ccp04(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp05.lus b/lustrec_tests/lustre_files/ccp05.lus
index 83a3eccb96ffb9968f499cdca9920cd392ee777b..18694eb3d47f6b97042c09da671e588e4a11e680 100644
--- a/lustrec_tests/lustre_files/ccp05.lus
+++ b/lustrec_tests/lustre_files/ccp05.lus
@@ -1,5 +1,5 @@
 
-node top(onOff: bool; 
+node ccp05(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp06.lus b/lustrec_tests/lustre_files/ccp06.lus
index a11e24510edbd1c18128e696d30b5a2026cdba93..67f540e5cbcd9a5d2acdeff4e08c50a4529f20fb 100644
--- a/lustrec_tests/lustre_files/ccp06.lus
+++ b/lustrec_tests/lustre_files/ccp06.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp06(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp07.lus b/lustrec_tests/lustre_files/ccp07.lus
index c22dea3cf2708dee1c3eb28635d51e0d5c79f272..e5c8dd9ac2e7e6d7b6567ca736e6c10cd927b298 100644
--- a/lustrec_tests/lustre_files/ccp07.lus
+++ b/lustrec_tests/lustre_files/ccp07.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp07(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp08.lus b/lustrec_tests/lustre_files/ccp08.lus
index 93b438ee6206368a265b04d14366d2fd7ce5df94..45c1fae737d13947d39f595b257c813e5cdf9fb3 100644
--- a/lustrec_tests/lustre_files/ccp08.lus
+++ b/lustrec_tests/lustre_files/ccp08.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp08(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp09.lus b/lustrec_tests/lustre_files/ccp09.lus
index 93e240eb57e5e6ca3a4436175a7dbb918821210c..306926556a0a968f2a8850eadca86dd923e7cc23 100644
--- a/lustrec_tests/lustre_files/ccp09.lus
+++ b/lustrec_tests/lustre_files/ccp09.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp09(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp10.lus b/lustrec_tests/lustre_files/ccp10.lus
index 5cd9c9a1a25587d46593fede91857bf8797e1df4..8af8bc8632d71585c5af2299fe012f18da200838 100644
--- a/lustrec_tests/lustre_files/ccp10.lus
+++ b/lustrec_tests/lustre_files/ccp10.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp10(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp11.lus b/lustrec_tests/lustre_files/ccp11.lus
index ba31a8e15aabe5202a64adc3e928277032b2f209..b0cb6cdbab7a7c91cbbdd3ea813a970a82ed5089 100644
--- a/lustrec_tests/lustre_files/ccp11.lus
+++ b/lustrec_tests/lustre_files/ccp11.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp11(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp12.lus b/lustrec_tests/lustre_files/ccp12.lus
index 8b9a5bf67684efa6a4601ac316e18890da77d4df..453a1df400918fd095bd3e423e6669c3f4cfd2b1 100644
--- a/lustrec_tests/lustre_files/ccp12.lus
+++ b/lustrec_tests/lustre_files/ccp12.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp12(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp13.lus b/lustrec_tests/lustre_files/ccp13.lus
index f74032b0246cf968a180c728bc550b24e08057b1..07bbe593f41faea8efe644ca3df61a703394ce77 100644
--- a/lustrec_tests/lustre_files/ccp13.lus
+++ b/lustrec_tests/lustre_files/ccp13.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp13(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp14.lus b/lustrec_tests/lustre_files/ccp14.lus
index c39644b6c71d23427f5d7a494fde0446c8b2ee11..7cc3a1d1c193724c612590adc7ecb4ba90f02a54 100644
--- a/lustrec_tests/lustre_files/ccp14.lus
+++ b/lustrec_tests/lustre_files/ccp14.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp14(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp15.lus b/lustrec_tests/lustre_files/ccp15.lus
index ef1dadd997f3b4aff084969588097fa18843ef2d..4766bfbb4f3cfc0a1be764988581a5760b6219f0 100644
--- a/lustrec_tests/lustre_files/ccp15.lus
+++ b/lustrec_tests/lustre_files/ccp15.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp15(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp16.lus b/lustrec_tests/lustre_files/ccp16.lus
index f46f87e3b8b10f4ce0d7e5a715f99bcaa33be6a6..96683902bb488d31f94f535f96dd98ea90b259a3 100644
--- a/lustrec_tests/lustre_files/ccp16.lus
+++ b/lustrec_tests/lustre_files/ccp16.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp16(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp17.lus b/lustrec_tests/lustre_files/ccp17.lus
index c517ec4246ab74395937cda6523b87d267bd0bd2..808ab74c78e6cc5f27e0a7e4d9c2cfd9ecab6cfb 100644
--- a/lustrec_tests/lustre_files/ccp17.lus
+++ b/lustrec_tests/lustre_files/ccp17.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp17(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp18.lus b/lustrec_tests/lustre_files/ccp18.lus
index d0ae894c1196e7ef9a5149c712f9cfe39520ae8a..b559632b6cc6c3f2e72362a8a2ace1c483829a19 100644
--- a/lustrec_tests/lustre_files/ccp18.lus
+++ b/lustrec_tests/lustre_files/ccp18.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp18(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp19.lus b/lustrec_tests/lustre_files/ccp19.lus
index bf480be0c42764d246ebe5ec77e074b22f6a82eb..42b0c8bd096293cff742aadcab15a8983965b76b 100644
--- a/lustrec_tests/lustre_files/ccp19.lus
+++ b/lustrec_tests/lustre_files/ccp19.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp19(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp20.lus b/lustrec_tests/lustre_files/ccp20.lus
index 38026c24096bd1488ad16157bb4623b135dc37d3..595b9479a415307794f5eaaae30b7e7206906c9d 100644
--- a/lustrec_tests/lustre_files/ccp20.lus
+++ b/lustrec_tests/lustre_files/ccp20.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp20(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp21.lus b/lustrec_tests/lustre_files/ccp21.lus
index 045e3d9801a6c05ca317a62f6eca87db21a48229..d04189220437547c4ce68ab27e62f681fcc3e01f 100644
--- a/lustrec_tests/lustre_files/ccp21.lus
+++ b/lustrec_tests/lustre_files/ccp21.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp21(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp22.lus b/lustrec_tests/lustre_files/ccp22.lus
index 45cb70e7cd3f5d4764c93141d149e483b6a92c43..fcdb0f11fd5a57b49164a11c8dd9047239fbb739 100644
--- a/lustrec_tests/lustre_files/ccp22.lus
+++ b/lustrec_tests/lustre_files/ccp22.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp22(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp23.lus b/lustrec_tests/lustre_files/ccp23.lus
index 17b2819ee319cf6be34385830b7d06f98ed7a00e..79ae8f83b022a3fa620c8127c6bfda8d974b4f3c 100644
--- a/lustrec_tests/lustre_files/ccp23.lus
+++ b/lustrec_tests/lustre_files/ccp23.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp23(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/ccp24.lus b/lustrec_tests/lustre_files/ccp24.lus
index 4ae33180ed9c850230bdf1518a4b06d3a7d0561d..8d81eda898fd7ec89461f766f1068e096193f2a2 100644
--- a/lustrec_tests/lustre_files/ccp24.lus
+++ b/lustrec_tests/lustre_files/ccp24.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node ccp24(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cd.lus b/lustrec_tests/lustre_files/cd.lus
index ec4e03d03b1b56f8bf66b8af7b271319a9b0f395..dc66073a597c2443779642dd88206166b392c80d 100644
--- a/lustrec_tests/lustre_files/cd.lus
+++ b/lustrec_tests/lustre_files/cd.lus
@@ -30,7 +30,7 @@ let
   ok = true -> (pre cpt<=7);
 tel
 
-node top(diff:int) returns (OK: bool);
+node cd(diff:int) returns (OK: bool);
 --@ contract guarantee OK by 10-induction;
 var speed: int; 
     plus,minus,realistic: bool;
diff --git a/lustrec_tests/lustre_files/cd_e7_621_e7_669.lus b/lustrec_tests/lustre_files/cd_e7_621_e7_669.lus
index 634499897d5a78b15dbf7ecf59569cd8c88adca5..c6a31708a8d76e0db4367eba8e11c1ed9554544c 100644
--- a/lustrec_tests/lustre_files/cd_e7_621_e7_669.lus
+++ b/lustrec_tests/lustre_files/cd_e7_621_e7_669.lus
@@ -23,7 +23,7 @@ let
   cpt = 0 -> if acceptable then 0 else pre(cpt)+1;
   ok = true -> (pre cpt<=7);
 tel
-node top(diff:int) returns (OK: bool);
+node cd_e7_621_e7_669(diff:int) returns (OK: bool);
 --@ contract guarantee OK;
 var speed: int; 
     plus,minus,realistic: bool;
diff --git a/lustrec_tests/lustre_files/cd_e7_8.lus b/lustrec_tests/lustre_files/cd_e7_8.lus
index 587d063a1f7a43faa6ace20b3443195269267c3d..f196b07e84ad19e8bfeb6da34eb18729a8109ac5 100644
--- a/lustrec_tests/lustre_files/cd_e7_8.lus
+++ b/lustrec_tests/lustre_files/cd_e7_8.lus
@@ -23,7 +23,7 @@ let
   cpt = 0 -> if acceptable then 0 else pre(cpt)+1;
   ok = true -> (pre cpt<=7);
 tel
-node top(diff:int) returns (OK: bool);
+node cd_e7_8(diff:int) returns (OK: bool);
 --@ contract guarantee OK;
 var speed: int; 
     plus,minus,realistic: bool;
diff --git a/lustrec_tests/lustre_files/chain4_1.lus b/lustrec_tests/lustre_files/chain4_1.lus
index bfcaef7c0cf098638ece1296c65eceddd41eb19a..f7f289e20da301009a5bc20e3a9e4188933b39ae 100644
--- a/lustrec_tests/lustre_files/chain4_1.lus
+++ b/lustrec_tests/lustre_files/chain4_1.lus
@@ -1,4 +1,4 @@
-node top(in4_0 : real) returns (x4_0, x4_1, x4_2, in1_0, x1_0, x1_1 : real);
+node chain4_1(in4_0 : real) returns (x4_0, x4_1, x4_2, in1_0, x1_0, x1_1 : real);
 let
   assert(in4_0 >= -1. and in4_0 <= 1.);
   x4_0 = 0. -> 0.9379 * pre x4_0 - 0.0381 * pre x4_1 - 0.0414 * pre x4_2 + 0.0237 * in4_0;
diff --git a/lustrec_tests/lustre_files/chain4_4.lus b/lustrec_tests/lustre_files/chain4_4.lus
index fb9028f442dc5cea48fd58dca0a4759b8c05bf96..d0173f40d6c74b1efdcb1ff0932c1e71eb5a7408 100644
--- a/lustrec_tests/lustre_files/chain4_4.lus
+++ b/lustrec_tests/lustre_files/chain4_4.lus
@@ -1,4 +1,4 @@
-node top(in4_0 : real) returns (x4_0, x4_1, x4_2, in42_0, x42_0, x42_1, x42_2 : real);
+node chain4_4(in4_0 : real) returns (x4_0, x4_1, x4_2, in42_0, x42_0, x42_1, x42_2 : real);
 let
   assert(in4_0 >= -1. and in4_0 <= 1.);
   x4_0 = 0. -> 0.9379 * pre x4_0 - 0.0381 * pre x4_1 - 0.0414 * pre x4_2 + 0.0237 * in4_0;
diff --git a/lustrec_tests/lustre_files/chain4_l2.lus b/lustrec_tests/lustre_files/chain4_l2.lus
index a01d0a95fdf9e6ce0f185535a8ab9e970ee80260..7d5980892fbec1b301ff81019396c5688b401e92 100644
--- a/lustrec_tests/lustre_files/chain4_l2.lus
+++ b/lustrec_tests/lustre_files/chain4_l2.lus
@@ -1,4 +1,4 @@
-node top(in4_0 : real) returns (x4_0, x4_1, x4_2, inl2_0, yn, ynm1, xnm1, xnm2 : real);
+node chain4_l2(in4_0 : real) returns (x4_0, x4_1, x4_2, inl2_0, yn, ynm1, xnm1, xnm2 : real);
 let
   assert(in4_0 >= -1. and in4_0 <= 1.);
   x4_0 = 0. -> 0.9379 * pre x4_0 - 0.0381 * pre x4_1 - 0.0414 * pre x4_2 + 0.0237 * in4_0;
diff --git a/lustrec_tests/lustre_files/chain5_4.lus b/lustrec_tests/lustre_files/chain5_4.lus
index 4da4c97785b528ea185545cca92a8b1fec975747..6deaafd9001e341e24fc64746476ae5441387a41 100644
--- a/lustrec_tests/lustre_files/chain5_4.lus
+++ b/lustrec_tests/lustre_files/chain5_4.lus
@@ -1,4 +1,4 @@
-node top(in5_0, in5_1 : real) returns (x5_0, x5_1, x5_2, x5_3, in4_0, x4_0, x4_1, x4_2 : real);
+node chain5_4(in5_0, in5_1 : real) returns (x5_0, x5_1, x5_2, x5_3, in4_0, x4_0, x4_1, x4_2 : real);
 let
   assert(in5_0 >= -1. and in5_0 <= 1.);
   assert(in5_1 >= -1. and in5_1 <= 1.);
diff --git a/lustrec_tests/lustre_files/chain5_6.lus b/lustrec_tests/lustre_files/chain5_6.lus
index 77be6c6a43a416925f43c37aa78923d84617805e..1d511f500ec32b78ade01f807ea468c74941a5ec 100644
--- a/lustrec_tests/lustre_files/chain5_6.lus
+++ b/lustrec_tests/lustre_files/chain5_6.lus
@@ -1,4 +1,4 @@
-node top(in5_0, in5_1 : real) returns (x5_0, x5_1, x5_2, x5_3, in6_0, x6_0, x6_1, x6_2, x6_3, x6_4 : real);
+node chain5_6(in5_0, in5_1 : real) returns (x5_0, x5_1, x5_2, x5_3, in6_0, x6_0, x6_1, x6_2, x6_3, x6_4 : real);
 let
   assert(in5_0 >= -1. and in5_0 <= 1.);
   assert(in5_1 >= -1. and in5_1 <= 1.);
diff --git a/lustrec_tests/lustre_files/chain6_l2.lus b/lustrec_tests/lustre_files/chain6_l2.lus
index cdd4781f80483a24ad3da75e31e55fbb5eb2cbbc..84fea30bd1be085b968112da99546c712c14124e 100644
--- a/lustrec_tests/lustre_files/chain6_l2.lus
+++ b/lustrec_tests/lustre_files/chain6_l2.lus
@@ -1,4 +1,4 @@
-node top(in6_0 : real) returns (x6_0, x6_1, x6_2, x6_3, x6_4, inl2_0, yn, ynm1, xnm1, xnm2 : real);
+node chain6_l2(in6_0 : real) returns (x6_0, x6_1, x6_2, x6_3, x6_4, inl2_0, yn, ynm1, xnm1, xnm2 : real);
 let
   assert(in6_0 >= -1. and in6_0 <= 1.);
   x6_0 = 0. -> 0.4250 * pre x6_0 + 0.8131 * in6_0;
diff --git a/lustrec_tests/lustre_files/counters.lus b/lustrec_tests/lustre_files/counters.lus
index dc8481fedc356c1f87bd042bd776c22bddebebb5..9d4fe0245ddcce451c89747c22c8d0334344470e 100644
--- a/lustrec_tests/lustre_files/counters.lus
+++ b/lustrec_tests/lustre_files/counters.lus
@@ -44,7 +44,7 @@ tel
 
 
 
-node top (x:bool) returns (OK:bool);
+node counters (x:bool) returns (OK:bool);
 --@ contract guarantee OK by 5-induction;
 var a,b,d:bool;
     s:int;
diff --git a/lustrec_tests/lustre_files/cruise_controller_01.lus b/lustrec_tests/lustre_files/cruise_controller_01.lus
index d7487fdf9bd699f55d56507fad1d8a808b8b04f7..3ca5c3008bf754727904c34359fc06fc30aefc31 100644
--- a/lustrec_tests/lustre_files/cruise_controller_01.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_01.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_01(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_02.lus b/lustrec_tests/lustre_files/cruise_controller_02.lus
index f0d02c50fc08fced12cf8c7a082268498a20222e..3c0b8da4af396e294660320dd799ed0002feab49 100644
--- a/lustrec_tests/lustre_files/cruise_controller_02.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_02.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_02(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_03.lus b/lustrec_tests/lustre_files/cruise_controller_03.lus
index e4b00e9f7019a7d446a1e9b4d349cd12635589fe..37d9631e359c69b9ea6d5900fa97167312d6cdb0 100644
--- a/lustrec_tests/lustre_files/cruise_controller_03.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_03.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_03(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_04.lus b/lustrec_tests/lustre_files/cruise_controller_04.lus
index 0cbe8e636c4f8dcc73bda17de6e11bfbf501061b..708e22ae1c81fb0f96592834e96161734f76e9cd 100644
--- a/lustrec_tests/lustre_files/cruise_controller_04.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_04.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_04(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_05.lus b/lustrec_tests/lustre_files/cruise_controller_05.lus
index f211180fe022a0fc4d7d49f7e8bb69041f547046..840ca35d29930eb9480235a88304f7e302df01d6 100644
--- a/lustrec_tests/lustre_files/cruise_controller_05.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_05.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_05(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_06.lus b/lustrec_tests/lustre_files/cruise_controller_06.lus
index 4af5824716656e5b46747065e1db3800cc662091..046b4750c06471b065ecb4b6cb2184af356036ab 100644
--- a/lustrec_tests/lustre_files/cruise_controller_06.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_06.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_06(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_07.lus b/lustrec_tests/lustre_files/cruise_controller_07.lus
index 521d44e8c58aea8df6034e0ea49bd1250d440e7b..595cf72899644cb3c07589eaf9257456dbf224bc 100644
--- a/lustrec_tests/lustre_files/cruise_controller_07.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_07.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_07(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_08.lus b/lustrec_tests/lustre_files/cruise_controller_08.lus
index bf6d210d8c4190e58860db4cd8809d103722710f..0741ef608516c18036094829f86027a570ac9c03 100644
--- a/lustrec_tests/lustre_files/cruise_controller_08.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_08.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_08(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_09.lus b/lustrec_tests/lustre_files/cruise_controller_09.lus
index 9325ca4545ac19da18c7aad62934e6ffea1e6121..529fa1e3ccda8a02c8f9b3dd0b25ff2febd2a385 100644
--- a/lustrec_tests/lustre_files/cruise_controller_09.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_09.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_09(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_10.lus b/lustrec_tests/lustre_files/cruise_controller_10.lus
index 8b8aeb7a06cf0bad1c714717626f1732606dce51..713d51a307a33c65b18ee7e03a0aeba75e139e60 100644
--- a/lustrec_tests/lustre_files/cruise_controller_10.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_10.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_10(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_11.lus b/lustrec_tests/lustre_files/cruise_controller_11.lus
index b9cfbf5d0706eac85f4ebe6781d45c33f203e85b..c3c870ad36fb75bc023173ddec2206a6d93e952a 100644
--- a/lustrec_tests/lustre_files/cruise_controller_11.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_11.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_11(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_12.lus b/lustrec_tests/lustre_files/cruise_controller_12.lus
index f47e138ba6e2895014b66290e86a044df0cf7577..3f9a5f69deccfd1a7226cb89d9c0e8800e89a1eb 100644
--- a/lustrec_tests/lustre_files/cruise_controller_12.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_12.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_12(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_13.lus b/lustrec_tests/lustre_files/cruise_controller_13.lus
index a688b0b1cd6d4c6288cbea954d71b0c52dfd0248..209ec6cddb93359ccb8b4e172e7449cdc57a57f9 100644
--- a/lustrec_tests/lustre_files/cruise_controller_13.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_13.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_13(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_14.lus b/lustrec_tests/lustre_files/cruise_controller_14.lus
index 1d4c226e2141f7bb44503090515acbb18401bd2e..b354fba07cafc8c0c4b588a08cfbe0d51c9647b4 100644
--- a/lustrec_tests/lustre_files/cruise_controller_14.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_14.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_14(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_15.lus b/lustrec_tests/lustre_files/cruise_controller_15.lus
index 2cd1ba1057db1032f69787903d62464c43fa6a37..611bf26a9a0ced1939232d82c43c17be6b80a720 100644
--- a/lustrec_tests/lustre_files/cruise_controller_15.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_15.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_15(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_16.lus b/lustrec_tests/lustre_files/cruise_controller_16.lus
index 8e2a4db38faebbacb73e138d4ae086f035a9b21e..7f426549b3eb6600569c67f22f959b258a5c57b4 100644
--- a/lustrec_tests/lustre_files/cruise_controller_16.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_16.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_16(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_17.lus b/lustrec_tests/lustre_files/cruise_controller_17.lus
index 27dca65d1cf0fbc012ffe857f675e645d706cab5..8c3926a2f527a84a37a5c55e7dcab0aad08ca937 100644
--- a/lustrec_tests/lustre_files/cruise_controller_17.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_17.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_17(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_18.lus b/lustrec_tests/lustre_files/cruise_controller_18.lus
index ffa8d7b87350573962b12fa231b9216b95ad3d7e..2de2d2acb84df6be0e0ad8b18eb4e0fc07cf5e56 100644
--- a/lustrec_tests/lustre_files/cruise_controller_18.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_18.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_18(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_19.lus b/lustrec_tests/lustre_files/cruise_controller_19.lus
index 96b21eb9324257681fa48869af413fd0effd7064..d4d5d178fe7efa5cbf5894fb8025f39bcdcaa29f 100644
--- a/lustrec_tests/lustre_files/cruise_controller_19.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_19.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_19(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_20.lus b/lustrec_tests/lustre_files/cruise_controller_20.lus
index ca344ccbfd2add6e412f1e08edbce2be1fe55d46..c17e60faf322fe95240cb262200d65a0e9830559 100644
--- a/lustrec_tests/lustre_files/cruise_controller_20.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_20.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_20(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_21.lus b/lustrec_tests/lustre_files/cruise_controller_21.lus
index e74f63b3d3fda4c16656fe90be87b4b6299563a6..cca3ca420cff09d06594e31a8cc165e4fcd87c4d 100644
--- a/lustrec_tests/lustre_files/cruise_controller_21.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_21.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_21(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_22.lus b/lustrec_tests/lustre_files/cruise_controller_22.lus
index def613dfac55f69fdceb29c60976c1091c7303ed..5100ac88b094848384f25043831af37706949670 100644
--- a/lustrec_tests/lustre_files/cruise_controller_22.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_22.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_22(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_23.lus b/lustrec_tests/lustre_files/cruise_controller_23.lus
index 4b80e436bdef26a6d1d2bd5805e040a80bb91695..28f1af3c647b62787abb69695db4f3c38cb529bd 100644
--- a/lustrec_tests/lustre_files/cruise_controller_23.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_23.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_23(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/cruise_controller_24.lus b/lustrec_tests/lustre_files/cruise_controller_24.lus
index bad1cadf8b2f184073c444f227e5026ccaeb2e78..61fe48eb4cc8d050dcb04df92625a53b52a69478 100644
--- a/lustrec_tests/lustre_files/cruise_controller_24.lus
+++ b/lustrec_tests/lustre_files/cruise_controller_24.lus
@@ -1,6 +1,6 @@
 
 
-node top(onOff: bool; 
+node cruise_controller_24(onOff: bool; 
       decelSet: bool; 
       accelResume: bool; 
       cancel: bool; 
diff --git a/lustrec_tests/lustre_files/durationThm_1.lus b/lustrec_tests/lustre_files/durationThm_1.lus
index 1ee0bdc49f86733e422e5cf54f0d3a467c5901a1..1c1a131be5f6730bdb3d2d7b3fa470bf1c3ab86e 100644
--- a/lustrec_tests/lustre_files/durationThm_1.lus
+++ b/lustrec_tests/lustre_files/durationThm_1.lus
@@ -18,7 +18,7 @@ tel
 -- (p -k-> q and q -m-> r) => p -k+m-> r
 
 -- Not provable in luke-*
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e1_350.lus b/lustrec_tests/lustre_files/durationThm_1_e1_350.lus
index 48a2f9d99eb77c85ba9bb3a68be6f703be95ed20..346938759deee919c5fe2291340905b5e490a256 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e1_350.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e1_350.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e1_350 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e2_3.lus b/lustrec_tests/lustre_files/durationThm_1_e2_3.lus
index 45bae14c10744fcd97ab7b109e0470344ad42ce1..7263c80fd734770de817c0a602f073f36e61c744 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e2_3.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e2_3.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e2_3 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK by 3-induction;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e3_389.lus b/lustrec_tests/lustre_files/durationThm_1_e3_389.lus
index 853e9487c70a1231bccfd533b6d89bfdba212a82..f194e160a7c8b5996457727faa2682e7c44cfeb3 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e3_389.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e3_389.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e3_389 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e3_389_e4_294.lus b/lustrec_tests/lustre_files/durationThm_1_e3_389_e4_294.lus
index d0e84ee4ddbb0be5af6d96b6da9a93905e5e2a1f..551a1ed8e4709197425eefce5cf8845822857e47 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e3_389_e4_294.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e3_389_e4_294.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1- 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e3_389_e4_294 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK by 3-induction;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e3_389_e5_5.lus b/lustrec_tests/lustre_files/durationThm_1_e3_389_e5_5.lus
index 014f58b1732af09b2ac0a9935f18f1aab95eca7a..a8116d4b762f3a3a979a6addd739eef26ebe51f8 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e3_389_e5_5.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e3_389_e5_5.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1- 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e3_389_e5_5 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e7_217.lus b/lustrec_tests/lustre_files/durationThm_1_e7_217.lus
index 4a7da320b2f11399e0ebe9aae80fd145b65c8e42..fb27c118e07c4b9c87fbe5b98148e3d7eb43b873 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e7_217.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e7_217.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e7_217 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e7_217_e1_89.lus b/lustrec_tests/lustre_files/durationThm_1_e7_217_e1_89.lus
index 70d16fe45434163ff7646f145daf3215cc73a101..46046ef977c05c94f74f66bbf8ea055f1344ba41 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e7_217_e1_89.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e7_217_e1_89.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e7_217_e1_89 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e7_217_e2_352.lus b/lustrec_tests/lustre_files/durationThm_1_e7_217_e2_352.lus
index 3af57bdbd3f56747dac66579930fc81142cf1024..24b061f90fbda2f9a99c544385e6ae51b227b4c3 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e7_217_e2_352.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e7_217_e2_352.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e7_217_e2_352 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK by 7-induction;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e7_217_e3_132.lus b/lustrec_tests/lustre_files/durationThm_1_e7_217_e3_132.lus
index a49214ad370a9cd5cf7fac016fd972fa08a8c927..f69849ea848a90cdd71adad075f24877454707d4 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e7_217_e3_132.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e7_217_e3_132.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e7_217_e3_132 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_1_e7_217_e7_31.lus b/lustrec_tests/lustre_files/durationThm_1_e7_217_e7_31.lus
index b8dc4acd76707a8f4dd077b7e68272c35110c6c8..6a6978af278b3e6581d7093fb1dc65b91c6fdca8 100644
--- a/lustrec_tests/lustre_files/durationThm_1_e7_217_e7_31.lus
+++ b/lustrec_tests/lustre_files/durationThm_1_e7_217_e7_31.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (ik, im: int; p, q, r : bool) returns (OK: bool);
+node durationThm_1_e7_217_e7_31 (ik, im: int; p, q, r : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m : int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2.lus b/lustrec_tests/lustre_files/durationThm_2.lus
index 550a5b75595963754696ac3f4b81ef408e6bfc0c..bb0dd8ac38c5b6d624717841663b1aba9437e7c8 100644
--- a/lustrec_tests/lustre_files/durationThm_2.lus
+++ b/lustrec_tests/lustre_files/durationThm_2.lus
@@ -18,7 +18,7 @@ tel
 -- (p -k-> q and r -k-> t) => (p and r) -k-> (q and t)
 
 -- Not provable in luke-*
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e1_301.lus b/lustrec_tests/lustre_files/durationThm_2_e1_301.lus
index c905d4a1422addbcaa72f9bad3ac7a759c4e9eaf..53d13e017c497b20b7c6e2fc7400221c8c8c0067 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e1_301.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e1_301.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e1_301 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e2_63.lus b/lustrec_tests/lustre_files/durationThm_2_e2_63.lus
index 44d06ff2257350fac8be6aaaa36bf0e17e3464a4..77e9d2875199afd9e78a8abf8b4c8142429b24f3 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e2_63.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e2_63.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e2_63 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK by 3-induction;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e3_329_e4_1.lus b/lustrec_tests/lustre_files/durationThm_2_e3_329_e4_1.lus
index bf9a367f802d893db698210a1eb8ac6730a7f1b1..bf8935413a0d9334ea44979ecff8c698b769bb82 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e3_329_e4_1.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e3_329_e4_1.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1- 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e3_329_e4_1 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK by 3-induction;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e3_329_e5_124.lus b/lustrec_tests/lustre_files/durationThm_2_e3_329_e5_124.lus
index 8dde8835ec8be76ec84431e0faedfd3db46c21ef..6f5657e9a5ef9220953d578735004f3a2e29d383 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e3_329_e5_124.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e3_329_e5_124.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1- 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e3_329_e5_124 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e3_99.lus b/lustrec_tests/lustre_files/durationThm_2_e3_99.lus
index 841b5e76374c0210a09f5f910573e13af5e00480..5294c94ee9603744f79f196d5aec737da9578224 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e3_99.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e3_99.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e3_99 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e7_145_e1_343.lus b/lustrec_tests/lustre_files/durationThm_2_e7_145_e1_343.lus
index 7a6d6c165586e4449e73daca8c9968f03966df3a..d9b84fd43320f79edb3386e79152ff79ceb08a2d 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e7_145_e1_343.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e7_145_e1_343.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e7_145_e1_343 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e7_145_e2_169.lus b/lustrec_tests/lustre_files/durationThm_2_e7_145_e2_169.lus
index a5c0dd8476e6d21a8e938bdf15240b9ab1f28da6..f65a3df436c384f94ded7c6abe1866a9f731e0a6 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e7_145_e2_169.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e7_145_e2_169.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e7_145_e2_169 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK by 8-induction;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e7_145_e3_222.lus b/lustrec_tests/lustre_files/durationThm_2_e7_145_e3_222.lus
index 5df42c67ef78f0a3f23c5f9f92ea37133803f98f..57cd0808fddb7e466f3e8305e9738834c69a5bec 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e7_145_e3_222.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e7_145_e3_222.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e7_145_e3_222 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e7_145_e7_154.lus b/lustrec_tests/lustre_files/durationThm_2_e7_145_e7_154.lus
index c68979599c4b7766f30adaf627bbb7f887f1b4e7..6297d33d98eddeae2ca76356667e660160781515 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e7_145_e7_154.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e7_145_e7_154.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e7_145_e7_154 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e7_145_e8_73.lus b/lustrec_tests/lustre_files/durationThm_2_e7_145_e8_73.lus
index 3a5be658e76060b47a327a179b31eef405b6686e..e5ba28a0fc5ff2e7a8f0ffac25f038c5132480b2 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e7_145_e8_73.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e7_145_e8_73.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e7_145_e8_73 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_2_e7_149.lus b/lustrec_tests/lustre_files/durationThm_2_e7_149.lus
index bddc96f928c0f8e8707cf2b73cf4ea777fd34147..a83a7a5e2f3f23cad740e764c635eca154c6bd71 100644
--- a/lustrec_tests/lustre_files/durationThm_2_e7_149.lus
+++ b/lustrec_tests/lustre_files/durationThm_2_e7_149.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (k0: int; p, q, r, t : bool) returns (OK: bool);
+node durationThm_2_e7_149 (k0: int; p, q, r, t : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3.lus b/lustrec_tests/lustre_files/durationThm_3.lus
index abbe7093f6096901c51f45c4b39da416a4dfe6f9..fca98aed366e0b0168eab7603782181313ef90f9 100644
--- a/lustrec_tests/lustre_files/durationThm_3.lus
+++ b/lustrec_tests/lustre_files/durationThm_3.lus
@@ -18,7 +18,7 @@ tel
 -- ((p -k-> q and ([[q]] => length <= m))  => ([[p]] => length <= k+m)
 
 -- Not provable in luke-*
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e1_36.lus b/lustrec_tests/lustre_files/durationThm_3_e1_36.lus
index 908fbc38985d7d24b7402b260c49498b7b497124..1eb465d16c92ea793694868553551154d630c5ce 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e1_36.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e1_36.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e1_36 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e1_71.lus b/lustrec_tests/lustre_files/durationThm_3_e1_71.lus
index 908fbc38985d7d24b7402b260c49498b7b497124..d9b5e98c9590283691068e9363b96eb497de549a 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e1_71.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e1_71.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e1_71 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e2_148.lus b/lustrec_tests/lustre_files/durationThm_3_e2_148.lus
index 6a28c7c63ee3682a5f962eb0b070050bc6ecc0ae..1a161cb750e8afd5e3a2f2baddf7f111427b408f 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e2_148.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e2_148.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e2_148 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e2_63.lus b/lustrec_tests/lustre_files/durationThm_3_e2_63.lus
index 6a28c7c63ee3682a5f962eb0b070050bc6ecc0ae..e50f2f1e64db18fe22e248169146127a07d6dde2 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e2_63.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e2_63.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e2_63 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e3_207.lus b/lustrec_tests/lustre_files/durationThm_3_e3_207.lus
index 0e4f6c2da614eeedf20bfde102674259932a12ef..1a4ecb6e4f95760643e3430c3a84de6149ffaaa6 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e3_207.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e3_207.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e3_207 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e3_442.lus b/lustrec_tests/lustre_files/durationThm_3_e3_442.lus
index 0e4f6c2da614eeedf20bfde102674259932a12ef..2b9c58feb52b1577c56b465662acd5949ffc3c49 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e3_442.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e3_442.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e3_442 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e3_442_e4_165.lus b/lustrec_tests/lustre_files/durationThm_3_e3_442_e4_165.lus
index a416e58f0c19d18ea61562f9f1673e0385599bb2..256c819de8509aaa7efa68ed7878ea877cd0d3b7 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e3_442_e4_165.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e3_442_e4_165.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1- 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e3_442_e4_165 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e3_442_e5_260.lus b/lustrec_tests/lustre_files/durationThm_3_e3_442_e5_260.lus
index 6ef577a60a75e809c58d9b128e44af47f597db61..bebf6606cdeb77658d0bf665825b9ab80fbce95a 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e3_442_e5_260.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e3_442_e5_260.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1- 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e3_442_e5_260 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e7_334.lus b/lustrec_tests/lustre_files/durationThm_3_e7_334.lus
index 475b6d14a443c73adb859ab05103f5a06cc5d05e..6ce9eff70b529f912ad5db42bcb7603267b8dcdf 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e7_334.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e7_334.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e7_334 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e7_334_e1_431.lus b/lustrec_tests/lustre_files/durationThm_3_e7_334_e1_431.lus
index d00a1741151eb58261567b5e5227f647d8a469cc..bc55120fdebeb12a3c056b0b9ca29b766ce88dcf 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e7_334_e1_431.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e7_334_e1_431.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) +1+ 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e7_334_e1_431 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e7_334_e2_62.lus b/lustrec_tests/lustre_files/durationThm_3_e7_334_e2_62.lus
index 5bf36dd2f1d1c69f86d4bced4e8a7c314310cd09..7651cf3d3f53a361c94606865a70129f9b52faa3 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e7_334_e2_62.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e7_334_e2_62.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) -1+ 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e7_334_e2_62 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK by 4-induction;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e7_334_e3_42.lus b/lustrec_tests/lustre_files/durationThm_3_e7_334_e3_42.lus
index e7cfd502723d9f6676d8e10883e463d2c50487f0..49ad36edb436f9377777b37e5376440e9e372115 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e7_334_e3_42.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e7_334_e3_42.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) - 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e7_334_e3_42 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/durationThm_3_e7_334_e7_118.lus b/lustrec_tests/lustre_files/durationThm_3_e7_334_e7_118.lus
index 533a917020a466e666d64aa1523bb3bb37553d77..c2dadf2fb7c1118a6b8d58696f050c24f2deb190 100644
--- a/lustrec_tests/lustre_files/durationThm_3_e7_334_e7_118.lus
+++ b/lustrec_tests/lustre_files/durationThm_3_e7_334_e7_118.lus
@@ -7,7 +7,7 @@ node Age (p: bool) returns (age_of_p: int);
 let
  age_of_p = 0 -> if pre(p) then pre(age_of_p) + 1 else 0;
 tel
-node top (k0, m0: int; p, q : bool) returns (OK: bool);
+node durationThm_3_e7_334_e7_118 (k0, m0: int; p, q : bool) returns (OK: bool);
 --@ contract guarantee OK;
 var k,m: int;
     env : bool;
diff --git a/lustrec_tests/lustre_files/ex1.lus b/lustrec_tests/lustre_files/ex1.lus
index 07858af1004c17504848f4167e0d20cdc7007d88..9c21c15dfc8c51d821a27e0b432d1abd2b1243c0 100644
--- a/lustrec_tests/lustre_files/ex1.lus
+++ b/lustrec_tests/lustre_files/ex1.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (x, y : real);
+node ex1(in0 : real) returns (x, y : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x = 0. -> 1.5 * pre x - 0.7 * pre y + 1.6 * in0;
diff --git a/lustrec_tests/lustre_files/ex1reset.lus b/lustrec_tests/lustre_files/ex1reset.lus
index 53d794d9fd9d678b85fed414d2e321c542094aa5..73fdaa6bd0d3c2a9d88f50776e7e6bdaceebbda9 100644
--- a/lustrec_tests/lustre_files/ex1reset.lus
+++ b/lustrec_tests/lustre_files/ex1reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; in0 : real) returns (x, y : real);
+node ex1reset(r : bool; in0 : real) returns (x, y : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x = 0. -> if r then 1. else 1.5 * pre x - 0.7 * pre y + 1.6 * in0;
diff --git a/lustrec_tests/lustre_files/ex1sat.lus b/lustrec_tests/lustre_files/ex1sat.lus
index e78952f7493a786504062007e97df75de095362f..a08a6b655aa3682cca75ab071091bd29ef46da97 100644
--- a/lustrec_tests/lustre_files/ex1sat.lus
+++ b/lustrec_tests/lustre_files/ex1sat.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (sx, x, y : real);
+node ex1sat(in0 : real) returns (sx, x, y : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x = 0. -> 1.5 * pre sx - 0.7 * pre y + 1.6 * in0;
diff --git a/lustrec_tests/lustre_files/ex2.lus b/lustrec_tests/lustre_files/ex2.lus
index ed0c49d6b2a83aeee07d187858a0f070b4e51536..15398dc1801778923fa71df2e8a2e05e2b4537bb 100644
--- a/lustrec_tests/lustre_files/ex2.lus
+++ b/lustrec_tests/lustre_files/ex2.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (x0, x1, x2, x3 : real);
+node ex2(in0 : real) returns (x0, x1, x2, x3 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 1.5 * pre x0 - 0.7 * pre x1 - 0.7 * pre x2 + 0.4 * pre x3 + 0.5 * in0;
diff --git a/lustrec_tests/lustre_files/ex2reset.lus b/lustrec_tests/lustre_files/ex2reset.lus
index a43531699acc2e85c5d7dbc6e89a30d981b7894c..34e99d8bfb0017d78510282acd1e077ab779ba62 100644
--- a/lustrec_tests/lustre_files/ex2reset.lus
+++ b/lustrec_tests/lustre_files/ex2reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; in0 : real) returns (x0, x1, x2, x3 : real);
+node ex2reset(r : bool; in0 : real) returns (x0, x1, x2, x3 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> if r then 1. else 1.5 * pre x0 - 0.7 * pre x1 - 0.7 * pre x2 + 0.4 * pre x3 + 0.5 * in0;
diff --git a/lustrec_tests/lustre_files/ex2sat.lus b/lustrec_tests/lustre_files/ex2sat.lus
index d1bbe5a628438e272894f45de6f7388500b37d4c..665ce0e9d6d4d231ab5d92e947c4d0532f54e98c 100644
--- a/lustrec_tests/lustre_files/ex2sat.lus
+++ b/lustrec_tests/lustre_files/ex2sat.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (sx0, x0, x1, x2, x3 : real);
+node ex2sat(in0 : real) returns (sx0, x0, x1, x2, x3 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 1.5 * pre sx0 - 0.7 * pre x1 - 0.7 * pre x2 + 0.4 * pre x3 + 0.5 * in0;
diff --git a/lustrec_tests/lustre_files/ex3.lus b/lustrec_tests/lustre_files/ex3.lus
index 43f5c6f8838e2f81228271cdbcc52d62d6ece709..07f83b04b72d8582c586dcd26aed7c6b86a7e585 100644
--- a/lustrec_tests/lustre_files/ex3.lus
+++ b/lustrec_tests/lustre_files/ex3.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (x0, x1 : real);
+node ex3(in0 : real) returns (x0, x1 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 0.499 * pre x0 - 0.05 * pre x1 + in0;
diff --git a/lustrec_tests/lustre_files/ex3_e7_590_e7_590.lus b/lustrec_tests/lustre_files/ex3_e7_590_e7_590.lus
index 0c8868d4ab1df1e682bd05e3304cff889d7747e1..51d52b687b3e474f70b58a59c3ee02a27ed34525 100644
--- a/lustrec_tests/lustre_files/ex3_e7_590_e7_590.lus
+++ b/lustrec_tests/lustre_files/ex3_e7_590_e7_590.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex3_e7_590_e7_590(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex3_e7_655.lus b/lustrec_tests/lustre_files/ex3_e7_655.lus
index e7e1dffb86532c01f9ef01bb1a120817e93d40d3..4b248f36c8c2e09a3530a8cdb3833e6ac71d652c 100644
--- a/lustrec_tests/lustre_files/ex3_e7_655.lus
+++ b/lustrec_tests/lustre_files/ex3_e7_655.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex3_e7_655(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex3_e8_381.lus b/lustrec_tests/lustre_files/ex3_e8_381.lus
index 693fc6aebe4bbf5ebbd3699a90753a6f692f2e3d..9571e93c7d38bf0436ad836908008cbc5923006a 100644
--- a/lustrec_tests/lustre_files/ex3_e8_381.lus
+++ b/lustrec_tests/lustre_files/ex3_e8_381.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex3_e8_381(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex3_e8_381_e7_224.lus b/lustrec_tests/lustre_files/ex3_e8_381_e7_224.lus
index ed76cdb1bcfe25b1d2244ada0254f079c4ecca57..422d605b21000a2ac9fef96fb08b292f42e44970 100644
--- a/lustrec_tests/lustre_files/ex3_e8_381_e7_224.lus
+++ b/lustrec_tests/lustre_files/ex3_e8_381_e7_224.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex3_e8_381_e7_224(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex3_e8_381_e8_477.lus b/lustrec_tests/lustre_files/ex3_e8_381_e8_477.lus
index db939b2f28dcdaffed63797fc90965d1e2674e89..ef879ddbb8e789f656d01003d8d2815cd3bd8d9d 100644
--- a/lustrec_tests/lustre_files/ex3_e8_381_e8_477.lus
+++ b/lustrec_tests/lustre_files/ex3_e8_381_e8_477.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex3_e8_381_e8_477(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex3reset.lus b/lustrec_tests/lustre_files/ex3reset.lus
index 9866955c3384ae68921cadf03d1adced86f00793..d4205cb66432d60042de8885c2bfd1ed01e3b215 100644
--- a/lustrec_tests/lustre_files/ex3reset.lus
+++ b/lustrec_tests/lustre_files/ex3reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; in0 : real) returns (x0, x1 : real);
+node ex3reset(r : bool; in0 : real) returns (x0, x1 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> if r then 1. else 0.499 * pre x0 - 0.05 * pre x1 + in0;
diff --git a/lustrec_tests/lustre_files/ex3sat.lus b/lustrec_tests/lustre_files/ex3sat.lus
index f7ff3fe90fcdb5ceb903ae71873de27f66d8fb11..6cfe2eb7d1eb574cc61a6dc71e368ff73b25fbe6 100644
--- a/lustrec_tests/lustre_files/ex3sat.lus
+++ b/lustrec_tests/lustre_files/ex3sat.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (sx0, x0, x1 : real);
+node ex3sat(in0 : real) returns (sx0, x0, x1 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 0.499 * pre sx0 - 0.05 * pre x1 + in0;
diff --git a/lustrec_tests/lustre_files/ex4.lus b/lustrec_tests/lustre_files/ex4.lus
index 4dd2a744872010a42220320669cd590652fd6c07..4aac47068372e9adeef673a0620856fbd459dec6 100644
--- a/lustrec_tests/lustre_files/ex4.lus
+++ b/lustrec_tests/lustre_files/ex4.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (x0, x1, x2 : real);
+node ex4(in0 : real) returns (x0, x1, x2 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 0.9379 * pre x0 - 0.0381 * pre x1 - 0.0414 * pre x2 + 0.0237 * in0;
diff --git a/lustrec_tests/lustre_files/ex4reset.lus b/lustrec_tests/lustre_files/ex4reset.lus
index aa2071dbc1d3928a08d45cd104ec10104acf0017..f4c097987542b38729d8e4b3e1e2bc00a09f24e9 100644
--- a/lustrec_tests/lustre_files/ex4reset.lus
+++ b/lustrec_tests/lustre_files/ex4reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; in0 : real) returns (x0, x1, x2 : real);
+node ex4reset(r : bool; in0 : real) returns (x0, x1, x2 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> if r then 1. else 0.9379 * pre x0 - 0.0381 * pre x1 - 0.0414 * pre x2 + 0.0237 * in0;
diff --git a/lustrec_tests/lustre_files/ex4sat.lus b/lustrec_tests/lustre_files/ex4sat.lus
index af545eec993cae99a0c9bf0fb3561a99904fe0dd..4bfe130f734ad2887a0ba4d16b9fd8cc24161b70 100644
--- a/lustrec_tests/lustre_files/ex4sat.lus
+++ b/lustrec_tests/lustre_files/ex4sat.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (sx0, x0, x1, x2 : real);
+node ex4sat(in0 : real) returns (sx0, x0, x1, x2 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 0.9379 * pre sx0 - 0.0381 * pre x1 - 0.0414 * pre x2 + 0.0237 * in0;
diff --git a/lustrec_tests/lustre_files/ex5.lus b/lustrec_tests/lustre_files/ex5.lus
index 35cc62537f8c4db392d94fe78f2150f6d8ca3b0b..f6102f22e488c045e15401682955b62d528f5ba5 100644
--- a/lustrec_tests/lustre_files/ex5.lus
+++ b/lustrec_tests/lustre_files/ex5.lus
@@ -1,4 +1,4 @@
-node top(in0, in1 : real) returns (x0, x1, x2, x3 : real);
+node ex5(in0, in1 : real) returns (x0, x1, x2, x3 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   assert(in1 >= -1. and in1 <= 1.);
diff --git a/lustrec_tests/lustre_files/ex5reset.lus b/lustrec_tests/lustre_files/ex5reset.lus
index e8d29b52ab914f858c14c6b960b4b6129edd9b18..cb21d97d1bc552574a474f4088025eb8873f183c 100644
--- a/lustrec_tests/lustre_files/ex5reset.lus
+++ b/lustrec_tests/lustre_files/ex5reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; in0, in1 : real) returns (x0, x1, x2, x3 : real);
+node ex5reset(r : bool; in0, in1 : real) returns (x0, x1, x2, x3 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   assert(in1 >= -1. and in1 <= 1.);
diff --git a/lustrec_tests/lustre_files/ex5sat.lus b/lustrec_tests/lustre_files/ex5sat.lus
index 89ba6b2fbee500bcd3e9823ade31fedfa29c11f6..6c7221a0591ecdae5a2124c08f2bfe2f21c14255 100644
--- a/lustrec_tests/lustre_files/ex5sat.lus
+++ b/lustrec_tests/lustre_files/ex5sat.lus
@@ -1,4 +1,4 @@
-node top(in0, in1 : real) returns (sx0, x0, x1, x2, x3 : real);
+node ex5sat(in0, in1 : real) returns (sx0, x0, x1, x2, x3 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   assert(in1 >= -1. and in1 <= 1.);
diff --git a/lustrec_tests/lustre_files/ex6.lus b/lustrec_tests/lustre_files/ex6.lus
index 4a1537fe58cad31748cde2dbe732fd5737756e58..27b257fd3c56303183b13e7e703b04239f589763 100644
--- a/lustrec_tests/lustre_files/ex6.lus
+++ b/lustrec_tests/lustre_files/ex6.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (x0, x1, x2, x3, x4 : real);
+node ex6(in0 : real) returns (x0, x1, x2, x3, x4 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 0.4250 * pre x0 + 0.8131 * in0;
diff --git a/lustrec_tests/lustre_files/ex6reset.lus b/lustrec_tests/lustre_files/ex6reset.lus
index 2cc78311ce650a589125b1d1750cfbad92856ef8..f3aafc27bd295c2a8fa774dc720ce2e5e0d0c0b1 100644
--- a/lustrec_tests/lustre_files/ex6reset.lus
+++ b/lustrec_tests/lustre_files/ex6reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; in0 : real) returns (x0, x1, x2, x3, x4 : real);
+node ex6reset(r : bool; in0 : real) returns (x0, x1, x2, x3, x4 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> if r then 1. else 0.4250 * pre x0 + 0.8131 * in0;
diff --git a/lustrec_tests/lustre_files/ex6sat.lus b/lustrec_tests/lustre_files/ex6sat.lus
index 53aa6d116e626a41c46e6559d0ffcd6f5541237f..35d181bac80a407395765f42675d1969ccd57c74 100644
--- a/lustrec_tests/lustre_files/ex6sat.lus
+++ b/lustrec_tests/lustre_files/ex6sat.lus
@@ -1,4 +1,4 @@
-node top(in0 : real) returns (sx0, x0, x1, x2, x3, x4 : real);
+node ex6sat(in0 : real) returns (sx0, x0, x1, x2, x3, x4 : real);
 let
   assert(in0 >= -1. and in0 <= 1.);
   x0 = 0. -> 0.4250 * pre sx0 + 0.8131 * in0;
diff --git a/lustrec_tests/lustre_files/ex7.lus b/lustrec_tests/lustre_files/ex7.lus
index 8fc29f8a4e851c193a485c15080472938dfb42b1..a9dd37dbc67ad52c5359631ee8d61326c9ab576b 100644
--- a/lustrec_tests/lustre_files/ex7.lus
+++ b/lustrec_tests/lustre_files/ex7.lus
@@ -1,4 +1,4 @@
-node top(ix0, ix1 : real) returns (x0, x1 : real);
+node ex7(ix0, ix1 : real) returns (x0, x1 : real);
 let
   assert(ix0 > 0. and ix0 < 1.);
   assert(ix1 > 0. and ix1 < 1.);
diff --git a/lustrec_tests/lustre_files/ex7reset.lus b/lustrec_tests/lustre_files/ex7reset.lus
index fb1e5868f49853b375c08910ffe31c1650f237c6..350bb63b1c0893864c6ac9bb1cbc1eab57b25ecb 100644
--- a/lustrec_tests/lustre_files/ex7reset.lus
+++ b/lustrec_tests/lustre_files/ex7reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; ix0, ix1 : real) returns (x0, x1 : real);
+node ex7reset(r : bool; ix0, ix1 : real) returns (x0, x1 : real);
 let
   assert(ix0 > 0. and ix0 < 1.);
   assert(ix1 > 0. and ix1 < 1.);
diff --git a/lustrec_tests/lustre_files/ex7sat.lus b/lustrec_tests/lustre_files/ex7sat.lus
index 29f3e724340d1c5f423b09ef402c80cf81e69384..0e46caaf0d44c4d6f3cd3c7e7cc616c8bcb034ec 100644
--- a/lustrec_tests/lustre_files/ex7sat.lus
+++ b/lustrec_tests/lustre_files/ex7sat.lus
@@ -1,4 +1,4 @@
-node top(ix0, ix1 : real) returns (sx0, x0, x1 : real);
+node ex7sat(ix0, ix1 : real) returns (sx0, x0, x1 : real);
 let
   assert(ix0 > 0. and ix0 < 1.);
   assert(ix1 > 0. and ix1 < 1.);
diff --git a/lustrec_tests/lustre_files/ex8.lus b/lustrec_tests/lustre_files/ex8.lus
index e829017b630089c247bbf6754dc4c016cc97bbdf..d0b70e81c6df669a0d7f0f8277ff050b91410ab3 100644
--- a/lustrec_tests/lustre_files/ex8.lus
+++ b/lustrec_tests/lustre_files/ex8.lus
@@ -1,4 +1,4 @@
-node top(ix0, ix1 : real) returns (x0, x1 : real);
+node ex8(ix0, ix1 : real) returns (x0, x1 : real);
 let
   assert(ix0 > 0. and ix0 < 1.);
   assert(ix1 > 0. and ix1 < 1.);
diff --git a/lustrec_tests/lustre_files/ex8_e7_74.lus b/lustrec_tests/lustre_files/ex8_e7_74.lus
index 758c34ef90ce29efe3e68c40f5a6c53ce172fc5d..8b817dd3f6152812cc0ff2df68a39e8e543ed66f 100644
--- a/lustrec_tests/lustre_files/ex8_e7_74.lus
+++ b/lustrec_tests/lustre_files/ex8_e7_74.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex8_e7_74(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex8_e7_74_e7_740.lus b/lustrec_tests/lustre_files/ex8_e7_74_e7_740.lus
index fe84ef346bf9917f412c62e454956afed9cb750d..eee78caad12984aef7c6fd3c7ef26ff02ac14639 100644
--- a/lustrec_tests/lustre_files/ex8_e7_74_e7_740.lus
+++ b/lustrec_tests/lustre_files/ex8_e7_74_e7_740.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex8_e7_74_e7_740(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex8_e7_74_e8_302.lus b/lustrec_tests/lustre_files/ex8_e7_74_e8_302.lus
index 410b22227070044bcf45d7955d9def1b0976cdd9..768c2a77e4669badb60bfb268e9cef1d72b12e8c 100644
--- a/lustrec_tests/lustre_files/ex8_e7_74_e8_302.lus
+++ b/lustrec_tests/lustre_files/ex8_e7_74_e8_302.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex8_e7_74_e8_302(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex8_e8_220.lus b/lustrec_tests/lustre_files/ex8_e8_220.lus
index 9921b149b28c60c216b6db57db966df4631802e0..33735aca3ae1b4a5f20d47b3334a8e9a5a82fcc0 100644
--- a/lustrec_tests/lustre_files/ex8_e8_220.lus
+++ b/lustrec_tests/lustre_files/ex8_e8_220.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex8_e8_220(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex8_e8_220_e7_249.lus b/lustrec_tests/lustre_files/ex8_e8_220_e7_249.lus
index ff437100bba4c8009050ec1880035f46d7ab4daf..a20fd691a8d495a38d4e2219464796a16222e6b1 100644
--- a/lustrec_tests/lustre_files/ex8_e8_220_e7_249.lus
+++ b/lustrec_tests/lustre_files/ex8_e8_220_e7_249.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex8_e8_220_e7_249(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex8_e8_376.lus b/lustrec_tests/lustre_files/ex8_e8_376.lus
index 9921b149b28c60c216b6db57db966df4631802e0..b4f8d1fe27e32918f8b49ac40cc2e0099b07f3d8 100644
--- a/lustrec_tests/lustre_files/ex8_e8_376.lus
+++ b/lustrec_tests/lustre_files/ex8_e8_376.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node ex8_e8_376(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/ex8reset.lus b/lustrec_tests/lustre_files/ex8reset.lus
index 3376b4645ab4faf9ba16fa0d10d805f4448c8ea7..7e6d3608c0c7a3363bad40b6d10dcad30822279b 100644
--- a/lustrec_tests/lustre_files/ex8reset.lus
+++ b/lustrec_tests/lustre_files/ex8reset.lus
@@ -1,4 +1,4 @@
-node top(r : bool; ix0, ix1 : real) returns (x0, x1 : real);
+node ex8reset(r : bool; ix0, ix1 : real) returns (x0, x1 : real);
 let
   assert(ix0 > 0. and ix0 < 1.);
   assert(ix1 > 0. and ix1 < 1.);
diff --git a/lustrec_tests/lustre_files/ex8sat.lus b/lustrec_tests/lustre_files/ex8sat.lus
index 3c504d2734f1d67c313535754101d54d6662afb3..3dad9710e86bbf7e410c50e5ee4bd73b89a9ddda 100644
--- a/lustrec_tests/lustre_files/ex8sat.lus
+++ b/lustrec_tests/lustre_files/ex8sat.lus
@@ -1,4 +1,4 @@
-node top(ix0, ix1 : real) returns (sx0, x0, x1 : real);
+node ex8sat(ix0, ix1 : real) returns (sx0, x0, x1 : real);
 let
   assert(ix0 > 0. and ix0 < 1.);
   assert(ix1 > 0. and ix1 < 1.);
diff --git a/lustrec_tests/lustre_files/fast_1.lus b/lustrec_tests/lustre_files/fast_1.lus
index adf76040338e5f236f152f9d25f18366f770ad49..c797394ee77c2ee08056da53a8964c7efd2fc437 100644
--- a/lustrec_tests/lustre_files/fast_1.lus
+++ b/lustrec_tests/lustre_files/fast_1.lus
@@ -124,7 +124,7 @@ let
            else pre(cca);
 tel
 
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_1 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/fast_1_e7_2044.lus b/lustrec_tests/lustre_files/fast_1_e7_2044.lus
index 5d86c4748394e2c73afab424af03bee2050351d4..3fbbbb294f3b2dfaf88ea7552364de104e689efc 100644
--- a/lustrec_tests/lustre_files/fast_1_e7_2044.lus
+++ b/lustrec_tests/lustre_files/fast_1_e7_2044.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_1_e7_2044 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK : bool);
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/fast_1_e7_2044_e7_1287.lus b/lustrec_tests/lustre_files/fast_1_e7_2044_e7_1287.lus
index d1b088c1737827fdf26b17aef10069511ee6b6b3..ea0237c4af1dc774e84ecacea4abb4c3aea99428 100644
--- a/lustrec_tests/lustre_files/fast_1_e7_2044_e7_1287.lus
+++ b/lustrec_tests/lustre_files/fast_1_e7_2044_e7_1287.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_1_e7_2044_e7_1287 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK : bool);
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/fast_1_e8_747_e7_692.lus b/lustrec_tests/lustre_files/fast_1_e8_747_e7_692.lus
index 1e4860a487ec84ed5a4522f3c4410823d8e792a2..55b870b49bf138be8fb993064cd75f30f8a8a726 100644
--- a/lustrec_tests/lustre_files/fast_1_e8_747_e7_692.lus
+++ b/lustrec_tests/lustre_files/fast_1_e8_747_e7_692.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_1_e8_747_e7_692 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK : bool);
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/fast_1_e8_747_e8_1041.lus b/lustrec_tests/lustre_files/fast_1_e8_747_e8_1041.lus
index c30788301817cb2f8fa375ec3423f6dfba844e56..e4d25a240ea531264ffe8c5c396c729fa9cf3391 100644
--- a/lustrec_tests/lustre_files/fast_1_e8_747_e8_1041.lus
+++ b/lustrec_tests/lustre_files/fast_1_e8_747_e8_1041.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_1_e8_747_e8_1041 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/fast_1_e8_751.lus b/lustrec_tests/lustre_files/fast_1_e8_751.lus
index 36ed799d0e7b040148c1a27bdde4ef711c7783b8..8a85edb4e004319aab54718830a197ae607ac01a 100644
--- a/lustrec_tests/lustre_files/fast_1_e8_751.lus
+++ b/lustrec_tests/lustre_files/fast_1_e8_751.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_1_e8_751 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK : bool);
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/fast_2.lus b/lustrec_tests/lustre_files/fast_2.lus
index e13821c15704c2da6f59485588fd32e391a0d5fb..c70056f0fd442d701ede4770a4aa59afdd4fa24a 100644
--- a/lustrec_tests/lustre_files/fast_2.lus
+++ b/lustrec_tests/lustre_files/fast_2.lus
@@ -125,7 +125,7 @@ let
 tel
 
 -- Verify node is used to verify properties p1..pn
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_2 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/fast_2_e7_2526.lus b/lustrec_tests/lustre_files/fast_2_e7_2526.lus
index ac78a5b58c66b79db7bc1c8ad89ae9bffa491d0e..3bce59dbcdb94ebbb98ea2f07002c706fed1b110 100644
--- a/lustrec_tests/lustre_files/fast_2_e7_2526.lus
+++ b/lustrec_tests/lustre_files/fast_2_e7_2526.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_2_e7_2526 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK: bool);
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/fast_2_e7_2526_e7_2736.lus b/lustrec_tests/lustre_files/fast_2_e7_2526_e7_2736.lus
index 1410eb54f9285e6ab72da64212efaae537f853e7..5a71a600fb01cdfe9830f96b7b94c6628e21d955 100644
--- a/lustrec_tests/lustre_files/fast_2_e7_2526_e7_2736.lus
+++ b/lustrec_tests/lustre_files/fast_2_e7_2526_e7_2736.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_2_e7_2526_e7_2736 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK: bool);
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/fast_2_e8_460_e7_43.lus b/lustrec_tests/lustre_files/fast_2_e8_460_e7_43.lus
index 3b00f03b1bb79689743a5b624c2f124322e6dc59..80be554e5eefbdca38a6a299ee2c386f3b8978bd 100644
--- a/lustrec_tests/lustre_files/fast_2_e8_460_e7_43.lus
+++ b/lustrec_tests/lustre_files/fast_2_e8_460_e7_43.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_2_e8_460_e7_43 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK: bool);
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/fast_2_e8_460_e8_1920.lus b/lustrec_tests/lustre_files/fast_2_e8_460_e8_1920.lus
index 3cee21b4b5e019675c6aa409a1e947f06660ad9b..82938e25b79a5f4de5f283e1277f816d2f370a64 100644
--- a/lustrec_tests/lustre_files/fast_2_e8_460_e8_1920.lus
+++ b/lustrec_tests/lustre_files/fast_2_e8_460_e8_1920.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_2_e8_460_e8_1920 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/fast_2_e8_976.lus b/lustrec_tests/lustre_files/fast_2_e8_976.lus
index 4a82683ae31fe8a7f644031034d6527f6f0697a5..138dba0e58c3ab7500aa58e2fb1a19d9f531516a 100644
--- a/lustrec_tests/lustre_files/fast_2_e8_976.lus
+++ b/lustrec_tests/lustre_files/fast_2_e8_976.lus
@@ -69,7 +69,7 @@ let
            and ccall then true else if not ccall then false
            else pre(cca);
 tel
-node top (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
+node fast_2_e8_976 (igsw, ccd, cconoff, bpa, cccanc, battok, gearok,
          qfok, sdok, accok, ccseti, ccsetd, ccr: bool; vs: int)
          returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/heater4.lus b/lustrec_tests/lustre_files/heater4.lus
index 5e75eacc7c77db2c51cca7a6bf5aa5674361f9ab..040f202b4a8e81a3dc1ddffa2aa5743e3e6b6810 100644
--- a/lustrec_tests/lustre_files/heater4.lus
+++ b/lustrec_tests/lustre_files/heater4.lus
@@ -1,4 +1,4 @@
-node top(millisecond : bool) returns (open_light : bool)
+node heater4(millisecond : bool) returns (open_light : bool)
 (*@ contract guarantee open_light by 2-induction; *)
 let
   automaton command_control
diff --git a/lustrec_tests/lustre_files/hysteresis_2.lus b/lustrec_tests/lustre_files/hysteresis_2.lus
index c3c93cde17cfbae07d846443cf49539be586378f..385b5fb27729d39b7f367c054476e9d8d9b7b61f 100644
--- a/lustrec_tests/lustre_files/hysteresis_2.lus
+++ b/lustrec_tests/lustre_files/hysteresis_2.lus
@@ -26,7 +26,7 @@ let
                     else diff <= -10;
 tel
 
-node top( beacon, second : bool ) returns ( OK : bool );
+node hysteresis_2( beacon, second : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var late, early : bool;
 let
diff --git a/lustrec_tests/lustre_files/hysteresis_3.lus b/lustrec_tests/lustre_files/hysteresis_3.lus
index 8c98a6412b34a3c7342bce62aef06baf9043ec32..47cd72b96cacc07931e5e6c9216e02bb51cad70d 100644
--- a/lustrec_tests/lustre_files/hysteresis_3.lus
+++ b/lustrec_tests/lustre_files/hysteresis_3.lus
@@ -26,7 +26,7 @@ let
                     else diff <= -10;
 tel
 
-node top( beacon, second : bool ) returns ( OK : bool );
+node hysteresis_3( beacon, second : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var late, early : bool;
 let
diff --git a/lustrec_tests/lustre_files/hysteresis_all.lus b/lustrec_tests/lustre_files/hysteresis_all.lus
index 83b0f86eebcc02bb4edcd4d033e8b215500dfa46..d674bf85f0f2b20281e11f27f293c2930262a1be 100644
--- a/lustrec_tests/lustre_files/hysteresis_all.lus
+++ b/lustrec_tests/lustre_files/hysteresis_all.lus
@@ -26,7 +26,7 @@ let
                     else diff <= -10;
 tel
 
-node top( beacon, second : bool ) returns ( OK : bool );
+node hysteresis_all( beacon, second : bool ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var late, early : bool;
 let
diff --git a/lustrec_tests/lustre_files/lp_iir_9600_2.lus b/lustrec_tests/lustre_files/lp_iir_9600_2.lus
index 57a5fc5006802722aadd221360d31ce6a07d014a..be5a4cc0cc7829b0804f90a53ff352ab8e44abb5 100644
--- a/lustrec_tests/lustre_files/lp_iir_9600_2.lus
+++ b/lustrec_tests/lustre_files/lp_iir_9600_2.lus
@@ -1,4 +1,4 @@
-node top(xn : real) returns (yn, xnm1, xnm2, ynm1 : real);
+node lp_iir_9600_2(xn : real) returns (yn, xnm1, xnm2, ynm1 : real);
 let
   assert(xn >= -1.6 and xn <= 1.6);
   yn = 0. -> 0.21875*xn + 0.40625*pre xnm1 + 0.21875*pre xnm2 + 0.375*pre yn - 0.1875*pre ynm1;
diff --git a/lustrec_tests/lustre_files/lp_iir_9600_4.lus b/lustrec_tests/lustre_files/lp_iir_9600_4.lus
index b5fc97b1557062f9abef68c66272da965d14849b..a525574176cfebd983b43f5ec001fc68a1c448fc 100644
--- a/lustrec_tests/lustre_files/lp_iir_9600_4.lus
+++ b/lustrec_tests/lustre_files/lp_iir_9600_4.lus
@@ -1,4 +1,4 @@
-node top(xn : real) returns (yn, ynm1, ynm2, ynm3, xnm1, xnm2, xnm3, xnm4 : real);
+node lp_iir_9600_4(xn : real) returns (yn, ynm1, ynm2, ynm3, xnm1, xnm2, xnm3, xnm4 : real);
 let
   assert(xn >= -1.0 and xn <= 1.0);
   yn = 0. -> 0.046582906636443676*xn + 0.1863316265457747*pre xnm1 + 0.27949743981866204*pre xnm2 + 0.1863316265457747*pre xnm3 + 0.046582906636443676*pre xnm4 + 0.7820951980233379*pre yn - 0.6799785269162999*pre ynm1 + 0.1826756977530325*pre ynm2 - 0.03011887504316928*pre ynm3;
diff --git a/lustrec_tests/lustre_files/lp_iir_9600_4_elliptic.lus b/lustrec_tests/lustre_files/lp_iir_9600_4_elliptic.lus
index 5d00a8797354c16c2a3c6ca8798c99f56ca012c0..e2a8b5a0f613e80267626f6040962fe57a2ed98f 100644
--- a/lustrec_tests/lustre_files/lp_iir_9600_4_elliptic.lus
+++ b/lustrec_tests/lustre_files/lp_iir_9600_4_elliptic.lus
@@ -1,4 +1,4 @@
-node top(xn : real) returns (yn, ynm1, ynm2, ynm3, xnm1, xnm2, xnm3, xnm4 : real);
+node lp_iir_9600_4_elliptic(xn : real) returns (yn, ynm1, ynm2, ynm3, xnm1, xnm2, xnm3, xnm4 : real);
 let
   assert(xn >= -1.0 and xn <= 1.0);
   yn = 0. -> 0.027571327441965943*xn + 0.09946114577079751*pre xnm1 + 0.14434540411316932*pre xnm2 + 0.09946114577079751*pre xnm3 + 0.027571327441965943*pre xnm4 + 1.5881829830740517*pre yn - 1.7443826804178832*pre ynm1 + 1.0171424112847436*pre ynm2 - 0.3079664796302433*pre ynm3;
diff --git a/lustrec_tests/lustre_files/lp_iir_9600_6_elliptic.lus b/lustrec_tests/lustre_files/lp_iir_9600_6_elliptic.lus
index f1b411beba31d06ba46bbe3f6d3b78d3000a8f77..cfe9af68bceddf3aefbf85582a53c433e9b129e8 100644
--- a/lustrec_tests/lustre_files/lp_iir_9600_6_elliptic.lus
+++ b/lustrec_tests/lustre_files/lp_iir_9600_6_elliptic.lus
@@ -1,4 +1,4 @@
-node top(xn : real) returns (yn, ynm1, ynm2, ynm3, ynm4, ynm5, xnm1, xnm2, xnm3, xnm4, xnm5, xnm6 : real);
+node lp_iir_9600_6_elliptic(xn : real) returns (yn, ynm1, ynm2, ynm3, ynm4, ynm5, xnm1, xnm2, xnm3, xnm4, xnm5, xnm6 : real);
 let
   assert(xn >= -1.0 and xn <= 1.0);
   yn = 0. -> 0.0071206017131343335*xn + 0.02429729818092203*pre xnm1 + 0.04613413371939573*pre xnm2 + 0.05613064430953349*pre xnm3 + 0.04613413371939573*pre xnm4 + 0.02429729818092203*pre xnm5 + 0.0071206017131343335*pre xnm6 - -2.7445577051566046*pre yn - 4.495158480897364*pre ynm1 - -4.649204375147074*pre ynm2 - 3.2299784258838873*pre ynm3 - -1.4088842648092799*pre ynm4 - 0.31451868286474205*pre ynm5;
diff --git a/lustrec_tests/lustre_files/metros_1.lus b/lustrec_tests/lustre_files/metros_1.lus
index 41f972be41af2176746f1005b5125e0a08df097a..c7275a0334fb734abb03a08642782a8e745b3ee7 100644
--- a/lustrec_tests/lustre_files/metros_1.lus
+++ b/lustrec_tests/lustre_files/metros_1.lus
@@ -44,7 +44,7 @@ let
   ast = H0 and H1;
 tel
 
-node top(B0, B1 : bool; S : bool) 
+node metros_1(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e1_846_e1_1317.lus b/lustrec_tests/lustre_files/metros_1_e1_846_e1_1317.lus
index c6a13c06ce33490bc73173bedfaf1e9937a52bd7..3bcb18dec7bd2a1879a59b45620ca9fe8385febc 100644
--- a/lustrec_tests/lustre_files/metros_1_e1_846_e1_1317.lus
+++ b/lustrec_tests/lustre_files/metros_1_e1_846_e1_1317.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e1_846_e1_1317(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e1_846_e2_1394.lus b/lustrec_tests/lustre_files/metros_1_e1_846_e2_1394.lus
index 66c7b8a432e2c9447b802cf7483de153ca3325d3..a68c812b64107611e59012c973e9b6e33e576cdc 100644
--- a/lustrec_tests/lustre_files/metros_1_e1_846_e2_1394.lus
+++ b/lustrec_tests/lustre_files/metros_1_e1_846_e2_1394.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e1_846_e2_1394(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e1_846_e3_1060.lus b/lustrec_tests/lustre_files/metros_1_e1_846_e3_1060.lus
index 8d571bbc63b99fe8027d90bed7c22f4ed68de305..7aaf79446bc0dfdc6bb33658e7650e1071b86fe8 100644
--- a/lustrec_tests/lustre_files/metros_1_e1_846_e3_1060.lus
+++ b/lustrec_tests/lustre_files/metros_1_e1_846_e3_1060.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e1_846_e3_1060(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e1_846_e7_397.lus b/lustrec_tests/lustre_files/metros_1_e1_846_e7_397.lus
index edfda0592bee4a2045f09a0e36c28645de1f3323..84622b596a1af45d3f2b11d2bc6da1877b3d63ea 100644
--- a/lustrec_tests/lustre_files/metros_1_e1_846_e7_397.lus
+++ b/lustrec_tests/lustre_files/metros_1_e1_846_e7_397.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e1_846_e7_397(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e2_1102_e1_317.lus b/lustrec_tests/lustre_files/metros_1_e2_1102_e1_317.lus
index ea437fea72377575cb79f5e94b66d15069ea76c2..e3a6774c6aff48ab0a5d3e6ea9c338044efaaa9c 100644
--- a/lustrec_tests/lustre_files/metros_1_e2_1102_e1_317.lus
+++ b/lustrec_tests/lustre_files/metros_1_e2_1102_e1_317.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e2_1102_e1_317(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e2_1102_e2_943.lus b/lustrec_tests/lustre_files/metros_1_e2_1102_e2_943.lus
index 837d0e1e45e39930d1988a08e0ea07c88d6cfafa..29677b429359c5b7ad4084d4cf7f0a3102fab00a 100644
--- a/lustrec_tests/lustre_files/metros_1_e2_1102_e2_943.lus
+++ b/lustrec_tests/lustre_files/metros_1_e2_1102_e2_943.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e2_1102_e2_943(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e2_1102_e3_961.lus b/lustrec_tests/lustre_files/metros_1_e2_1102_e3_961.lus
index abe4e2eaa5c28c1f76b6ed2c50ced2141947ad41..a0701a107067bd84eda0e7c461bf511038d05cb2 100644
--- a/lustrec_tests/lustre_files/metros_1_e2_1102_e3_961.lus
+++ b/lustrec_tests/lustre_files/metros_1_e2_1102_e3_961.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e2_1102_e3_961(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e2_1102_e7_1163.lus b/lustrec_tests/lustre_files/metros_1_e2_1102_e7_1163.lus
index a06dc5733cb2cb7303a61440c613639371222cc6..2bfb51265a501e64f742e51b1a2d5b4e0b2e20ca 100644
--- a/lustrec_tests/lustre_files/metros_1_e2_1102_e7_1163.lus
+++ b/lustrec_tests/lustre_files/metros_1_e2_1102_e7_1163.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e2_1102_e7_1163(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e2_627.lus b/lustrec_tests/lustre_files/metros_1_e2_627.lus
index cca69555c766f44169bb8771b08440057a5f6b68..9a643b401d5390e1a2b5d1d7cde8dfb6ea2981a2 100644
--- a/lustrec_tests/lustre_files/metros_1_e2_627.lus
+++ b/lustrec_tests/lustre_files/metros_1_e2_627.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e2_627(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e7_1255_e7_12.lus b/lustrec_tests/lustre_files/metros_1_e7_1255_e7_12.lus
index a950e14dff3503820cc8a879f886219ad78a0587..d5bf27139332ea01e7c643b4f012a20c41365b05 100644
--- a/lustrec_tests/lustre_files/metros_1_e7_1255_e7_12.lus
+++ b/lustrec_tests/lustre_files/metros_1_e7_1255_e7_12.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e7_1255_e7_12(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e7_606.lus b/lustrec_tests/lustre_files/metros_1_e7_606.lus
index fc7d050b24521121bdfa74244e53afd32a53181e..de6e5705aa10aff44cbe75df620c4f7025c5b71e 100644
--- a/lustrec_tests/lustre_files/metros_1_e7_606.lus
+++ b/lustrec_tests/lustre_files/metros_1_e7_606.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e7_606(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e8_725.lus b/lustrec_tests/lustre_files/metros_1_e8_725.lus
index 7fda7aacfb44417427237b67241e2bef198c8931..a2ef7f8e7f1f85d883a7d513fd3015d7325e7989 100644
--- a/lustrec_tests/lustre_files/metros_1_e8_725.lus
+++ b/lustrec_tests/lustre_files/metros_1_e8_725.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e8_725(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e8_725_e1_919.lus b/lustrec_tests/lustre_files/metros_1_e8_725_e1_919.lus
index dd3fdd4f02d768a807738bffb1493ea9c4f621a3..3de34e2502c5a077a19aa7fe8177408a8853713e 100644
--- a/lustrec_tests/lustre_files/metros_1_e8_725_e1_919.lus
+++ b/lustrec_tests/lustre_files/metros_1_e8_725_e1_919.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e8_725_e1_919(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e8_725_e2_1144.lus b/lustrec_tests/lustre_files/metros_1_e8_725_e2_1144.lus
index 5b28df89d12ccbb8051e42b89182f03748ca1c81..00e46df920e2ea69effea7008aef2dcaad4ccfd7 100644
--- a/lustrec_tests/lustre_files/metros_1_e8_725_e2_1144.lus
+++ b/lustrec_tests/lustre_files/metros_1_e8_725_e2_1144.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e8_725_e2_1144(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_1_e8_725_e3_556.lus b/lustrec_tests/lustre_files/metros_1_e8_725_e3_556.lus
index a2a55716573167c1fc15ef69d3151a01df0379a9..63b4bd9ad0b03fd81afbd9fdd87b07601d6a27ef 100644
--- a/lustrec_tests/lustre_files/metros_1_e8_725_e3_556.lus
+++ b/lustrec_tests/lustre_files/metros_1_e8_725_e3_556.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_1_e8_725_e3_556(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2.lus b/lustrec_tests/lustre_files/metros_2.lus
index 1be0e9fd5841e121fc5f59f304bd4add4e6b57d7..81a44430e0a201d03a97642a2d32cb21b799fe02 100644
--- a/lustrec_tests/lustre_files/metros_2.lus
+++ b/lustrec_tests/lustre_files/metros_2.lus
@@ -45,7 +45,7 @@ let
 tel
 
 -- Not provable?
-node top(B0, B1 : bool; S : bool) 
+node metros_2(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e1_1116.lus b/lustrec_tests/lustre_files/metros_2_e1_1116.lus
index 89eb54677f00d216123b4d45376d495cfedacda3..bbc398bec7dab557e632d3f1739c0e1944cda088 100644
--- a/lustrec_tests/lustre_files/metros_2_e1_1116.lus
+++ b/lustrec_tests/lustre_files/metros_2_e1_1116.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e1_1116(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e1_1116_e1_556.lus b/lustrec_tests/lustre_files/metros_2_e1_1116_e1_556.lus
index 17e1a9af745c06c38922c3f3e4a179481595f82c..592d02cb78c9024a85faef18590faa7f09aee258 100644
--- a/lustrec_tests/lustre_files/metros_2_e1_1116_e1_556.lus
+++ b/lustrec_tests/lustre_files/metros_2_e1_1116_e1_556.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e1_1116_e1_556(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e1_1116_e2_617.lus b/lustrec_tests/lustre_files/metros_2_e1_1116_e2_617.lus
index e82e9f80bc95edc796eeb435acf5ec890c3470e8..d6969c1bd6f447014f1fc1664dc273ccb83e8abd 100644
--- a/lustrec_tests/lustre_files/metros_2_e1_1116_e2_617.lus
+++ b/lustrec_tests/lustre_files/metros_2_e1_1116_e2_617.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e1_1116_e2_617(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e1_1116_e3_287.lus b/lustrec_tests/lustre_files/metros_2_e1_1116_e3_287.lus
index f0cd932bce03acd33e2f8eb44f523b6256b567dc..3bf4844591f7e13e1b3f6c6b239aab2b7e8b1e6f 100644
--- a/lustrec_tests/lustre_files/metros_2_e1_1116_e3_287.lus
+++ b/lustrec_tests/lustre_files/metros_2_e1_1116_e3_287.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e1_1116_e3_287(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e1_1116_e7_1440.lus b/lustrec_tests/lustre_files/metros_2_e1_1116_e7_1440.lus
index 7d20b1fe4b8353ce4cc20686a391c18a56fceffe..1841006ede5d2105c3ff3f131aeda265d63f6a50 100644
--- a/lustrec_tests/lustre_files/metros_2_e1_1116_e7_1440.lus
+++ b/lustrec_tests/lustre_files/metros_2_e1_1116_e7_1440.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e1_1116_e7_1440(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e1_190.lus b/lustrec_tests/lustre_files/metros_2_e1_190.lus
index 89eb54677f00d216123b4d45376d495cfedacda3..fafb9589e9038c9bf3b7f77dd0a3a1f596b914aa 100644
--- a/lustrec_tests/lustre_files/metros_2_e1_190.lus
+++ b/lustrec_tests/lustre_files/metros_2_e1_190.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e1_190(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e2_704_e1_389.lus b/lustrec_tests/lustre_files/metros_2_e2_704_e1_389.lus
index 3102949c6f61c8f68f14ff2ac05cfaa956c01b6c..e8ae52d75d195f8c6794335c98add71bf861fa8f 100644
--- a/lustrec_tests/lustre_files/metros_2_e2_704_e1_389.lus
+++ b/lustrec_tests/lustre_files/metros_2_e2_704_e1_389.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e2_704_e1_389(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e2_704_e2_13.lus b/lustrec_tests/lustre_files/metros_2_e2_704_e2_13.lus
index a0df140af03e284fb0781bb76435bd931d208523..9668cdbe7a79f8505082c28e8ddd12a0a50897ca 100644
--- a/lustrec_tests/lustre_files/metros_2_e2_704_e2_13.lus
+++ b/lustrec_tests/lustre_files/metros_2_e2_704_e2_13.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e2_704_e2_13(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e2_704_e3_76.lus b/lustrec_tests/lustre_files/metros_2_e2_704_e3_76.lus
index 7e25571b01b89a3454fe1a2ba4531b93a2366aca..cf2d2de88fb09a5ad4496afb5c7fe0ad80f8d7b2 100644
--- a/lustrec_tests/lustre_files/metros_2_e2_704_e3_76.lus
+++ b/lustrec_tests/lustre_files/metros_2_e2_704_e3_76.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e2_704_e3_76(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e2_704_e7_810.lus b/lustrec_tests/lustre_files/metros_2_e2_704_e7_810.lus
index febf5a7ca374d7fc5338742ca1a93c4d7b6d6527..136334187bba03a0262ffcbc0175e95b5db026ab 100644
--- a/lustrec_tests/lustre_files/metros_2_e2_704_e7_810.lus
+++ b/lustrec_tests/lustre_files/metros_2_e2_704_e7_810.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e2_704_e7_810(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e2_968.lus b/lustrec_tests/lustre_files/metros_2_e2_968.lus
index ac1bff929498d94b99d2f84f10b22ea56ca821bd..7b7715fc66baedb7c3ebf89b2b31ac2154e2f40c 100644
--- a/lustrec_tests/lustre_files/metros_2_e2_968.lus
+++ b/lustrec_tests/lustre_files/metros_2_e2_968.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e2_968(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_2_e3_112.lus b/lustrec_tests/lustre_files/metros_2_e3_112.lus
index 4270d321f37a6c8d8af906c26465a42f47364583..87949d1b96bf52c051c9b90049c961461668dc42 100644
--- a/lustrec_tests/lustre_files/metros_2_e3_112.lus
+++ b/lustrec_tests/lustre_files/metros_2_e3_112.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_2_e3_112(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0, nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3.lus b/lustrec_tests/lustre_files/metros_3.lus
index 99ebaf0d5cc48f26a5142a244e266135e3fcfdc8..bf73b4166db0a9f8b35bbd32f71c08e443453420 100644
--- a/lustrec_tests/lustre_files/metros_3.lus
+++ b/lustrec_tests/lustre_files/metros_3.lus
@@ -45,7 +45,7 @@ let
 tel
 
 -- Not provable?
-node top(B0, B1 : bool; S : bool) 
+node metros_3(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275.lus b/lustrec_tests/lustre_files/metros_3_e3_1275.lus
index 9e58d47fa3ecc38864e55e191b2d4e1fbe61bd61..66b903c1e8bffec9449b33eb67496514b79523a4 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e1_1350.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e1_1350.lus
index 979b790ecc81000040ad7a427607c94f7d483002..c3f1ac75cacec7198d11f379e0403cbc5f01c6ed 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e1_1350.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e1_1350.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e1_1350(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e2_454.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e2_454.lus
index 6db4ffbbb3682482514466d0ca581b0cbcdcfed5..849914ed5834f0e64a73fcd796185b6dc4d6927d 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e2_454.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e2_454.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e2_454(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e3_640.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e3_640.lus
index f153e8ef24052c5a75baf9b393be4856f2df1065..41d5b1e894e3feea6364b9d6287b1501f6bf8201 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e3_640.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e3_640.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e3_640(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e4_164.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e4_164.lus
index 90951645c1159c05276e20d8111deea5196612f6..1f57ef4f114eab923ec173253cd9116eb341f46c 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e4_164.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e4_164.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e4_164(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e5_846.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e5_846.lus
index 50c08d37684bc42d1c97a3441bc6a4ea31a22e9a..984a23dfe0c6dca04d65c66640b987ace74c9f34 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e5_846.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e5_846.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e5_846(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e6_1315.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e6_1315.lus
index c485870bf83d1bea3efee532ec1792ee62cee005..7f55f2422478ae674640068f3ead25e7da2d0e1a 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e6_1315.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e6_1315.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e6_1315(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e3_1275_e7_529.lus b/lustrec_tests/lustre_files/metros_3_e3_1275_e7_529.lus
index 6cd560f44076669cf00eb4dfc6eb2ca09f9a38b2..29c22afb02f705146a8145568a107e2d049e27d7 100644
--- a/lustrec_tests/lustre_files/metros_3_e3_1275_e7_529.lus
+++ b/lustrec_tests/lustre_files/metros_3_e3_1275_e7_529.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e3_1275_e7_529(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e4_987.lus b/lustrec_tests/lustre_files/metros_3_e4_987.lus
index 8eacd6692d664d934824f965d0f885e697d516e5..e604430758f78a6df6d14e41269298fff34f64a6 100644
--- a/lustrec_tests/lustre_files/metros_3_e4_987.lus
+++ b/lustrec_tests/lustre_files/metros_3_e4_987.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e4_987(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e4_987_e2_80.lus b/lustrec_tests/lustre_files/metros_3_e4_987_e2_80.lus
index bc862c9866d6de9a239e9682a5135f45a0083f96..801f5cf887464019fedba8d2e42ecf9c8a46c3c7 100644
--- a/lustrec_tests/lustre_files/metros_3_e4_987_e2_80.lus
+++ b/lustrec_tests/lustre_files/metros_3_e4_987_e2_80.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e4_987_e2_80(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_3_e4_987_e3_291.lus b/lustrec_tests/lustre_files/metros_3_e4_987_e3_291.lus
index d685d30e45519f67f1958b808910e2ac0d2a137d..16312332e3b7146bcdd40f678786742084813933 100644
--- a/lustrec_tests/lustre_files/metros_3_e4_987_e3_291.lus
+++ b/lustrec_tests/lustre_files/metros_3_e4_987_e3_291.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0, B1 : bool; S : bool) 
+node metros_3_e4_987_e3_291(B0, B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4.lus b/lustrec_tests/lustre_files/metros_4.lus
index 9f645ecd533e84fc3a53c7704e93ff1accaa1c95..0bd00310d20f4859f8617c581a32399904c7d4e5 100644
--- a/lustrec_tests/lustre_files/metros_4.lus
+++ b/lustrec_tests/lustre_files/metros_4.lus
@@ -45,7 +45,7 @@ let
 tel
 
 -- Not provable?
-node top(B0,B1 : bool; S : bool) 
+node metros_4(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e1_821_e5_911.lus b/lustrec_tests/lustre_files/metros_4_e1_821_e5_911.lus
index ded56bf1734fc67ccaf05561753e7243ac30887a..64a83543b2cf3242a07893d80aaf464dd76be182 100644
--- a/lustrec_tests/lustre_files/metros_4_e1_821_e5_911.lus
+++ b/lustrec_tests/lustre_files/metros_4_e1_821_e5_911.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e1_821_e5_911(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e1_917.lus b/lustrec_tests/lustre_files/metros_4_e1_917.lus
index 4f36a1a70eda7c9f77b476bbde51ab65ee7ef7b9..86edbb6e3ba7587e18e34a34ae78965bdcb8170a 100644
--- a/lustrec_tests/lustre_files/metros_4_e1_917.lus
+++ b/lustrec_tests/lustre_files/metros_4_e1_917.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e1_917(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968.lus b/lustrec_tests/lustre_files/metros_4_e2_968.lus
index 3d646011024552b89e887f87aa232a91d96d7efa..0686b272440bb4c892b32388fbabe78f769886a6 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e1_956.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e1_956.lus
index 425b43e89a625ccac5243a0b1fa19c138afc6e66..d879ff622ce53efbf7edf2d4fc5c84b6c91b9a1c 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e1_956.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e1_956.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e1_956(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e2_1166.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e2_1166.lus
index e0a5a2892c8ee7490dc6b1356d52096c6e255d12..562c5a6202f122cf08262e0ad244b21719480ce7 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e2_1166.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e2_1166.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e2_1166(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e3_931.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e3_931.lus
index 5bde5408ebda31eed24aead1d36719d98329b936..9a58cc2894eaf8452ea03dbed4569c3f774fb7d7 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e3_931.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e3_931.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e3_931(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e4_801.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e4_801.lus
index 0da785b3b60ab7b53c084ebf0e7700ad7edd4110..805aa5bbd321cb4d5682a630325edacc516ac3bc 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e4_801.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e4_801.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e4_801(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e5_991.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e5_991.lus
index cf1dfd7145b4f75f17b9c5668a7f08a4ab019554..118a4b4c231c151e31bded455dd4971ec1374120 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e5_991.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e5_991.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e5_991(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e6_236.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e6_236.lus
index abd954285c09ba64fb798c35af027e36af590bca..8a2d71947fb253adb1ce82dce2867ce7965b3447 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e6_236.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e6_236.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e6_236(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e2_968_e7_860.lus b/lustrec_tests/lustre_files/metros_4_e2_968_e7_860.lus
index 59787fbfd6f15d4fa6249dd494092093dfb07e22..5e805e205281593771626895fcdb42712fb944b9 100644
--- a/lustrec_tests/lustre_files/metros_4_e2_968_e7_860.lus
+++ b/lustrec_tests/lustre_files/metros_4_e2_968_e7_860.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e2_968_e7_860(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e3_1025.lus b/lustrec_tests/lustre_files/metros_4_e3_1025.lus
index 50fcb51bb6e2309141cf190827276984a298638d..57dbf0ee9c12ba1653f114c649d20998f6b81c5a 100644
--- a/lustrec_tests/lustre_files/metros_4_e3_1025.lus
+++ b/lustrec_tests/lustre_files/metros_4_e3_1025.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e3_1025(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e3_1091.lus b/lustrec_tests/lustre_files/metros_4_e3_1091.lus
index 50fcb51bb6e2309141cf190827276984a298638d..52b0194c812be002384ce810dcec80e4b38b6ac4 100644
--- a/lustrec_tests/lustre_files/metros_4_e3_1091.lus
+++ b/lustrec_tests/lustre_files/metros_4_e3_1091.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e3_1091(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e3_1091_e1_1044.lus b/lustrec_tests/lustre_files/metros_4_e3_1091_e1_1044.lus
index f292f6202dbe54ba51e65f3406e5072ea3d4cbd6..263a7b2a9e92d6fe07452141eca10e696f1785d1 100644
--- a/lustrec_tests/lustre_files/metros_4_e3_1091_e1_1044.lus
+++ b/lustrec_tests/lustre_files/metros_4_e3_1091_e1_1044.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e3_1091_e1_1044(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e3_1091_e2_1317.lus b/lustrec_tests/lustre_files/metros_4_e3_1091_e2_1317.lus
index 3ac8b39b8cf2548a44968d10c65ed1a5cf7dc6a0..d3228b7869697fc6bc8611015157a15a0a0fd131 100644
--- a/lustrec_tests/lustre_files/metros_4_e3_1091_e2_1317.lus
+++ b/lustrec_tests/lustre_files/metros_4_e3_1091_e2_1317.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e3_1091_e2_1317(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e3_1091_e3_522.lus b/lustrec_tests/lustre_files/metros_4_e3_1091_e3_522.lus
index c6ccf1edd81197fdd2eaeb99f09f98a39d791e84..08b2e8a6bc7bd1adac876854d0675dd7f400409f 100644
--- a/lustrec_tests/lustre_files/metros_4_e3_1091_e3_522.lus
+++ b/lustrec_tests/lustre_files/metros_4_e3_1091_e3_522.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e3_1091_e3_522(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e3_1091_e4_232.lus b/lustrec_tests/lustre_files/metros_4_e3_1091_e4_232.lus
index 26c2602c956797eded0911519228c1662a5d87ad..d1c41c4387b0804aa9d3a793dea094587ab554ad 100644
--- a/lustrec_tests/lustre_files/metros_4_e3_1091_e4_232.lus
+++ b/lustrec_tests/lustre_files/metros_4_e3_1091_e4_232.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e3_1091_e4_232(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e5_1150.lus b/lustrec_tests/lustre_files/metros_4_e5_1150.lus
index 7768ab6e8f3a325f0639126901965df231f61ddb..4d928095ee22386feb3455a340d94685d93b6ddc 100644
--- a/lustrec_tests/lustre_files/metros_4_e5_1150.lus
+++ b/lustrec_tests/lustre_files/metros_4_e5_1150.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e5_1150(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_4_e6_239_e2_307.lus b/lustrec_tests/lustre_files/metros_4_e6_239_e2_307.lus
index abd954285c09ba64fb798c35af027e36af590bca..6c8eac58662aec218f578d0083684fee76558fa8 100644
--- a/lustrec_tests/lustre_files/metros_4_e6_239_e2_307.lus
+++ b/lustrec_tests/lustre_files/metros_4_e6_239_e2_307.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_4_e6_239_e2_307(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_5.lus b/lustrec_tests/lustre_files/metros_5.lus
index 1400160513982b134ce478743ce13ae46e481765..ca505eb34f4e948822da93a5c68435fa6a45806e 100644
--- a/lustrec_tests/lustre_files/metros_5.lus
+++ b/lustrec_tests/lustre_files/metros_5.lus
@@ -45,7 +45,7 @@ let
 tel
 
 -- Not provable?
-node top(B0,B1 : bool; S : bool) 
+node metros_5(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/metros_5_e4_1208_e1_337.lus b/lustrec_tests/lustre_files/metros_5_e4_1208_e1_337.lus
index ce76d0107adc42521cf859610e9879d1ddb645d3..7572323688b63de98ff3be29c04a705404829195 100644
--- a/lustrec_tests/lustre_files/metros_5_e4_1208_e1_337.lus
+++ b/lustrec_tests/lustre_files/metros_5_e4_1208_e1_337.lus
@@ -38,7 +38,7 @@ let
   (diff1,avance1,retard1) = controleur(nB1,nS);
   ast = H0 and H1;
 tel
-node top(B0,B1 : bool; S : bool) 
+node metros_5_e4_1208_e1_337(B0,B1 : bool; S : bool) 
 returns (OK:bool);
 --@ contract guarantee OK;
 var nB0,nB1 : int;
diff --git a/lustrec_tests/lustre_files/microwave01.lus b/lustrec_tests/lustre_files/microwave01.lus
index c6ed6fe5334d250995c3eac1f993d6b7cb0fca8e..41bc9e66c6953710233ec403f6ad789487cc5706 100644
--- a/lustrec_tests/lustre_files/microwave01.lus
+++ b/lustrec_tests/lustre_files/microwave01.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave01(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave02.lus b/lustrec_tests/lustre_files/microwave02.lus
index a3c31a94f34f89517f38191f496905d5f25c88e0..5780cd51102566fe8b15404d6c79543a26de4e3d 100644
--- a/lustrec_tests/lustre_files/microwave02.lus
+++ b/lustrec_tests/lustre_files/microwave02.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave02(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave03.lus b/lustrec_tests/lustre_files/microwave03.lus
index 552baf18f481b50e62840e61835eaa641c81ac55..61697b59ee4fe5d1a9c611ba3455147b7ba8f537 100644
--- a/lustrec_tests/lustre_files/microwave03.lus
+++ b/lustrec_tests/lustre_files/microwave03.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave03(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave04.lus b/lustrec_tests/lustre_files/microwave04.lus
index 5a0720e59185214922a7d96229fab3893a78717c..7766551517e16758d1fc48914fb8161dba3ffd10 100644
--- a/lustrec_tests/lustre_files/microwave04.lus
+++ b/lustrec_tests/lustre_files/microwave04.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave04(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave05.lus b/lustrec_tests/lustre_files/microwave05.lus
index 5b88b1b5ee94e743d9dd21b550f568b973ba00b2..2579bc8264c28ad28e4a465c4d24b146496544a2 100644
--- a/lustrec_tests/lustre_files/microwave05.lus
+++ b/lustrec_tests/lustre_files/microwave05.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave05(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave06.lus b/lustrec_tests/lustre_files/microwave06.lus
index 4acfe48198e285dda7d7988dff1587f82557db5e..823bce7a4d7efe2e0be44e6251baa4d4c9f56123 100644
--- a/lustrec_tests/lustre_files/microwave06.lus
+++ b/lustrec_tests/lustre_files/microwave06.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave06(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave07.lus b/lustrec_tests/lustre_files/microwave07.lus
index b295b079f30fdd8658af322f48f85cb8dd2ef135..7bd6f5e9d204ddd6d2c6a454024a74be587617cc 100644
--- a/lustrec_tests/lustre_files/microwave07.lus
+++ b/lustrec_tests/lustre_files/microwave07.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave07(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave08.lus b/lustrec_tests/lustre_files/microwave08.lus
index 4b79dcace128b75c4ad0c96e70d83576c7492b10..d7554827774072adfb07c9039da45a0f979853db 100644
--- a/lustrec_tests/lustre_files/microwave08.lus
+++ b/lustrec_tests/lustre_files/microwave08.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave08(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave09.lus b/lustrec_tests/lustre_files/microwave09.lus
index 606f3fa2e75c19ea97dc89b4a3de516b4fdaec94..a1ef7547637010ae9bb81209b5ad95cfbea2ef95 100644
--- a/lustrec_tests/lustre_files/microwave09.lus
+++ b/lustrec_tests/lustre_files/microwave09.lus
@@ -1,5 +1,5 @@
 
-node top(KP_START: bool; 
+node microwave09(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave10.lus b/lustrec_tests/lustre_files/microwave10.lus
index 88c51d11c3881a1bfc9dfe31afba15f8ed9d9772..751865b3cf926b55b561e7980e76b41b350115cd 100644
--- a/lustrec_tests/lustre_files/microwave10.lus
+++ b/lustrec_tests/lustre_files/microwave10.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave10(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave11.lus b/lustrec_tests/lustre_files/microwave11.lus
index e87b100da1e7965c873c9274c1af0c03fb1d8005..05a1ed0a164a8333d96f7700fdf009409b7cd018 100644
--- a/lustrec_tests/lustre_files/microwave11.lus
+++ b/lustrec_tests/lustre_files/microwave11.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave11(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave12.lus b/lustrec_tests/lustre_files/microwave12.lus
index 660ce02b637d5d1b5fc9afa28e15743c398e1f87..8bcd7fef65e8eb7156fb63dc6fbf8afd34e5fe8b 100644
--- a/lustrec_tests/lustre_files/microwave12.lus
+++ b/lustrec_tests/lustre_files/microwave12.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave12(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave13.lus b/lustrec_tests/lustre_files/microwave13.lus
index 28b697b4eedee3a5fc0a232e5ed7f1675227c391..6047e0057146099560633f00f0dd6e7e006cfe34 100644
--- a/lustrec_tests/lustre_files/microwave13.lus
+++ b/lustrec_tests/lustre_files/microwave13.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave13(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave14.lus b/lustrec_tests/lustre_files/microwave14.lus
index e4e7e7a87a393052b238b1ebb41818ad14ea2ce5..40f9acc7eb256beefa61a253e54bf5ea5239e2ac 100644
--- a/lustrec_tests/lustre_files/microwave14.lus
+++ b/lustrec_tests/lustre_files/microwave14.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave14(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave15.lus b/lustrec_tests/lustre_files/microwave15.lus
index a3ab42af08ce18e1678368131ff7713b09d424e7..b9a88f95cc7b5ab594dd857b26a1dab895e18583 100644
--- a/lustrec_tests/lustre_files/microwave15.lus
+++ b/lustrec_tests/lustre_files/microwave15.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave15(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave16.lus b/lustrec_tests/lustre_files/microwave16.lus
index 7fbd215298fc9f8c7ffb5c574449e25ec0341fb5..b3913672f052d174ef7775eb0410fc06842e25c6 100644
--- a/lustrec_tests/lustre_files/microwave16.lus
+++ b/lustrec_tests/lustre_files/microwave16.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave16(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave17.lus b/lustrec_tests/lustre_files/microwave17.lus
index 1aeeffe0cc3d9bced5510072be4bf7f7c62bb3a9..2a1c49e657e8b11035b3dab64c3765463c2cdcc5 100644
--- a/lustrec_tests/lustre_files/microwave17.lus
+++ b/lustrec_tests/lustre_files/microwave17.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave17(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave18.lus b/lustrec_tests/lustre_files/microwave18.lus
index 81f7c270324823004440be163aeb206a776b15e6..0afc0ce51d42093fa0f010962032f13d440a3494 100644
--- a/lustrec_tests/lustre_files/microwave18.lus
+++ b/lustrec_tests/lustre_files/microwave18.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave18(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave19.lus b/lustrec_tests/lustre_files/microwave19.lus
index daa6af761fc03631f30855feea3594b97fec451d..98fac687b507cefa50461fb9658e19ab9e725479 100644
--- a/lustrec_tests/lustre_files/microwave19.lus
+++ b/lustrec_tests/lustre_files/microwave19.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave19(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave20.lus b/lustrec_tests/lustre_files/microwave20.lus
index d5dc76aec38d2e676c21233b78069be99e42b594..b224a2be1de6a2a8d07ca972041bc99b7f4a4e3f 100644
--- a/lustrec_tests/lustre_files/microwave20.lus
+++ b/lustrec_tests/lustre_files/microwave20.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave20(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave21.lus b/lustrec_tests/lustre_files/microwave21.lus
index f0e756a7b1649ded2fd620f6e979b66c74db41ee..d40609bccf0ca2d1e4b17a91206e9e886f441bc5 100644
--- a/lustrec_tests/lustre_files/microwave21.lus
+++ b/lustrec_tests/lustre_files/microwave21.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave21(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave22.lus b/lustrec_tests/lustre_files/microwave22.lus
index f84e17669db8de3c28a7befd514bc6598c948f1c..1da8e04181302e215575b098de2660f2036ef25e 100644
--- a/lustrec_tests/lustre_files/microwave22.lus
+++ b/lustrec_tests/lustre_files/microwave22.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave22(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave23.lus b/lustrec_tests/lustre_files/microwave23.lus
index b7ad91ce1def6d457e629431b258b754e0157663..5994fc945535deb2cc390bae61a428b19838727d 100644
--- a/lustrec_tests/lustre_files/microwave23.lus
+++ b/lustrec_tests/lustre_files/microwave23.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave23(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave24.lus b/lustrec_tests/lustre_files/microwave24.lus
index 4ecf9127a9f37a32d958793597733a80792f182b..f36f03f9254fc782dce0d216ef38488461b01d13 100644
--- a/lustrec_tests/lustre_files/microwave24.lus
+++ b/lustrec_tests/lustre_files/microwave24.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave24(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave25.lus b/lustrec_tests/lustre_files/microwave25.lus
index fc7552ab20ced5aa6ae4291f2c93a4ca917cad89..87503445ec1936d0c68af7f22b23621b27a4a6ff 100644
--- a/lustrec_tests/lustre_files/microwave25.lus
+++ b/lustrec_tests/lustre_files/microwave25.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave25(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave27.lus b/lustrec_tests/lustre_files/microwave27.lus
index 74dc45fd3eb6a205449450cf6eb2dd7066f27cdd..d40755eeb1769d18bb0eef0ac6fb98df01428172 100644
--- a/lustrec_tests/lustre_files/microwave27.lus
+++ b/lustrec_tests/lustre_files/microwave27.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave27(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave28.lus b/lustrec_tests/lustre_files/microwave28.lus
index 3e48ed93447fd210ac6498dae3affc28dd9b553d..60fa550c6c117d55cac6fe8ca3bc2ad920cd0a9e 100644
--- a/lustrec_tests/lustre_files/microwave28.lus
+++ b/lustrec_tests/lustre_files/microwave28.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave28(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave30.lus b/lustrec_tests/lustre_files/microwave30.lus
index 497b23582812a63a67c7878356d6bada0ba9b20e..bf534cb73bf6adc00f8a46a56ab7f0a7c6e133ca 100644
--- a/lustrec_tests/lustre_files/microwave30.lus
+++ b/lustrec_tests/lustre_files/microwave30.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave30(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave31.lus b/lustrec_tests/lustre_files/microwave31.lus
index 3104f25d5bf1a47257ce556aec7b91dfedde0b71..6359c7a059e164e33c55c2113d4755dcd573828b 100644
--- a/lustrec_tests/lustre_files/microwave31.lus
+++ b/lustrec_tests/lustre_files/microwave31.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave31(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave32.lus b/lustrec_tests/lustre_files/microwave32.lus
index 3f7e6dd0933792e4e1956c96dfb283539951610b..58b6353dde2e433be08966d7994ab24b7617409c 100644
--- a/lustrec_tests/lustre_files/microwave32.lus
+++ b/lustrec_tests/lustre_files/microwave32.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave32(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave33.lus b/lustrec_tests/lustre_files/microwave33.lus
index 2b42604b1ad66c7ef5040949559ac65c776c7743..206ca2e39083e1b7404722829c2bf642f2b545b4 100644
--- a/lustrec_tests/lustre_files/microwave33.lus
+++ b/lustrec_tests/lustre_files/microwave33.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave33(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave34.lus b/lustrec_tests/lustre_files/microwave34.lus
index 99292103ca2ebeb283e28b53beb608ea57a6c5ba..a2df24af703dd64e341670da2032b5edf1626eae 100644
--- a/lustrec_tests/lustre_files/microwave34.lus
+++ b/lustrec_tests/lustre_files/microwave34.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave34(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave35.lus b/lustrec_tests/lustre_files/microwave35.lus
index 081fdf7d9e578e49b9dc64f6471636be6f631d65..b6f450cc852e657581a48a60d2258d1b80536757 100644
--- a/lustrec_tests/lustre_files/microwave35.lus
+++ b/lustrec_tests/lustre_files/microwave35.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave35(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave36.lus b/lustrec_tests/lustre_files/microwave36.lus
index 4d8ab5a911cdd18061b5aab76e5ecd1e12b672cb..e848b3a715ad52f7398d1544c6a6435f1b3cb521 100644
--- a/lustrec_tests/lustre_files/microwave36.lus
+++ b/lustrec_tests/lustre_files/microwave36.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave36(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave37.lus b/lustrec_tests/lustre_files/microwave37.lus
index f8ba040c2ad325c0d46c11daf1cf96fec18e8390..2a64075fc8c18993018e7ece41f540ed1b53bb31 100644
--- a/lustrec_tests/lustre_files/microwave37.lus
+++ b/lustrec_tests/lustre_files/microwave37.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave37(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave38.lus b/lustrec_tests/lustre_files/microwave38.lus
index 58409bd5ee5e55753e9a610d5eedca3979ef2023..d9bc764bdf05472f8aa6eab9fc58a6bcb4524961 100644
--- a/lustrec_tests/lustre_files/microwave38.lus
+++ b/lustrec_tests/lustre_files/microwave38.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave38(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave39.lus b/lustrec_tests/lustre_files/microwave39.lus
index 3072ea4ee8c674cb52ead16255738e78fa65b731..9cf926a019dbf4286a9496c3716fc5e096478e59 100644
--- a/lustrec_tests/lustre_files/microwave39.lus
+++ b/lustrec_tests/lustre_files/microwave39.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave39(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/microwave40.lus b/lustrec_tests/lustre_files/microwave40.lus
index 1c7eb43c5adb0243254cede02bb90329d564fb05..c3ec8da44845fb05be741d56dd4aae1777f84cb1 100644
--- a/lustrec_tests/lustre_files/microwave40.lus
+++ b/lustrec_tests/lustre_files/microwave40.lus
@@ -1,4 +1,4 @@
-node top(KP_START: bool; 
+node microwave40(KP_START: bool; 
       KP_CLEAR: bool; 
       KP_0: bool; 
       KP_1: bool; 
diff --git a/lustrec_tests/lustre_files/peterson_1.lus b/lustrec_tests/lustre_files/peterson_1.lus
index 3d9c3603c93141ac10dd1366bd4975f229ee6a1c..763d6998e8be5c5028b01109a42876f1b120adea 100644
--- a/lustrec_tests/lustre_files/peterson_1.lus
+++ b/lustrec_tests/lustre_files/peterson_1.lus
@@ -119,7 +119,7 @@ let
 
 tel
 
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_1(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/peterson_1_e7_4234.lus b/lustrec_tests/lustre_files/peterson_1_e7_4234.lus
index 0a2bf2f7627f5f9e96ff4bc01b6ef2a5f803d821..0e7f3a0d54c79b458dd216dbd8a9614f9b922172 100644
--- a/lustrec_tests/lustre_files/peterson_1_e7_4234.lus
+++ b/lustrec_tests/lustre_files/peterson_1_e7_4234.lus
@@ -100,7 +100,7 @@ let
    if(e12) then if(g12) then pre x13-1 else pre x13 else 
    pre x13;
 tel
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_1_e7_4234(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/peterson_2.lus b/lustrec_tests/lustre_files/peterson_2.lus
index f8cd84605b3cdf668c94a28f037138f8e754afc1..45d2e276b97d94b1ec0bf65762ebdf2290e7b0c0 100644
--- a/lustrec_tests/lustre_files/peterson_2.lus
+++ b/lustrec_tests/lustre_files/peterson_2.lus
@@ -119,7 +119,7 @@ let
 
 tel
 
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_2(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/peterson_3.lus b/lustrec_tests/lustre_files/peterson_3.lus
index 688e0f7794693347d40ef947efb55909eb7ca83f..9c9dac4a3c648384e0d484b8826dd698ee5867e4 100644
--- a/lustrec_tests/lustre_files/peterson_3.lus
+++ b/lustrec_tests/lustre_files/peterson_3.lus
@@ -119,7 +119,7 @@ let
 
 tel
 
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_3(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/peterson_4.lus b/lustrec_tests/lustre_files/peterson_4.lus
index fce518bf744775cb7d095465090a0db91da5d2dc..18330c0a96acf09d9ea9f80e86e5c2a67eb8e228 100644
--- a/lustrec_tests/lustre_files/peterson_4.lus
+++ b/lustrec_tests/lustre_files/peterson_4.lus
@@ -119,7 +119,7 @@ let
 
 tel
 
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_4(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/peterson_all.lus b/lustrec_tests/lustre_files/peterson_all.lus
index ec996d399ef5083f9e54141c2c37fc57e8ae72e6..58aa00e2eb99b9ecc67b59c5b64bbb10ba5330f4 100644
--- a/lustrec_tests/lustre_files/peterson_all.lus
+++ b/lustrec_tests/lustre_files/peterson_all.lus
@@ -119,7 +119,7 @@ let
 
 tel
 
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_all(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/peterson_vt.lus b/lustrec_tests/lustre_files/peterson_vt.lus
index 99e3fbf45508c7face40aec0d2aa9aeb9db25366..cf88528f71778cac409ff6561bce946f1709e096 100644
--- a/lustrec_tests/lustre_files/peterson_vt.lus
+++ b/lustrec_tests/lustre_files/peterson_vt.lus
@@ -120,7 +120,7 @@ let
 tel
 
 -- Not provable?
-node top(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
+node peterson_vt(e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13 : int;
diff --git a/lustrec_tests/lustre_files/readwrit.lus b/lustrec_tests/lustre_files/readwrit.lus
index 0f6c45f066ffeabb956d3fcc852d0b061eff9b99..7000442ed99377c59a7a02bed2f712d35e2ba761 100644
--- a/lustrec_tests/lustre_files/readwrit.lus
+++ b/lustrec_tests/lustre_files/readwrit.lus
@@ -107,7 +107,7 @@ let
 
 tel
 
-node top(etat1, etat2, etat3, etat4, etat5, etat6, etat7, etat8, etat9 : bool)
+node readwrit(etat1, etat2, etat3, etat4, etat5, etat6, etat7, etat8, etat9 : bool)
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
    var x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12 : int;
diff --git a/lustrec_tests/lustre_files/rtp_1.lus b/lustrec_tests/lustre_files/rtp_1.lus
index 714614443f504dcf981613a14ccc7d33687e7f68..d71e38a17cc3f60a3302a02ca869a0f8b4daa015 100644
--- a/lustrec_tests/lustre_files/rtp_1.lus
+++ b/lustrec_tests/lustre_files/rtp_1.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_1( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_10.lus b/lustrec_tests/lustre_files/rtp_10.lus
index 7e7c76936f89caedc2c448c9173561d7280c2fbf..b863ae867d561e77621c1766fbd1d6ae4cf57388 100644
--- a/lustrec_tests/lustre_files/rtp_10.lus
+++ b/lustrec_tests/lustre_files/rtp_10.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_10( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_10_e7_106_e7_2564.lus b/lustrec_tests/lustre_files/rtp_10_e7_106_e7_2564.lus
index 2e90ce5e58b198c878f4583c8d0c3b57ea014fe9..c3993e0af0394f11115078b3c0eadb9494ecdcc5 100644
--- a/lustrec_tests/lustre_files/rtp_10_e7_106_e7_2564.lus
+++ b/lustrec_tests/lustre_files/rtp_10_e7_106_e7_2564.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre X9-1 else pre X9 else 
    pre X9;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_10_e7_106_e7_2564( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_2.lus b/lustrec_tests/lustre_files/rtp_2.lus
index 99d54f78cd8c4c109819c26a3acdafb2ab286f73..443728f545340ed089b87af45c97db9732f0f834 100644
--- a/lustrec_tests/lustre_files/rtp_2.lus
+++ b/lustrec_tests/lustre_files/rtp_2.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_2( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_3.lus b/lustrec_tests/lustre_files/rtp_3.lus
index 83b11f2a5b8c14c65d0ce128db0818c6256a7e31..48d13c45fb9c496a0b2f9fb2cb34c46f25fe5b1c 100644
--- a/lustrec_tests/lustre_files/rtp_3.lus
+++ b/lustrec_tests/lustre_files/rtp_3.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_3( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_4.lus b/lustrec_tests/lustre_files/rtp_4.lus
index c60e8df3480e6bc04df4a3e3830182f2b211f048..770f866f17a4e86dbc18c526899cba75b5ec0c41 100644
--- a/lustrec_tests/lustre_files/rtp_4.lus
+++ b/lustrec_tests/lustre_files/rtp_4.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_4( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_5.lus b/lustrec_tests/lustre_files/rtp_5.lus
index 51511bf0d6f51a63e230af6d212c42c5a4cbf27a..139dc4556e04b2012c7a4fbe9f19071ff2a30463 100644
--- a/lustrec_tests/lustre_files/rtp_5.lus
+++ b/lustrec_tests/lustre_files/rtp_5.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_5( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_5_e7_3972.lus b/lustrec_tests/lustre_files/rtp_5_e7_3972.lus
index 435c7e4d3831368ab78d2cf2b6bddf15eec452a0..666efa01e6f85afbe5775d107246b7b221a0e2a3 100644
--- a/lustrec_tests/lustre_files/rtp_5_e7_3972.lus
+++ b/lustrec_tests/lustre_files/rtp_5_e7_3972.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre X9-1 else pre X9 else 
    pre X9;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_5_e7_3972( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_6.lus b/lustrec_tests/lustre_files/rtp_6.lus
index 3b164f827c19117458569eefe0832e8258ab0548..5e42e33980c20f2eaf1db983a1d23a23888a67c4 100644
--- a/lustrec_tests/lustre_files/rtp_6.lus
+++ b/lustrec_tests/lustre_files/rtp_6.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_6( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_7.lus b/lustrec_tests/lustre_files/rtp_7.lus
index 914f501d0adb1dfbbf2488d18489ff56d419a374..2f100b968a124ddfcb270568712cb18e5a574189 100644
--- a/lustrec_tests/lustre_files/rtp_7.lus
+++ b/lustrec_tests/lustre_files/rtp_7.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_7( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_8.lus b/lustrec_tests/lustre_files/rtp_8.lus
index 40ba06ea238e471ddf544cd77bfaea64dee4b57b..e1c00ff18c7adeb7d9716f70f9603a8bfa30cace 100644
--- a/lustrec_tests/lustre_files/rtp_8.lus
+++ b/lustrec_tests/lustre_files/rtp_8.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_8( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_9.lus b/lustrec_tests/lustre_files/rtp_9.lus
index aaf814b25772bb11ec894b0226acdb93f659212f..1a01608a80089b801fd85693713bc420d908224f 100644
--- a/lustrec_tests/lustre_files/rtp_9.lus
+++ b/lustrec_tests/lustre_files/rtp_9.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_9( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_all.lus b/lustrec_tests/lustre_files/rtp_all.lus
index 3d3c507cc27500e340c48e3ac8b3338e2b74df91..8b06738ad0a14769881f4f391f7bab59447b2220 100644
--- a/lustrec_tests/lustre_files/rtp_all.lus
+++ b/lustrec_tests/lustre_files/rtp_all.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_all( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_all_e7_2500.lus b/lustrec_tests/lustre_files/rtp_all_e7_2500.lus
index 6318667f1fb8348d48f6ee636d78fa186cf1bff3..8c580d68e95c10a47c299cb1001e57b4cb214fb6 100644
--- a/lustrec_tests/lustre_files/rtp_all_e7_2500.lus
+++ b/lustrec_tests/lustre_files/rtp_all_e7_2500.lus
@@ -80,7 +80,7 @@ let
    if(e12) then if(g12) then pre X9-1 else pre X9 else 
    pre X9;
 tel
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_all_e7_2500( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK : bool );
 --@ contract guarantee OK;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/rtp_vt.lus b/lustrec_tests/lustre_files/rtp_vt.lus
index f4a6db437e843ef8ff83df675f12d4655ce6103b..45426bbc8bdb210f4f3d019c378ca63d062769a6 100644
--- a/lustrec_tests/lustre_files/rtp_vt.lus
+++ b/lustrec_tests/lustre_files/rtp_vt.lus
@@ -95,7 +95,7 @@ let
 
 tel
 
-node top( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
+node rtp_vt( e01, e02, e03, e04, e05, e06, e07, e08, e09, e10, e11, e12 : bool )
 returns ( OK:bool );
 --@ contract guarantee OK;
     var X1, X2, X3, X4, X5, X6, X7, X8, X9 : int;
diff --git a/lustrec_tests/lustre_files/speed2.lus b/lustrec_tests/lustre_files/speed2.lus
index 2d9aa5cc2636b0162c3d62fa7b174ef1db70b3e3..7dc631cc72e09a6184c52109944d2c7ab0973244 100644
--- a/lustrec_tests/lustre_files/speed2.lus
+++ b/lustrec_tests/lustre_files/speed2.lus
@@ -22,7 +22,7 @@ let
                   else (diff <= -10);
 tel
 --subrange [0, 2] of int
-node top(beacon,second:bool) returns (OK:bool);
+node speed2(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e7_223_e7_213.lus b/lustrec_tests/lustre_files/speed2_e7_223_e7_213.lus
index 3420216cf0df2e6aaaeda452b8e3aeaf23fecd87..6a2b8df6576ed2bb5b56a1f009ca50184795ca16 100644
--- a/lustrec_tests/lustre_files/speed2_e7_223_e7_213.lus
+++ b/lustrec_tests/lustre_files/speed2_e7_223_e7_213.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e7_223_e7_213(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e7_223_e8_329.lus b/lustrec_tests/lustre_files/speed2_e7_223_e8_329.lus
index e291c2edf9bb1dd4f4c74b01e4af079fe467ff8a..eff12edb54f20a9e80b4d632ddf303cd18b1d8dd 100644
--- a/lustrec_tests/lustre_files/speed2_e7_223_e8_329.lus
+++ b/lustrec_tests/lustre_files/speed2_e7_223_e8_329.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e7_223_e8_329(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e7_496.lus b/lustrec_tests/lustre_files/speed2_e7_496.lus
index 9411f0579b6f51eb6e79c6be9b283ce9eeb8d728..2281b80ce80f2abb8cb97261021b89fb98e9482b 100644
--- a/lustrec_tests/lustre_files/speed2_e7_496.lus
+++ b/lustrec_tests/lustre_files/speed2_e7_496.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e7_496(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e8_449.lus b/lustrec_tests/lustre_files/speed2_e8_449.lus
index 37a00e2dfd2afbf89fc58d09ffbe55705f5ddedf..b633f1c782f40a37164aae4ef0406e9d843ee6df 100644
--- a/lustrec_tests/lustre_files/speed2_e8_449.lus
+++ b/lustrec_tests/lustre_files/speed2_e8_449.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e8_449(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e8_449_e7_353.lus b/lustrec_tests/lustre_files/speed2_e8_449_e7_353.lus
index 84a354edc1fa57cf3ca486fa9cbc513beb4ae452..cb3c75b3f5c62a4d6ea88ca13d1b2a3c49b10e2d 100644
--- a/lustrec_tests/lustre_files/speed2_e8_449_e7_353.lus
+++ b/lustrec_tests/lustre_files/speed2_e8_449_e7_353.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e8_449_e7_353(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e8_449_e8_517.lus b/lustrec_tests/lustre_files/speed2_e8_449_e8_517.lus
index 3e7c7b70d1583b24174e2242505e71bd58ffdf8e..088d3a94bb8f8cb7968743960277ba5d193ef72b 100644
--- a/lustrec_tests/lustre_files/speed2_e8_449_e8_517.lus
+++ b/lustrec_tests/lustre_files/speed2_e8_449_e8_517.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e8_449_e8_517(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 3-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed2_e8_750.lus b/lustrec_tests/lustre_files/speed2_e8_750.lus
index 37a00e2dfd2afbf89fc58d09ffbe55705f5ddedf..dde0ed5959cc3a24473a09444b4eb65541c0c77f 100644
--- a/lustrec_tests/lustre_files/speed2_e8_750.lus
+++ b/lustrec_tests/lustre_files/speed2_e8_750.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed2_e8_750(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed_e7_207.lus b/lustrec_tests/lustre_files/speed_e7_207.lus
index 050a8decb88a8310f105f72929011010f3873e61..1ad3a9a097a5afef721790e5933709479943eaa9 100644
--- a/lustrec_tests/lustre_files/speed_e7_207.lus
+++ b/lustrec_tests/lustre_files/speed_e7_207.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed_e7_207(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed_e7_207_e7_538.lus b/lustrec_tests/lustre_files/speed_e7_207_e7_538.lus
index 8e4de02ac336060c5c7f769c8d98d97f36b7c576..5a3af64a5580d196fffc1bb5e1d26006437a95e6 100644
--- a/lustrec_tests/lustre_files/speed_e7_207_e7_538.lus
+++ b/lustrec_tests/lustre_files/speed_e7_207_e7_538.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed_e7_207_e7_538(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed_e7_207_e8_507.lus b/lustrec_tests/lustre_files/speed_e7_207_e8_507.lus
index d3c6d2388e9d8ef541cc73ad03e60a2abcbcb9a5..3ef8150ac854c6928a09912c94c8b45e107e579b 100644
--- a/lustrec_tests/lustre_files/speed_e7_207_e8_507.lus
+++ b/lustrec_tests/lustre_files/speed_e7_207_e8_507.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed_e7_207_e8_507(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed_e7_492.lus b/lustrec_tests/lustre_files/speed_e7_492.lus
index 050a8decb88a8310f105f72929011010f3873e61..5e5020dc020b1ff8f191ec3d94859f3616330a48 100644
--- a/lustrec_tests/lustre_files/speed_e7_492.lus
+++ b/lustrec_tests/lustre_files/speed_e7_492.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed_e7_492(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed_e8_649.lus b/lustrec_tests/lustre_files/speed_e8_649.lus
index 119e6c19665d5d05d35cdfbea123a20404903b0d..f134722658ab6c1f24611cf369ede9578acf95e2 100644
--- a/lustrec_tests/lustre_files/speed_e8_649.lus
+++ b/lustrec_tests/lustre_files/speed_e8_649.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed_e8_649(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/speed_e8_649_e7_709.lus b/lustrec_tests/lustre_files/speed_e8_649_e7_709.lus
index 7d951c8eee7f58201342dd49a7b76121a1b92657..5c4245a8d89c50309d4896413a24d42f0d8ccc5c 100644
--- a/lustrec_tests/lustre_files/speed_e8_649_e7_709.lus
+++ b/lustrec_tests/lustre_files/speed_e8_649_e7_709.lus
@@ -19,7 +19,7 @@ let
   late = false -> if pre late then (diff < 0)
                   else (diff <= -10);
 tel
-node top(beacon,second:bool) returns (OK:bool);
+node speed_e8_649_e7_709(beacon,second:bool) returns (OK:bool);
 --@ contract guarantee OK by 1-induction;
 var late,early: bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark.lus b/lustrec_tests/lustre_files/stalmark.lus
index 80d9f13e6602b16ec2258a7669de447e5ba01f37..157cce3c0cc227cd5ad443cb0e9e7abc42c72795 100644
--- a/lustrec_tests/lustre_files/stalmark.lus
+++ b/lustrec_tests/lustre_files/stalmark.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark (x:bool) returns (OK:bool);
 --@ contract guarantee OK by 2-induction;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e7_27.lus b/lustrec_tests/lustre_files/stalmark_e7_27.lus
index 091d6a168bd81721684630a13112db2d25a03fde..085bfba4d7430df0f4c7a94d3a6edf1b63a2e139 100644
--- a/lustrec_tests/lustre_files/stalmark_e7_27.lus
+++ b/lustrec_tests/lustre_files/stalmark_e7_27.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e7_27 (x:bool) returns (OK:bool);
 --@ contract guarantee OK by 4-induction;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e7_27_e7_31.lus b/lustrec_tests/lustre_files/stalmark_e7_27_e7_31.lus
index 4c2b21f458bf2d54325c7a6941cd74c1df396f24..760fdf4af0606b68974accd6fe34e9d08529f0ab 100644
--- a/lustrec_tests/lustre_files/stalmark_e7_27_e7_31.lus
+++ b/lustrec_tests/lustre_files/stalmark_e7_27_e7_31.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e7_27_e7_31 (x:bool) returns (OK:bool);
 --@ contract guarantee OK by 4-induction;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e7_76.lus b/lustrec_tests/lustre_files/stalmark_e7_76.lus
index b8a6698a0e86d8b781851cef6e25d57f86d20f37..5a3639e687cd034e21c0ded63edf5bbf112bde8c 100644
--- a/lustrec_tests/lustre_files/stalmark_e7_76.lus
+++ b/lustrec_tests/lustre_files/stalmark_e7_76.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e7_76 (x:bool) returns (OK:bool);
 --@ contract guarantee OK by 4-induction;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e8_48.lus b/lustrec_tests/lustre_files/stalmark_e8_48.lus
index 5d02c4deb3feb3879a9dba810e332a522ecf60af..85cbec075942cf9b9a4fabe5e3b87b0fb048a6a4 100644
--- a/lustrec_tests/lustre_files/stalmark_e8_48.lus
+++ b/lustrec_tests/lustre_files/stalmark_e8_48.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e8_48 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e8_64.lus b/lustrec_tests/lustre_files/stalmark_e8_64.lus
index 5d02c4deb3feb3879a9dba810e332a522ecf60af..f690d6df983e1ddbebca99a5a8bd078373de67fa 100644
--- a/lustrec_tests/lustre_files/stalmark_e8_64.lus
+++ b/lustrec_tests/lustre_files/stalmark_e8_64.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e8_64 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e8_64_e7_80.lus b/lustrec_tests/lustre_files/stalmark_e8_64_e7_80.lus
index c21199646c993bf77b04f8431bcfa45c0d4d7a2c..6c4a508a3e2b3ca3db0504ea90cbe5d325036870 100644
--- a/lustrec_tests/lustre_files/stalmark_e8_64_e7_80.lus
+++ b/lustrec_tests/lustre_files/stalmark_e8_64_e7_80.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e8_64_e7_80 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/stalmark_e8_64_e8_207.lus b/lustrec_tests/lustre_files/stalmark_e8_64_e8_207.lus
index 1763aca07df373d546796b8f116211387c2d34f5..2690f7a86632b2099eab40fcdd205ecd946b9281 100644
--- a/lustrec_tests/lustre_files/stalmark_e8_64_e8_207.lus
+++ b/lustrec_tests/lustre_files/stalmark_e8_64_e8_207.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (OK:bool);
+node stalmark_e8_64_e8_207 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var a,b,c:bool;
 let
diff --git a/lustrec_tests/lustre_files/steam_boiler.lus b/lustrec_tests/lustre_files/steam_boiler.lus
index c3620567e2f160ad5bfbd75e6f45e7963c8a4409..ae444b78ee6e0ae217325d61b9b41e09b7bed36e 100644
--- a/lustrec_tests/lustre_files/steam_boiler.lus
+++ b/lustrec_tests/lustre_files/steam_boiler.lus
@@ -627,7 +627,7 @@ let
     SteamOutput(op_mode,steam_defect,steam_repaired); 
 tel
 --ensures OK;
-node top (* steam_boiler *) (
+node steam_boiler (* steam_boiler *) (
   steam_boiler_waiting,physical_units_ready,stop_request:bool; 
   steam,level_defect,steam_defect:int; 
   pump_defect_0,pump_defect_1,pump_defect_2,pump_defect_3,pump_control_defect_0,pump_control_defect_1,pump_control_defect_2,pump_control_defect_3:int; 
diff --git a/lustrec_tests/lustre_files/steam_boiler_no_arr2_e6_3003_e4_15091.lus b/lustrec_tests/lustre_files/steam_boiler_no_arr2_e6_3003_e4_15091.lus
index 7a0e25076663028e040169c7349da33754054aea..21cdebe349548e16a81bdc8918082e71cdec5449 100644
--- a/lustrec_tests/lustre_files/steam_boiler_no_arr2_e6_3003_e4_15091.lus
+++ b/lustrec_tests/lustre_files/steam_boiler_no_arr2_e6_3003_e4_15091.lus
@@ -622,7 +622,7 @@ let
   (b2,b3)=
     SteamOutput(op_mode_,steam_defect,steam_repaired); 
 tel
-node top(
+node steam_boiler_no_arr2_e6_3003_e4_15091(
   steam_boiler_waiting,physical_units_ready,stop_request:bool; 
   steam,level_defect,steam_defect:int; 
   pump_defect_0,pump_defect_1,pump_defect_2,pump_defect_3,pump_control_defect_0,pump_control_defect_1,pump_control_defect_2,pump_control_defect_3:int; 
diff --git a/lustrec_tests/lustre_files/swimmingpool_1.lus b/lustrec_tests/lustre_files/swimmingpool_1.lus
index 93ca55bf26e624982a52dffaebbececccd499237..a99df482b099cb3e75403d085737694d22d4fb14 100644
--- a/lustrec_tests/lustre_files/swimmingpool_1.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_1.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_1(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_1_e7_1621.lus b/lustrec_tests/lustre_files/swimmingpool_1_e7_1621.lus
index 17fc484bf844a675a6a3ed4f37a2a77a7262acbd..610fbf23a60d0bc8fc5391d7e9a602ba64324c12 100644
--- a/lustrec_tests/lustre_files/swimmingpool_1_e7_1621.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_1_e7_1621.lus
@@ -63,7 +63,7 @@ let
 	p2 = init_p2 -> 
 	pre p2;
 tel
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_1_e7_1621(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_2.lus b/lustrec_tests/lustre_files/swimmingpool_2.lus
index 6f09f0026ccd6ae2fcde581a28a4a6b6968aa52f..8e12dbfa4667fbaccd6febab285defd2b5354af1 100644
--- a/lustrec_tests/lustre_files/swimmingpool_2.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_2.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_2(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_3.lus b/lustrec_tests/lustre_files/swimmingpool_3.lus
index 20420db782f16c662ca95a0648a97ca14ccb2152..b7e5ac073b00b38d01f7d76fd0c929e69ec1d9d7 100644
--- a/lustrec_tests/lustre_files/swimmingpool_3.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_3.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_3(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_4.lus b/lustrec_tests/lustre_files/swimmingpool_4.lus
index b8b82eab7ce458a2739d4e2f0f3acb605924f4bf..2800d204ea6c836a9e872d0d48cabaead884286b 100644
--- a/lustrec_tests/lustre_files/swimmingpool_4.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_4.lus
@@ -83,7 +83,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_4(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_4_e7_2197.lus b/lustrec_tests/lustre_files/swimmingpool_4_e7_2197.lus
index d0e6f97694a70304db0cad553ae406d41c97aec3..860bfa85c5e213111e65e0a2478b7bbb29bcf0bb 100644
--- a/lustrec_tests/lustre_files/swimmingpool_4_e7_2197.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_4_e7_2197.lus
@@ -63,7 +63,7 @@ let
 	p2 = init_p2 -> 
 	pre p2;
 tel
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_4_e7_2197(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_5.lus b/lustrec_tests/lustre_files/swimmingpool_5.lus
index fde9f7d64e132347a326d09ab42b7500d18facc7..d4a3d773b6b1578f0eec203a2e139239615f9e3c 100644
--- a/lustrec_tests/lustre_files/swimmingpool_5.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_5.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_5(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_6.lus b/lustrec_tests/lustre_files/swimmingpool_6.lus
index 6bc19883e35d5f1846e601f7a2f29a9a4dfae3b3..c6a6b142094d7f72c8518efa40f93691a04cb3e4 100644
--- a/lustrec_tests/lustre_files/swimmingpool_6.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_6.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_6(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_6_e7_10_e7_341.lus b/lustrec_tests/lustre_files/swimmingpool_6_e7_10_e7_341.lus
index f98fa29ecf5ed83627f68fd28ec31d2fd5615749..59f6d3363af57d2a69d57340c27e8b3f032ec970 100644
--- a/lustrec_tests/lustre_files/swimmingpool_6_e7_10_e7_341.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_6_e7_10_e7_341.lus
@@ -63,7 +63,7 @@ let
 	p2 = init_p2 -> 
 	pre p2;
 tel
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_6_e7_10_e7_341(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_6_e7_399.lus b/lustrec_tests/lustre_files/swimmingpool_6_e7_399.lus
index e1e25b5ee282cb490bbf2d4df9b433b42d7c7dbe..65fb44bf7c737d5eddaaf328b2b23beab03689d6 100644
--- a/lustrec_tests/lustre_files/swimmingpool_6_e7_399.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_6_e7_399.lus
@@ -63,7 +63,7 @@ let
 	p2 = init_p2 -> 
 	pre p2;
 tel
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_6_e7_399(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_7.lus b/lustrec_tests/lustre_files/swimmingpool_7.lus
index 8d52fb0a061331bda4b901b1a5bc0c6b51164927..b7754909c63db3084b629651e1c233295c3659d3 100644
--- a/lustrec_tests/lustre_files/swimmingpool_7.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_7.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_7(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_8.lus b/lustrec_tests/lustre_files/swimmingpool_8.lus
index 2c260eda689dd9ebaa5946063e3e1a3f6342c796..81c1b8fd7a4a716d5533a55072c4b536a2dbda59 100644
--- a/lustrec_tests/lustre_files/swimmingpool_8.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_8.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_8(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/swimmingpool_9.lus b/lustrec_tests/lustre_files/swimmingpool_9.lus
index 859aa47b920615d046873c4309ef87903f770c32..97f54080947c5153b45be2c30683ab1a886b3083 100644
--- a/lustrec_tests/lustre_files/swimmingpool_9.lus
+++ b/lustrec_tests/lustre_files/swimmingpool_9.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
+node swimmingpool_9(e1, e2, e3, e4, e5, e6 : bool;init_p1, init_p2 : int)
 returns ( OK : bool );
 --@ contract guarantee OK;
     var x1, x2, x3, x4, x5, x6, x7, p1, p2 : int;
diff --git a/lustrec_tests/lustre_files/switch.lus b/lustrec_tests/lustre_files/switch.lus
index e63fa7c836730101b34a916509c262cb11a03120..855ed17d6f085c56b61bb93cff80997f5df2185c 100644
--- a/lustrec_tests/lustre_files/switch.lus
+++ b/lustrec_tests/lustre_files/switch.lus
@@ -12,7 +12,7 @@ let
                   else pre(level);
 tel
 
-node top(set, treset, init:bool) returns (OK:bool);
+node switch(set, treset, init:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var level,level1:bool;
 let
diff --git a/lustrec_tests/lustre_files/switch2.lus b/lustrec_tests/lustre_files/switch2.lus
index 8897170309d8a72e919748cb642896d7ec99d80d..9760e7db8737d1921f8b021ea26221279e9c2d9d 100644
--- a/lustrec_tests/lustre_files/switch2.lus
+++ b/lustrec_tests/lustre_files/switch2.lus
@@ -13,7 +13,7 @@ let
 tel
 
 --requires assert to be true
-node top(set, treset, init:bool) returns (OK:bool);
+node switch2(set, treset, init:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var level,level1:bool;
 let
diff --git a/lustrec_tests/lustre_files/test_counter2.lus b/lustrec_tests/lustre_files/test_counter2.lus
index 1f0ddc1ec8f0a992c9475c0a86402741e1488958..7d2d0a127573f8101b0960620a14ce5698a69e9c 100644
--- a/lustrec_tests/lustre_files/test_counter2.lus
+++ b/lustrec_tests/lustre_files/test_counter2.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (ok: bool);
+node test_counter2 (x:bool) returns (ok: bool);
 var bit: bool;
     coin: bool;
 let
diff --git a/lustrec_tests/lustre_files/test_ok.lus b/lustrec_tests/lustre_files/test_ok.lus
index 1f0ddc1ec8f0a992c9475c0a86402741e1488958..d08c2d13398df54bfa7ebbec4e19c1e84b81c467 100644
--- a/lustrec_tests/lustre_files/test_ok.lus
+++ b/lustrec_tests/lustre_files/test_ok.lus
@@ -1,4 +1,4 @@
-node top (x:bool) returns (ok: bool);
+node test_ok (x:bool) returns (ok: bool);
 var bit: bool;
     coin: bool;
 let
diff --git a/lustrec_tests/lustre_files/ticket3i_1.lus b/lustrec_tests/lustre_files/ticket3i_1.lus
index 0ab8412624e5e777072709dffa2768a0eb312245..8e53ef502da1c72bbdd8a0b99fd8641a8615c01f 100644
--- a/lustrec_tests/lustre_files/ticket3i_1.lus
+++ b/lustrec_tests/lustre_files/ticket3i_1.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_1( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_1_e7_1669.lus b/lustrec_tests/lustre_files/ticket3i_1_e7_1669.lus
index 11ea90a5bcd3d234d1ca5866e0fd14f1f1609971..c8ef73cfbc7499a1764d7649e26ae4d05d6ea08c 100644
--- a/lustrec_tests/lustre_files/ticket3i_1_e7_1669.lus
+++ b/lustrec_tests/lustre_files/ticket3i_1_e7_1669.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_1_e7_1669( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_2.lus b/lustrec_tests/lustre_files/ticket3i_2.lus
index f374aa2c90d7dea2f00843fae1931ddb8c46392a..bfd7b711e972e8e5ebb05d19bd8d98386bc94bd6 100644
--- a/lustrec_tests/lustre_files/ticket3i_2.lus
+++ b/lustrec_tests/lustre_files/ticket3i_2.lus
@@ -82,7 +82,7 @@ let
 tel
 
 -- Not provable in luke-bitvec
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_2( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_3.lus b/lustrec_tests/lustre_files/ticket3i_3.lus
index df650502cdfdc86f56d8eef102747cad78d759ea..f4d635cdb604a887738f28cc4852d8785fdaada2 100644
--- a/lustrec_tests/lustre_files/ticket3i_3.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3.lus
@@ -82,7 +82,7 @@ let
 tel
 
 -- Not provable in luke-bitvec
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e7_1312.lus b/lustrec_tests/lustre_files/ticket3i_3_e7_1312.lus
index adc51ee8d9137cc8a2dad59fd47462ef0855dc88..4ec8e8640097e89d9b5dac9c3d62da25923aeb49 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e7_1312.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e7_1312.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e7_1312( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e7_1495.lus b/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e7_1495.lus
index 05db85a076c8a4506637e5534802fc2fa7060e75..4b35ebd5371aedc2c801513fe5e5d17468c75344 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e7_1495.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e7_1495.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e7_1312_e7_1495( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e8_1916.lus b/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e8_1916.lus
index be1def0a2cb65a4c53f59765dc48ffa11437b87f..8402c3e05376ac432b5d4e65db482d86d92d98c4 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e8_1916.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e7_1312_e8_1916.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e7_1312_e8_1916( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e7_99.lus b/lustrec_tests/lustre_files/ticket3i_3_e7_99.lus
index adc51ee8d9137cc8a2dad59fd47462ef0855dc88..78cd55cc38db8c5afd2ed76ce3e39c1c99ed7e46 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e7_99.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e7_99.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e7_99( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e8_1703.lus b/lustrec_tests/lustre_files/ticket3i_3_e8_1703.lus
index 960aab00d4029f0adead3c539a3d00cb609d8def..58420cf4aea48862482149a79d12ad51e61dc2df 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e8_1703.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e8_1703.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e8_1703( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e7_3491.lus b/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e7_3491.lus
index 1b8cc3f87b26fad810b3440e0f91c11d94f3446e..38cd3179f66ad338e3283b17d1fdfd13c612c2ac 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e7_3491.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e7_3491.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e8_1703_e7_3491( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e8_2560.lus b/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e8_2560.lus
index 02e8c1d2360adb3839d0b8597fd8eab6a0e8b567..20a645078c8efab5bf535329ef83fcc8e61f4805 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e8_2560.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e8_1703_e8_2560.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e8_1703_e8_2560( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_3_e8_1788.lus b/lustrec_tests/lustre_files/ticket3i_3_e8_1788.lus
index 960aab00d4029f0adead3c539a3d00cb609d8def..a963710d901ba495a3b3b430130aa4b2d5429e38 100644
--- a/lustrec_tests/lustre_files/ticket3i_3_e8_1788.lus
+++ b/lustrec_tests/lustre_files/ticket3i_3_e8_1788.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_3_e8_1788( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_4.lus b/lustrec_tests/lustre_files/ticket3i_4.lus
index 228d75d0793e6a057040ea309cdf1e5cf7882446..375793742eca2460059f6be4145c177d0fc4480f 100644
--- a/lustrec_tests/lustre_files/ticket3i_4.lus
+++ b/lustrec_tests/lustre_files/ticket3i_4.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_4( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_4_e7_1775_e7_3320.lus b/lustrec_tests/lustre_files/ticket3i_4_e7_1775_e7_3320.lus
index e390c1d6e5dc4659aa0919f52d91bf0ade69178d..42ed8a576b1c65c19593161f9d9d1eb6a734bdcb 100644
--- a/lustrec_tests/lustre_files/ticket3i_4_e7_1775_e7_3320.lus
+++ b/lustrec_tests/lustre_files/ticket3i_4_e7_1775_e7_3320.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_4_e7_1775_e7_3320( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_5.lus b/lustrec_tests/lustre_files/ticket3i_5.lus
index 16345d9fbaae1a8e53bd96e4ea4ab42a342b6176..1943a579b00cb24cc98dd46a7e7813b81c65db8d 100644
--- a/lustrec_tests/lustre_files/ticket3i_5.lus
+++ b/lustrec_tests/lustre_files/ticket3i_5.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_5( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_5_e7_3307.lus b/lustrec_tests/lustre_files/ticket3i_5_e7_3307.lus
index 3e7da7b0ddfae8047718c6930b0d909cd767cf71..ed8e0173f32903ccbd563ef0cf642b03dfb2a317 100644
--- a/lustrec_tests/lustre_files/ticket3i_5_e7_3307.lus
+++ b/lustrec_tests/lustre_files/ticket3i_5_e7_3307.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_5_e7_3307( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_6.lus b/lustrec_tests/lustre_files/ticket3i_6.lus
index cbd691bf6e8584ef05ac08a531636131747d283d..a5f11cdf185a8e335af6a180d037b0a3827d30c8 100644
--- a/lustrec_tests/lustre_files/ticket3i_6.lus
+++ b/lustrec_tests/lustre_files/ticket3i_6.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_6( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_6_e7_1096_e7_2688.lus b/lustrec_tests/lustre_files/ticket3i_6_e7_1096_e7_2688.lus
index 27a9e049a05026aa0e28ef3d533d05686114e0ae..3253135f661a1c8fbf02f6b5dbd1031206cd51f2 100644
--- a/lustrec_tests/lustre_files/ticket3i_6_e7_1096_e7_2688.lus
+++ b/lustrec_tests/lustre_files/ticket3i_6_e7_1096_e7_2688.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_6_e7_1096_e7_2688( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_7.lus b/lustrec_tests/lustre_files/ticket3i_7.lus
index 98f37723c2500117b55bb7926899c9be9488b6f1..bdc869e196ae1f61e3d626c20e2ed44dabe9a7af 100644
--- a/lustrec_tests/lustre_files/ticket3i_7.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_7_e1_2192_e1_1852.lus b/lustrec_tests/lustre_files/ticket3i_7_e1_2192_e1_1852.lus
index be141b262f646d257e2daa311efb191ffc67aeec..120c19345257e608a2cc3b5ed8cbfbc86f8bc66c 100644
--- a/lustrec_tests/lustre_files/ticket3i_7_e1_2192_e1_1852.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7_e1_2192_e1_1852.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7_e1_2192_e1_1852( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 4-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_7_e2_2724_e7_524.lus b/lustrec_tests/lustre_files/ticket3i_7_e2_2724_e7_524.lus
index 0024e841abf77b7566c99592cbba677110150db8..5fb5060acc8f2d1a9a7b75bffadd5c45f6dc1efb 100644
--- a/lustrec_tests/lustre_files/ticket3i_7_e2_2724_e7_524.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7_e2_2724_e7_524.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7_e2_2724_e7_524( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_7_e3_59_e7_2122.lus b/lustrec_tests/lustre_files/ticket3i_7_e3_59_e7_2122.lus
index 5314e46ae997025b325c0f3ac5bf9dd9e55e7c86..b5ad72c479b0ea464a45e9ccc9369c570a178433 100644
--- a/lustrec_tests/lustre_files/ticket3i_7_e3_59_e7_2122.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7_e3_59_e7_2122.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7_e3_59_e7_2122( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_7_e7_3176.lus b/lustrec_tests/lustre_files/ticket3i_7_e7_3176.lus
index 0d82ad861ebd3397a613803207706bcd77925d32..80daffe8b50abc4e9bd344fe8a7adede6586bab9 100644
--- a/lustrec_tests/lustre_files/ticket3i_7_e7_3176.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7_e7_3176.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7_e7_3176( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_7_e7_3176_e1_2924.lus b/lustrec_tests/lustre_files/ticket3i_7_e7_3176_e1_2924.lus
index 863e51c362b5eba539d1875e9ba6b694f5e85e39..aeb38045875842c86de5ec282a186fb96d542396 100644
--- a/lustrec_tests/lustre_files/ticket3i_7_e7_3176_e1_2924.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7_e7_3176_e1_2924.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7_e7_3176_e1_2924( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_7_e8_2126_e7_78.lus b/lustrec_tests/lustre_files/ticket3i_7_e8_2126_e7_78.lus
index 9470f760e41acf1587c73253e35cdf0b2ccc5514..253ebf4b0b41b4242f4bfbbb93c882513fe2b949 100644
--- a/lustrec_tests/lustre_files/ticket3i_7_e8_2126_e7_78.lus
+++ b/lustrec_tests/lustre_files/ticket3i_7_e8_2126_e7_78.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_7_e8_2126_e7_78( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_all.lus b/lustrec_tests/lustre_files/ticket3i_all.lus
index bf2b31cf3f6536a00014e7b58fba655fe1f0c412..72dacfcf3f8f4317d3ddf950b2292e3369093bc6 100644
--- a/lustrec_tests/lustre_files/ticket3i_all.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all.lus
@@ -81,7 +81,7 @@ let
 
 tel
 
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
diff --git a/lustrec_tests/lustre_files/ticket3i_all_e1_2706_e7_1776.lus b/lustrec_tests/lustre_files/ticket3i_all_e1_2706_e7_1776.lus
index c3eab1e5916843d5b4df27ce5f193be89960608e..c7d7da8d68387d82d5a1569dfeabeed70de86863 100644
--- a/lustrec_tests/lustre_files/ticket3i_all_e1_2706_e7_1776.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all_e1_2706_e7_1776.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all_e1_2706_e7_1776( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_all_e2_1117_e7_553.lus b/lustrec_tests/lustre_files/ticket3i_all_e2_1117_e7_553.lus
index b12ea6f56ebe4d7565708a48930a682be3cfdfb5..e58e8f6d214ee319190ba3edfd700d2b1994e5f4 100644
--- a/lustrec_tests/lustre_files/ticket3i_all_e2_1117_e7_553.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all_e2_1117_e7_553.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all_e2_1117_e7_553( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_all_e3_557_e7_3464.lus b/lustrec_tests/lustre_files/ticket3i_all_e3_557_e7_3464.lus
index 1052b5e9ea04c57f47694003adaa8fd55c7205a6..e2593f08b169d9389671009cd4e6bb67ffc689f3 100644
--- a/lustrec_tests/lustre_files/ticket3i_all_e3_557_e7_3464.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all_e3_557_e7_3464.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all_e3_557_e7_3464( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_all_e7_1837.lus b/lustrec_tests/lustre_files/ticket3i_all_e7_1837.lus
index c2953adfd241823a04c583de0e7e8671a3c79cb8..fcc068cbd77328e868c9cc511853e184787a1ca9 100644
--- a/lustrec_tests/lustre_files/ticket3i_all_e7_1837.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all_e7_1837.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all_e7_1837( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_all_e7_591.lus b/lustrec_tests/lustre_files/ticket3i_all_e7_591.lus
index c2953adfd241823a04c583de0e7e8671a3c79cb8..ff7af100a7792e079a0cd51763679ef27df41144 100644
--- a/lustrec_tests/lustre_files/ticket3i_all_e7_591.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all_e7_591.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all_e7_591( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/ticket3i_all_e8_505_e7_2450.lus b/lustrec_tests/lustre_files/ticket3i_all_e8_505_e7_2450.lus
index 1178f1ab75450bf84662908e73d34458f5f1ebd1..73ea506ca1056ab92f126d469e1a9dedd5552b24 100644
--- a/lustrec_tests/lustre_files/ticket3i_all_e8_505_e7_2450.lus
+++ b/lustrec_tests/lustre_files/ticket3i_all_e8_505_e7_2450.lus
@@ -67,7 +67,7 @@ let
    if(e7) then if(g7) then pre t else pre a3 else 
    pre a3;
 tel
-node top( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
+node ticket3i_all_e8_505_e7_2450( e1, e2, e3, e4, e5, e6, e7, e8, e9 : bool;
          init_a1, init_a2, init_a3, init_t : int )
 returns ( OK : bool );
 --@ contract guarantee OK;
diff --git a/lustrec_tests/lustre_files/traffic.lus b/lustrec_tests/lustre_files/traffic.lus
index 61a15f0c7f9ad3d85d1c8c2b40624f9c13672eb1..958d54c967d3360a5ae82803016b8f1259bf1bba 100644
--- a/lustrec_tests/lustre_files/traffic.lus
+++ b/lustrec_tests/lustre_files/traffic.lus
@@ -20,7 +20,7 @@ let
      else Prev;
 tel
 
-node top( Delta : int ) returns ( OK : bool );
+node traffic( Delta : int ) returns ( OK : bool );
 --@ contract guarantee OK by 2-induction;
 var Total : int;
 let
diff --git a/lustrec_tests/lustre_files/traffic_e7_46.lus b/lustrec_tests/lustre_files/traffic_e7_46.lus
index a95cf4384a5813697824d5d0e76ba34b2ac75a69..3a9202d1bc592f1e917e1d8243767eb3581a6554 100644
--- a/lustrec_tests/lustre_files/traffic_e7_46.lus
+++ b/lustrec_tests/lustre_files/traffic_e7_46.lus
@@ -11,7 +11,7 @@ let
      else if Delta > 0 and Prev < 10 then Prev+Delta
      else Prev;
 tel
-node top( Delta : int ) returns ( OK : bool );
+node traffic_e7_46( Delta : int ) returns ( OK : bool );
 --@ contract guarantee OK;
 var Total : int;
 let
diff --git a/lustrec_tests/lustre_files/traffic_e7_46_e7_171.lus b/lustrec_tests/lustre_files/traffic_e7_46_e7_171.lus
index 78f0a80a2433f0531d0439374edcc7db6d971852..2fff59d241397c508a9dff14a2bb03bac124f59d 100644
--- a/lustrec_tests/lustre_files/traffic_e7_46_e7_171.lus
+++ b/lustrec_tests/lustre_files/traffic_e7_46_e7_171.lus
@@ -11,7 +11,7 @@ let
      else if Delta > 0 and Prev < 10 then Prev+Delta
      else Prev;
 tel
-node top( Delta : int ) returns ( OK : bool );
+node traffic_e7_46_e7_171( Delta : int ) returns ( OK : bool );
 --@ contract guarantee OK;
 var Total : int;
 let
diff --git a/lustrec_tests/lustre_files/tramway.lus b/lustrec_tests/lustre_files/tramway.lus
index 3d47ca04c8e27fddcb54260b3386b62cecc619bc..45c1cd89627135a3f17bda66778b8c746d6eb993 100644
--- a/lustrec_tests/lustre_files/tramway.lus
+++ b/lustrec_tests/lustre_files/tramway.lus
@@ -140,7 +140,7 @@ tel
   -- [explain]  |  +---------+  |   +------------+
   -- [explain]  +---------------+-->| property   |-->
   -- [explain]                      +------------+
-node top(request_door, warning_start, in_station, door_is_open: bool)
+node tramway(request_door, warning_start, in_station, door_is_open: bool)
 returns (OK: bool);
 --@ contract guarantee OK by 7-induction;
 var
diff --git a/lustrec_tests/lustre_files/tramway_e7_1834.lus b/lustrec_tests/lustre_files/tramway_e7_1834.lus
index 6680b30f53033ba6ff640f389c0891a4c92ea01f..5c45b9f87d9aa589d379251f06c67e5e3b75fe76 100644
--- a/lustrec_tests/lustre_files/tramway_e7_1834.lus
+++ b/lustrec_tests/lustre_files/tramway_e7_1834.lus
@@ -76,7 +76,7 @@ let
                  edge(not in_station),
                  jafter(door_is_open));
 tel
-node top(request_door, warning_start, in_station, door_is_open: bool)
+node tramway_e7_1834(request_door, warning_start, in_station, door_is_open: bool)
 returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var
diff --git a/lustrec_tests/lustre_files/tramway_e7_1834_e7_2363.lus b/lustrec_tests/lustre_files/tramway_e7_1834_e7_2363.lus
index 80982aa02f37ddde5973c865edda4cb9e7994325..14ee8c28e73d96174fde8cd958b46c6e4f7e169f 100644
--- a/lustrec_tests/lustre_files/tramway_e7_1834_e7_2363.lus
+++ b/lustrec_tests/lustre_files/tramway_e7_1834_e7_2363.lus
@@ -76,7 +76,7 @@ let
                  edge(not in_station),
                  jafter(door_is_open));
 tel
-node top(request_door, warning_start, in_station, door_is_open: bool)
+node tramway_e7_1834_e7_2363(request_door, warning_start, in_station, door_is_open: bool)
 returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var
diff --git a/lustrec_tests/lustre_files/tramway_e7_1834_e8_3192.lus b/lustrec_tests/lustre_files/tramway_e7_1834_e8_3192.lus
index 74f0a68aa9860513b8098b1edb00ac894f252647..0ca0227b0a863b47b8b2f5969cc124d7f015b002 100644
--- a/lustrec_tests/lustre_files/tramway_e7_1834_e8_3192.lus
+++ b/lustrec_tests/lustre_files/tramway_e7_1834_e8_3192.lus
@@ -76,7 +76,7 @@ let
                  edge(not in_station),
                  jafter(door_is_open));
 tel
-node top(request_door, warning_start, in_station, door_is_open: bool)
+node tramway_e7_1834_e8_3192(request_door, warning_start, in_station, door_is_open: bool)
 returns (OK: bool);
 --@ contract guarantee OK by 7-induction;
 var
diff --git a/lustrec_tests/lustre_files/tramway_e7_3304.lus b/lustrec_tests/lustre_files/tramway_e7_3304.lus
index 6680b30f53033ba6ff640f389c0891a4c92ea01f..6c0bac52caf08cd1b3983895235516b558c77db0 100644
--- a/lustrec_tests/lustre_files/tramway_e7_3304.lus
+++ b/lustrec_tests/lustre_files/tramway_e7_3304.lus
@@ -76,7 +76,7 @@ let
                  edge(not in_station),
                  jafter(door_is_open));
 tel
-node top(request_door, warning_start, in_station, door_is_open: bool)
+node tramway_e7_3304(request_door, warning_start, in_station, door_is_open: bool)
 returns (OK: bool);
 --@ contract guarantee OK by 2-induction;
 var
diff --git a/lustrec_tests/lustre_files/twisted_counters.lus b/lustrec_tests/lustre_files/twisted_counters.lus
index afb33c256935394cb41898473bed596a04cb62a6..350a84a735634d2e54408d180a3fc5c44d48c615 100644
--- a/lustrec_tests/lustre_files/twisted_counters.lus
+++ b/lustrec_tests/lustre_files/twisted_counters.lus
@@ -30,7 +30,7 @@ let
 tel
 
 
-node top (x:bool) returns (OK:bool);
+node twisted_counters (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var b,d:bool;
 let
diff --git a/lustrec_tests/lustre_files/two_counters_e1_268.lus b/lustrec_tests/lustre_files/two_counters_e1_268.lus
index 254ff98189a9c67cc855466bab0e125d9c4d772b..1bd39e8dd4400d8f88430165b25e074826fe58be 100644
--- a/lustrec_tests/lustre_files/two_counters_e1_268.lus
+++ b/lustrec_tests/lustre_files/two_counters_e1_268.lus
@@ -13,7 +13,7 @@ let
             else pre time +1+ 1;
   out = (time = 2);
 tel
-node top (x:bool) returns (OK:bool);
+node two_counters_e1_268 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var b,d:bool;
 let
diff --git a/lustrec_tests/lustre_files/two_counters_e2_3.lus b/lustrec_tests/lustre_files/two_counters_e2_3.lus
index 742e20c11cdc25383d2a718e60cd8d6b04c7ccca..9532b95f2dca1b08179b76abbcce9201b572abc0 100644
--- a/lustrec_tests/lustre_files/two_counters_e2_3.lus
+++ b/lustrec_tests/lustre_files/two_counters_e2_3.lus
@@ -13,7 +13,7 @@ let
             else pre time -1+ 1;
   out = (time = 2);
 tel
-node top (x:bool) returns (OK:bool);
+node two_counters_e2_3 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var b,d:bool;
 let
diff --git a/lustrec_tests/lustre_files/two_counters_e3_325.lus b/lustrec_tests/lustre_files/two_counters_e3_325.lus
index 9fe988c33520592f433a2a6216b6a3741fb282e9..59e3f652f736a858028fd38529825ee95a10162a 100644
--- a/lustrec_tests/lustre_files/two_counters_e3_325.lus
+++ b/lustrec_tests/lustre_files/two_counters_e3_325.lus
@@ -13,7 +13,7 @@ let
             else pre time - 1;
   out = (time = 2);
 tel
-node top (x:bool) returns (OK:bool);
+node two_counters_e3_325 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var b,d:bool;
 let
diff --git a/lustrec_tests/lustre_files/two_counters_e7_222.lus b/lustrec_tests/lustre_files/two_counters_e7_222.lus
index 8af3d1cb474f7ac9f1e408543923ce1f1daf50c4..5000bffa59d1727aea2e11ac0e77ba67102140c4 100644
--- a/lustrec_tests/lustre_files/two_counters_e7_222.lus
+++ b/lustrec_tests/lustre_files/two_counters_e7_222.lus
@@ -13,7 +13,7 @@ let
             else pre time + 1;
   out = (time = 2);
 tel
-node top (x:bool) returns (OK:bool);
+node two_counters_e7_222 (x:bool) returns (OK:bool);
 --@ contract guarantee OK;
 var b,d:bool;
 let
diff --git a/lustrec_tests/lustre_files/ums.lus b/lustrec_tests/lustre_files/ums.lus
index 560729b7df8b3a8337832235eb147258088a54ee..7d1a7d754a47049a1086f1ff379146cbb44de44f 100644
--- a/lustrec_tests/lustre_files/ums.lus
+++ b/lustrec_tests/lustre_files/ums.lus
@@ -53,7 +53,7 @@ let
    only_on_B = on_B and not(on_A or on_C);
 tel
 
-node top(on_A, on_B, on_C, ack_AB, ack_BC: bool)
+node ums(on_A, on_B, on_C, ack_AB, ack_BC: bool)
 returns(OK: bool);
 --@ contract guarantee OK by 2-induction;
 var
diff --git a/lustrec_tests/lustre_files/ums_e7_1700.lus b/lustrec_tests/lustre_files/ums_e7_1700.lus
index 3ed08027b194f47dd3121ae19978fa5fa611ed1d..7e9d8d5663677f9c3a26077f59ce886581ab4c19 100644
--- a/lustrec_tests/lustre_files/ums_e7_1700.lus
+++ b/lustrec_tests/lustre_files/ums_e7_1700.lus
@@ -41,7 +41,7 @@ let
    empty_section = not(on_A or on_B or on_C);
    only_on_B = on_B and not(on_A or on_C);
 tel
-node top(on_A, on_B, on_C, ack_AB, ack_BC: bool)
+node ums_e7_1700(on_A, on_B, on_C, ack_AB, ack_BC: bool)
 returns(OK: bool);
 --@ contract guarantee OK;
 var
diff --git a/lustrec_tests/lustre_files/ums_e8_1032.lus b/lustrec_tests/lustre_files/ums_e8_1032.lus
index a03d25c63726834c877eeb39f76711d1f050b073..91a926c396367e3765e7f009df3a19aae61cf6a0 100644
--- a/lustrec_tests/lustre_files/ums_e8_1032.lus
+++ b/lustrec_tests/lustre_files/ums_e8_1032.lus
@@ -41,7 +41,7 @@ let
    empty_section = not(on_A or on_B or on_C);
    only_on_B = on_B and not(on_A or on_C);
 tel
-node top(on_A, on_B, on_C, ack_AB, ack_BC: bool)
+node ums_e8_1032(on_A, on_B, on_C, ack_AB, ack_BC: bool)
 returns(OK: bool);
 --@ contract guarantee OK by 4-induction;
 var