{ [L:Top List]. [ds,F:Top].
    (data-stream(parallel-dataflow(
                 ds;
                 F);L) ~ map(i.(F (k.data-stream(ds k;L)[i]));upto(||L||))) }

{ Proof }



Definitions occuring in Statement :  parallel-dataflow: parallel-dataflow data-stream: data-stream(P;L) select: l[i] map: map(f;as) length: ||as|| uall: [x:A]. B[x] top: Top apply: f a lambda: x.A[x] list: type List sqequal: s ~ t upto: upto(n)
Definitions :  uall: [x:A]. B[x] top: Top parallel-dataflow: parallel-dataflow map: map(f;as) select: l[i] upto: upto(n) length: ||as|| member: t  T ycomb: Y from-upto: [n, m) ifthenelse: if b then t else f fi  lt_int: i <z j btrue: tt bfalse: ff pi2: snd(t) dataflow-ap: df(a) pi1: fst(t) rec-dataflow: rec-dataflow(s0;s,m.next[s; m]) dataflow-out: dataflow-out(df;a) le_int: i z j bnot: b compose: f o g all: x:A. B[x] subtype: S  T implies: P  Q int_seg: {i..j} lelt: i  j < k prop: and: P  Q so_lambda: x.t[x] sq_type: SQType(T) uimplies: b supposing a guard: {T} bool: unit: Unit le: A  B iff: P  Q not: A false: False so_apply: x[s] it:
Lemmas :  top_wf upto_decomp2 length_wf1 non_neg_length length_wf_nat data-stream-cons map-map upto_wf int_seg_wf subtype_base_sq int_subtype_base select-cons le_int_wf bool_wf iff_weakening_uiff le_wf uiff_transitivity assert_wf eqtt_to_assert assert_of_le_int lt_int_wf bnot_wf eqff_to_assert assert_functionality_wrt_uiff bnot_of_le_int assert_of_lt_int set_subtype_base

\mforall{}[L:Top  List].  \mforall{}[ds,F:Top].
    (data-stream(parallel-dataflow(
                              ds;
                              F);L)  \msim{}  map(\mlambda{}i.(F  (\mlambda{}k.data-stream(ds  k;L)[i]));upto(||L||)))


Date html generated: 2011_08_10-AM-08_15_51
Last ObjectModification: 2011_06_18-AM-08_30_41

Home Index