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