Nuprl Lemma : iterate-rec-dataflow
∀[S,A,B:Type]. ∀[next:S ─→ A ─→ (S × B)]. ∀[L:A List]. ∀[s0:S].
  (rec-dataflow(s0;s,m.next[s;m])*(L) ~ rec-dataflow(rec-dataflow-state(s0;s,m.next[s;m];L);s,m.next[s;m]))
Proof
Definitions occuring in Statement : 
iterate-dataflow: P*(inputs)
, 
rec-dataflow-state: rec-dataflow-state(s0;s,m.next[s; m];L)
, 
rec-dataflow: rec-dataflow(s0;s,m.next[s; m])
, 
list: T List
, 
uall: ∀[x:A]. B[x]
, 
so_apply: x[s1;s2]
, 
function: x:A ─→ B[x]
, 
product: x:A × B[x]
, 
universe: Type
, 
sqequal: s ~ t
Lemmas : 
nat_properties, 
less_than_transitivity1, 
less_than_irreflexivity, 
ge_wf, 
less_than_wf, 
equal-wf-T-base, 
colength_wf_list, 
list-cases, 
iter_df_nil_lemma, 
list_accum_nil_lemma, 
product_subtype_list, 
spread_cons_lemma, 
sq_stable__le, 
le_antisymmetry_iff, 
add_functionality_wrt_le, 
add-associates, 
add-zero, 
zero-add, 
le-add-cancel, 
nat_wf, 
decidable__le, 
false_wf, 
not-le-2, 
condition-implies-le, 
minus-add, 
minus-one-mul, 
add-commutes, 
le_wf, 
subtract_wf, 
not-ge-2, 
less-iff-le, 
minus-minus, 
add-swap, 
subtype_base_sq, 
set_subtype_base, 
int_subtype_base, 
iter_df_cons_lemma, 
rec_dataflow_ap_lemma, 
list_accum_cons_lemma, 
list_wf
Latex:
\mforall{}[S,A,B:Type].  \mforall{}[next:S  {}\mrightarrow{}  A  {}\mrightarrow{}  (S  \mtimes{}  B)].  \mforall{}[L:A  List].  \mforall{}[s0:S].
    (rec-dataflow(s0;s,m.next[s;m])*(L)  \msim{}  rec-dataflow(rec-dataflow-state(s0;s,m.next[s;m];L);
                                                                                s,m.next[s;m]))
Date html generated:
2015_07_23-AM-11_05_53
Last ObjectModification:
2015_01_28-PM-11_35_28
Home
Index