{ [A,C:Type]. [n:]. [B:n  Type]. [F:k:n  B[k]  C].
  [ds1,ds2:k:n  dataflow(A;B[k])].
    better-parallel-dataflow(
    n;ds1;
    F)  better-parallel-dataflow(
         n;ds2;
         F) 
    supposing k:n. ds1 k  ds2 k }

{ Proof }



Definitions occuring in Statement :  dataflow-equiv: d1  d2 better-parallel-dataflow: better-parallel-dataflow dataflow: dataflow(A;B) int_seg: {i..j} nat: uimplies: b supposing a uall: [x:A]. B[x] so_apply: x[s] all: x:A. B[x] apply: f a function: x:A  B[x] natural_number: $n universe: Type
Definitions :  uall: [x:A]. B[x] so_apply: x[s] uimplies: b supposing a all: x:A. B[x] dataflow-equiv: d1  d2 member: t  T prop: le: A  B squash: T true: True and: P  Q not: A implies: P  Q false: False top: Top subtype: S  T rev_implies: P  Q iff: P  Q so_lambda: x.t[x] nat: int_seg: {i..j} lelt: i  j < k guard: {T}
Lemmas :  int_seg_wf dataflow-equiv_wf dataflow_wf nat_wf map_wf squash_wf true_wf length_wf1 upto_wf select_wf le_wf length-data-stream top_wf better-parallel-data-stream

\mforall{}[A,C:Type].  \mforall{}[n:\mBbbN{}].  \mforall{}[B:\mBbbN{}n  {}\mrightarrow{}  Type].  \mforall{}[F:k:\mBbbN{}n  {}\mrightarrow{}  B[k]  {}\mrightarrow{}  C].  \mforall{}[ds1,ds2:k:\mBbbN{}n  {}\mrightarrow{}  dataflow(A;B[k])].
    better-parallel-dataflow(
    n;ds1;
    F)  \mequiv{}  better-parallel-dataflow(
              n;ds2;
              F) 
    supposing  \mforall{}k:\mBbbN{}n.  ds1  k  \mequiv{}  ds2  k


Date html generated: 2011_08_10-AM-08_22_02
Last ObjectModification: 2011_06_18-AM-08_32_36

Home Index