{ [A,C:Type]. [B:A  Type]. [x:a:A fp-B[a]]. [y:C]. [f:C
                                                                a:A
                                                                B[a]
                                                                C].
    (fpf-accum(z,a,v.f[z;a;v];y;x)  C) }

{ Proof }



Definitions occuring in Statement :  fpf-accum: fpf-accum(z,a,v.f[z; a; v];y;x) fpf: a:A fp-B[a] uall: [x:A]. B[x] so_apply: x[s1;s2;s3] so_apply: x[s] member: t  T function: x:A  B[x] universe: Type
Definitions :  uall: [x:A]. B[x] so_apply: x[s] member: t  T fpf-accum: fpf-accum(z,a,v.f[z; a; v];y;x) pi2: snd(t) pi1: fst(t) so_lambda: x.t[x] so_apply: x[s1;s2;s3] so_lambda: x y.t[x; y] fpf: a:A fp-B[a] so_apply: x[s1;s2] prop:
Lemmas :  fpf_wf list-subtype list_accum_wf l_member_wf

\mforall{}[A,C:Type].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[x:a:A  fp->  B[a]].  \mforall{}[y:C].  \mforall{}[f:C  {}\mrightarrow{}  a:A  {}\mrightarrow{}  B[a]  {}\mrightarrow{}  C].
    (fpf-accum(z,a,v.f[z;a;v];y;x)  \mmember{}  C)


Date html generated: 2011_08_10-AM-08_04_07
Last ObjectModification: 2011_06_18-AM-08_22_27

Home Index