Nuprl Lemma : member-update-alist1

∀[A,T:Type].
  ∀eq:EqDecider(T). ∀x:T. ∀L:(T × A) List. ∀z:A. ∀f:A ⟶ A. ∀y:T.
    ((y ∈ map(λp.(fst(p));update-alist(eq;L;x;z;v.f[v]))) ⇐⇒ (y ∈ map(λp.(fst(p));L)) ∨ (y = x ∈ T))


Proof




Definitions occuring in Statement :  l_member: (x ∈ l),  update-alist: update-alist(eq;L;x;z;v.f[v]),  map: map(f;as),  list: T List,  deq: EqDecider(T),  uall: ∀[x:A]. B[x],  so_apply: x[s],  pi1: fst(t),  all: ∀x:A. B[x],  iff: P ⇐⇒ Q,  or: P ∨ Q,  lambda: λx.A[x],  function: x:A ⟶ B[x],  product: x:A × B[x],  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  all: ∀x:A. B[x],  member: t ∈ T,  so_lambda: λ2x.t[x],  pi1: fst(t),  so_apply: x[s],  implies: P ⇒ Q,  update-alist: update-alist(eq;L;x;z;v.f[v]),  so_lambda: so_lambda(x,y,z.t[x; y; z]),  top: Top,  so_apply: x[s1;s2;s3],  prop: ℙ,  deq: EqDecider(T),  iff: P ⇐⇒ Q,  and: P ∧ Q,  or: P ∨ Q,  rev_implies: P ⇐ Q,  bool: 𝔹,  unit: Unit,  it: ⋅,  btrue: tt,  eqof: eqof(d),  uiff: uiff(P;Q),  uimplies: b supposing a,  ifthenelse: if b then t else f fi ,  bfalse: ff,  not: ¬A,  guard: {T},  false: False
Lemmas referenced :  list_induction,  all_wf,  iff_wf,  l_member_wf,  map_wf,  update-alist_wf,  or_wf,  equal_wf,  list_wf,  list_ind_nil_lemma,  map_nil_lemma,  map_cons_lemma,  list_ind_cons_lemma,  deq_wf,  bool_wf,  equal-wf-T-base,  assert_wf,  and_wf,  cons_wf,  pi1_wf,  cons_member,  bnot_wf,  not_wf,  eqof_wf,  uiff_transitivity,  eqtt_to_assert,  safe-assert-deq,  iff_transitivity,  iff_weakening_uiff,  eqff_to_assert,  assert_of_bnot,  false_wf,  member_singleton,  nil_member,  nil_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  lambdaFormation,  cut,  thin,  introduction,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  productEquality,  cumulativity,  hypothesisEquality,  sqequalRule,  lambdaEquality,  functionEquality,  because_Cache,  productElimination,  applyEquality,  functionExtensionality,  hypothesis,  independent_functionElimination,  dependent_functionElimination,  isect_memberEquality,  voidElimination,  voidEquality,  rename,  universeEquality,  setElimination,  equalityTransitivity,  equalitySymmetry,  baseClosed,  independent_pairFormation,  inlFormation,  addLevel,  hyp_replacement,  dependent_set_memberEquality,  applyLambdaEquality,  levelHypothesis,  independent_pairEquality,  orFunctionality,  promote_hyp,  unionElimination,  inrFormation,  equalityElimination,  independent_isectElimination,  impliesFunctionality,  allFunctionality

Latex:
\mforall{}[A,T:Type].
    \mforall{}eq:EqDecider(T).  \mforall{}x:T.  \mforall{}L:(T  \mtimes{}  A)  List.  \mforall{}z:A.  \mforall{}f:A  {}\mrightarrow{}  A.  \mforall{}y:T.
        ((y  \mmember{}  map(\mlambda{}p.(fst(p));update-alist(eq;L;x;z;v.f[v])))  \mLeftarrow{}{}\mRightarrow{}  (y  \mmember{}  map(\mlambda{}p.(fst(p));L))  \mvee{}  (y  =  x))



Date html generated: 2017_04_14-AM-09_24_59
Last ObjectModification: 2017_02_27-PM-03_59_28

Theory : list_1


Home Index