Skip to content

Commit

Permalink
Adding missing files to previous commit
Browse files Browse the repository at this point in the history
  • Loading branch information
GadiTellez committed Feb 25, 2017
1 parent b1cc026 commit 4f3a784
Show file tree
Hide file tree
Showing 54 changed files with 711 additions and 319 deletions.
1 change: 1 addition & 0 deletions all.itarget
Expand Up @@ -9,6 +9,7 @@ src/while/while_prove.native
src/while/while_abduce.native
src/extended_while/extended_while_prove.native
src/temporal_ctl/temporal_ctl_prove.native
src/temporal_ctl/temporal_ctl_prove.byte
src/temporal_ltl/temporal_ltl_prove.native
#src/cyclist.docdir/index.html
src/seplog/sl.top
11 changes: 11 additions & 0 deletions benchmarks/temporal/cyclic_list_nd.ctl
@@ -0,0 +1,11 @@
fields: next;
precondition: List(x,x);
property: AG(List(x,x));
while x=x do
if * then
x:=x.next
else
y:=new();
y.next:=x
fi
od
7 changes: 7 additions & 0 deletions benchmarks/temporal/fairness/test1.fctl
@@ -0,0 +1,7 @@
fields: next;
precondition:x=x;
property: AF(final);
while * do
skip
od;
skip
7 changes: 7 additions & 0 deletions benchmarks/temporal/fairness/test2.fctl
@@ -0,0 +1,7 @@
fields: next;
precondition:x=x;
property: AF(final);
while x=x do
skip
od;
skip
10 changes: 10 additions & 0 deletions benchmarks/temporal/fairness/test3.fctl
@@ -0,0 +1,10 @@
fields: next;
precondition:x->x';
property: AF(emp);
while x=x do
if * then
free(x)
else
skip
fi
od
12 changes: 12 additions & 0 deletions benchmarks/temporal/fairness/test4.fctl
@@ -0,0 +1,12 @@
fields: next;
precondition:x->x';
property: AF(emp);
while x=x do
if * then
free(x)
else
while * do
skip
od
fi
od
14 changes: 14 additions & 0 deletions benchmarks/temporal/fairness/test5.fctl
@@ -0,0 +1,14 @@
fields: next;
precondition: tmp->x * ls(x,nil);
property: AF(emp);
while x=x do
if * then
while tmp!=nil do
free(tmp);
tmp:= x;
x:= x.next
od
else
skip
fi
od
16 changes: 16 additions & 0 deletions benchmarks/temporal/fairness/test6.fctl
@@ -0,0 +1,16 @@
fields: next;
precondition: ls(x,nil);
property: AF(emp);
while x=x do
if * then
while x!=nil do
temp:=x.next;
free(x);
x:=temp
od
else
while * do
skip
od
fi
od
18 changes: 18 additions & 0 deletions benchmarks/temporal/fairness/test7.fctl
@@ -0,0 +1,18 @@
fields: next;
precondition: ls(x,nil);
property: AF(emp);
while x=x do
if * then
while x!=nil do
temp:=x.next;
free(x);
x:=temp
od
else
while * do
y:=new();
y.next:=x;
x:=y
od
fi
od
19 changes: 19 additions & 0 deletions benchmarks/temporal/fairness/test8.fctl
@@ -0,0 +1,19 @@
fields: next;
precondition: ls(x,nil);
property: AG(AF(emp));
while x=x do
if * then
while x!=nil do
temp:=x;
x:=x.next;
free(temp);
temp:=nil
od
else
while * do
y:=new();
y.next:=x;
x:=y
od
fi
od
18 changes: 18 additions & 0 deletions benchmarks/temporal/gc/nd_af_ag_emp.ctl
@@ -0,0 +1,18 @@
fields: next;
precondition:ls(x,nil);
property: AF(AG(emp));
while x=x do
if * then
while x!=nil do
temp:=x.next;
free(x);
x:=temp
od
else
while * do
y:=new();
y.next:=x;
x:=y
od
fi
od
2 changes: 1 addition & 1 deletion benchmarks/temporal/gc/nd_af_eg_emp.ctl
@@ -1,6 +1,6 @@
fields: next;
precondition:ls(x,nil);
property: AG(EG(ls(x,nil)));
property: AF(EG(emp));
while x=x do
if * then
while x!=nil do
Expand Down
18 changes: 18 additions & 0 deletions benchmarks/temporal/gc/nd_af_emp.ctl
@@ -0,0 +1,18 @@
fields: next;
precondition:x!=nil * ls(x,nil);
property: AF(emp);
while x=x do
if * then
while x!=nil do
temp:=x.next;
free(x);
x:=temp
od
else
while * do
y:=new();
y.next:=x;
x:=y
od
fi
od
18 changes: 18 additions & 0 deletions benchmarks/temporal/gc/nd_ag_af_emp.ctl
@@ -0,0 +1,18 @@
fields: next;
precondition:ls(x,nil);
property: AG(AF(emp));
while x=x do
if * then
while x!=nil do
temp:=x.next;
free(x);
x:=temp
od
else
while * do
y:=new();
y.next:=x;
x:=y
od
fi
od
19 changes: 19 additions & 0 deletions benchmarks/temporal/gc/nd_ag_eg_ls.ctl
@@ -0,0 +1,19 @@
fields: next;
precondition:ls(x,nil);
property: AG(EG(ls(x,nil)));
while x=x do
if * then
while x!=nil do
temp:=x;
x:=x.next;
free(temp);
temp:=nil
od
else
while * do
y:=new();
y.next:=x;
x:=y
od
fi
od
2 changes: 1 addition & 1 deletion benchmarks/temporal/microbench/afagp_s.ctl
@@ -1,5 +1,5 @@
fields: next;
precondition: current=zero * x=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true' * break=FALSE;
precondition: current=four * x=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true' * break=FALSE;
property: AF(AG(x=one));
while break=FALSE do
if current=five then
Expand Down
4 changes: 2 additions & 2 deletions benchmarks/temporal/microbench/afef_s.ctl
@@ -1,5 +1,5 @@
fields: next;
precondition: current=zero * x=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true' * break=FALSE;
precondition: current=four * x=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true' * break=FALSE;
property: AF(EF(x=one));
while break=FALSE do
if current=five then
Expand All @@ -9,7 +9,7 @@ while break=FALSE do
fi
od;
break:=FALSE;
current:=zero;
current:=four;
while break=FALSE do
if current=five then
break:=TRUE
Expand Down
18 changes: 7 additions & 11 deletions benchmarks/temporal/microbench/afp_s.ctl
@@ -1,14 +1,10 @@
fields: next;
precondition: n->one * one->zero * zero->nil * p=zero * current=n * FALSE->false' * TRUE->true';
property: AF(p=one);
while break=FALSE do
if current=zero then
break:=TRUE
precondition: x=zero * zero->one * one->two * two->three * three->four * four->five;
property: AF(x!=zero);
while TRUE=TRUE do
if * then
x:=x.next
else
current:=current.next
x:=zero
fi
od;
p:=one;
while TRUE=TRUE do
skip
od
od
14 changes: 14 additions & 0 deletions benchmarks/temporal/microbench/afp_s_old.ctl
@@ -0,0 +1,14 @@
fields: next;
precondition: n->one * one->zero * zero->nil * p=zero * current=n * FALSE->false' * TRUE->true';
property: AF(p=one);
while break=FALSE do
if current=zero then
break:=TRUE
else
current:=current.next
fi
od;
p:=one;
while TRUE=TRUE do
skip
od
32 changes: 16 additions & 16 deletions benchmarks/temporal/microbench/agafp_s.ctl
@@ -1,18 +1,18 @@
fields: next;
precondition: current=zero * x=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true';
property: AG(AF(x=one));
if * then
x:=one
else
while break=FALSE do
if current=five then
break:=TRUE
else
current:=current.next
fi
od;
x:=one
fi;
while TRUE=TRUE do
precondition: false!=true * break=false * x=one * zero->one * one->two * two->three * three->four * four->five;
property: AG(AF(x!=zero));
while break!=true do
if * then
x:=x.next
else
x:=zero
fi;
if x!=zero then
break:=true
else
skip
fi
od;
while break=break do
skip
od
od
18 changes: 18 additions & 0 deletions benchmarks/temporal/microbench/agafp_s_old.ctl
@@ -0,0 +1,18 @@
fields: next;
precondition: current=four * x=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true';
property: AG(AF(x=one));
if * then
x:=one
else
while break=FALSE do
if current=five then
break:=TRUE
else
current:=current.next
fi
od;
x:=one
fi;
while TRUE=TRUE do
skip
od
8 changes: 6 additions & 2 deletions benchmarks/temporal/microbench/agef_s_heap.ctl
@@ -1,13 +1,17 @@
fields: next;
precondition: ls(x,nil);
precondition: ls(y,x) * ls(x,nil);
property: AG(EF(x=nil));
while x!=nil do
if * then
temp:=x;
x:=new();
x.next:=temp
else
x:=x.next
if x!=nil then
x:=x.next
else
skip
fi
fi
od;
x:=nil;
Expand Down
13 changes: 13 additions & 0 deletions benchmarks/temporal/microbench/ageg_s_heap_nd.ctl
@@ -0,0 +1,13 @@
fields: left,right;
precondition: x!=nil * bt(x);
property: AG(AF(x!=nil));
while x=x do
if * then
temp:=new();
temp.left:=x;
temp.right:=nil;
x:=temp
else
x:=nil
fi
od
2 changes: 1 addition & 1 deletion benchmarks/temporal/microbench/agimpef_s.ctl
@@ -1,5 +1,5 @@
fields: next;
precondition: current=zero * check=zero * p=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true' * break=FALSE;
precondition: current=four * check=zero * p=zero * zero->one * one->two * two->three * three->four * four->five * FALSE->false' * TRUE->true' * break=FALSE;
property: AG(\/(check=zero,EF(p=one)));
check:=one;
while break=FALSE do
Expand Down

0 comments on commit 4f3a784

Please sign in to comment.