{ [A,B:Type]. [f,g,h:dataflow(A;B)].  (f  h) supposing (f  g and g  h) }

{ Proof }



Definitions occuring in Statement :  dataflow-equiv: d1  d2 dataflow: dataflow(A;B) uimplies: b supposing a uall: [x:A]. B[x] universe: Type
Definitions :  b-union: A  B union: left + right bag: Error :bag,  fpf-sub: f  g deq: EqDecider(T) ma-state: State(ds) apply: f a fpf-dom: x  dom(f) false: False rcv: rcv(l,tg) locl: locl(a) Knd: Knd pair: <a, b> true: True squash: T primrec: primrec(n;b;c) bool: fpf-cap: f(x)?z guard: {T} limited-type: LimitedType void: Void subtype: S  T fpf: a:A fp-B[a] top: Top int: length: ||as|| nat: set: {x:A| B[x]}  sq_type: SQType(T) strong-subtype: strong-subtype(A;B) corec: corec(T.F[T]) le: A  B ge: i  j  not: A less_than: a < b product: x:A  B[x] and: P  Q uiff: uiff(P;Q) subtype_rel: A r B axiom: Ax data-stream: data-stream(P;L) list: type List lambda: x.A[x] all: x:A. B[x] function: x:A  B[x] equal: s = t universe: Type uall: [x:A]. B[x] dataflow: dataflow(A;B) uimplies: b supposing a prop: isect: x:A. B[x] dataflow-equiv: d1  d2 member: t  T MaAuto: Error :MaAuto,  CollapseTHEN: Error :CollapseTHEN,  ParallelOp: Error :ParallelOp,  RepeatFor: Error :RepeatFor,  Auto: Error :Auto
Lemmas :  member_wf subtype_rel_wf dataflow_wf top_wf data-stream_wf length_wf_nat nat_wf list_subtype_base subtype_base_sq dataflow-equiv_wf true_wf squash_wf dataflow_subtype subtype_rel_self

\mforall{}[A,B:Type].  \mforall{}[f,g,h:dataflow(A;B)].    (f  \mequiv{}  h)  supposing  (f  \mequiv{}  g  and  g  \mequiv{}  h)


Date html generated: 2011_08_10-AM-08_21_53
Last ObjectModification: 2011_06_18-AM-08_32_30

Home Index