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)) | ((p11>0) & (p11<8)) | ((p12>0) & (p12<8)) | ((p13>0) & (p13<8)) | ((p14>0) & (p14<8)) | ((p15>0) & (p15<8)) | ((p16>0) & (p16<8)) | ((p17>0) & (p17<8)) | ((p18>0) & (p18<8)) | ((p19>0) & (p19<8)) | ((p20>0) & (p20<8)) | ((p21>0) & (p21<8)) | ((p22>0) & (p22<8)) | ((p23>0) & (p23<8)) | ((p24>0) & (p24<8)) | ((p25>0) & (p25<8)); label "eat" = (p1=8..9) | (p2=8..9) | (p3=8..9) | (p4=8..9) | (p5=8..9) | (p6=8..9) | (p7=8..9) | (p8=8..9) | (p9=8..9) | (p10=8..9) | (p11=8..9) | (p12=8..9) | (p13=8..9) | (p14=8..9) | (p15=8..9) | (p16=8..9) | (p17=8..9) | (p18=8..9) | (p19=8..9) | (p20=8..9) | (p21=8..9) | (p22=8..9) | (p23=8..9) | (p24=8..9) | (p25=8..9); // liveness (if a philosopher is hungry then eventually some philosopher eats) "hungry" => P>=1 [ true U "eat"]