Nuprl Lemma : rec-combined-class-locally-programmable

[Info:{Info:Type| Info} ]. [B:{B:Type| valueall-type(B)} ]. [n:]. [A:n  Type]. [Xs:k:n  EClass(A k)].
[F:k:n  bag(A k)  bag(B)  bag(B)]. [dfs:k:n  Id  DataflowProgram(Info)]. [i:Id]. [es:EO+(Info)]. [e:E].
  ((F|Xs,(self)'| es e)
     = last(data-stream(better-feedback-dataflow(||map(k.(dfs k i);upto(n))||;
                        k.map(dfp.df-program-meaning(dfp);map(k.(dfs k i);upto(n)))[k];
                        F;{};b.null(b));map(e.info(e);loc(e))))) supposing 
     ((loc(e) = i) and 
     (k:n. i:Id.  local-program-at{i:l}(Info;A k;Xs k;dfs k i;i)))


Proof not projected




Definitions occuring in Statement :  local-program-at: local-program-at{i:l}(Info;A;X;dfp;x),  rec-combined-class: f|X,(self)'|,  eclass: EClass(A[eo; e]),  es-info: info(e),  event-ordering+: EO+(Info),  es-le-before: loc(e),  es-loc: loc(e),  es-E: E,  df-program-meaning: df-program-meaning(dfp),  dataflow-program: DataflowProgram(A),  better-feedback-dataflow: better-feedback-dataflow(n;ds;F;s;x.P[x]),  data-stream: data-stream(P;L),  Id: Id,  select: l[i],  map: map(f;as),  length: ||as||,  null: null(as),  bnot: b,  int_seg: {i..j},  nat: ,  uimplies: b supposing a,  uall: [x:A]. B[x],  all: x:A. B[x],  squash: T,  set: {x:A| B[x]} ,  apply: f a,  lambda: x.A[x],  function: x:A  B[x],  natural_number: $n,  universe: Type,  equal: s = t,  last: last(L),  empty-bag: {},  bag: bag(T),  upto: upto(n),  valueall-type: valueall-type(T)
Definitions :  so_lambda: x y.t[x; y],  so_lambda: x.t[x],  true: True,  prop: ,  member: t  T,  uimplies: b supposing a,  squash: T,  uall: [x:A]. B[x],  primed-class: Prior(X),  primed-class-opt: Prior(X)?b,  rec-combined-class: f|X,(self)'|,  rec-comb: rec-comb(X;f;init),  so_apply: x[s1;s2],  so_apply: x[s],  all: x:A. B[x],  nat: ,  subtype: S  T,  eclass: EClass(A[eo; e])
Lemmas :  valueall-type_wf,  nat_wf,  eclass_wf,  dataflow-program_wf,  event-ordering+_wf,  es-E_wf,  local-program-at_wf,  int_seg_wf,  all_wf,  event-ordering+_inc,  es-loc_wf,  Id_wf,  bag_wf,  true_wf,  squash_wf,  equal_wf,  empty-bag_wf,  rec-comb-locally-programmable,  rec-combined-class_wf

\mforall{}[Info:\{Info:Type|  \mdownarrow{}Info\}  ].  \mforall{}[B:\{B:Type|  valueall-type(B)\}  ].  \mforall{}[n:\mBbbN{}].  \mforall{}[A:\mBbbN{}n  {}\mrightarrow{}  Type].
\mforall{}[Xs:k:\mBbbN{}n  {}\mrightarrow{}  EClass(A  k)].  \mforall{}[F:k:\mBbbN{}n  {}\mrightarrow{}  bag(A  k)  {}\mrightarrow{}  bag(B)  {}\mrightarrow{}  bag(B)].
\mforall{}[dfs:k:\mBbbN{}n  {}\mrightarrow{}  Id  {}\mrightarrow{}  DataflowProgram(Info)].  \mforall{}[i:Id].  \mforall{}[es:EO+(Info)].  \mforall{}[e:E].
    ((F|Xs,(self)'|  es  e)
          =  last(data-stream(better-feedback-dataflow(||map(\mlambda{}k.(dfs  k  i);upto(n))||;
                                                \mlambda{}k.map(\mlambda{}dfp.df-program-meaning(dfp);map(\mlambda{}k.(dfs  k  i);upto(n)))[k];
                                                F;\{\};b.\mneg{}\msubb{}null(b));map(\mlambda{}e.info(e);\mleq{}loc(e)))))  supposing 
          ((loc(e)  =  i)  and 
          (\mforall{}k:\mBbbN{}n.  \mforall{}i:Id.    local-program-at\{i:l\}(Info;A  k;Xs  k;dfs  k  i;i)))


Date html generated: 2012_01_23-PM-12_31_17
Last ObjectModification: 2011_12_14-PM-10_27_09

Home Index