Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
why3
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
121
Issues
121
List
Boards
Labels
Service Desk
Milestones
Merge Requests
17
Merge Requests
17
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Why3
why3
Commits
8e1cfbcf
Commit
8e1cfbcf
authored
Jan 14, 2014
by
MARCHE Claude
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
interp: improved bench
parent
886b27e8
Changes
19
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
2563 additions
and
2236 deletions
+2563
-2236
examples/euler001.mlw
examples/euler001.mlw
+4
-1
examples/euler001/why3session.xml
examples/euler001/why3session.xml
+131
-107
examples/euler002.mlw
examples/euler002.mlw
+4
-1
examples/euler002/why3session.xml
examples/euler002/why3session.xml
+112
-88
examples/fibonacci.mlw
examples/fibonacci.mlw
+5
-3
examples/fibonacci/why3session.xml
examples/fibonacci/why3session.xml
+96
-52
examples/insertion_sort.mlw
examples/insertion_sort.mlw
+12
-10
examples/insertion_sort/why3session.xml
examples/insertion_sort/why3session.xml
+111
-244
examples/knuth_prime_numbers.mlw
examples/knuth_prime_numbers.mlw
+5
-2
examples/knuth_prime_numbers/why3session.xml
examples/knuth_prime_numbers/why3session.xml
+563
-539
examples/same_fringe.mlw
examples/same_fringe.mlw
+4
-1
examples/same_fringe/why3session.xml
examples/same_fringe/why3session.xml
+32
-8
examples/selection_sort.mlw
examples/selection_sort.mlw
+12
-10
examples/selection_sort/why3session.xml
examples/selection_sort/why3session.xml
+301
-92
examples/vacid_0_sparse_array.mlw
examples/vacid_0_sparse_array.mlw
+11
-9
examples/vacid_0_sparse_array/why3session.xml
examples/vacid_0_sparse_array/why3session.xml
+33
-9
examples/verifythis_fm2012_LRS.mlw
examples/verifythis_fm2012_LRS.mlw
+17
-13
examples/verifythis_fm2012_LRS/why3session.xml
examples/verifythis_fm2012_LRS/why3session.xml
+1103
-1045
src/main.ml
src/main.ml
+7
-2
No files found.
examples/euler001.mlw
View file @
8e1cfbcf
...
...
@@ -171,6 +171,9 @@ module Euler001
let run () = solve 1000
(* should return 233168 *)
let bench () = if run () <> 233168 then absurd
exception BenchFailure
let bench () raises { BenchFailure -> true } =
if run () <> 233168 then raise BenchFailure
end
examples/euler001/why3session.xml
View file @
8e1cfbcf
This diff is collapsed.
Click to expand it.
examples/euler002.mlw
View file @
8e1cfbcf
...
...
@@ -152,6 +152,9 @@ module Solve
let run () = f 4000000 (* should be 4613732 *)
let bench () = if run () <> 4613732 then absurd
exception BenchFailure
let bench () raises { BenchFailure -> true } =
if run () <> 4613732 then raise BenchFailure
end
examples/euler002/why3session.xml
View file @
8e1cfbcf
...
...
@@ -7,30 +7,34 @@
version=
"0.95.1"
/>
<prover
id=
"1"
name=
"Alt-Ergo"
version=
"0.95.2"
/>
<prover
id=
"2"
name=
"CVC3"
version=
"2.2"
/>
<prover
id=
"
2
"
id=
"
3
"
name=
"CVC3"
version=
"2.4.1"
/>
<prover
id=
"
3
"
id=
"
4
"
name=
"CVC4"
version=
"1.2"
/>
<prover
id=
"
4
"
id=
"
5
"
name=
"Coq"
version=
"8.4pl2"
/>
<prover
id=
"
5
"
id=
"
6
"
name=
"Z3"
version=
"2.19"
/>
<prover
id=
"
6
"
id=
"
7
"
name=
"Z3"
version=
"3.2"
/>
<prover
id=
"
7
"
id=
"
8
"
name=
"Z3"
version=
"4.3.1"
/>
<file
...
...
@@ -70,7 +74,7 @@
expanded=
"true"
shape=
"ainfix =amodV0c3c1qainfix =amodafibV0c2c0Iainfix >=V0c0F"
>
<proof
prover=
"
4
"
prover=
"
5
"
timelimit=
"5"
memlimit=
"1000"
edited=
"euler002_FibOnlyEven_fib_even_1.v"
...
...
@@ -88,7 +92,7 @@
expanded=
"true"
shape=
"ainfix =afib_evenV0afibainfix +ainfix *c3V0c1Iainfix >=V0c0F"
>
<proof
prover=
"
4
"
prover=
"
5
"
timelimit=
"5"
memlimit=
"1000"
edited=
"euler002_FibOnlyEven_fib_even_correct_1.v"
...
...
@@ -139,7 +143,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -147,7 +151,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -155,7 +159,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -163,7 +167,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -171,7 +175,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -179,7 +183,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -207,7 +211,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -215,7 +219,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -223,7 +227,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -231,7 +235,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -239,7 +243,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -247,7 +251,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -275,7 +279,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -283,7 +287,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -291,7 +295,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -299,7 +303,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -307,7 +311,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -315,7 +319,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -343,7 +347,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -351,7 +355,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -359,7 +363,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -367,7 +371,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -375,7 +379,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -383,7 +387,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -411,7 +415,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -419,7 +423,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -427,7 +431,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -435,7 +439,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -443,7 +447,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -451,7 +455,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -479,7 +483,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -487,7 +491,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -495,7 +499,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -503,7 +507,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -511,7 +515,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -519,7 +523,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -547,7 +551,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -555,7 +559,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -563,7 +567,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -571,7 +575,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -579,7 +583,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -587,7 +591,7 @@
<result
status=
"valid"
time=
"0.02"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -615,7 +619,7 @@
<result
status=
"valid"
time=
"0.11"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -643,7 +647,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -651,7 +655,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -659,7 +663,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -667,7 +671,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -675,7 +679,7 @@
<result
status=
"valid"
time=
"0.02"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -683,7 +687,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -711,7 +715,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -719,7 +723,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -727,7 +731,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
3
"
prover=
"
4
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -735,7 +739,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -743,7 +747,7 @@
<result
status=
"valid"
time=
"0.02"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -751,7 +755,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -779,7 +783,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -787,7 +791,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -815,7 +819,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -823,7 +827,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -831,7 +835,7 @@
<result
status=
"valid"
time=
"0.00"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -839,7 +843,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
6
"
prover=
"
7
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -847,7 +851,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
7
"
prover=
"
8
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -875,7 +879,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -883,7 +887,7 @@
<result
status=
"valid"
time=
"0.01"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -903,7 +907,7 @@
<label
name=
"expl:VC for f"
/>
<proof
prover=
"
1
"
prover=
"
2
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -911,7 +915,7 @@
<result
status=
"valid"
time=
"0.06"
/>
</proof>
<proof
prover=
"
2
"
prover=
"
3
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -919,7 +923,7 @@
<result
status=
"valid"
time=
"0.08"
/>
</proof>
<proof
prover=
"
5
"
prover=
"
6
"
timelimit=
"5"
memlimit=
"1000"
obsolete=
"false"
...
...
@@ -927,7 +931,7 @@
<result
status=
"valid"
time=
"0.05"
/>
</proof>