Nuprl Lemma : hdf-parallel-ap

[A,B:Type]. ∀[X,Y:hdataflow(A;B)]. ∀[a:A].
  || Y(a) = <fst(X(a)) || fst(Y(a)), (snd(X(a))) (snd(Y(a)))> ∈ (hdataflow(A;B) × bag(B)) supposing valueall-type(B)


Proof




Definitions occuring in Statement :  hdf-parallel: || Y hdf-ap: X(a) hdataflow: hdataflow(A;B) valueall-type: valueall-type(T) uimplies: supposing a uall: [x:A]. B[x] pi1: fst(t) pi2: snd(t) pair: <a, b> product: x:A × B[x] universe: Type equal: t ∈ T bag-append: as bs bag: bag(T)
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a hdf-ap: X(a) hdf-parallel: || Y mk-hdf: mk-hdf(s,m.G[s; m];st.H[st];s0) all: x:A. B[x] implies:  Q bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) and: P ∧ Q band: p ∧b q ifthenelse: if then else fi  top: Top subtype_rel: A ⊆B ext-eq: A ≡ B assert: b bfalse: ff false: False prop: hdf-halt: hdf-halt() pi1: fst(t) pi2: snd(t) callbyvalueall: callbyvalueall evalall: evalall(t) bag-append: as bs append: as bs list_ind: list_ind empty-bag: {} nil: [] exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) guard: {T} bnot: ¬bb has-value: (a)↓ has-valueall: has-valueall(a) not: ¬A true: True

Latex:
\mforall{}[A,B:Type].  \mforall{}[X,Y:hdataflow(A;B)].  \mforall{}[a:A].
    X  ||  Y(a)  =  <fst(X(a))  ||  fst(Y(a)),  (snd(X(a)))  +  (snd(Y(a)))>  supposing  valueall-type(B)



Date html generated: 2016_05_16-AM-10_41_47
Last ObjectModification: 2015_12_28-PM-07_45_43

Theory : halting!dataflow


Home Index