{ [Info:{Info:Type| Info} ]
    B:{B:Type| valueall-type(B)} . n:.
      [A:n  Type]. [Xs:k:n  EClass(A k)].
        ((k:n. NormalLProgrammable(A k;Xs k))
         (F:Id  k:n  bag(A k)  bag(B)
              NormalLProgrammable(B;F|Loc; Xs|) 
              supposing i:Id. ((F i (i.{})) = {}))) }

{ Proof }



Definitions occuring in Statement :  normal-locally-programmable: NormalLProgrammable(A;X),  simple-loc-comb: F|Loc; Xs|,  eclass: EClass(A[eo; e]),  Id: Id,  int_seg: {i..j},  nat: ,  uimplies: b supposing a,  uall: [x:A]. B[x],  all: x:A. B[x],  squash: T,  implies: P  Q,  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,  empty-bag: {},  bag: bag(T),  valueall-type: valueall-type(T)
Definitions :  universe: Type,  prop: ,  set: {x:A| B[x]} ,  squash: T,  implies: P  Q,  false: False,  not: A,  le: A  B,  int: ,  nat: ,  function: x:A  B[x],  all: x:A. B[x],  Id: Id,  true: True,  member: t  T,  uall: [x:A]. B[x],  isect: x:A. B[x],  subtype_rel: A r B,  uiff: uiff(P;Q),  and: P  Q,  product: x:A  B[x],  uimplies: b supposing a,  less_than: a < b,  ge: i  j ,  strong-subtype: strong-subtype(A;B),  valueall-type: valueall-type(T),  atom: Atom$n,  sq_exists: x:{A| B[x]},  equal: s = t,  local-program-at: local-program-at{i:l}(Info;A;X;dfp;x),  int_seg: {i..j},  natural_number: $n,  apply: f a,  dataflow-program: DataflowProgram(A),  bool: ,  bag: bag(T),  lambda: x.A[x],  empty-bag: {},  eclass: EClass(A[eo; e]),  es-loc: loc(e),  es-E: E,  event-ordering+: EO+(Info),  es-le-before: loc(e),  es-info: info(e),  map: map(f;as),  upto: upto(n),  parallel-df-program-case1: parallel-df-program-case1(B;F;dfps),  df-program-meaning: df-program-meaning(dfp),  data-stream: data-stream(P;L),  last: last(L),  simple-loc-comb: F|Loc; Xs|,  event_ordering: EO,  record+: record+,  dep-isect: Error :dep-isect,  assert: b,  ifthenelse: if b then t else f fi ,  decide: case b of inl(x) => s[x] | inr(y) => t[y],  eq_atom: eq_atom$n(x;y),  eq_atom: x =a y,  record-select: r.x,  fpf: a:A fp-> B[a],  pair: <a, b>,  df-program-type: df-program-type(dfp),  limited-type: LimitedType,  subtype: S  T
Lemmas :  bool_subtype_base,  subtype_base_sq,  non_null_iff_length,  es-le-before_wf2,  es-le_wf,  es-le-before-not-null,  assert_wf,  equal-nil-sq-nil,  pos-length,  es-base-E_wf,  pos_length2,  es-info_wf,  es-le-before_wf,  last-stream-parallel-df-program-case1-meaning,  df-program-meaning_wf,  data-stream_wf,  last_wf,  int-valueall-type,  set-valueall-type,  list-valueall-type,  Id-has-valueall,  bfalse_wf,  btrue_wf,  real-has-value,  int_inc_real,  rational-has-value,  rationals_wf,  ifthenelse_wf,  bool_wf,  tunion_wf,  int_nzero_wf,  b-union_wf,  int-rational,  subtype_rel-equal,  select-upto,  intensional-universe_wf,  unit_wf,  subtype_rel_bag,  select-map,  length_upto,  subtype_rel_sets,  subtype_rel_set,  top_wf,  length-map-sq,  nat_properties,  length-map,  int_seg_properties,  length_wf_nat,  true_wf,  subtype_rel_dep_function,  subtype_rel_self,  subtype_rel_function,  length_wf1,  subtype_rel_wf,  false_wf,  not_wf,  le_wf,  member_wf,  df-program-type_wf,  select_wf,  parallel-df-program-case1_wf,  map_wf,  upto_wf,  es-loc_wf,  sq_stable_from_decidable,  sq_stable__all,  simple-loc-comb_wf,  empty-bag_wf,  bag_wf,  normal-locally-programmable_wf,  eclass_wf,  es-E_wf,  event-ordering+_inc,  event-ordering+_wf,  nat_wf,  valueall-type_wf,  squash_wf,  dataflow-program_wf,  Id_wf,  int_seg_wf,  local-program-at_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{}k:\mBbbN{}n.  NormalLProgrammable(A  k;Xs  k))
            {}\mRightarrow{}  (\mforall{}F:Id  {}\mrightarrow{}  k:\mBbbN{}n  {}\mrightarrow{}  bag(A  k)  {}\mrightarrow{}  bag(B)
                        NormalLProgrammable(B;F|Loc;  Xs|)  supposing  \mforall{}i:Id.  ((F  i  (\mlambda{}i.\{\}))  =  \{\})))


Date html generated: 2011_08_16-PM-06_18_32
Last ObjectModification: 2011_06_29-PM-10_59_51

Home Index