Skip to content

Commit 67bf140

Browse files
committed
add example
1 parent bb20cff commit 67bf140

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
2+
3+
%agent: A(x,y,z)
4+
%agent: E(t)
5+
// global boolean parameter
6+
%guard_param: P [false]
7+
// P = x and y are in conflict
8+
9+
// Initial conditions
10+
%init: 100 A(),E()
11+
12+
// if there is a conflict
13+
#[[not] P] A(x[.]), E(t[.]) -> A(x[1]), E(t[1]) @ 1
14+
15+
%working_set:[
16+
17+
#[[not] P] A(y[.]), E(t[.]) -> A(y[1]), E(t[1]) @ 1
18+
19+
#[P] A(x[.],y[.]), E(t[.]) -> A(x[1],y[.]), E(t[1]) @ 1
20+
#[P] A(y[.],x[.]), E(t[.]) -> A(y[1],x[.]), E(t[1]) @ 1
21+
22+
A(x[_], y[_], z[.]), E(t[.]) -> A(x[_], y[_], z[1]), E(t[1]) @ 1
23+
]
24+
// Measure amount of A-z-E
25+
%obs: 'Trimer' |A(z[1]),E(t[1])|
26+
27+
// Static analysis must show that P => z is free

0 commit comments

Comments
 (0)