Mentions légales du service
Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
why3
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container registry
Monitor
Service Desk
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Why3
why3
Commits
2e14ec07
Commit
2e14ec07
authored
12 years ago
by
Andrei Paskevich
Browse files
Options
Downloads
Patches
Plain Diff
spec modification in vacid_0_build_maze
parent
4de92223
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
examples/vacid_0_build_maze.mlw
+58
-59
58 additions, 59 deletions
examples/vacid_0_build_maze.mlw
examples/vacid_0_build_maze/why3session.xml
+60
-67
60 additions, 67 deletions
examples/vacid_0_build_maze/why3session.xml
with
118 additions
and
126 deletions
examples/vacid_0_build_maze.mlw
+
58
−
59
View file @
2e14ec07
theory UnionFind
theory UnionFind
_pure
use import int.Int
type uf
type uf
_pure
predicate repr uf int int
function size uf : int
function num uf : int
predicate repr uf
_pure
int int
function size uf
_pure
: int
function num uf
_pure
: int
axiom Repr_function_1:
forall u:uf, x:int.
forall u:uf
_pure
, x:int.
0 <= x < size u -> exists y:int. 0 <= y < size u /\ repr u x y
axiom Repr_function_2:
forall u:uf, x y z:int.
forall u:uf
_pure
, x y z:int.
0 <= x < size u -> repr u x y -> repr u x z -> y = z
predicate same (u:uf) (x y:int) =
forall r:int. repr u x r <-> repr u y r
predicate same (u:uf
_pure
) (x y:int) =
forall r:int. repr u x r <-> repr u y r
predicate same_reprs (u1 u2 : uf) =
predicate same_reprs (u1 u2 : uf
_pure
) =
forall x r:int. repr u1 x r <-> repr u2 x r
axiom OneClass :
forall u:uf. num u = 1 ->
forall u:uf
_pure
. num u = 1 ->
forall x y:int. 0 <= x < size u -> 0 <= y < size u -> same u x y
end
...
...
@@ -31,32 +32,35 @@ end
module UnionFind_sig
use import int.Int
use
im
port
ref.Ref
use
ex
port
UnionFind_pure
use export UnionFind
type uf model { mutable state : uf_pure }
val create (n:int) :
ref
uf
val create (n:int) : uf
requires { 0 <= n }
ensures { num !result = n /\ size !result = n /\
forall x:int. 0 <= x < n -> repr !result x x }
val find (u:ref uf) (x:int) : int writes {u}
requires { 0 <= x < size !u }
ensures { repr !u x result /\
size !u = size (old !u) /\ num !u = num (old !u) /\
same_reprs !u (old !u) }
val union (u:ref uf) (a:int) (b:int) : unit writes {u}
requires { 0 <= a < size !u /\ 0 <= b < size !u /\ not same !u a b }
ensures { same !u a b /\
size !u = size (old !u) /\ num !u = num (old !u) - 1 /\
forall x y:int. 0 <= x < size !u -> 0 <= y < size !u ->
same !u x y <->
same (old !u) x y \/
same (old !u) x a /\ same (old !u) b y \/
same (old !u) x b /\ same (old !u) a y }
val get_num_classes (u:ref uf) : int reads {u} ensures { result = num !u }
ensures { num result.state = n /\ size result.state = n /\
forall x:int. 0 <= x < n -> repr result.state x x }
val find (u:uf) (x:int) : int writes {u}
requires { 0 <= x < size u.state }
ensures { repr u.state x result /\
size u.state = size (old u.state) /\
num u.state = num (old u.state) /\
same_reprs u.state (old u.state) }
val union (u:uf) (a:int) (b:int) : unit writes {u}
requires { 0 <= a < size u.state /\
0 <= b < size u.state /\ not same u.state a b }
ensures { same u.state a b /\
size u.state = size (old u.state) /\
num u.state = num (old u.state) - 1 /\
forall x y:int. 0 <= x < size u.state -> 0 <= y < size u.state ->
same u.state x y <->
same (old u.state) x y \/
same (old u.state) x a /\ same (old u.state) b y \/
same (old u.state) x b /\ same (old u.state) a y }
val get_num_classes (u:uf) : int reads {u} ensures { result = num u.state }
end
...
...
@@ -74,19 +78,12 @@ theory Graph
end
theory Graph_int
clone export Graph with type vertex = int
end
module Graph_sig
use import int.Int
use import ref.Ref
(* clone export Graph with type vertex = int *)
use export Graph_int
clone export Graph with type vertex = int
val graph : ref graph
...
...
@@ -96,10 +93,10 @@ module Graph_sig
requires { not path !graph a b }
ensures { !num_edges = old !num_edges + 1 /\
(forall x y:int.
path !graph x y <->
path (old !graph) x y \/
path (old !graph) x a /\ path (old !graph) b y \/
path (old !graph) x b /\ path (old !graph) a y) }
path !graph x y <->
path (old !graph) x y \/
path (old !graph) x a /\ path (old !graph) b y \/
path (old !graph) x b /\ path (old !graph) a y) }
end
...
...
@@ -116,18 +113,19 @@ module BuildMaze
lemma Ineq1 :
forall n x y:int. 0 <= n -> 0 <= x < n -> 0 <= y < n -> 0 <= x*n+y < n*n
let add_edge_and_union (u:
ref
uf) (a:int) (b:int)
requires { 0 <= a < size
!
u /\ 0 <= b < size
!
u /\
not same
!
u a b /\ not path !graph a b /\
let add_edge_and_union (u: uf) (a:int) (b:int)
requires { 0 <= a < size u
.state
/\ 0 <= b < size u
.state
/\
not same u
.state
a b /\ not path !graph a b /\
forall x y:int.
0 <= x < size
!
u -> 0 <= y < size
!
u ->
same
!
u x y <-> path !graph x y }
0 <= x < size u
.state
-> 0 <= y < size u
.state
->
same u
.state
x y <-> path !graph x y }
ensures { !num_edges = old !num_edges + 1 /\
same !u a b /\
size !u = size (old !u) /\ num !u = num (old !u) - 1 /\
same u.state a b /\
size u.state = size (old u.state) /\
num u.state = num (old u.state) - 1 /\
(forall x y:int.
0 <= x < size
!
u -> 0 <= y < size
!
u ->
same
!
u x y <-> path !graph x y) }
0 <= x < size u
.state
-> 0 <= y < size u
.state
->
same u
.state
x y <-> path !graph x y) }
= add_edge a b;
union u a b
...
...
@@ -138,12 +136,13 @@ let build_maze (n:int)
forall x y:int. 0 <= x < n*n -> 0 <= y < n*n -> path !graph x y }
= let u = create (n*n) in
assert { forall x y:int. 0 <= x < n*n -> 0 <= y < n*n ->
same
!
u x y -> (repr
!
u x y && repr
!
u x x && x = y) };
same u
.state
x y -> (repr u
.state
x y && repr u
.state
x x && x = y) };
while get_num_classes u > 1 do
invariant {
1 <= num !u /\ num !u + !num_edges = size !u = n*n /\
forall x y:int. 0 <= x < n*n -> 0 <= y < n*n ->
(same !u x y <-> path !graph x y) }
1 <= num u.state /\
num u.state + !num_edges = size u.state = n*n /\
forall x y:int. 0 <= x < n*n -> 0 <= y < n*n ->
(same u.state x y <-> path !graph x y) }
let x = rand n in
let y = rand n in
let d = rand 2 in
...
...
This diff is collapsed.
Click to expand it.
examples/vacid_0_build_maze/why3session.xml
+
60
−
67
View file @
2e14ec07
...
...
@@ -12,57 +12,50 @@
<prover
id=
"2"
name=
"Z3"
version=
"4.
3.1
"
/>
version=
"4.
2
"
/>
<file
name=
"../vacid_0_build_maze.mlw"
verified=
"true"
expanded=
"true"
>
<theory
name=
"UnionFind"
name=
"UnionFind
_pure
"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"2"
loccnumb=
"7"
loccnume=
"1
6
"
loclnum=
"2"
loccnumb=
"7"
loccnume=
"
2
1"
verified=
"true"
expanded=
"true"
>
</theory>
<theory
name=
"UnionFind_sig"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"3
1
"
loccnumb=
"7"
loccnume=
"20"
loclnum=
"3
2
"
loccnumb=
"7"
loccnume=
"20"
verified=
"true"
expanded=
"true"
>
</theory>
<theory
name=
"Graph"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"63"
loccnumb=
"7"
loccnume=
"12"
verified=
"true"
expanded=
"true"
>
</theory>
<theory
name=
"Graph_int"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"77"
loccnumb=
"7"
loccnume=
"16"
loclnum=
"64"
loccnumb=
"7"
loccnume=
"12"
verified=
"true"
expanded=
"true"
>
</theory>
<theory
name=
"Graph_sig"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"8
3
"
loccnumb=
"7"
loccnume=
"16"
loclnum=
"
7
8"
loccnumb=
"7"
loccnume=
"16"
verified=
"true"
expanded=
"true"
>
</theory>
<theory
name=
"BuildMaze"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"10
6
"
loccnumb=
"7"
loccnume=
"16"
loclnum=
"10
0
"
loccnumb=
"7"
loccnume=
"16"
verified=
"true"
expanded=
"true"
>
<goal
name=
"Ineq1"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
6
"
loccnumb=
"8"
loccnume=
"13"
sum=
"
296f7be2946d7506596e15f248afc703
"
loclnum=
"11
0
"
loccnumb=
"8"
loccnume=
"13"
sum=
"
3eaa4d824439d7c498954baf97a7c829
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <ainfix +ainfix *V1V0V2ainfix *V0V0Aainfix <=c0ainfix +ainfix *V1V0V2Iainfix <V2V0Aainfix <=c0V2Iainfix <V1V0Aainfix <=c0V1Iainfix <=c0V0F"
>
...
...
@@ -73,9 +66,9 @@
<goal
name=
"Ineq1.1"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
6
"
loccnumb=
"8"
loccnume=
"13"
loclnum=
"11
0
"
loccnumb=
"8"
loccnume=
"13"
expl=
"1."
sum=
"
7b7588411ecf2ffbe6e7248a6e7935a3
"
sum=
"
b5abf29652bccb6074393479fe34f687
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <=c0ainfix +ainfix *V1V0V2Iainfix <V2V0Aainfix <=c0V2Iainfix <V1V0Aainfix <=c0V1Iainfix <=c0V0F"
>
...
...
@@ -91,9 +84,9 @@
<goal
name=
"Ineq1.2"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
6
"
loccnumb=
"8"
loccnume=
"13"
loclnum=
"11
0
"
loccnumb=
"8"
loccnume=
"13"
expl=
"2."
sum=
"
617cee004edfc4b884b9d0c2d99917ee
"
sum=
"
3c93bc80fc536500f1d33200221973e6
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <ainfix +ainfix *V1V0V2ainfix *V0V0Iainfix <V2V0Aainfix <=c0V2Iainfix <V1V0Aainfix <=c0V1Iainfix <=c0V0F"
>
...
...
@@ -103,7 +96,7 @@
memlimit=
"1000"
obsolete=
"false"
archived=
"false"
>
<result
status=
"valid"
time=
"0.
2
2"
/>
<result
status=
"valid"
time=
"0.
4
2"
/>
</proof>
</goal>
</transf>
...
...
@@ -111,9 +104,9 @@
<goal
name=
"WP_parameter add_edge_and_union"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
9
"
loccnumb=
"6"
loccnume=
"24"
loclnum=
"11
3
"
loccnumb=
"6"
loccnume=
"24"
expl=
"VC for add_edge_and_union"
sum=
"
5af461b260f024d533967bc4bf2a1106
"
sum=
"
8f6506de4e168488faa468fe3ed8f9ae
"
proved=
"true"
expanded=
"false"
shape=
"apathV6V8V9qasameV7V8V9Iainfix <V9asizeV7Aainfix <=c0V9Iainfix <V8asizeV7Aainfix <=c0V8FAainfix =anumV7ainfix -anumV2c1Aainfix =asizeV7asizeV2AasameV7V0V1Aainfix =V5ainfix +V3c1IasameV2V0V11AasameV2V10V1OasameV2V1V11AasameV2V10V0OasameV2V10V11qasameV7V10V11Iainfix <V11asizeV7Aainfix <=c0V11Iainfix <V10asizeV7Aainfix <=c0V10FAainfix =anumV7ainfix -anumV2c1Aainfix =asizeV7asizeV2AasameV7V0V1FAasameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0IapathV4V0V13AapathV4V12V1OapathV4V1V13AapathV4V12V0OapathV4V12V13qapathV6V12V13FAainfix =V5ainfix +V3c1FAapathV4V0V1NIapathV4V14V15qasameV2V14V15Iainfix <V15asizeV2Aainfix <=c0V15Iainfix <V14asizeV2Aainfix <=c0V14FAapathV4V0V1NAasameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0FF"
>
...
...
@@ -126,9 +119,9 @@
<goal
name=
"WP_parameter add_edge_and_union.1"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
9
"
loccnumb=
"6"
loccnume=
"24"
loclnum=
"11
3
"
loccnumb=
"6"
loccnume=
"24"
expl=
"1. precondition"
sum=
"
86ed15c0d8cab5ffe5b0e6cc2fd7b19d
"
sum=
"
d206e4e54e5c9d53f503eace29bc61c0
"
proved=
"true"
expanded=
"false"
shape=
"apathV4V0V1NIapathV4V5V6qasameV2V5V6Iainfix <V6asizeV2Aainfix <=c0V6Iainfix <V5asizeV2Aainfix <=c0V5FAapathV4V0V1NAasameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0FF"
>
...
...
@@ -146,9 +139,9 @@
<goal
name=
"WP_parameter add_edge_and_union.2"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
9
"
loccnumb=
"6"
loccnume=
"24"
loclnum=
"11
3
"
loccnumb=
"6"
loccnume=
"24"
expl=
"2. precondition"
sum=
"
02d16628f91a8063fb0b616f620a9f89
"
sum=
"
e71629ca482b75ad9986fa0d036bf75a
"
proved=
"true"
expanded=
"false"
shape=
"asameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0IapathV4V0V8AapathV4V7V1OapathV4V1V8AapathV4V7V0OapathV4V7V8qapathV6V7V8FAainfix =V5ainfix +V3c1FIapathV4V0V1NIapathV4V9V10qasameV2V9V10Iainfix <V10asizeV2Aainfix <=c0V10Iainfix <V9asizeV2Aainfix <=c0V9FAapathV4V0V1NAasameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0FF"
>
...
...
@@ -166,9 +159,9 @@
<goal
name=
"WP_parameter add_edge_and_union.3"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"11
9
"
loccnumb=
"6"
loccnume=
"24"
loclnum=
"11
3
"
loccnumb=
"6"
loccnume=
"24"
expl=
"3. postcondition"
sum=
"
4ab69cfd01b6133cc176ac413c7afb4
d"
sum=
"
72c8e946daf92c6320e2509ae2b10c7
d"
proved=
"true"
expanded=
"false"
shape=
"apathV6V8V9qasameV7V8V9Iainfix <V9asizeV7Aainfix <=c0V9Iainfix <V8asizeV7Aainfix <=c0V8FAainfix =anumV7ainfix -anumV2c1Aainfix =asizeV7asizeV2AasameV7V0V1Aainfix =V5ainfix +V3c1IasameV2V0V11AasameV2V10V1OasameV2V1V11AasameV2V10V0OasameV2V10V11qasameV7V10V11Iainfix <V11asizeV7Aainfix <=c0V11Iainfix <V10asizeV7Aainfix <=c0V10FAainfix =anumV7ainfix -anumV2c1Aainfix =asizeV7asizeV2AasameV7V0V1FIasameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0IapathV4V0V13AapathV4V12V1OapathV4V1V13AapathV4V12V0OapathV4V12V13qapathV6V12V13FAainfix =V5ainfix +V3c1FIapathV4V0V1NIapathV4V14V15qasameV2V14V15Iainfix <V15asizeV2Aainfix <=c0V15Iainfix <V14asizeV2Aainfix <=c0V14FAapathV4V0V1NAasameV2V0V1NAainfix <V1asizeV2Aainfix <=c0V1Aainfix <V0asizeV2Aainfix <=c0V0FF"
>
...
...
@@ -180,7 +173,7 @@
memlimit=
"1000"
obsolete=
"false"
archived=
"false"
>
<result
status=
"valid"
time=
"
2.73
"
/>
<result
status=
"valid"
time=
"
4.25
"
/>
</proof>
</goal>
</transf>
...
...
@@ -188,9 +181,9 @@
<goal
name=
"WP_parameter build_maze"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"VC for build_maze"
sum=
"
85862ac15a2e55aacf89eab486eab149
"
sum=
"
cff6a3f0c02e64acea00d2d46f17f3c6
"
proved=
"true"
expanded=
"true"
shape=
"iainfix >anumV4c1iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0iainfix =V13V11NapathV16V17V18qasameV14V17V18Iainfix <V18ainfix *V0V0Aainfix <=c0V18Iainfix <V17ainfix *V0V0Aainfix <=c0V17FAainfix =asizeV14ainfix *V0V0Aainfix =ainfix +anumV14V15asizeV14Aainfix <=c1anumV14IapathV16V19V20qasameV14V19V20Iainfix <V20asizeV14Aainfix <=c0V20Iainfix <V19asizeV14Aainfix <=c0V19FAainfix =anumV14ainfix -anumV12c1Aainfix =asizeV14asizeV12AasameV14ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix =V15ainfix +V5c1FAapathV6V21V22qasameV12V21V22Iainfix <V22asizeV12Aainfix <=c0V22Iainfix <V21asizeV12Aainfix <=c0V21FAapathV6ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1NAasameV12ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1NAainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV12Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix <ainfix +ainfix *V8V0V7asizeV12Aainfix <=c0ainfix +ainfix *V8V0V7apathV6V23V24qasameV12V23V24Iainfix <V24ainfix *V0V0Aainfix <=c0V24Iainfix <V23ainfix *V0V0Aainfix <=c0V23FAainfix =asizeV12ainfix *V0V0Aainfix =ainfix +anumV12V5asizeV12Aainfix <=c1anumV12Iasame_reprsV12V10Aainfix =anumV12anumV10Aainfix =asizeV12asizeV10AareprV12ainfix +ainfix *V8V0V7V13FFAainfix <ainfix +ainfix *V8V0V7asizeV10Aainfix <=c0ainfix +ainfix *V8V0V7Iasame_reprsV10V4Aainfix =anumV10anumV4Aainfix =asizeV10asizeV4AareprV10ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1V11FFAainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV4Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7apathV6V25V26qasameV4V25V26Iainfix <V26ainfix *V0V0Aainfix <=c0V26Iainfix <V25ainfix *V0V0Aainfix <=c0V25FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4Iainfix <V9c2Aainfix <=c0V9FAainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FAainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FAainfix <c0V0apathV6V27V28Iainfix <V28ainfix *V0V0Aainfix <=c0V28Iainfix <V27ainfix *V0V0Aainfix <=c0V27FAainfix =V5ainfix -ainfix *V0V0c1IapathV6V29V30qasameV4V29V30Iainfix <V30ainfix *V0V0Aainfix <=c0V30Iainfix <V29ainfix *V0V0Aainfix <=c0V29FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FAapathV2V31V32qasameV3V31V32Iainfix <V32ainfix *V0V0Aainfix <=c0V32Iainfix <V31ainfix *V0V0Aainfix <=c0V31FAainfix =asizeV3ainfix *V0V0Aainfix =ainfix +anumV3V1asizeV3Aainfix <=c1anumV3Aainfix =V33V34AareprV3V33V33AareprV3V33V34IasameV3V33V34Iainfix <V34ainfix *V0V0Aainfix <=c0V34Iainfix <V33ainfix *V0V0Aainfix <=c0V33FIareprV3V35V35Iainfix <V35ainfix *V0V0Aainfix <=c0V35FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FAainfix <=c0ainfix *V0V0IapathV2V36V37qainfix =V36V37FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -203,9 +196,9 @@
<goal
name=
"WP_parameter build_maze.1"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"1. precondition"
sum=
"
dbd9d66ed34573265cf03c1723fe3194
"
sum=
"
1f45d8714783e1f89fba5d3245130d83
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <=c0ainfix *V0V0IapathV2V3V4qainfix =V3V4FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -223,9 +216,9 @@
<goal
name=
"WP_parameter build_maze.2"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"2. assertion"
sum=
"
ba6f9bb547e3b05840ec2ac44c4e2d21
"
sum=
"
6722e53803d71cb0180cee244d31c6f7
"
proved=
"true"
expanded=
"false"
shape=
"ainfix =V4V5AareprV3V4V4AareprV3V4V5IasameV3V4V5Iainfix <V5ainfix *V0V0Aainfix <=c0V5Iainfix <V4ainfix *V0V0Aainfix <=c0V4FIareprV3V6V6Iainfix <V6ainfix *V0V0Aainfix <=c0V6FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V7V8qainfix =V7V8FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -243,9 +236,9 @@
<goal
name=
"WP_parameter build_maze.3"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"3. loop invariant init"
sum=
"
2
45
a025c34e8959d939159284c2bc33e
"
sum=
"
a
45
d9a509745259fa4e46072f5c19b00
"
proved=
"true"
expanded=
"false"
shape=
"apathV2V4V5qasameV3V4V5Iainfix <V5ainfix *V0V0Aainfix <=c0V5Iainfix <V4ainfix *V0V0Aainfix <=c0V4FAainfix =asizeV3ainfix *V0V0Aainfix =ainfix +anumV3V1asizeV3Aainfix <=c1anumV3Iainfix =V6V7AareprV3V6V6AareprV3V6V7IasameV3V6V7Iainfix <V7ainfix *V0V0Aainfix <=c0V7Iainfix <V6ainfix *V0V0Aainfix <=c0V6FIareprV3V8V8Iainfix <V8ainfix *V0V0Aainfix <=c0V8FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V9V10qainfix =V9V10FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -263,9 +256,9 @@
<goal
name=
"WP_parameter build_maze.4"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"4. precondition"
sum=
"
91fb770767f9de10868e59232a3f4b3f
"
sum=
"
ffb983295548a7ecd15f324e5657dcc6
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <c0V0Iainfix >anumV4c1IapathV6V7V8qasameV4V7V8Iainfix <V8ainfix *V0V0Aainfix <=c0V8Iainfix <V7ainfix *V0V0Aainfix <=c0V7FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V9V10AareprV3V9V9AareprV3V9V10IasameV3V9V10Iainfix <V10ainfix *V0V0Aainfix <=c0V10Iainfix <V9ainfix *V0V0Aainfix <=c0V9FIareprV3V11V11Iainfix <V11ainfix *V0V0Aainfix <=c0V11FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V12V13qainfix =V12V13FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -283,9 +276,9 @@
<goal
name=
"WP_parameter build_maze.5"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"5. precondition"
sum=
"
9a066f1317880c0f91febe2d9c18bdaf
"
sum=
"
a9b718d2e7c07ef13ebce9760ad87a73
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V8V9qasameV4V8V9Iainfix <V9ainfix *V0V0Aainfix <=c0V9Iainfix <V8ainfix *V0V0Aainfix <=c0V8FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V10V11AareprV3V10V10AareprV3V10V11IasameV3V10V11Iainfix <V11ainfix *V0V0Aainfix <=c0V11Iainfix <V10ainfix *V0V0Aainfix <=c0V10FIareprV3V12V12Iainfix <V12ainfix *V0V0Aainfix <=c0V12FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V13V14qainfix =V13V14FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -303,9 +296,9 @@
<goal
name=
"WP_parameter build_maze.6"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"6. precondition"
sum=
"
04d5d95a944e56fb4ba7bd6878059a33
"
sum=
"
4014804e04a1a87012f0b58796a4bea5
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V9V10qasameV4V9V10Iainfix <V10ainfix *V0V0Aainfix <=c0V10Iainfix <V9ainfix *V0V0Aainfix <=c0V9FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V11V12AareprV3V11V11AareprV3V11V12IasameV3V11V12Iainfix <V12ainfix *V0V0Aainfix <=c0V12Iainfix <V11ainfix *V0V0Aainfix <=c0V11FIareprV3V13V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V14V15qainfix =V14V15FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -323,9 +316,9 @@
<goal
name=
"WP_parameter build_maze.7"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"7. assertion"
sum=
"
9a1a77493c9be35a09b363fd93f30f02
"
sum=
"
74f81959a795a1b9cc4d5043a1c7c2a7
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V10V11qasameV4V10V11Iainfix <V11ainfix *V0V0Aainfix <=c0V11Iainfix <V10ainfix *V0V0Aainfix <=c0V10FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V12V13AareprV3V12V12AareprV3V12V13IasameV3V12V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13Iainfix <V12ainfix *V0V0Aainfix <=c0V12FIareprV3V14V14Iainfix <V14ainfix *V0V0Aainfix <=c0V14FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V15V16qainfix =V15V16FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -343,11 +336,11 @@
<goal
name=
"WP_parameter build_maze.8"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"8. assertion"
sum=
"
8640c298c192ad8e055a3d7ebb3dcb14
"
sum=
"
ae504ba54ef75b8fe7d63ff62cfe2395
"
proved=
"true"
expanded=
"
tru
e"
expanded=
"
fals
e"
shape=
"ainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V10V11qasameV4V10V11Iainfix <V11ainfix *V0V0Aainfix <=c0V11Iainfix <V10ainfix *V0V0Aainfix <=c0V10FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V12V13AareprV3V12V12AareprV3V12V13IasameV3V12V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13Iainfix <V12ainfix *V0V0Aainfix <=c0V12FIareprV3V14V14Iainfix <V14ainfix *V0V0Aainfix <=c0V14FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V15V16qainfix =V15V16FAainfix =V1c0Aainfix <=c1V0FF"
>
<label
name=
"expl:VC for build_maze"
/>
...
...
@@ -363,9 +356,9 @@
<goal
name=
"WP_parameter build_maze.9"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"9. precondition"
sum=
"
374e0a52d35f06e9c33d5a2d9073a5cd
"
sum=
"
9f178eb9f7b248bb7b4056cf068eefe9
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV4Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V10V11qasameV4V10V11Iainfix <V11ainfix *V0V0Aainfix <=c0V11Iainfix <V10ainfix *V0V0Aainfix <=c0V10FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V12V13AareprV3V12V12AareprV3V12V13IasameV3V12V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13Iainfix <V12ainfix *V0V0Aainfix <=c0V12FIareprV3V14V14Iainfix <V14ainfix *V0V0Aainfix <=c0V14FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V15V16qainfix =V15V16FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -377,15 +370,15 @@
memlimit=
"1000"
obsolete=
"false"
archived=
"false"
>
<result
status=
"valid"
time=
"0.
30
"
/>
<result
status=
"valid"
time=
"0.
65
"
/>
</proof>
</goal>
<goal
name=
"WP_parameter build_maze.10"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"10. precondition"
sum=
"
e89835d9f5b20f732e77f46205abdbb6
"
sum=
"
07767f8e610096dffc4a182b71016abe
"
proved=
"true"
expanded=
"false"
shape=
"ainfix <ainfix +ainfix *V8V0V7asizeV10Aainfix <=c0ainfix +ainfix *V8V0V7Iasame_reprsV10V4Aainfix =anumV10anumV4Aainfix =asizeV10asizeV4AareprV10ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1V11FFIainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV4Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V12V13qasameV4V12V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13Iainfix <V12ainfix *V0V0Aainfix <=c0V12FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V14V15AareprV3V14V14AareprV3V14V15IasameV3V14V15Iainfix <V15ainfix *V0V0Aainfix <=c0V15Iainfix <V14ainfix *V0V0Aainfix <=c0V14FIareprV3V16V16Iainfix <V16ainfix *V0V0Aainfix <=c0V16FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V17V18qainfix =V17V18FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -403,9 +396,9 @@
<goal
name=
"WP_parameter build_maze.11"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"11. precondition"
sum=
"
a4880edba035e13edcb526de470bd0db
"
sum=
"
1d19c44ae7129e8e0904f0528a65faac
"
proved=
"true"
expanded=
"false"
shape=
"apathV6V14V15qasameV12V14V15Iainfix <V15asizeV12Aainfix <=c0V15Iainfix <V14asizeV12Aainfix <=c0V14FAapathV6ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1NAasameV12ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1NAainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV12Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix <ainfix +ainfix *V8V0V7asizeV12Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix =V13V11NIasame_reprsV12V10Aainfix =anumV12anumV10Aainfix =asizeV12asizeV10AareprV12ainfix +ainfix *V8V0V7V13FFIainfix <ainfix +ainfix *V8V0V7asizeV10Aainfix <=c0ainfix +ainfix *V8V0V7Iasame_reprsV10V4Aainfix =anumV10anumV4Aainfix =asizeV10asizeV4AareprV10ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1V11FFIainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV4Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V16V17qasameV4V16V17Iainfix <V17ainfix *V0V0Aainfix <=c0V17Iainfix <V16ainfix *V0V0Aainfix <=c0V16FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V18V19AareprV3V18V18AareprV3V18V19IasameV3V18V19Iainfix <V19ainfix *V0V0Aainfix <=c0V19Iainfix <V18ainfix *V0V0Aainfix <=c0V18FIareprV3V20V20Iainfix <V20ainfix *V0V0Aainfix <=c0V20FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V21V22qainfix =V21V22FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -417,15 +410,15 @@
memlimit=
"1000"
obsolete=
"false"
archived=
"false"
>
<result
status=
"valid"
time=
"
2.67
"
/>
<result
status=
"valid"
time=
"
3.29
"
/>
</proof>
</goal>
<goal
name=
"WP_parameter build_maze.12"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"12. loop invariant preservation"
sum=
"
8865af8626404647cfdfa13d0d764883
"
sum=
"
433b85dd9ccb795c1caf2e68395c3b7c
"
proved=
"true"
expanded=
"false"
shape=
"apathV16V17V18qasameV14V17V18Iainfix <V18ainfix *V0V0Aainfix <=c0V18Iainfix <V17ainfix *V0V0Aainfix <=c0V17FAainfix =asizeV14ainfix *V0V0Aainfix =ainfix +anumV14V15asizeV14Aainfix <=c1anumV14IapathV16V19V20qasameV14V19V20Iainfix <V20asizeV14Aainfix <=c0V20Iainfix <V19asizeV14Aainfix <=c0V19FAainfix =anumV14ainfix -anumV12c1Aainfix =asizeV14asizeV12AasameV14ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix =V15ainfix +V5c1FIapathV6V21V22qasameV12V21V22Iainfix <V22asizeV12Aainfix <=c0V22Iainfix <V21asizeV12Aainfix <=c0V21FAapathV6ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1NAasameV12ainfix +ainfix *V8V0V7ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1NAainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV12Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Aainfix <ainfix +ainfix *V8V0V7asizeV12Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix =V13V11NIasame_reprsV12V10Aainfix =anumV12anumV10Aainfix =asizeV12asizeV10AareprV12ainfix +ainfix *V8V0V7V13FFIainfix <ainfix +ainfix *V8V0V7asizeV10Aainfix <=c0ainfix +ainfix *V8V0V7Iasame_reprsV10V4Aainfix =anumV10anumV4Aainfix =asizeV10asizeV4AareprV10ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1V11FFIainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV4Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V23V24qasameV4V23V24Iainfix <V24ainfix *V0V0Aainfix <=c0V24Iainfix <V23ainfix *V0V0Aainfix <=c0V23FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V25V26AareprV3V25V25AareprV3V25V26IasameV3V25V26Iainfix <V26ainfix *V0V0Aainfix <=c0V26Iainfix <V25ainfix *V0V0Aainfix <=c0V25FIareprV3V27V27Iainfix <V27ainfix *V0V0Aainfix <=c0V27FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V28V29qainfix =V28V29FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -437,15 +430,15 @@
memlimit=
"1000"
obsolete=
"false"
archived=
"false"
>
<result
status=
"valid"
time=
"
0.50
"
/>
<result
status=
"valid"
time=
"
1.14
"
/>
</proof>
</goal>
<goal
name=
"WP_parameter build_maze.13"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"13. loop invariant preservation"
sum=
"b
64c8618316fc71a4afbf49999cf1ddc
"
sum=
"b
d1c628b4ef154780f3f286088f12f1b
"
proved=
"true"
expanded=
"false"
shape=
"apathV6V14V15qasameV12V14V15Iainfix <V15ainfix *V0V0Aainfix <=c0V15Iainfix <V14ainfix *V0V0Aainfix <=c0V14FAainfix =asizeV12ainfix *V0V0Aainfix =ainfix +anumV12V5asizeV12Aainfix <=c1anumV12Iainfix =V13V11NNIasame_reprsV12V10Aainfix =anumV12anumV10Aainfix =asizeV12asizeV10AareprV12ainfix +ainfix *V8V0V7V13FFIainfix <ainfix +ainfix *V8V0V7asizeV10Aainfix <=c0ainfix +ainfix *V8V0V7Iasame_reprsV10V4Aainfix =anumV10anumV4Aainfix =asizeV10asizeV4AareprV10ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1V11FFIainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1asizeV4Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1ainfix *V0V0Aainfix <=c0ainfix +ainfix *iainfix =V9c0ainfix +V7c1V7V0iainfix =V9c0V8ainfix +V8c1Iainfix <ainfix +ainfix *V8V0V7ainfix *V0V0Aainfix <=c0ainfix +ainfix *V8V0V7Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0Iainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V16V17qasameV4V16V17Iainfix <V17ainfix *V0V0Aainfix <=c0V17Iainfix <V16ainfix *V0V0Aainfix <=c0V16FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V18V19AareprV3V18V18AareprV3V18V19IasameV3V18V19Iainfix <V19ainfix *V0V0Aainfix <=c0V19Iainfix <V18ainfix *V0V0Aainfix <=c0V18FIareprV3V20V20Iainfix <V20ainfix *V0V0Aainfix <=c0V20FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V21V22qainfix =V21V22FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -457,15 +450,15 @@
memlimit=
"1000"
obsolete=
"false"
archived=
"false"
>
<result
status=
"valid"
time=
"
0.4
9"
/>
<result
status=
"valid"
time=
"
1.0
9"
/>
</proof>
</goal>
<goal
name=
"WP_parameter build_maze.14"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"14. loop invariant preservation"
sum=
"
c689fb107fcf4602096278d3e2bc9fd6
"
sum=
"
d3412452bd7ec8e5121155847fdd821e
"
proved=
"true"
expanded=
"false"
shape=
"apathV6V10V11qasameV4V10V11Iainfix <V11ainfix *V0V0Aainfix <=c0V11Iainfix <V10ainfix *V0V0Aainfix <=c0V10FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4Iainfix <iainfix =V9c0V8ainfix +V8c1V0Aainfix <iainfix =V9c0ainfix +V7c1V7V0NIainfix <V9c2Aainfix <=c0V9FIainfix <c0c2Iainfix <V8V0Aainfix <=c0V8FIainfix <c0V0Iainfix <V7V0Aainfix <=c0V7FIainfix <c0V0Iainfix >anumV4c1IapathV6V12V13qasameV4V12V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13Iainfix <V12ainfix *V0V0Aainfix <=c0V12FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V14V15AareprV3V14V14AareprV3V14V15IasameV3V14V15Iainfix <V15ainfix *V0V0Aainfix <=c0V15Iainfix <V14ainfix *V0V0Aainfix <=c0V14FIareprV3V16V16Iainfix <V16ainfix *V0V0Aainfix <=c0V16FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V17V18qainfix =V17V18FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
@@ -483,9 +476,9 @@
<goal
name=
"WP_parameter build_maze.15"
locfile=
"../vacid_0_build_maze.mlw"
loclnum=
"1
34
"
loccnumb=
"4"
loccnume=
"14"
loclnum=
"1
28
"
loccnumb=
"4"
loccnume=
"14"
expl=
"15. postcondition"
sum=
"
85603788cd071284d4415cf8ba30a4ee
"
sum=
"
9849a30773cf645d285ecd904481c00c
"
proved=
"true"
expanded=
"false"
shape=
"apathV6V7V8Iainfix <V8ainfix *V0V0Aainfix <=c0V8Iainfix <V7ainfix *V0V0Aainfix <=c0V7FAainfix =V5ainfix -ainfix *V0V0c1Iainfix >anumV4c1NIapathV6V9V10qasameV4V9V10Iainfix <V10ainfix *V0V0Aainfix <=c0V10Iainfix <V9ainfix *V0V0Aainfix <=c0V9FAainfix =asizeV4ainfix *V0V0Aainfix =ainfix +anumV4V5asizeV4Aainfix <=c1anumV4FIainfix =V11V12AareprV3V11V11AareprV3V11V12IasameV3V11V12Iainfix <V12ainfix *V0V0Aainfix <=c0V12Iainfix <V11ainfix *V0V0Aainfix <=c0V11FIareprV3V13V13Iainfix <V13ainfix *V0V0Aainfix <=c0V13FAainfix =asizeV3ainfix *V0V0Aainfix =anumV3ainfix *V0V0FIainfix <=c0ainfix *V0V0IapathV2V14V15qainfix =V14V15FAainfix =V1c0Aainfix <=c1V0FF"
>
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment