Nuprl Lemma : list-in-fin_spr_unfold

B: List  . a: List.
  ((a  fspr(B)) ~ if (||a|| = 0) then tt else (firstn(||a|| - 1;a)  fspr(B))  last(a) z B firstn(||a|| - 1;a) fi )


Proof




Definitions occuring in Statement :  list-in-fin_spr: (a  fspr(B)),  firstn: firstn(n;as),  length: ||as||,  eq_int: (i = j),  le_int: i z j,  band: p  q,  ifthenelse: if b then t else f fi ,  btrue: tt,  nat: ,  all: x:A. B[x],  apply: f a,  function: x:A  B[x],  subtract: n - m,  natural_number: $n,  sqequal: s ~ t,  last: last(L)
Definitions :  all: x:A. B[x],  member: t  T,  exists: x:A. B[x],  nat: ,  ifthenelse: if b then t else f fi ,  btrue: tt,  band: p  q,  list-in-fin_spr: (a  fspr(B)),  implies: P  Q,  bfalse: ff,  so_lambda: x.t[x],  sq_type: SQType(T),  uall: [x:A]. B[x],  uimplies: b supposing a,  guard: {T},  bool: ,  unit: Unit,  uiff: uiff(P;Q),  and: P  Q,  so_apply: x[s],  assert: b,  bnot: b,  or: P  Q,  true: True,  false: False,  it: ,  prop:
Lemmas :  subtype_base_sq,  bool_wf,  bool_subtype_base,  base_sq,  Error :list_wf,  nat_wf,  Error :list_ind_reverse_unfold1,  btrue_wf,  eqtt_to_assert,  le_int_wf,  subtype_rel_set_simple,  le_wf,  eq_int_wf,  length_wf,  eqff_to_assert,  equal_wf,  bool_cases_sqequal,  Error :assert-bnot,  neg_assert_of_eq_int,  list-in-fin_spr_wf,  firstn_wf,  last_wf,  subtype_rel_list,  Error :non_null_iff_length,  top_wf,  subtype_top,  non_neg_length,  length_wf_nat
\mforall{}B:\mBbbN{}  List  {}\mrightarrow{}  \mBbbN{}.  \mforall{}a:\mBbbN{}  List.
    ((a  \mmember{}  fspr(B))  \msim{}  if  (||a||  =\msubz{}  0)
    then  tt
    else  (firstn(||a||  -  1;a)  \mmember{}  fspr(B))  \mwedge{}\msubb{}  last(a)  \mleq{}z  B  firstn(||a||  -  1;a)
    fi  )


Date html generated: 2013_03_20-AM-10_35_07
Last ObjectModification: 2013_03_11-PM-00_46_39

Home Index