{ [S,A,B:Type]. [test:S  A  ]. [nxt:S  A  S]. [step:S  A  S].
  [g:S  A  (B?)].
    (threshold_accum(test;
     nxt;
     step;
     g)  S  (B?)  A  (S  (B?))) }

{ Proof }



Definitions occuring in Statement :  threshold_accum: threshold_accum,  bool: ,  uall: [x:A]. B[x],  unit: Unit,  member: t  T,  function: x:A  B[x],  product: x:A  B[x],  union: left + right,  universe: Type
Definitions :  uall: [x:A]. B[x],  member: t  T,  threshold_accum: threshold_accum,  bfalse: ff,  top: Top,  all: x:A. B[x],  subtype: S  T
Lemmas :  ifthenelse_wf,  pi1_wf_top,  unit_wf,  it_wf,  bool_wf

\mforall{}[S,A,B:Type].  \mforall{}[test:S  {}\mrightarrow{}  A  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[nxt:S  \mtimes{}  A  {}\mrightarrow{}  S].  \mforall{}[step:S  {}\mrightarrow{}  A  {}\mrightarrow{}  S].  \mforall{}[g:S  \mtimes{}  A  {}\mrightarrow{}  (B?)].
    (threshold\_accum(test;
      nxt;
      step;
      g)  \mmember{}  S  \mtimes{}  (B?)  {}\mrightarrow{}  A  {}\mrightarrow{}  (S  \mtimes{}  (B?)))


Date html generated: 2011_08_16-AM-11_03_15
Last ObjectModification: 2011_06_18-AM-09_36_37

Home Index