|
|
@ -10,8 +10,8 @@ mdp |
|
|
|
|
|
|
|
|
// atomic formulae |
|
|
// atomic formulae |
|
|
// left fork free and right fork free resp. |
|
|
// left fork free and right fork free resp. |
|
|
formula lfree = p2=0..4,6,10; |
|
|
|
|
|
formula rfree = p10=0..3,5,7,11; |
|
|
|
|
|
|
|
|
formula lfree = (p2>=0&p2<=4)|p2=6|p2=10; |
|
|
|
|
|
formula rfree = (p10>=0&p10<=3)|p10=5|p10=7|p10=11; |
|
|
|
|
|
|
|
|
module phil1 |
|
|
module phil1 |
|
|
|
|
|
|
|
|
@ -47,8 +47,11 @@ module phil9 = phil1 [p1=p9, p2=p10, p10=p8] endmodule |
|
|
module phil10 = phil1 [ p1=p10, p2=p1, p10=p9 ] endmodule |
|
|
module phil10 = phil1 [ p1=p10, p2=p1, p10=p9 ] endmodule |
|
|
|
|
|
|
|
|
// rewards (number of steps) |
|
|
// rewards (number of steps) |
|
|
rewards |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rewards "num_steps" |
|
|
[] true : 1; |
|
|
[] true : 1; |
|
|
|
|
|
|
|
|
endrewards |
|
|
endrewards |
|
|
|
|
|
// labels |
|
|
|
|
|
label "hungry" = ((p1>0)&(p1<8))|((p2>0)&(p2<8))|((p3>0)&(p3<8))|((p4>0)&(p4<8))|((p5>0)&(p5<8))|((p6>0)&(p6<8))|((p7>0)&(p7<8))|((p8>0)&(p8<8))|((p9>0)&(p9<8))|((p10>0)&(p10<8)); |
|
|
|
|
|
label "eat" = ((p1>=8)&(p1<=9))|((p2>=8)&(p2<=9))|((p3>=8)&(p3<=9))|((p4>=8)&(p4<=9))|((p5>=8)&(p5<=9))|((p6>=8)&(p6<=9))|((p7>=8)&(p7<=9))|((p8>=8)&(p8<=9))|((p9>=8)&(p9<=9))|((p10>=8)&(p10<=9)); |
|
|
|
|
|
|
|
|
|
|
|
|