815.97/299.43 MAYBE 815.97/299.43 815.97/299.43 Problem: 815.97/299.43 strict: 815.97/299.43 R(x,RT()) -> RT() 815.97/299.43 W(x,WT()) -> WT() 815.97/299.43 weak: 815.97/299.43 RB() -> R(New(),RB()) 815.97/299.43 WB() -> W(New(),WB()) 815.97/299.43 top(ok(sys(read(r1,R(t,r2)),write(WT(),WB()),p))) -> 815.97/299.43 top(check(sys(read(R(t,r1),r2),write(WT(),WB()),p))) 815.97/299.43 top(ok(sys(read(RT(),RB()),write(WT(),W(t,w1)),p))) -> 815.97/299.43 top(check(sys(read(RT(),RB()),write(W(t,WT()),w1),p))) 815.97/299.43 top(ok(sys(read(r1,R(t,r2)),write(WT(),w1),PR()))) -> 815.97/299.43 top(check(sys(read(R(t,r1),r2),write(WT(),w1),PW()))) 815.97/299.43 top(ok(sys(read(RT(),r2),write(WT(),W(t,w1)),PW()))) -> 815.97/299.43 top(check(sys(read(RT(),r2),write(W(t,WT()),w1),PR()))) 815.97/299.43 check(Old()) -> ok(Old()) 815.97/299.43 check(R(x,y)) -> R(check(x),y) 815.97/299.43 check(R(x,y)) -> R(x,check(y)) 815.97/299.43 check(W(x,y)) -> W(check(x),y) 815.97/299.43 check(W(x,y)) -> W(x,check(y)) 815.97/299.43 check(read(x,y)) -> read(check(x),y) 815.97/299.43 check(read(x,y)) -> read(x,check(y)) 815.97/299.43 check(write(x,y)) -> write(check(x),y) 815.97/299.43 check(write(x,y)) -> write(x,check(y)) 815.97/299.43 check(sys(x,y,z)) -> sys(check(x),y,z) 815.97/299.43 check(sys(x,y,z)) -> sys(x,check(y),z) 815.97/299.43 check(sys(x,y,z)) -> sys(x,y,check(z)) 815.97/299.43 R(ok(x),y) -> ok(R(x,y)) 815.97/299.43 R(x,ok(y)) -> ok(R(x,y)) 815.97/299.43 W(ok(x),y) -> ok(W(x,y)) 815.97/299.43 W(x,ok(y)) -> ok(W(x,y)) 815.97/299.43 read(ok(x),y) -> ok(read(x,y)) 815.97/299.43 read(x,ok(y)) -> ok(read(x,y)) 815.97/299.43 write(ok(x),y) -> ok(write(x,y)) 815.97/299.43 write(x,ok(y)) -> ok(write(x,y)) 815.97/299.43 sys(ok(x),y,z) -> ok(sys(x,y,z)) 815.97/299.43 sys(x,ok(y),z) -> ok(sys(x,y,z)) 815.97/299.43 sys(x,y,ok(z)) -> ok(sys(x,y,z)) 815.97/299.43 815.97/299.43 Proof: 815.97/299.43 Open 815.97/299.44 EOF