Nuprl Lemma : hdf-halted-compose2-iterate
∀[A,B,C:Type]. ∀[inputs:A List]. ∀[X1:hdataflow(A;B ─→ bag(C))]. ∀[X2:hdataflow(A;B)].
  hdf-halted(X1 o X2*(inputs)) = hdf-halted(X1*(inputs)) ∨bhdf-halted(X2*(inputs)) supposing valueall-type(C)
Proof
Definitions occuring in Statement : 
hdf-compose2: X o Y
, 
iterate-hdataflow: P*(inputs)
, 
hdf-halted: hdf-halted(P)
, 
hdataflow: hdataflow(A;B)
, 
list: T List
, 
bor: p ∨bq
, 
valueall-type: valueall-type(T)
, 
bool: 𝔹
, 
uimplies: b supposing a
, 
uall: ∀[x:A]. B[x]
, 
function: x:A ─→ B[x]
, 
universe: Type
, 
equal: s = t ∈ T
, 
bag: bag(T)
Lemmas : 
list_induction, 
uall_wf, 
hdataflow_wf, 
bag_wf, 
isect_wf, 
valueall-type_wf, 
equal_wf, 
bool_wf, 
hdf-halted_wf, 
iterate-hdataflow_wf, 
hdf-compose2_wf, 
bor_wf, 
iter_hdf_nil_lemma, 
iff_imp_equal_bool, 
assert_wf, 
hdf-halted-compose2, 
iff_wf, 
iter_hdf_cons_lemma, 
list_wf, 
iff_weakening_equal, 
squash_wf, 
true_wf, 
pi1_wf_top, 
top_wf, 
hdf-compose2-ap, 
subtype_rel_product, 
subtype_top
\mforall{}[A,B,C:Type].  \mforall{}[inputs:A  List].  \mforall{}[X1:hdataflow(A;B  {}\mrightarrow{}  bag(C))].  \mforall{}[X2:hdataflow(A;B)].
    hdf-halted(X1  o  X2*(inputs))  =  hdf-halted(X1*(inputs))  \mvee{}\msubb{}hdf-halted(X2*(inputs)) 
    supposing  valueall-type(C)
Date html generated:
2015_07_17-AM-08_05_34
Last ObjectModification:
2015_02_03-PM-09_46_26
Home
Index