Nuprl Definition : ohc_v1_roundout2
ohc_v1_roundout2(Cmd;cmdeq;flrs;learners;locs) ==
  
loc,cmd,zi.
   let zj,sender = zi 
   in let zk,cmdU = zj 
      in let n,i = zk 
         in 
z.let cmds,z = z 
               in if (||cmds|| =
 flrs + 1)
                  then let vlist = ohc_v1_prune_off_units(Cmd) [cmdU / cmds] in
                           let k,x = poss-maj(cmdeq;vlist;cmd) 
                           in if (k =
 flrs + 1)
                                then (ohc_v1_notify'broadcast(Cmd) learners <n, x>)
                                     + (ohc_v1_decided'broadcast() locs n)
                              if null(vlist) then {ohc_v1_retry'send(Cmd) loc <<n, i + 1>, cmd>}
                              else {ohc_v1_retry'send(Cmd) loc <<n, i + 1>, x>}
                              fi 
                  else {}
                  fi 
Definitions occuring in Statement : 
ohc_v1_prune_off_units: ohc_v1_prune_off_units(Cmd), 
ohc_v1_notify'broadcast: ohc_v1_notify'broadcast(Cmd), 
ohc_v1_decided'broadcast: ohc_v1_decided'broadcast(), 
ohc_v1_retry'send: ohc_v1_retry'send(Cmd), 
length: ||as||, 
null: null(as), 
eq_int: (i =
 j), 
ifthenelse: if b then t else f fi , 
let: let, 
apply: f a, 
lambda:
x.A[x], 
spread: spread def, 
pair: <a, b>, 
cons: [car / cdr], 
add: n + m, 
natural_number: $n, 
poss-maj: poss-maj(eq;L;x), 
bag-append: as + bs, 
single-bag: {x}, 
empty-bag: {}
FDL editor aliases : 
ohc_v1_roundout2
ohc_v1_roundout2
ohc\_v1\_roundout2(Cmd;cmdeq;flrs;learners;locs)  ==
    \mlambda{}loc,cmd,zi.
      let  zj,sender  =  zi 
      in  let  zk,cmdU  =  zj 
            in  let  n,i  =  zk 
                  in  \mlambda{}z.let  cmds,z  =  z 
                              in  if  (||cmds||  =\msubz{}  flrs  +  1)
                                    then  let  vlist  =  ohc\_v1\_prune\_off\_units(Cmd)  [cmdU  /  cmds]  in
                                                      let  k,x  =  poss-maj(cmdeq;vlist;cmd) 
                                                      in  if  (k  =\msubz{}  flrs  +  1)
                                                                then  (ohc\_v1\_notify'broadcast(Cmd)  learners  <n,  x>)
                                                                          +  (ohc\_v1\_decided'broadcast()  locs  n)
                                                            if  null(vlist)  then  \{ohc\_v1\_retry'send(Cmd)  loc  <<n,  i  +  1>,  cmd>\}
                                                            else  \{ohc\_v1\_retry'send(Cmd)  loc  <<n,  i  +  1>,  x>\}
                                                            fi 
                                    else  \{\}
                                    fi 
Date html generated:
2012_02_20-PM-05_22_29
Last ObjectModification:
2012_02_13-PM-12_56_06
Home
Index