Nuprl Lemma : hdf-compose1-transformation1

[f,L:Base]. ∀[m:ℕ+].
  (f fix((λmk-hdf.(inl a.simple-cbva-seq(L[a];λout.<mk-hdf, out>;m))))) 
  fix((λmk-hdf.(inl a.simple-cbva-seq(λn.if (n =z m)
                                             then mk_lambdas(λout.bag-map(f;out);m 1)
                                             else L[a] n
                                             fi out.<mk-hdf, out>;m 1))))))


Proof




Definitions occuring in Statement :  hdf-compose1: X nat_plus: + ifthenelse: if then else fi  eq_int: (i =z j) uall: [x:A]. B[x] so_apply: x[s] apply: a fix: fix(F) lambda: λx.A[x] pair: <a, b> inl: inl x subtract: m add: m natural_number: $n base: Base sqequal: t bag-map: bag-map(f;bs) simple-cbva-seq: simple-cbva-seq(L;F;m) mk_lambdas: mk_lambdas(F;m)
Lemmas :  nat_plus_wf base_wf lifting-strict-decide top_wf has-value_wf_base lifting-strict-spread strict4-spread lifting-strict-callbyvalueall lifting-strict-int_eq simple-cbva-seq-spread simple-cbva-seq-extend-2 decidable__lt subtract_wf subtype_base_sq int_subtype_base decidable__equal_int false_wf not-equal-2 less-iff-le condition-implies-le minus-one-mul zero-add minus-add minus-minus add-commutes add-associates add_functionality_wrt_le add-zero le-add-cancel minus-zero add-swap le-add-cancel-alt nat_wf set_subtype_base le_wf all_wf int_seg_wf sqequal_n_wf less_than_wf int_seg_subtype-nat complete_nat_ind simple-cbva-seq-sqequal-n decidable__le not-le-2 le-add-cancel2 lelt_wf
\mforall{}[f,L:Base].  \mforall{}[m:\mBbbN{}\msupplus{}].
    (f  o  fix((\mlambda{}mk-hdf.(inl  (\mlambda{}a.simple-cbva-seq(L[a];\mlambda{}out.<mk-hdf,  out>m))))) 
    \msim{}  fix((\mlambda{}mk-hdf.(inl  (\mlambda{}a.simple-cbva-seq(\mlambda{}n.if  (n  =\msubz{}  m)
                                                                                          then  mk\_lambdas(\mlambda{}out.bag-map(f;out);m  -  1)
                                                                                          else  L[a]  n
                                                                                          fi  ;\mlambda{}out.<mk-hdf,  out>m  +  1))))))



Date html generated: 2015_07_17-AM-08_08_35
Last ObjectModification: 2015_01_27-PM-00_06_28

Home Index