Nuprl Lemma : rec-bind-nxt_wf

[A,B,C:Type]. ∀[X:C ⟶ hdataflow(A;B)]. ∀[Y:C ⟶ hdataflow(A;C)]. ∀[p:bag(hdataflow(A;B)) × bag(hdataflow(A;C))].
[a:A].
  (rec-bind-nxt(X;Y;p;a) ∈ bag(hdataflow(A;B)) × bag(hdataflow(A;C)) × bag(B)) supposing 
     (valueall-type(B) and 
     valueall-type(C))


Proof




Definitions occuring in Statement :  rec-bind-nxt: rec-bind-nxt(X;Y;p;a) hdataflow: hdataflow(A;B) valueall-type: valueall-type(T) uimplies: supposing a uall: [x:A]. B[x] member: t ∈ T function: x:A ⟶ B[x] product: x:A × B[x] universe: Type bag: bag(T)
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a rec-bind-nxt: rec-bind-nxt(X;Y;p;a) let: let all: x:A. B[x] implies:  Q so_lambda: λ2x.t[x] so_apply: x[s] callbyvalueall: callbyvalueall squash: T has-value: (a)↓ has-valueall: has-valueall(a) pi2: snd(t) hdf-running: hdf-running(P) pi1: fst(t) prop: subtype_rel: A ⊆B

Latex:
\mforall{}[A,B,C:Type].  \mforall{}[X:C  {}\mrightarrow{}  hdataflow(A;B)].  \mforall{}[Y:C  {}\mrightarrow{}  hdataflow(A;C)].
\mforall{}[p:bag(hdataflow(A;B))  \mtimes{}  bag(hdataflow(A;C))].  \mforall{}[a:A].
    (rec-bind-nxt(X;Y;p;a)  \mmember{}  bag(hdataflow(A;B))  \mtimes{}  bag(hdataflow(A;C))  \mtimes{}  bag(B))  supposing 
          (valueall-type(B)  and 
          valueall-type(C))



Date html generated: 2016_05_16-AM-10_44_33
Last ObjectModification: 2016_01_17-AM-11_12_28

Theory : halting!dataflow


Home Index