Nuprl Definition : es-with-internal

es-with-internal(es;k;X) ==
  mk-extended-eo(type: e:E × ℕ||X map(λe.info(e);≤loc(e))|| + 1;
                 domain: λp.(es-dom(es) (fst(p)));
                 loc: λp.loc(fst(p));
                 info: λp.let e,n = p 
                          in if (n =z 0) then info(e) else X map(λe.info(e);≤loc(e))[n - 1] fi ;
                 causal: λe1,e2. ((fst(e1) < fst(e2)) ∨ (((fst(e1)) = (fst(e2)) ∈ E) ∧ snd(e1) < snd(e2)));
                 local: λe1,e2. (es-blocl(es;fst(e1);fst(e2))
                               ∨b((¬bes-blocl(es;fst(e2);fst(e1))) ∧b snd(e1) <z snd(e2)));
                 pred: λp.if snd(p)=0
                             then if first(fst(p))
                                  then p
                                  else let e' = pred(fst(p)) in
                                        let extra = X map(λe.info(e);≤loc(e')) in
                                        <e', ||extra||>
                                  fi 
                             else <fst(p), (snd(p)) - 1>;
                 rank: λp.((k * es-rank(es;fst(p))) + (snd(p))))



Definitions occuring in Statement :  mk-extended-eo: mk-extended-eo,  es-info: info(e),  es-le-before: ≤loc(e),  es-blocl: es-blocl(es;e1;e2),  es-first: first(e),  es-pred: pred(e),  es-rank: es-rank(es;e),  es-causl: (e < e'),  es-loc: loc(e),  es-E: E,  es-dom: es-dom(es),  select: L[n],  length: ||as||,  map: map(f;as),  bor: p ∨bq,  band: p ∧b q,  int_seg: {i..j-},  bnot: ¬bb,  ifthenelse: if b then t else f fi ,  lt_int: i <z j,  eq_int: (i =z j),  less_than: a < b,  let: let,  pi1: fst(t),  pi2: snd(t),  or: P ∨ Q,  and: P ∧ Q,  int_eq: if a=b  then c  else d,  apply: f a,  lambda: λx.A[x],  spread: spread def,  pair: <a, b>,  product: x:A × B[x],  multiply: n * m,  subtract: n - m,  add: n + m,  natural_number: $n,  equal: s = t ∈ T
FDL editor aliases :  es-with-internal

Latex:
es-with-internal(es;k;X)  ==
    mk-extended-eo(type:  e:E  \mtimes{}  \mBbbN{}||X  map(\mlambda{}e.info(e);\mleq{}loc(e))||  +  1;
                                  domain:  \mlambda{}p.(es-dom(es)  (fst(p)));
                                  loc:  \mlambda{}p.loc(fst(p));
                                  info:  \mlambda{}p.let  e,n  =  p 
                                                    in  if  (n  =\msubz{}  0)  then  info(e)  else  X  map(\mlambda{}e.info(e);\mleq{}loc(e))[n  -  1]  fi  ;
                                  causal:  \mlambda{}e1,e2.  ((fst(e1)  <  fst(e2))
                                                                \mvee{}  (((fst(e1))  =  (fst(e2)))  \mwedge{}  snd(e1)  <  snd(e2)));
                                  local:  \mlambda{}e1,e2.  (es-blocl(es;fst(e1);fst(e2))
                                                              \mvee{}\msubb{}((\mneg{}\msubb{}es-blocl(es;fst(e2);fst(e1)))  \mwedge{}\msubb{}  snd(e1)  <z  snd(e2)));
                                  pred:  \mlambda{}p.if  snd(p)=0
                                                          then  if  first(fst(p))
                                                                    then  p
                                                                    else  let  e'  =  pred(fst(p))  in
                                                                                let  extra  =  X  map(\mlambda{}e.info(e);\mleq{}loc(e'))  in
                                                                                <e',  ||extra||>
                                                                    fi 
                                                          else  <fst(p),  (snd(p))  -  1>
                                  rank:  \mlambda{}p.((k  *  es-rank(es;fst(p)))  +  (snd(p))))



Date html generated: 2016_05_17-AM-08_46_57
Last ObjectModification: 2014_08_18-PM-05_31_53

Theory : event-ordering


Home Index