Nuprl Lemma : bind-nextouts2_wf
[M,A,B:Type]. 
[dfpY:A 
 DataflowProgram(M)]. 
[L:bag(a:A 
 df-program-statetype(dfpY a))]. 
[m:M].
  bind-nextouts2(L;dfpY;m) 
 bag(a:A 
 (df-program-statetype(dfpY a)?) 
 bag(B)) 
  supposing 
a:A. (df-program-type(dfpY a) 
r B)
Proof not projected
Definitions occuring in Statement : 
bind-nextouts2: bind-nextouts2(L;dfpY;m), 
df-program-statetype: df-program-statetype(dfp), 
df-program-type: df-program-type(dfp), 
dataflow-program: DataflowProgram(A), 
subtype_rel: A 
r B, 
uimplies: b supposing a, 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
unit: Unit, 
member: t 
 T, 
apply: f a, 
function: x:A 
 B[x], 
product: x:A 
 B[x], 
union: left + right, 
universe: Type, 
bag: bag(T)
Definitions : 
so_lambda: 
x.t[x], 
prop:
, 
implies: P 
 Q, 
bind-nextouts2: bind-nextouts2(L;dfpY;m), 
member: t 
 T, 
all:
x:A. B[x], 
uimplies: b supposing a, 
uall:
[x:A]. B[x], 
so_apply: x[s]
Lemmas : 
dataflow-program_wf, 
subtype_rel_wf, 
all_wf, 
subtype_rel_bag, 
df-program-type_wf, 
df-program-in-state-ap_wf, 
bag_wf, 
unit_wf2, 
df-program-statetype_wf, 
bag-map_wf
\mforall{}[M,A,B:Type].  \mforall{}[dfpY:A  {}\mrightarrow{}  DataflowProgram(M)].  \mforall{}[L:bag(a:A  \mtimes{}  df-program-statetype(dfpY  a))].
\mforall{}[m:M].
    bind-nextouts2(L;dfpY;m)  \mmember{}  bag(a:A  \mtimes{}  (df-program-statetype(dfpY  a)?)  \mtimes{}  bag(B)) 
    supposing  \mforall{}a:A.  (df-program-type(dfpY  a)  \msubseteq{}r  B)
Date html generated:
2012_01_23-PM-12_01_21
Last ObjectModification:
2011_12_16-PM-09_14_39
Home
Index