SPARSE ARRAYS
=============

Avec chapeaux (sans la fin du test harness :( )
-------------

*** Z3

supprimé les 3 buts improuvables

z3 sparse_why.z3.smt  3,72s user 0,14s system 99% cpu 3,865 total

à la main, 10s de timeout : 29s, moins 20 pour les deux improuvables
donc 9s, en incluant 0 timeouts

*** Alt-ergo

array_create
146: Valid (0.0680) invariant of the created array
156: Valid (0.0000) post-condition
array_get
167: Valid (0.0000) post-condition
array_set
175: Valid (0.0000) invariant of the modified array
187: Valid (0.0040) post-condition (contents)
  ---- post-condition on length is trivial ----
create
397: Valid (0.0040) pre-condition of array_create
  ---- assertion to help provers was deleted ----
412: Valid (0.0320) invariant of the created sparse array
463: Valid (0.0160) post-condition (size)
529: Valid (0.1840) post-condition (model)
sget
602: Valid (0.0080) pre-condition of array_get on a.idx
621: Valid (0.0040) pre-condition of array_get on a.idx
640: Valid (0.0080) pre-condition of array_get on a.back
663: Valid (0.0080) pre-condition of array_get on a.value
691: Valid (0.1840) post-condition
742: Valid (0.1440) post-condition
  ---- assertion to help provers was deleted ----
790: Valid (0.3040) post-condition

sset
833: Valid (0.0040) pre-condition of array_set on a.value
852: Valid (0.0080) pre-condition of array_set on a.value
871: Valid (0.0080) pre-condition of array_get on a.idx
898: Valid (0.0080) pre-condition of array_get on a.back
  ---- assertion to help provers was deleted ----
929: Valid (0.0360) invariant of the sparse array
  ---- trivial part of the post-condition omitted ----
  ---- trivial part of the post-condition omitted ----
967: Valid (0.2160) post-condition
1020: I don't know   a.n < a.size
1056: Valid (0.0400) pre-condition of array_set on a.back
1100: Valid (0.0080) pre-condition of array_set on a.back
  ---- assertion to help provers was deleted ----
1144: Valid (0.2000) invariant of the sparse array
  ---- trivial part of the post-condition omitted ----
  ---- trivial part of the post-condition omitted ----
1200: Valid (0.2080) post-condition
1271: I don't know   a.n < a.size
1302: Valid (0.0360) pre-condition of array_set on a.back
1341: Valid (0.0160) pre-condition of array_set on a.back
  ---- assertion to help provers was deleted ----
1380: Valid (0.3600) invariant of the sparse array
  ---- trivial part of the post-condition omitted ----
  ---- trivial part of the post-condition omitted ----
1431: Valid (0.3880) post-condition
test
1497: Valid (0.0040) pre-condition of let a = create
1500: Valid (0.0040) pre-condition of sget on a
1519: Valid (0.0040) pre-condition of sget on b
1541: Valid (0.0120) assertion
1566: Valid (0.0120) assertion
1591: Valid (0.0040) pre-condition of sget on a
1635: Valid (0.0080) pre-condition of sget on b
1682: Valid (0.0040) assertion
1732: Valid (0.0080) assertion
1782: Valid (0.0040) pre-condition of sget on a
1833: Valid (0.0080) pre-condition of sget on b
1887: Valid (2.3241) assertion
1944: Valid (2.2681) assertion
2001: Valid (0.0080) pre-condition of sget on a
2059: Valid (0.0080) pre-condition of sget on b
2120: Valid (5.8004) assertion
2184: Valid (5.4643) assertion
2248: Valid (0.0080) pre-condition of sget on a
2313: Valid (0.0080) pre-condition of sget on b
2381: I don't know   false (à ne pas mettre)

Sans chapeaux
-------------

*** Z3

supprimé les 3 buts improuvables

abandon à partir du moment où ça s'est mis à swapper (vers 1min30)

à la main, 10s de timeout : 2min 36s, moins 20 pour les deux improuvables
donc 2min 16s, en incluant 10 timeouts

*** Alt-ergo

array_create
146: Valid (0.1200)
161: Valid (0.0040)
array_get
177: Valid (0.0000)
array_set
185: Valid (0.0040)
199: Valid (0.0040)
214: Valid (0.0040)
create
426: Valid (0.0040)
447: Valid (0.3280)
530: Valid (2.6962)
616: Valid (0.1840)
703: Valid (1.0441)
sget
797: Valid (0.0080)
810: Valid (0.0080)
823: Valid (0.0080)
844: Valid (0.0120)
871: Valid (0.0440)
907: Valid (0.0240)
940: Valid (0.0240)
961: Valid (0.0400)
sset
989: Valid (0.0080)
1002: Valid (0.0080)
1015: Valid (0.0400)
1041: Valid (0.0400)
1071: Valid (0.0200)
1107: Valid (0.4680)
1146: Valid (0.0680)
1186: Valid (0.8241)
1228: Valid (0.0840)
1268: I don't know
1304: Valid (0.6360)
1353: Valid (0.0760)
1402: Valid (0.5520)
1469: Valid (6.0044)
1539: Valid (0.1520)
1610: Valid (3.4802)
1683: Valid (0.2400)
1754: I don't know
1784: Valid (0.9681)
1827: Valid (0.1200)
1870: Valid (1.0281)
1931: Valid (27.1977)
1995: Valid (0.2720)
2060: Valid (6.7404)
2127: Valid (0.4480)
test
2192: Valid (0.0040)
2195: Valid (0.0040)
2224: Valid (0.0080)
2256: Valid (0.0080)
2291: Valid (0.0120)
2326: Valid (0.0080)
2390: Valid (0.0040)
2457: Valid (0.0080)
2527: Valid (0.0080)
2597: Valid (0.0080)
2668: Valid (0.0080)
2742: Valid (8.1445)
2819: Valid (7.9045)
2896: Valid (0.0080)
2974: Valid (0.0080)
3055: Valid (25.8416)
3139: Valid (24.7935)
3223: Valid (0.0080)
3308: Valid (0.0120)
3396: I don't know

COURSE
======

Avec chapeaux
-------------

*** Z3

à la main, 10s de timeout : 34s, en incluant 3 timeouts, dont un
improuvable => 24s avec 2 timeouts

*** Alt-Ergo

create_course
221: Valid (0.0480)
237: Valid (0.0120)

add_student
254: Valid (0.0040)
271: I don't know
300: Valid (0.9281)
330: Valid (0.0240)
360: Valid (0.0200)
390: Valid (0.0400)

change_mark
422: Valid (0.0080)
441: I don't know
505: Valid (11.8727)

538: Valid (0.0320)
572: Inconsistent assumption
572: Valid (0.0040)
 ---- trivial (post-condition for count) ----
609: Valid (0.0080)

main
624: Valid (0.0040)
651: Valid (0.0000)
682: Valid (0.0040)
714: Valid (0.0120)
758: Valid (0.0040)
806: Valid (0.0000)
855: Valid (0.0440)
911: Valid (0.0040)
984: Valid (0.0040)
1058: Valid (0.0040)
1133: Valid (0.0040)
1316: Valid (0.0360)
1410: Valid (0.0040)

Sans chapeaux
-------------

*** Z3

à la main, 10s de timeout : 1min 12s, en incluant 7 timeouts, dont un
improuvable => 62s avec 6 timeouts

*** Alt-Ergo

create_course
221: Valid (0.1680) invariant of the created course
243: Valid (0.0240) post-condition

add_student
266: Valid (0.0080) invariant of the created student
284: I don't know   invariant of the modified course
318: Valid (12.9168) post-condition (mark)
353: Valid (0.0680) post-condition (count)
388: Valid (0.0800) post-condition (sum)
423: Valid (0.2280) post-condition (other marks)

change_mark
461: Valid (0.0040) invariant of the student
480: I don't know   assertion to help provers
546: Valid (24.7335) invariant of the course

580: Valid (0.0800) post-condition (mark)
615: Valid (0.0720) post-condition (sum)
649: Inconsistent assumption
649: Valid (0.0000) post-condition (count)
687: Valid (0.0040) post-condition (other marks)

main
706: Valid (0.0120) assertion
726: Valid (0.0000) assertion
761: Valid (0.0040) assertion
799: Valid (0.0040) assertion
838: Valid (0.0120) assertion
891: Valid (0.0040) assertion
947: Valid (0.0080) assertion
1004: Valid (0.0040) assertion
1064: Valid (0.0520) assertion ----
1125: Valid (0.0080) assertion
1204: Valid (0.0080) assertion
1284: Valid (0.0040) assertion
1365: Valid (0.0080) assertion
1564: Valid (0.0080) assertion
1666: Valid (0.0080) assertion
?
?
