You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

23 lines
1.7 KiB

// mention that Rabin property is not well defined (see Saias thesis)
// minimum probability process enters the criticial section
// only interested in the probability in states for which
// - process is going to make a draw (draw1=1)
// - no process is in the critical section (otherwise probability is clearly 0
// and we take the minimum value over this set of states
Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical"}{min} ]
// probability above is zero which is due to the fact that the adversary can use the values
// of the state variables of the other processes
// this does not quite disprove Rabin's bounded waiting property as one is starting
// from the state the process decides to enter the round and one doesnot take into account
// the probability of reaching this state (this does have an influence as the results
// for the properties below show that to get the probability 0 one of the other processes
//must have already randomly picked a high value for its bi)
// to demonstrate this fact we restrict attention to states where these values
// are restricted,i.e. where the values of the bi variables are bounded
Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical" & maxb<6}{min} ]
Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical" & maxb<5}{min} ]
Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical" & maxb<4}{min} ]
Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical" & maxb<3}{min} ] Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical" & maxb<2}{min} ] Pmin=?[ !"one_critical" U (p1=2) {draw1=1 & !"one_critical" & maxb<1}{min} ] // liveness (eventially a process enters its critical section // since we have removed the loops this holds with probability 1 even without fairness Pmin=?[F p1=2 | p2=2 | p3=2 ]