Nuprl Definition : scout
scout(Op;ldr;num;acceptors;b) ==
  once-class(smr-class(<acceptors, []>s,m.let a,b',r = m in 
  let waitfor,pvals = s 
  in let wait = filter(
x.(
x = a);waitfor) in
      let pvals' = pvals @ r in
      <<wait, pvals'>
      , if eq_ballot(b;b')
        then if 2 * ||wait|| <z num then inl <msgAdopted(Op;b;pvals'), ldr>  else inr 
  fi 
        else inl <msgPreempted(b'), ldr> 
        fi 
      >class1b(Op)))
Proof not projected
Definitions occuring in Statement : 
msgAdopted: msgAdopted(Op;b;pvals), 
msgPreempted: msgPreempted(b), 
class1b: class1b(Op), 
eq_ballot: eq_ballot(b1;b2), 
smr-class: smr-class(init;s,x.F[s; x];X), 
once-class: once-class(X), 
eq_id: a = b, 
length: ||as||, 
append: as @ bs, 
bnot: 
b, 
lt_int: i <z j, 
ifthenelse: if b then t else f fi , 
let: let, 
it:
, 
spreadn: spread3, 
lambda:
x.A[x], 
spread: spread def, 
pair: <a, b>, 
inr: inr x , 
inl: inl x , 
nil: [], 
multiply: n * m, 
natural_number: $n, 
filter: filter(P;l)
Definitions : 
once-class: once-class(X), 
smr-class: smr-class(init;s,x.F[s; x];X), 
nil: [], 
spreadn: spread3, 
spread: spread def, 
filter: filter(P;l), 
lambda:
x.A[x], 
bnot: 
b, 
eq_id: a = b, 
let: let, 
append: as @ bs, 
eq_ballot: eq_ballot(b1;b2), 
ifthenelse: if b then t else f fi , 
lt_int: i <z j, 
multiply: n * m, 
natural_number: $n, 
length: ||as||, 
msgAdopted: msgAdopted(Op;b;pvals), 
inr: inr x , 
it:
, 
inl: inl x , 
pair: <a, b>, 
msgPreempted: msgPreempted(b), 
class1b: class1b(Op)
FDL editor aliases : 
scout
scout(Op;ldr;num;acceptors;b)  ==
    once-class(smr-class(<acceptors,  []>s,m.let  a,b',r  =  m  in 
    let  waitfor,pvals  =  s 
    in  let  wait  =  filter(\mlambda{}x.(\mneg{}\msubb{}x  =  a);waitfor)  in
            let  pvals'  =  pvals  @  r  in
            <<wait,  pvals'>
            ,  if  eq\_ballot(b;b')
                then  if  2  *  ||wait||  <z  num  then  inl  <msgAdopted(Op;b;pvals'),  ldr>    else  inr  \mcdot{}    fi 
                else  inl  <msgPreempted(b'),  ldr> 
                fi 
            >class1b(Op)))
Date html generated:
2011_10_20-PM-04_24_53
Last ObjectModification:
2011_01_26-PM-04_03_30
Home
Index