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: List deq: EqDecider(T) uall: [x:A]. B[x] so_apply: x[s] pi1: fst(t) all: x:A. B[x] iff: ⇐⇒ Q or: P ∨ Q lambda: λx.A[x] function: x:A ⟶ B[x] product: x:A × B[x] universe: Type equal: 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:  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: ⇐⇒ Q and: P ∧ Q or: P ∨ Q rev_implies:  Q bool: 𝔹 unit: Unit it: btrue: tt eqof: eqof(d) uiff: uiff(P;Q) uimplies: supposing a ifthenelse: if then else 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