{ [A,B:Type]. [f,g:dataflow(A;B)].
    uiff([as:A List]. [a:A].  ((snd(f*(as)(a))) = (snd(g*(as)(a))));f = g) }

{ Proof }



Definitions occuring in Statement :  iterate-dataflow: P*(inputs) dataflow-ap: df(a) dataflow: dataflow(A;B) uiff: uiff(P;Q) uall: [x:A]. B[x] pi2: snd(t) list: type List universe: Type equal: s = t
Definitions :  data-stream: data-stream(P;L) limited-type: LimitedType lambda: x.A[x] fpf: a:A fp-B[a] corec: corec(T.F[T]) strong-subtype: strong-subtype(A;B) le: A  B ge: i  j  not: A less_than: a < b subtype_rel: A r B function: x:A  B[x] all: x:A. B[x] iterate-dataflow: P*(inputs) dataflow-ap: df(a) pi2: snd(t) axiom: Ax prop: list: type List equal: s = t universe: Type dataflow: dataflow(A;B) uiff: uiff(P;Q) and: P  Q product: x:A  B[x] pair: <a, b> uimplies: b supposing a isect: x:A. B[x] member: t  T so_lambda: x.t[x] uall: [x:A]. B[x] set: {x:A| B[x]}  Auto: Error :Auto,  CollapseTHEN: Error :CollapseTHEN,  pi1: fst(t) true: True squash: T void: Void subtype: S  T top: Top sqequal: s ~ t tl: tl(l) hd: hd(l) cons: [car / cdr] nil: [] append: as @ bs data_stream_nil: data_stream_nil{data_stream_nil_compseq_tag_def:o}(P) implies: P  Q guard: {T} CollapseTHENA: Error :CollapseTHENA
Lemmas :  last_induction data-stream-append member_wf top_wf append_wf squash_wf true_wf data-stream-cons pi1_wf uall_wf pi2_wf dataflow-ap_wf iterate-dataflow_wf dataflow_wf dataflow-extensionality data-stream_wf

\mforall{}[A,B:Type].  \mforall{}[f,g:dataflow(A;B)].
    uiff(\mforall{}[as:A  List].  \mforall{}[a:A].    ((snd(f*(as)(a)))  =  (snd(g*(as)(a))));f  =  g)


Date html generated: 2011_08_10-AM-08_19_22
Last ObjectModification: 2011_05_03-PM-01_47_40

Home Index