Nuprl Lemma : mapfilter-as-reduce

[L,p,f:Top].  (mapfilter(λx.f[x];λx.p[x];L) reduce(λx,a. if p[x] then [f[x] a] else fi ;[];L))


Proof




Definitions occuring in Statement :  mapfilter: mapfilter(f;P;L) reduce: reduce(f;k;as) cons: [a b] nil: [] ifthenelse: if then else fi  uall: [x:A]. B[x] top: Top so_apply: x[s] lambda: λx.A[x] sqequal: t
Definitions unfolded in proof :  mapfilter: mapfilter(f;P;L) uall: [x:A]. B[x] member: t ∈ T filter: filter(P;l) reduce: reduce(f;k;as) so_lambda: λ2x.t[x] so_apply: x[s] uimplies: supposing a strict1: strict1(F) and: P ∧ Q all: x:A. B[x] implies:  Q map: map(f;as) list_ind: list_ind has-value: (a)↓ prop: or: P ∨ Q squash: T guard: {T} so_lambda: so_lambda(x,y,z.t[x; y; z]) so_apply: x[s1;s2;s3] top: Top
Lemmas referenced :  top_wf map_nil_lemma sqle_wf_base map_cons_lemma map-ifthenelse is-exception_wf base_wf has-value_wf_base sqequal-list_ind
Rules used in proof :  sqequalSubstitution sqequalRule sqequalReflexivity sqequalTransitivity computationStep isect_memberFormation introduction cut thin lemma_by_obid sqequalHypSubstitution isectElimination baseApply closedConclusion baseClosed hypothesisEquality independent_isectElimination independent_pairFormation lambdaFormation callbyvalueCallbyvalue hypothesis callbyvalueReduce callbyvalueExceptionCases inlFormation imageMemberEquality imageElimination exceptionSqequal inrFormation isect_memberEquality voidElimination voidEquality dependent_functionElimination divergentSqle sqleRule sqleReflexivity because_Cache sqequalAxiom

Latex:
\mforall{}[L,p,f:Top].    (mapfilter(\mlambda{}x.f[x];\mlambda{}x.p[x];L)  \msim{}  reduce(\mlambda{}x,a.  if  p[x]  then  [f[x]  /  a]  else  a  fi  ;[];L)\000C)



Date html generated: 2016_05_15-PM-03_56_34
Last ObjectModification: 2016_01_16-AM-10_58_31

Theory : general


Home Index